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 #[automatically_derived]
65 impl BaseField {
66 pub const NAME: &'static str = stringify!(@ name);
68 #[inline]
70 pub const fn from_underlying(
71 value: alloy::sol_types::private::primitives::aliases::U256,
72 ) -> Self {
73 Self(value)
74 }
75 #[inline]
77 pub const fn into_underlying(
78 self,
79 ) -> alloy::sol_types::private::primitives::aliases::U256 {
80 self.0
81 }
82 #[inline]
85 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
86 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
87 }
88 #[inline]
91 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
92 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
93 }
94 }
95 #[automatically_derived]
96 impl From<alloy::sol_types::private::primitives::aliases::U256> for BaseField {
97 fn from(
98 value: alloy::sol_types::private::primitives::aliases::U256,
99 ) -> Self {
100 Self::from_underlying(value)
101 }
102 }
103 #[automatically_derived]
104 impl From<BaseField> for alloy::sol_types::private::primitives::aliases::U256 {
105 fn from(value: BaseField) -> Self {
106 value.into_underlying()
107 }
108 }
109 #[automatically_derived]
110 impl alloy_sol_types::SolType for BaseField {
111 type RustType = alloy::sol_types::private::primitives::aliases::U256;
112 type Token<'a> = <alloy::sol_types::sol_data::Uint<
113 256,
114 > as alloy_sol_types::SolType>::Token<'a>;
115 const SOL_NAME: &'static str = Self::NAME;
116 const ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
117 256,
118 > as alloy_sol_types::SolType>::ENCODED_SIZE;
119 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
120 256,
121 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
122 #[inline]
123 fn valid_token(token: &Self::Token<'_>) -> bool {
124 Self::type_check(token).is_ok()
125 }
126 #[inline]
127 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
128 <alloy::sol_types::sol_data::Uint<
129 256,
130 > as alloy_sol_types::SolType>::type_check(token)
131 }
132 #[inline]
133 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
134 <alloy::sol_types::sol_data::Uint<
135 256,
136 > as alloy_sol_types::SolType>::detokenize(token)
137 }
138 }
139 #[automatically_derived]
140 impl alloy_sol_types::EventTopic for BaseField {
141 #[inline]
142 fn topic_preimage_length(rust: &Self::RustType) -> usize {
143 <alloy::sol_types::sol_data::Uint<
144 256,
145 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
146 }
147 #[inline]
148 fn encode_topic_preimage(
149 rust: &Self::RustType,
150 out: &mut alloy_sol_types::private::Vec<u8>,
151 ) {
152 <alloy::sol_types::sol_data::Uint<
153 256,
154 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
155 }
156 #[inline]
157 fn encode_topic(
158 rust: &Self::RustType,
159 ) -> alloy_sol_types::abi::token::WordToken {
160 <alloy::sol_types::sol_data::Uint<
161 256,
162 > as alloy_sol_types::EventTopic>::encode_topic(rust)
163 }
164 }
165 };
166 #[derive(serde::Serialize, serde::Deserialize)]
167 #[derive(Default, Debug, PartialEq, Eq, Hash)]
168 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
169 #[derive(Clone)]
170 pub struct ScalarField(alloy::sol_types::private::primitives::aliases::U256);
171 const _: () = {
172 use alloy::sol_types as alloy_sol_types;
173 #[automatically_derived]
174 impl alloy_sol_types::private::SolTypeValue<ScalarField>
175 for alloy::sol_types::private::primitives::aliases::U256 {
176 #[inline]
177 fn stv_to_tokens(
178 &self,
179 ) -> <alloy::sol_types::sol_data::Uint<
180 256,
181 > as alloy_sol_types::SolType>::Token<'_> {
182 alloy_sol_types::private::SolTypeValue::<
183 alloy::sol_types::sol_data::Uint<256>,
184 >::stv_to_tokens(self)
185 }
186 #[inline]
187 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
188 <alloy::sol_types::sol_data::Uint<
189 256,
190 > as alloy_sol_types::SolType>::tokenize(self)
191 .0
192 }
193 #[inline]
194 fn stv_abi_encode_packed_to(
195 &self,
196 out: &mut alloy_sol_types::private::Vec<u8>,
197 ) {
198 <alloy::sol_types::sol_data::Uint<
199 256,
200 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
201 }
202 #[inline]
203 fn stv_abi_packed_encoded_size(&self) -> usize {
204 <alloy::sol_types::sol_data::Uint<
205 256,
206 > as alloy_sol_types::SolType>::abi_encoded_size(self)
207 }
208 }
209 #[automatically_derived]
210 impl ScalarField {
211 pub const NAME: &'static str = stringify!(@ name);
213 #[inline]
215 pub const fn from_underlying(
216 value: alloy::sol_types::private::primitives::aliases::U256,
217 ) -> Self {
218 Self(value)
219 }
220 #[inline]
222 pub const fn into_underlying(
223 self,
224 ) -> alloy::sol_types::private::primitives::aliases::U256 {
225 self.0
226 }
227 #[inline]
230 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
231 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
232 }
233 #[inline]
236 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
237 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
238 }
239 }
240 #[automatically_derived]
241 impl From<alloy::sol_types::private::primitives::aliases::U256> for ScalarField {
242 fn from(
243 value: alloy::sol_types::private::primitives::aliases::U256,
244 ) -> Self {
245 Self::from_underlying(value)
246 }
247 }
248 #[automatically_derived]
249 impl From<ScalarField> for alloy::sol_types::private::primitives::aliases::U256 {
250 fn from(value: ScalarField) -> Self {
251 value.into_underlying()
252 }
253 }
254 #[automatically_derived]
255 impl alloy_sol_types::SolType for ScalarField {
256 type RustType = alloy::sol_types::private::primitives::aliases::U256;
257 type Token<'a> = <alloy::sol_types::sol_data::Uint<
258 256,
259 > as alloy_sol_types::SolType>::Token<'a>;
260 const SOL_NAME: &'static str = Self::NAME;
261 const ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
262 256,
263 > as alloy_sol_types::SolType>::ENCODED_SIZE;
264 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
265 256,
266 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
267 #[inline]
268 fn valid_token(token: &Self::Token<'_>) -> bool {
269 Self::type_check(token).is_ok()
270 }
271 #[inline]
272 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
273 <alloy::sol_types::sol_data::Uint<
274 256,
275 > as alloy_sol_types::SolType>::type_check(token)
276 }
277 #[inline]
278 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
279 <alloy::sol_types::sol_data::Uint<
280 256,
281 > as alloy_sol_types::SolType>::detokenize(token)
282 }
283 }
284 #[automatically_derived]
285 impl alloy_sol_types::EventTopic for ScalarField {
286 #[inline]
287 fn topic_preimage_length(rust: &Self::RustType) -> usize {
288 <alloy::sol_types::sol_data::Uint<
289 256,
290 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
291 }
292 #[inline]
293 fn encode_topic_preimage(
294 rust: &Self::RustType,
295 out: &mut alloy_sol_types::private::Vec<u8>,
296 ) {
297 <alloy::sol_types::sol_data::Uint<
298 256,
299 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
300 }
301 #[inline]
302 fn encode_topic(
303 rust: &Self::RustType,
304 ) -> alloy_sol_types::abi::token::WordToken {
305 <alloy::sol_types::sol_data::Uint<
306 256,
307 > as alloy_sol_types::EventTopic>::encode_topic(rust)
308 }
309 }
310 };
311 #[derive(serde::Serialize, serde::Deserialize)]
312 #[derive(Default, Debug, PartialEq, Eq, Hash)]
313 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
317 #[derive(Clone)]
318 pub struct G1Point {
319 #[allow(missing_docs)]
320 pub x: <BaseField as alloy::sol_types::SolType>::RustType,
321 #[allow(missing_docs)]
322 pub y: <BaseField as alloy::sol_types::SolType>::RustType,
323 }
324 #[allow(
325 non_camel_case_types,
326 non_snake_case,
327 clippy::pub_underscore_fields,
328 clippy::style
329 )]
330 const _: () = {
331 use alloy::sol_types as alloy_sol_types;
332 #[doc(hidden)]
333 #[allow(dead_code)]
334 type UnderlyingSolTuple<'a> = (BaseField, BaseField);
335 #[doc(hidden)]
336 type UnderlyingRustTuple<'a> = (
337 <BaseField as alloy::sol_types::SolType>::RustType,
338 <BaseField as alloy::sol_types::SolType>::RustType,
339 );
340 #[cfg(test)]
341 #[allow(dead_code, unreachable_patterns)]
342 fn _type_assertion(
343 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
344 ) {
345 match _t {
346 alloy_sol_types::private::AssertTypeEq::<
347 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
348 >(_) => {}
349 }
350 }
351 #[automatically_derived]
352 #[doc(hidden)]
353 impl ::core::convert::From<G1Point> for UnderlyingRustTuple<'_> {
354 fn from(value: G1Point) -> Self {
355 (value.x, value.y)
356 }
357 }
358 #[automatically_derived]
359 #[doc(hidden)]
360 impl ::core::convert::From<UnderlyingRustTuple<'_>> for G1Point {
361 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
362 Self { x: tuple.0, y: tuple.1 }
363 }
364 }
365 #[automatically_derived]
366 impl alloy_sol_types::SolValue for G1Point {
367 type SolType = Self;
368 }
369 #[automatically_derived]
370 impl alloy_sol_types::private::SolTypeValue<Self> for G1Point {
371 #[inline]
372 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
373 (
374 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x),
375 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y),
376 )
377 }
378 #[inline]
379 fn stv_abi_encoded_size(&self) -> usize {
380 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
381 return size;
382 }
383 let tuple = <UnderlyingRustTuple<
384 '_,
385 > as ::core::convert::From<Self>>::from(self.clone());
386 <UnderlyingSolTuple<
387 '_,
388 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
389 }
390 #[inline]
391 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
392 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
393 }
394 #[inline]
395 fn stv_abi_encode_packed_to(
396 &self,
397 out: &mut alloy_sol_types::private::Vec<u8>,
398 ) {
399 let tuple = <UnderlyingRustTuple<
400 '_,
401 > as ::core::convert::From<Self>>::from(self.clone());
402 <UnderlyingSolTuple<
403 '_,
404 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
405 }
406 #[inline]
407 fn stv_abi_packed_encoded_size(&self) -> usize {
408 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
409 return size;
410 }
411 let tuple = <UnderlyingRustTuple<
412 '_,
413 > as ::core::convert::From<Self>>::from(self.clone());
414 <UnderlyingSolTuple<
415 '_,
416 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
417 }
418 }
419 #[automatically_derived]
420 impl alloy_sol_types::SolType for G1Point {
421 type RustType = Self;
422 type Token<'a> = <UnderlyingSolTuple<
423 'a,
424 > as alloy_sol_types::SolType>::Token<'a>;
425 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
426 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
427 '_,
428 > as alloy_sol_types::SolType>::ENCODED_SIZE;
429 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
430 '_,
431 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
432 #[inline]
433 fn valid_token(token: &Self::Token<'_>) -> bool {
434 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
435 }
436 #[inline]
437 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
438 let tuple = <UnderlyingSolTuple<
439 '_,
440 > as alloy_sol_types::SolType>::detokenize(token);
441 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
442 }
443 }
444 #[automatically_derived]
445 impl alloy_sol_types::SolStruct for G1Point {
446 const NAME: &'static str = "G1Point";
447 #[inline]
448 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
449 alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 x,uint256 y)")
450 }
451 #[inline]
452 fn eip712_components() -> alloy_sol_types::private::Vec<
453 alloy_sol_types::private::Cow<'static, str>,
454 > {
455 alloy_sol_types::private::Vec::new()
456 }
457 #[inline]
458 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
459 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
460 }
461 #[inline]
462 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
463 [
464 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x).0,
465 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y).0,
466 ]
467 .concat()
468 }
469 }
470 #[automatically_derived]
471 impl alloy_sol_types::EventTopic for G1Point {
472 #[inline]
473 fn topic_preimage_length(rust: &Self::RustType) -> usize {
474 0usize
475 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
476 &rust.x,
477 )
478 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
479 &rust.y,
480 )
481 }
482 #[inline]
483 fn encode_topic_preimage(
484 rust: &Self::RustType,
485 out: &mut alloy_sol_types::private::Vec<u8>,
486 ) {
487 out.reserve(
488 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
489 );
490 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
491 &rust.x,
492 out,
493 );
494 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
495 &rust.y,
496 out,
497 );
498 }
499 #[inline]
500 fn encode_topic(
501 rust: &Self::RustType,
502 ) -> alloy_sol_types::abi::token::WordToken {
503 let mut out = alloy_sol_types::private::Vec::new();
504 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
505 rust,
506 &mut out,
507 );
508 alloy_sol_types::abi::token::WordToken(
509 alloy_sol_types::private::keccak256(out),
510 )
511 }
512 }
513 };
514 use alloy::contract as alloy_contract;
515 #[inline]
519 pub const fn new<
520 P: alloy_contract::private::Provider<N>,
521 N: alloy_contract::private::Network,
522 >(address: alloy_sol_types::private::Address, __provider: P) -> BN254Instance<P, N> {
523 BN254Instance::<P, N>::new(address, __provider)
524 }
525 #[derive(Clone)]
537 pub struct BN254Instance<P, N = alloy_contract::private::Ethereum> {
538 address: alloy_sol_types::private::Address,
539 provider: P,
540 _network: ::core::marker::PhantomData<N>,
541 }
542 #[automatically_derived]
543 impl<P, N> ::core::fmt::Debug for BN254Instance<P, N> {
544 #[inline]
545 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
546 f.debug_tuple("BN254Instance").field(&self.address).finish()
547 }
548 }
549 #[automatically_derived]
551 impl<
552 P: alloy_contract::private::Provider<N>,
553 N: alloy_contract::private::Network,
554 > BN254Instance<P, N> {
555 #[inline]
559 pub const fn new(
560 address: alloy_sol_types::private::Address,
561 __provider: P,
562 ) -> Self {
563 Self {
564 address,
565 provider: __provider,
566 _network: ::core::marker::PhantomData,
567 }
568 }
569 #[inline]
571 pub const fn address(&self) -> &alloy_sol_types::private::Address {
572 &self.address
573 }
574 #[inline]
576 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
577 self.address = address;
578 }
579 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
581 self.set_address(address);
582 self
583 }
584 #[inline]
586 pub const fn provider(&self) -> &P {
587 &self.provider
588 }
589 }
590 impl<P: ::core::clone::Clone, N> BN254Instance<&P, N> {
591 #[inline]
593 pub fn with_cloned_provider(self) -> BN254Instance<P, N> {
594 BN254Instance {
595 address: self.address,
596 provider: ::core::clone::Clone::clone(&self.provider),
597 _network: ::core::marker::PhantomData,
598 }
599 }
600 }
601 #[automatically_derived]
603 impl<
604 P: alloy_contract::private::Provider<N>,
605 N: alloy_contract::private::Network,
606 > BN254Instance<P, N> {
607 pub fn call_builder<C: alloy_sol_types::SolCall>(
612 &self,
613 call: &C,
614 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
615 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
616 }
617 }
618 #[automatically_derived]
620 impl<
621 P: alloy_contract::private::Provider<N>,
622 N: alloy_contract::private::Network,
623 > BN254Instance<P, N> {
624 pub fn event_filter<E: alloy_sol_types::SolEvent>(
629 &self,
630 ) -> alloy_contract::Event<&P, E, N> {
631 alloy_contract::Event::new_sol(&self.provider, &self.address)
632 }
633 }
634}
635#[allow(
645 non_camel_case_types,
646 non_snake_case,
647 clippy::pub_underscore_fields,
648 clippy::style,
649 clippy::empty_structs_with_brackets
650)]
651pub mod IPlonkVerifier {
652 use super::*;
653 use alloy::sol_types as alloy_sol_types;
654 #[derive(serde::Serialize, serde::Deserialize)]
655 #[derive()]
656 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
660 #[derive(Clone)]
661 pub struct PlonkProof {
662 #[allow(missing_docs)]
663 pub wire0: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
664 #[allow(missing_docs)]
665 pub wire1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
666 #[allow(missing_docs)]
667 pub wire2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
668 #[allow(missing_docs)]
669 pub wire3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
670 #[allow(missing_docs)]
671 pub wire4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
672 #[allow(missing_docs)]
673 pub prodPerm: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
674 #[allow(missing_docs)]
675 pub split0: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
676 #[allow(missing_docs)]
677 pub split1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
678 #[allow(missing_docs)]
679 pub split2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
680 #[allow(missing_docs)]
681 pub split3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
682 #[allow(missing_docs)]
683 pub split4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
684 #[allow(missing_docs)]
685 pub zeta: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
686 #[allow(missing_docs)]
687 pub zetaOmega: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
688 #[allow(missing_docs)]
689 pub wireEval0: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
690 #[allow(missing_docs)]
691 pub wireEval1: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
692 #[allow(missing_docs)]
693 pub wireEval2: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
694 #[allow(missing_docs)]
695 pub wireEval3: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
696 #[allow(missing_docs)]
697 pub wireEval4: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
698 #[allow(missing_docs)]
699 pub sigmaEval0: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
700 #[allow(missing_docs)]
701 pub sigmaEval1: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
702 #[allow(missing_docs)]
703 pub sigmaEval2: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
704 #[allow(missing_docs)]
705 pub sigmaEval3: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
706 #[allow(missing_docs)]
707 pub prodPermZetaOmegaEval: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
708 }
709 #[allow(
710 non_camel_case_types,
711 non_snake_case,
712 clippy::pub_underscore_fields,
713 clippy::style
714 )]
715 const _: () = {
716 use alloy::sol_types as alloy_sol_types;
717 #[doc(hidden)]
718 #[allow(dead_code)]
719 type UnderlyingSolTuple<'a> = (
720 BN254::G1Point,
721 BN254::G1Point,
722 BN254::G1Point,
723 BN254::G1Point,
724 BN254::G1Point,
725 BN254::G1Point,
726 BN254::G1Point,
727 BN254::G1Point,
728 BN254::G1Point,
729 BN254::G1Point,
730 BN254::G1Point,
731 BN254::G1Point,
732 BN254::G1Point,
733 BN254::ScalarField,
734 BN254::ScalarField,
735 BN254::ScalarField,
736 BN254::ScalarField,
737 BN254::ScalarField,
738 BN254::ScalarField,
739 BN254::ScalarField,
740 BN254::ScalarField,
741 BN254::ScalarField,
742 BN254::ScalarField,
743 );
744 #[doc(hidden)]
745 type UnderlyingRustTuple<'a> = (
746 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
747 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
748 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
749 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
750 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
751 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
752 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
753 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
754 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
755 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
756 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
757 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
758 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
759 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
760 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
761 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
762 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
763 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
764 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
765 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
766 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
767 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
768 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
769 );
770 #[cfg(test)]
771 #[allow(dead_code, unreachable_patterns)]
772 fn _type_assertion(
773 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
774 ) {
775 match _t {
776 alloy_sol_types::private::AssertTypeEq::<
777 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
778 >(_) => {}
779 }
780 }
781 #[automatically_derived]
782 #[doc(hidden)]
783 impl ::core::convert::From<PlonkProof> for UnderlyingRustTuple<'_> {
784 fn from(value: PlonkProof) -> Self {
785 (
786 value.wire0,
787 value.wire1,
788 value.wire2,
789 value.wire3,
790 value.wire4,
791 value.prodPerm,
792 value.split0,
793 value.split1,
794 value.split2,
795 value.split3,
796 value.split4,
797 value.zeta,
798 value.zetaOmega,
799 value.wireEval0,
800 value.wireEval1,
801 value.wireEval2,
802 value.wireEval3,
803 value.wireEval4,
804 value.sigmaEval0,
805 value.sigmaEval1,
806 value.sigmaEval2,
807 value.sigmaEval3,
808 value.prodPermZetaOmegaEval,
809 )
810 }
811 }
812 #[automatically_derived]
813 #[doc(hidden)]
814 impl ::core::convert::From<UnderlyingRustTuple<'_>> for PlonkProof {
815 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
816 Self {
817 wire0: tuple.0,
818 wire1: tuple.1,
819 wire2: tuple.2,
820 wire3: tuple.3,
821 wire4: tuple.4,
822 prodPerm: tuple.5,
823 split0: tuple.6,
824 split1: tuple.7,
825 split2: tuple.8,
826 split3: tuple.9,
827 split4: tuple.10,
828 zeta: tuple.11,
829 zetaOmega: tuple.12,
830 wireEval0: tuple.13,
831 wireEval1: tuple.14,
832 wireEval2: tuple.15,
833 wireEval3: tuple.16,
834 wireEval4: tuple.17,
835 sigmaEval0: tuple.18,
836 sigmaEval1: tuple.19,
837 sigmaEval2: tuple.20,
838 sigmaEval3: tuple.21,
839 prodPermZetaOmegaEval: tuple.22,
840 }
841 }
842 }
843 #[automatically_derived]
844 impl alloy_sol_types::SolValue for PlonkProof {
845 type SolType = Self;
846 }
847 #[automatically_derived]
848 impl alloy_sol_types::private::SolTypeValue<Self> for PlonkProof {
849 #[inline]
850 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
851 (
852 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire0),
853 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire1),
854 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire2),
855 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire3),
856 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire4),
857 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(
858 &self.prodPerm,
859 ),
860 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split0),
861 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split1),
862 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split2),
863 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split3),
864 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split4),
865 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.zeta),
866 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(
867 &self.zetaOmega,
868 ),
869 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
870 &self.wireEval0,
871 ),
872 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
873 &self.wireEval1,
874 ),
875 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
876 &self.wireEval2,
877 ),
878 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
879 &self.wireEval3,
880 ),
881 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
882 &self.wireEval4,
883 ),
884 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
885 &self.sigmaEval0,
886 ),
887 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
888 &self.sigmaEval1,
889 ),
890 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
891 &self.sigmaEval2,
892 ),
893 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
894 &self.sigmaEval3,
895 ),
896 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
897 &self.prodPermZetaOmegaEval,
898 ),
899 )
900 }
901 #[inline]
902 fn stv_abi_encoded_size(&self) -> usize {
903 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
904 return size;
905 }
906 let tuple = <UnderlyingRustTuple<
907 '_,
908 > as ::core::convert::From<Self>>::from(self.clone());
909 <UnderlyingSolTuple<
910 '_,
911 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
912 }
913 #[inline]
914 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
915 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
916 }
917 #[inline]
918 fn stv_abi_encode_packed_to(
919 &self,
920 out: &mut alloy_sol_types::private::Vec<u8>,
921 ) {
922 let tuple = <UnderlyingRustTuple<
923 '_,
924 > as ::core::convert::From<Self>>::from(self.clone());
925 <UnderlyingSolTuple<
926 '_,
927 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
928 }
929 #[inline]
930 fn stv_abi_packed_encoded_size(&self) -> usize {
931 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
932 return size;
933 }
934 let tuple = <UnderlyingRustTuple<
935 '_,
936 > as ::core::convert::From<Self>>::from(self.clone());
937 <UnderlyingSolTuple<
938 '_,
939 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
940 }
941 }
942 #[automatically_derived]
943 impl alloy_sol_types::SolType for PlonkProof {
944 type RustType = Self;
945 type Token<'a> = <UnderlyingSolTuple<
946 'a,
947 > as alloy_sol_types::SolType>::Token<'a>;
948 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
949 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
950 '_,
951 > as alloy_sol_types::SolType>::ENCODED_SIZE;
952 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
953 '_,
954 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
955 #[inline]
956 fn valid_token(token: &Self::Token<'_>) -> bool {
957 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
958 }
959 #[inline]
960 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
961 let tuple = <UnderlyingSolTuple<
962 '_,
963 > as alloy_sol_types::SolType>::detokenize(token);
964 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
965 }
966 }
967 #[automatically_derived]
968 impl alloy_sol_types::SolStruct for PlonkProof {
969 const NAME: &'static str = "PlonkProof";
970 #[inline]
971 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
972 alloy_sol_types::private::Cow::Borrowed(
973 "PlonkProof(G1Point wire0,G1Point wire1,G1Point wire2,G1Point wire3,G1Point wire4,G1Point prodPerm,G1Point split0,G1Point split1,G1Point split2,G1Point split3,G1Point split4,G1Point zeta,G1Point zetaOmega,uint256 wireEval0,uint256 wireEval1,uint256 wireEval2,uint256 wireEval3,uint256 wireEval4,uint256 sigmaEval0,uint256 sigmaEval1,uint256 sigmaEval2,uint256 sigmaEval3,uint256 prodPermZetaOmegaEval)",
974 )
975 }
976 #[inline]
977 fn eip712_components() -> alloy_sol_types::private::Vec<
978 alloy_sol_types::private::Cow<'static, str>,
979 > {
980 let mut components = alloy_sol_types::private::Vec::with_capacity(13);
981 components
982 .push(
983 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
984 );
985 components
986 .extend(
987 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
988 );
989 components
990 .push(
991 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
992 );
993 components
994 .extend(
995 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
996 );
997 components
998 .push(
999 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1000 );
1001 components
1002 .extend(
1003 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1004 );
1005 components
1006 .push(
1007 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1008 );
1009 components
1010 .extend(
1011 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1012 );
1013 components
1014 .push(
1015 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1016 );
1017 components
1018 .extend(
1019 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1020 );
1021 components
1022 .push(
1023 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1024 );
1025 components
1026 .extend(
1027 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1028 );
1029 components
1030 .push(
1031 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1032 );
1033 components
1034 .extend(
1035 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1036 );
1037 components
1038 .push(
1039 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1040 );
1041 components
1042 .extend(
1043 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1044 );
1045 components
1046 .push(
1047 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1048 );
1049 components
1050 .extend(
1051 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1052 );
1053 components
1054 .push(
1055 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1056 );
1057 components
1058 .extend(
1059 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1060 );
1061 components
1062 .push(
1063 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1064 );
1065 components
1066 .extend(
1067 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1068 );
1069 components
1070 .push(
1071 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1072 );
1073 components
1074 .extend(
1075 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1076 );
1077 components
1078 .push(
1079 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1080 );
1081 components
1082 .extend(
1083 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1084 );
1085 components
1086 }
1087 #[inline]
1088 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
1089 [
1090 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1091 &self.wire0,
1092 )
1093 .0,
1094 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1095 &self.wire1,
1096 )
1097 .0,
1098 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1099 &self.wire2,
1100 )
1101 .0,
1102 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1103 &self.wire3,
1104 )
1105 .0,
1106 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1107 &self.wire4,
1108 )
1109 .0,
1110 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1111 &self.prodPerm,
1112 )
1113 .0,
1114 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1115 &self.split0,
1116 )
1117 .0,
1118 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1119 &self.split1,
1120 )
1121 .0,
1122 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1123 &self.split2,
1124 )
1125 .0,
1126 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1127 &self.split3,
1128 )
1129 .0,
1130 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1131 &self.split4,
1132 )
1133 .0,
1134 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1135 &self.zeta,
1136 )
1137 .0,
1138 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1139 &self.zetaOmega,
1140 )
1141 .0,
1142 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1143 &self.wireEval0,
1144 )
1145 .0,
1146 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1147 &self.wireEval1,
1148 )
1149 .0,
1150 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1151 &self.wireEval2,
1152 )
1153 .0,
1154 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1155 &self.wireEval3,
1156 )
1157 .0,
1158 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1159 &self.wireEval4,
1160 )
1161 .0,
1162 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1163 &self.sigmaEval0,
1164 )
1165 .0,
1166 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1167 &self.sigmaEval1,
1168 )
1169 .0,
1170 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1171 &self.sigmaEval2,
1172 )
1173 .0,
1174 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1175 &self.sigmaEval3,
1176 )
1177 .0,
1178 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
1179 &self.prodPermZetaOmegaEval,
1180 )
1181 .0,
1182 ]
1183 .concat()
1184 }
1185 }
1186 #[automatically_derived]
1187 impl alloy_sol_types::EventTopic for PlonkProof {
1188 #[inline]
1189 fn topic_preimage_length(rust: &Self::RustType) -> usize {
1190 0usize
1191 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1192 &rust.wire0,
1193 )
1194 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1195 &rust.wire1,
1196 )
1197 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1198 &rust.wire2,
1199 )
1200 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1201 &rust.wire3,
1202 )
1203 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1204 &rust.wire4,
1205 )
1206 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1207 &rust.prodPerm,
1208 )
1209 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1210 &rust.split0,
1211 )
1212 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1213 &rust.split1,
1214 )
1215 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1216 &rust.split2,
1217 )
1218 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1219 &rust.split3,
1220 )
1221 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1222 &rust.split4,
1223 )
1224 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1225 &rust.zeta,
1226 )
1227 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1228 &rust.zetaOmega,
1229 )
1230 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1231 &rust.wireEval0,
1232 )
1233 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1234 &rust.wireEval1,
1235 )
1236 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1237 &rust.wireEval2,
1238 )
1239 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1240 &rust.wireEval3,
1241 )
1242 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1243 &rust.wireEval4,
1244 )
1245 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1246 &rust.sigmaEval0,
1247 )
1248 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1249 &rust.sigmaEval1,
1250 )
1251 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1252 &rust.sigmaEval2,
1253 )
1254 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1255 &rust.sigmaEval3,
1256 )
1257 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1258 &rust.prodPermZetaOmegaEval,
1259 )
1260 }
1261 #[inline]
1262 fn encode_topic_preimage(
1263 rust: &Self::RustType,
1264 out: &mut alloy_sol_types::private::Vec<u8>,
1265 ) {
1266 out.reserve(
1267 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
1268 );
1269 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1270 &rust.wire0,
1271 out,
1272 );
1273 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1274 &rust.wire1,
1275 out,
1276 );
1277 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1278 &rust.wire2,
1279 out,
1280 );
1281 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1282 &rust.wire3,
1283 out,
1284 );
1285 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1286 &rust.wire4,
1287 out,
1288 );
1289 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1290 &rust.prodPerm,
1291 out,
1292 );
1293 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1294 &rust.split0,
1295 out,
1296 );
1297 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1298 &rust.split1,
1299 out,
1300 );
1301 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1302 &rust.split2,
1303 out,
1304 );
1305 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1306 &rust.split3,
1307 out,
1308 );
1309 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1310 &rust.split4,
1311 out,
1312 );
1313 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1314 &rust.zeta,
1315 out,
1316 );
1317 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1318 &rust.zetaOmega,
1319 out,
1320 );
1321 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1322 &rust.wireEval0,
1323 out,
1324 );
1325 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1326 &rust.wireEval1,
1327 out,
1328 );
1329 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1330 &rust.wireEval2,
1331 out,
1332 );
1333 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1334 &rust.wireEval3,
1335 out,
1336 );
1337 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1338 &rust.wireEval4,
1339 out,
1340 );
1341 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1342 &rust.sigmaEval0,
1343 out,
1344 );
1345 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1346 &rust.sigmaEval1,
1347 out,
1348 );
1349 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1350 &rust.sigmaEval2,
1351 out,
1352 );
1353 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1354 &rust.sigmaEval3,
1355 out,
1356 );
1357 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1358 &rust.prodPermZetaOmegaEval,
1359 out,
1360 );
1361 }
1362 #[inline]
1363 fn encode_topic(
1364 rust: &Self::RustType,
1365 ) -> alloy_sol_types::abi::token::WordToken {
1366 let mut out = alloy_sol_types::private::Vec::new();
1367 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
1368 rust,
1369 &mut out,
1370 );
1371 alloy_sol_types::abi::token::WordToken(
1372 alloy_sol_types::private::keccak256(out),
1373 )
1374 }
1375 }
1376 };
1377 #[derive(serde::Serialize, serde::Deserialize)]
1378 #[derive()]
1379 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1383 #[derive(Clone)]
1384 pub struct VerifyingKey {
1385 #[allow(missing_docs)]
1386 pub domainSize: alloy::sol_types::private::primitives::aliases::U256,
1387 #[allow(missing_docs)]
1388 pub numInputs: alloy::sol_types::private::primitives::aliases::U256,
1389 #[allow(missing_docs)]
1390 pub sigma0: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1391 #[allow(missing_docs)]
1392 pub sigma1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1393 #[allow(missing_docs)]
1394 pub sigma2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1395 #[allow(missing_docs)]
1396 pub sigma3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1397 #[allow(missing_docs)]
1398 pub sigma4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1399 #[allow(missing_docs)]
1400 pub q1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1401 #[allow(missing_docs)]
1402 pub q2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1403 #[allow(missing_docs)]
1404 pub q3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1405 #[allow(missing_docs)]
1406 pub q4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1407 #[allow(missing_docs)]
1408 pub qM12: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1409 #[allow(missing_docs)]
1410 pub qM34: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1411 #[allow(missing_docs)]
1412 pub qO: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1413 #[allow(missing_docs)]
1414 pub qC: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1415 #[allow(missing_docs)]
1416 pub qH1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1417 #[allow(missing_docs)]
1418 pub qH2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1419 #[allow(missing_docs)]
1420 pub qH3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1421 #[allow(missing_docs)]
1422 pub qH4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1423 #[allow(missing_docs)]
1424 pub qEcc: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1425 #[allow(missing_docs)]
1426 pub g2LSB: alloy::sol_types::private::FixedBytes<32>,
1427 #[allow(missing_docs)]
1428 pub g2MSB: alloy::sol_types::private::FixedBytes<32>,
1429 }
1430 #[allow(
1431 non_camel_case_types,
1432 non_snake_case,
1433 clippy::pub_underscore_fields,
1434 clippy::style
1435 )]
1436 const _: () = {
1437 use alloy::sol_types as alloy_sol_types;
1438 #[doc(hidden)]
1439 #[allow(dead_code)]
1440 type UnderlyingSolTuple<'a> = (
1441 alloy::sol_types::sol_data::Uint<256>,
1442 alloy::sol_types::sol_data::Uint<256>,
1443 BN254::G1Point,
1444 BN254::G1Point,
1445 BN254::G1Point,
1446 BN254::G1Point,
1447 BN254::G1Point,
1448 BN254::G1Point,
1449 BN254::G1Point,
1450 BN254::G1Point,
1451 BN254::G1Point,
1452 BN254::G1Point,
1453 BN254::G1Point,
1454 BN254::G1Point,
1455 BN254::G1Point,
1456 BN254::G1Point,
1457 BN254::G1Point,
1458 BN254::G1Point,
1459 BN254::G1Point,
1460 BN254::G1Point,
1461 alloy::sol_types::sol_data::FixedBytes<32>,
1462 alloy::sol_types::sol_data::FixedBytes<32>,
1463 );
1464 #[doc(hidden)]
1465 type UnderlyingRustTuple<'a> = (
1466 alloy::sol_types::private::primitives::aliases::U256,
1467 alloy::sol_types::private::primitives::aliases::U256,
1468 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1469 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1470 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1471 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1472 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1473 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1474 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1475 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1476 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1477 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1478 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1479 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1480 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1481 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1482 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1483 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1484 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1485 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1486 alloy::sol_types::private::FixedBytes<32>,
1487 alloy::sol_types::private::FixedBytes<32>,
1488 );
1489 #[cfg(test)]
1490 #[allow(dead_code, unreachable_patterns)]
1491 fn _type_assertion(
1492 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
1493 ) {
1494 match _t {
1495 alloy_sol_types::private::AssertTypeEq::<
1496 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1497 >(_) => {}
1498 }
1499 }
1500 #[automatically_derived]
1501 #[doc(hidden)]
1502 impl ::core::convert::From<VerifyingKey> for UnderlyingRustTuple<'_> {
1503 fn from(value: VerifyingKey) -> Self {
1504 (
1505 value.domainSize,
1506 value.numInputs,
1507 value.sigma0,
1508 value.sigma1,
1509 value.sigma2,
1510 value.sigma3,
1511 value.sigma4,
1512 value.q1,
1513 value.q2,
1514 value.q3,
1515 value.q4,
1516 value.qM12,
1517 value.qM34,
1518 value.qO,
1519 value.qC,
1520 value.qH1,
1521 value.qH2,
1522 value.qH3,
1523 value.qH4,
1524 value.qEcc,
1525 value.g2LSB,
1526 value.g2MSB,
1527 )
1528 }
1529 }
1530 #[automatically_derived]
1531 #[doc(hidden)]
1532 impl ::core::convert::From<UnderlyingRustTuple<'_>> for VerifyingKey {
1533 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1534 Self {
1535 domainSize: tuple.0,
1536 numInputs: tuple.1,
1537 sigma0: tuple.2,
1538 sigma1: tuple.3,
1539 sigma2: tuple.4,
1540 sigma3: tuple.5,
1541 sigma4: tuple.6,
1542 q1: tuple.7,
1543 q2: tuple.8,
1544 q3: tuple.9,
1545 q4: tuple.10,
1546 qM12: tuple.11,
1547 qM34: tuple.12,
1548 qO: tuple.13,
1549 qC: tuple.14,
1550 qH1: tuple.15,
1551 qH2: tuple.16,
1552 qH3: tuple.17,
1553 qH4: tuple.18,
1554 qEcc: tuple.19,
1555 g2LSB: tuple.20,
1556 g2MSB: tuple.21,
1557 }
1558 }
1559 }
1560 #[automatically_derived]
1561 impl alloy_sol_types::SolValue for VerifyingKey {
1562 type SolType = Self;
1563 }
1564 #[automatically_derived]
1565 impl alloy_sol_types::private::SolTypeValue<Self> for VerifyingKey {
1566 #[inline]
1567 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
1568 (
1569 <alloy::sol_types::sol_data::Uint<
1570 256,
1571 > as alloy_sol_types::SolType>::tokenize(&self.domainSize),
1572 <alloy::sol_types::sol_data::Uint<
1573 256,
1574 > as alloy_sol_types::SolType>::tokenize(&self.numInputs),
1575 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma0),
1576 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma1),
1577 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma2),
1578 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma3),
1579 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma4),
1580 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q1),
1581 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q2),
1582 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q3),
1583 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q4),
1584 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qM12),
1585 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qM34),
1586 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qO),
1587 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qC),
1588 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH1),
1589 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH2),
1590 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH3),
1591 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH4),
1592 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qEcc),
1593 <alloy::sol_types::sol_data::FixedBytes<
1594 32,
1595 > as alloy_sol_types::SolType>::tokenize(&self.g2LSB),
1596 <alloy::sol_types::sol_data::FixedBytes<
1597 32,
1598 > as alloy_sol_types::SolType>::tokenize(&self.g2MSB),
1599 )
1600 }
1601 #[inline]
1602 fn stv_abi_encoded_size(&self) -> usize {
1603 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
1604 return size;
1605 }
1606 let tuple = <UnderlyingRustTuple<
1607 '_,
1608 > as ::core::convert::From<Self>>::from(self.clone());
1609 <UnderlyingSolTuple<
1610 '_,
1611 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
1612 }
1613 #[inline]
1614 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
1615 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
1616 }
1617 #[inline]
1618 fn stv_abi_encode_packed_to(
1619 &self,
1620 out: &mut alloy_sol_types::private::Vec<u8>,
1621 ) {
1622 let tuple = <UnderlyingRustTuple<
1623 '_,
1624 > as ::core::convert::From<Self>>::from(self.clone());
1625 <UnderlyingSolTuple<
1626 '_,
1627 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
1628 }
1629 #[inline]
1630 fn stv_abi_packed_encoded_size(&self) -> usize {
1631 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
1632 return size;
1633 }
1634 let tuple = <UnderlyingRustTuple<
1635 '_,
1636 > as ::core::convert::From<Self>>::from(self.clone());
1637 <UnderlyingSolTuple<
1638 '_,
1639 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
1640 }
1641 }
1642 #[automatically_derived]
1643 impl alloy_sol_types::SolType for VerifyingKey {
1644 type RustType = Self;
1645 type Token<'a> = <UnderlyingSolTuple<
1646 'a,
1647 > as alloy_sol_types::SolType>::Token<'a>;
1648 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
1649 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
1650 '_,
1651 > as alloy_sol_types::SolType>::ENCODED_SIZE;
1652 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
1653 '_,
1654 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
1655 #[inline]
1656 fn valid_token(token: &Self::Token<'_>) -> bool {
1657 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
1658 }
1659 #[inline]
1660 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
1661 let tuple = <UnderlyingSolTuple<
1662 '_,
1663 > as alloy_sol_types::SolType>::detokenize(token);
1664 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
1665 }
1666 }
1667 #[automatically_derived]
1668 impl alloy_sol_types::SolStruct for VerifyingKey {
1669 const NAME: &'static str = "VerifyingKey";
1670 #[inline]
1671 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
1672 alloy_sol_types::private::Cow::Borrowed(
1673 "VerifyingKey(uint256 domainSize,uint256 numInputs,G1Point sigma0,G1Point sigma1,G1Point sigma2,G1Point sigma3,G1Point sigma4,G1Point q1,G1Point q2,G1Point q3,G1Point q4,G1Point qM12,G1Point qM34,G1Point qO,G1Point qC,G1Point qH1,G1Point qH2,G1Point qH3,G1Point qH4,G1Point qEcc,bytes32 g2LSB,bytes32 g2MSB)",
1674 )
1675 }
1676 #[inline]
1677 fn eip712_components() -> alloy_sol_types::private::Vec<
1678 alloy_sol_types::private::Cow<'static, str>,
1679 > {
1680 let mut components = alloy_sol_types::private::Vec::with_capacity(18);
1681 components
1682 .push(
1683 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1684 );
1685 components
1686 .extend(
1687 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1688 );
1689 components
1690 .push(
1691 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1692 );
1693 components
1694 .extend(
1695 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1696 );
1697 components
1698 .push(
1699 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1700 );
1701 components
1702 .extend(
1703 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1704 );
1705 components
1706 .push(
1707 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1708 );
1709 components
1710 .extend(
1711 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1712 );
1713 components
1714 .push(
1715 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1716 );
1717 components
1718 .extend(
1719 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1720 );
1721 components
1722 .push(
1723 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1724 );
1725 components
1726 .extend(
1727 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1728 );
1729 components
1730 .push(
1731 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1732 );
1733 components
1734 .extend(
1735 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1736 );
1737 components
1738 .push(
1739 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1740 );
1741 components
1742 .extend(
1743 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1744 );
1745 components
1746 .push(
1747 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1748 );
1749 components
1750 .extend(
1751 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1752 );
1753 components
1754 .push(
1755 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1756 );
1757 components
1758 .extend(
1759 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1760 );
1761 components
1762 .push(
1763 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1764 );
1765 components
1766 .extend(
1767 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1768 );
1769 components
1770 .push(
1771 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1772 );
1773 components
1774 .extend(
1775 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1776 );
1777 components
1778 .push(
1779 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1780 );
1781 components
1782 .extend(
1783 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1784 );
1785 components
1786 .push(
1787 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1788 );
1789 components
1790 .extend(
1791 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1792 );
1793 components
1794 .push(
1795 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1796 );
1797 components
1798 .extend(
1799 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1800 );
1801 components
1802 .push(
1803 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1804 );
1805 components
1806 .extend(
1807 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1808 );
1809 components
1810 .push(
1811 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1812 );
1813 components
1814 .extend(
1815 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1816 );
1817 components
1818 .push(
1819 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type(),
1820 );
1821 components
1822 .extend(
1823 <BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components(),
1824 );
1825 components
1826 }
1827 #[inline]
1828 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
1829 [
1830 <alloy::sol_types::sol_data::Uint<
1831 256,
1832 > as alloy_sol_types::SolType>::eip712_data_word(&self.domainSize)
1833 .0,
1834 <alloy::sol_types::sol_data::Uint<
1835 256,
1836 > as alloy_sol_types::SolType>::eip712_data_word(&self.numInputs)
1837 .0,
1838 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1839 &self.sigma0,
1840 )
1841 .0,
1842 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1843 &self.sigma1,
1844 )
1845 .0,
1846 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1847 &self.sigma2,
1848 )
1849 .0,
1850 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1851 &self.sigma3,
1852 )
1853 .0,
1854 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1855 &self.sigma4,
1856 )
1857 .0,
1858 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1859 &self.q1,
1860 )
1861 .0,
1862 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1863 &self.q2,
1864 )
1865 .0,
1866 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1867 &self.q3,
1868 )
1869 .0,
1870 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1871 &self.q4,
1872 )
1873 .0,
1874 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1875 &self.qM12,
1876 )
1877 .0,
1878 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1879 &self.qM34,
1880 )
1881 .0,
1882 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1883 &self.qO,
1884 )
1885 .0,
1886 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1887 &self.qC,
1888 )
1889 .0,
1890 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1891 &self.qH1,
1892 )
1893 .0,
1894 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1895 &self.qH2,
1896 )
1897 .0,
1898 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1899 &self.qH3,
1900 )
1901 .0,
1902 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1903 &self.qH4,
1904 )
1905 .0,
1906 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1907 &self.qEcc,
1908 )
1909 .0,
1910 <alloy::sol_types::sol_data::FixedBytes<
1911 32,
1912 > as alloy_sol_types::SolType>::eip712_data_word(&self.g2LSB)
1913 .0,
1914 <alloy::sol_types::sol_data::FixedBytes<
1915 32,
1916 > as alloy_sol_types::SolType>::eip712_data_word(&self.g2MSB)
1917 .0,
1918 ]
1919 .concat()
1920 }
1921 }
1922 #[automatically_derived]
1923 impl alloy_sol_types::EventTopic for VerifyingKey {
1924 #[inline]
1925 fn topic_preimage_length(rust: &Self::RustType) -> usize {
1926 0usize
1927 + <alloy::sol_types::sol_data::Uint<
1928 256,
1929 > as alloy_sol_types::EventTopic>::topic_preimage_length(
1930 &rust.domainSize,
1931 )
1932 + <alloy::sol_types::sol_data::Uint<
1933 256,
1934 > as alloy_sol_types::EventTopic>::topic_preimage_length(
1935 &rust.numInputs,
1936 )
1937 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1938 &rust.sigma0,
1939 )
1940 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1941 &rust.sigma1,
1942 )
1943 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1944 &rust.sigma2,
1945 )
1946 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1947 &rust.sigma3,
1948 )
1949 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1950 &rust.sigma4,
1951 )
1952 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1953 &rust.q1,
1954 )
1955 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1956 &rust.q2,
1957 )
1958 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1959 &rust.q3,
1960 )
1961 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1962 &rust.q4,
1963 )
1964 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1965 &rust.qM12,
1966 )
1967 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1968 &rust.qM34,
1969 )
1970 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1971 &rust.qO,
1972 )
1973 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1974 &rust.qC,
1975 )
1976 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1977 &rust.qH1,
1978 )
1979 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1980 &rust.qH2,
1981 )
1982 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1983 &rust.qH3,
1984 )
1985 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1986 &rust.qH4,
1987 )
1988 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1989 &rust.qEcc,
1990 )
1991 + <alloy::sol_types::sol_data::FixedBytes<
1992 32,
1993 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.g2LSB)
1994 + <alloy::sol_types::sol_data::FixedBytes<
1995 32,
1996 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.g2MSB)
1997 }
1998 #[inline]
1999 fn encode_topic_preimage(
2000 rust: &Self::RustType,
2001 out: &mut alloy_sol_types::private::Vec<u8>,
2002 ) {
2003 out.reserve(
2004 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
2005 );
2006 <alloy::sol_types::sol_data::Uint<
2007 256,
2008 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2009 &rust.domainSize,
2010 out,
2011 );
2012 <alloy::sol_types::sol_data::Uint<
2013 256,
2014 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2015 &rust.numInputs,
2016 out,
2017 );
2018 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2019 &rust.sigma0,
2020 out,
2021 );
2022 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2023 &rust.sigma1,
2024 out,
2025 );
2026 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2027 &rust.sigma2,
2028 out,
2029 );
2030 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2031 &rust.sigma3,
2032 out,
2033 );
2034 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2035 &rust.sigma4,
2036 out,
2037 );
2038 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2039 &rust.q1,
2040 out,
2041 );
2042 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2043 &rust.q2,
2044 out,
2045 );
2046 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2047 &rust.q3,
2048 out,
2049 );
2050 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2051 &rust.q4,
2052 out,
2053 );
2054 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2055 &rust.qM12,
2056 out,
2057 );
2058 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2059 &rust.qM34,
2060 out,
2061 );
2062 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2063 &rust.qO,
2064 out,
2065 );
2066 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2067 &rust.qC,
2068 out,
2069 );
2070 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2071 &rust.qH1,
2072 out,
2073 );
2074 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2075 &rust.qH2,
2076 out,
2077 );
2078 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2079 &rust.qH3,
2080 out,
2081 );
2082 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2083 &rust.qH4,
2084 out,
2085 );
2086 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
2087 &rust.qEcc,
2088 out,
2089 );
2090 <alloy::sol_types::sol_data::FixedBytes<
2091 32,
2092 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2093 &rust.g2LSB,
2094 out,
2095 );
2096 <alloy::sol_types::sol_data::FixedBytes<
2097 32,
2098 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2099 &rust.g2MSB,
2100 out,
2101 );
2102 }
2103 #[inline]
2104 fn encode_topic(
2105 rust: &Self::RustType,
2106 ) -> alloy_sol_types::abi::token::WordToken {
2107 let mut out = alloy_sol_types::private::Vec::new();
2108 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
2109 rust,
2110 &mut out,
2111 );
2112 alloy_sol_types::abi::token::WordToken(
2113 alloy_sol_types::private::keccak256(out),
2114 )
2115 }
2116 }
2117 };
2118 use alloy::contract as alloy_contract;
2119 #[inline]
2123 pub const fn new<
2124 P: alloy_contract::private::Provider<N>,
2125 N: alloy_contract::private::Network,
2126 >(
2127 address: alloy_sol_types::private::Address,
2128 __provider: P,
2129 ) -> IPlonkVerifierInstance<P, N> {
2130 IPlonkVerifierInstance::<P, N>::new(address, __provider)
2131 }
2132 #[derive(Clone)]
2144 pub struct IPlonkVerifierInstance<P, N = alloy_contract::private::Ethereum> {
2145 address: alloy_sol_types::private::Address,
2146 provider: P,
2147 _network: ::core::marker::PhantomData<N>,
2148 }
2149 #[automatically_derived]
2150 impl<P, N> ::core::fmt::Debug for IPlonkVerifierInstance<P, N> {
2151 #[inline]
2152 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2153 f.debug_tuple("IPlonkVerifierInstance").field(&self.address).finish()
2154 }
2155 }
2156 #[automatically_derived]
2158 impl<
2159 P: alloy_contract::private::Provider<N>,
2160 N: alloy_contract::private::Network,
2161 > IPlonkVerifierInstance<P, N> {
2162 #[inline]
2166 pub const fn new(
2167 address: alloy_sol_types::private::Address,
2168 __provider: P,
2169 ) -> Self {
2170 Self {
2171 address,
2172 provider: __provider,
2173 _network: ::core::marker::PhantomData,
2174 }
2175 }
2176 #[inline]
2178 pub const fn address(&self) -> &alloy_sol_types::private::Address {
2179 &self.address
2180 }
2181 #[inline]
2183 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
2184 self.address = address;
2185 }
2186 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
2188 self.set_address(address);
2189 self
2190 }
2191 #[inline]
2193 pub const fn provider(&self) -> &P {
2194 &self.provider
2195 }
2196 }
2197 impl<P: ::core::clone::Clone, N> IPlonkVerifierInstance<&P, N> {
2198 #[inline]
2200 pub fn with_cloned_provider(self) -> IPlonkVerifierInstance<P, N> {
2201 IPlonkVerifierInstance {
2202 address: self.address,
2203 provider: ::core::clone::Clone::clone(&self.provider),
2204 _network: ::core::marker::PhantomData,
2205 }
2206 }
2207 }
2208 #[automatically_derived]
2210 impl<
2211 P: alloy_contract::private::Provider<N>,
2212 N: alloy_contract::private::Network,
2213 > IPlonkVerifierInstance<P, N> {
2214 pub fn call_builder<C: alloy_sol_types::SolCall>(
2219 &self,
2220 call: &C,
2221 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
2222 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
2223 }
2224 }
2225 #[automatically_derived]
2227 impl<
2228 P: alloy_contract::private::Provider<N>,
2229 N: alloy_contract::private::Network,
2230 > IPlonkVerifierInstance<P, N> {
2231 pub fn event_filter<E: alloy_sol_types::SolEvent>(
2236 &self,
2237 ) -> alloy_contract::Event<&P, E, N> {
2238 alloy_contract::Event::new_sol(&self.provider, &self.address)
2239 }
2240 }
2241}
2242#[allow(
2252 non_camel_case_types,
2253 non_snake_case,
2254 clippy::pub_underscore_fields,
2255 clippy::style,
2256 clippy::empty_structs_with_brackets
2257)]
2258pub mod LightClient {
2259 use super::*;
2260 use alloy::sol_types as alloy_sol_types;
2261 #[derive(serde::Serialize, serde::Deserialize)]
2262 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2263 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2267 #[derive(Clone)]
2268 pub struct LightClientState {
2269 #[allow(missing_docs)]
2270 pub viewNum: u64,
2271 #[allow(missing_docs)]
2272 pub blockHeight: u64,
2273 #[allow(missing_docs)]
2274 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2275 }
2276 #[allow(
2277 non_camel_case_types,
2278 non_snake_case,
2279 clippy::pub_underscore_fields,
2280 clippy::style
2281 )]
2282 const _: () = {
2283 use alloy::sol_types as alloy_sol_types;
2284 #[doc(hidden)]
2285 #[allow(dead_code)]
2286 type UnderlyingSolTuple<'a> = (
2287 alloy::sol_types::sol_data::Uint<64>,
2288 alloy::sol_types::sol_data::Uint<64>,
2289 BN254::ScalarField,
2290 );
2291 #[doc(hidden)]
2292 type UnderlyingRustTuple<'a> = (
2293 u64,
2294 u64,
2295 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2296 );
2297 #[cfg(test)]
2298 #[allow(dead_code, unreachable_patterns)]
2299 fn _type_assertion(
2300 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2301 ) {
2302 match _t {
2303 alloy_sol_types::private::AssertTypeEq::<
2304 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2305 >(_) => {}
2306 }
2307 }
2308 #[automatically_derived]
2309 #[doc(hidden)]
2310 impl ::core::convert::From<LightClientState> for UnderlyingRustTuple<'_> {
2311 fn from(value: LightClientState) -> Self {
2312 (value.viewNum, value.blockHeight, value.blockCommRoot)
2313 }
2314 }
2315 #[automatically_derived]
2316 #[doc(hidden)]
2317 impl ::core::convert::From<UnderlyingRustTuple<'_>> for LightClientState {
2318 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2319 Self {
2320 viewNum: tuple.0,
2321 blockHeight: tuple.1,
2322 blockCommRoot: tuple.2,
2323 }
2324 }
2325 }
2326 #[automatically_derived]
2327 impl alloy_sol_types::SolValue for LightClientState {
2328 type SolType = Self;
2329 }
2330 #[automatically_derived]
2331 impl alloy_sol_types::private::SolTypeValue<Self> for LightClientState {
2332 #[inline]
2333 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
2334 (
2335 <alloy::sol_types::sol_data::Uint<
2336 64,
2337 > as alloy_sol_types::SolType>::tokenize(&self.viewNum),
2338 <alloy::sol_types::sol_data::Uint<
2339 64,
2340 > as alloy_sol_types::SolType>::tokenize(&self.blockHeight),
2341 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
2342 &self.blockCommRoot,
2343 ),
2344 )
2345 }
2346 #[inline]
2347 fn stv_abi_encoded_size(&self) -> usize {
2348 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
2349 return size;
2350 }
2351 let tuple = <UnderlyingRustTuple<
2352 '_,
2353 > as ::core::convert::From<Self>>::from(self.clone());
2354 <UnderlyingSolTuple<
2355 '_,
2356 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
2357 }
2358 #[inline]
2359 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
2360 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
2361 }
2362 #[inline]
2363 fn stv_abi_encode_packed_to(
2364 &self,
2365 out: &mut alloy_sol_types::private::Vec<u8>,
2366 ) {
2367 let tuple = <UnderlyingRustTuple<
2368 '_,
2369 > as ::core::convert::From<Self>>::from(self.clone());
2370 <UnderlyingSolTuple<
2371 '_,
2372 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
2373 }
2374 #[inline]
2375 fn stv_abi_packed_encoded_size(&self) -> usize {
2376 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
2377 return size;
2378 }
2379 let tuple = <UnderlyingRustTuple<
2380 '_,
2381 > as ::core::convert::From<Self>>::from(self.clone());
2382 <UnderlyingSolTuple<
2383 '_,
2384 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
2385 }
2386 }
2387 #[automatically_derived]
2388 impl alloy_sol_types::SolType for LightClientState {
2389 type RustType = Self;
2390 type Token<'a> = <UnderlyingSolTuple<
2391 'a,
2392 > as alloy_sol_types::SolType>::Token<'a>;
2393 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
2394 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
2395 '_,
2396 > as alloy_sol_types::SolType>::ENCODED_SIZE;
2397 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
2398 '_,
2399 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
2400 #[inline]
2401 fn valid_token(token: &Self::Token<'_>) -> bool {
2402 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
2403 }
2404 #[inline]
2405 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
2406 let tuple = <UnderlyingSolTuple<
2407 '_,
2408 > as alloy_sol_types::SolType>::detokenize(token);
2409 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
2410 }
2411 }
2412 #[automatically_derived]
2413 impl alloy_sol_types::SolStruct for LightClientState {
2414 const NAME: &'static str = "LightClientState";
2415 #[inline]
2416 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
2417 alloy_sol_types::private::Cow::Borrowed(
2418 "LightClientState(uint64 viewNum,uint64 blockHeight,uint256 blockCommRoot)",
2419 )
2420 }
2421 #[inline]
2422 fn eip712_components() -> alloy_sol_types::private::Vec<
2423 alloy_sol_types::private::Cow<'static, str>,
2424 > {
2425 alloy_sol_types::private::Vec::new()
2426 }
2427 #[inline]
2428 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
2429 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
2430 }
2431 #[inline]
2432 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
2433 [
2434 <alloy::sol_types::sol_data::Uint<
2435 64,
2436 > as alloy_sol_types::SolType>::eip712_data_word(&self.viewNum)
2437 .0,
2438 <alloy::sol_types::sol_data::Uint<
2439 64,
2440 > as alloy_sol_types::SolType>::eip712_data_word(&self.blockHeight)
2441 .0,
2442 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
2443 &self.blockCommRoot,
2444 )
2445 .0,
2446 ]
2447 .concat()
2448 }
2449 }
2450 #[automatically_derived]
2451 impl alloy_sol_types::EventTopic for LightClientState {
2452 #[inline]
2453 fn topic_preimage_length(rust: &Self::RustType) -> usize {
2454 0usize
2455 + <alloy::sol_types::sol_data::Uint<
2456 64,
2457 > as alloy_sol_types::EventTopic>::topic_preimage_length(
2458 &rust.viewNum,
2459 )
2460 + <alloy::sol_types::sol_data::Uint<
2461 64,
2462 > as alloy_sol_types::EventTopic>::topic_preimage_length(
2463 &rust.blockHeight,
2464 )
2465 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
2466 &rust.blockCommRoot,
2467 )
2468 }
2469 #[inline]
2470 fn encode_topic_preimage(
2471 rust: &Self::RustType,
2472 out: &mut alloy_sol_types::private::Vec<u8>,
2473 ) {
2474 out.reserve(
2475 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
2476 );
2477 <alloy::sol_types::sol_data::Uint<
2478 64,
2479 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2480 &rust.viewNum,
2481 out,
2482 );
2483 <alloy::sol_types::sol_data::Uint<
2484 64,
2485 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2486 &rust.blockHeight,
2487 out,
2488 );
2489 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
2490 &rust.blockCommRoot,
2491 out,
2492 );
2493 }
2494 #[inline]
2495 fn encode_topic(
2496 rust: &Self::RustType,
2497 ) -> alloy_sol_types::abi::token::WordToken {
2498 let mut out = alloy_sol_types::private::Vec::new();
2499 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
2500 rust,
2501 &mut out,
2502 );
2503 alloy_sol_types::abi::token::WordToken(
2504 alloy_sol_types::private::keccak256(out),
2505 )
2506 }
2507 }
2508 };
2509 #[derive(serde::Serialize, serde::Deserialize)]
2510 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2511 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2515 #[derive(Clone)]
2516 pub struct StakeTableState {
2517 #[allow(missing_docs)]
2518 pub threshold: alloy::sol_types::private::primitives::aliases::U256,
2519 #[allow(missing_docs)]
2520 pub blsKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2521 #[allow(missing_docs)]
2522 pub schnorrKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2523 #[allow(missing_docs)]
2524 pub amountComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2525 }
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 alloy::sol_types::sol_data::Uint<256>,
2538 BN254::ScalarField,
2539 BN254::ScalarField,
2540 BN254::ScalarField,
2541 );
2542 #[doc(hidden)]
2543 type UnderlyingRustTuple<'a> = (
2544 alloy::sol_types::private::primitives::aliases::U256,
2545 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2546 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2547 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
2548 );
2549 #[cfg(test)]
2550 #[allow(dead_code, unreachable_patterns)]
2551 fn _type_assertion(
2552 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2553 ) {
2554 match _t {
2555 alloy_sol_types::private::AssertTypeEq::<
2556 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2557 >(_) => {}
2558 }
2559 }
2560 #[automatically_derived]
2561 #[doc(hidden)]
2562 impl ::core::convert::From<StakeTableState> for UnderlyingRustTuple<'_> {
2563 fn from(value: StakeTableState) -> Self {
2564 (
2565 value.threshold,
2566 value.blsKeyComm,
2567 value.schnorrKeyComm,
2568 value.amountComm,
2569 )
2570 }
2571 }
2572 #[automatically_derived]
2573 #[doc(hidden)]
2574 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StakeTableState {
2575 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2576 Self {
2577 threshold: tuple.0,
2578 blsKeyComm: tuple.1,
2579 schnorrKeyComm: tuple.2,
2580 amountComm: tuple.3,
2581 }
2582 }
2583 }
2584 #[automatically_derived]
2585 impl alloy_sol_types::SolValue for StakeTableState {
2586 type SolType = Self;
2587 }
2588 #[automatically_derived]
2589 impl alloy_sol_types::private::SolTypeValue<Self> for StakeTableState {
2590 #[inline]
2591 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
2592 (
2593 <alloy::sol_types::sol_data::Uint<
2594 256,
2595 > as alloy_sol_types::SolType>::tokenize(&self.threshold),
2596 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
2597 &self.blsKeyComm,
2598 ),
2599 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
2600 &self.schnorrKeyComm,
2601 ),
2602 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
2603 &self.amountComm,
2604 ),
2605 )
2606 }
2607 #[inline]
2608 fn stv_abi_encoded_size(&self) -> usize {
2609 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
2610 return size;
2611 }
2612 let tuple = <UnderlyingRustTuple<
2613 '_,
2614 > as ::core::convert::From<Self>>::from(self.clone());
2615 <UnderlyingSolTuple<
2616 '_,
2617 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
2618 }
2619 #[inline]
2620 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
2621 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
2622 }
2623 #[inline]
2624 fn stv_abi_encode_packed_to(
2625 &self,
2626 out: &mut alloy_sol_types::private::Vec<u8>,
2627 ) {
2628 let tuple = <UnderlyingRustTuple<
2629 '_,
2630 > as ::core::convert::From<Self>>::from(self.clone());
2631 <UnderlyingSolTuple<
2632 '_,
2633 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
2634 }
2635 #[inline]
2636 fn stv_abi_packed_encoded_size(&self) -> usize {
2637 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
2638 return size;
2639 }
2640 let tuple = <UnderlyingRustTuple<
2641 '_,
2642 > as ::core::convert::From<Self>>::from(self.clone());
2643 <UnderlyingSolTuple<
2644 '_,
2645 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
2646 }
2647 }
2648 #[automatically_derived]
2649 impl alloy_sol_types::SolType for StakeTableState {
2650 type RustType = Self;
2651 type Token<'a> = <UnderlyingSolTuple<
2652 'a,
2653 > as alloy_sol_types::SolType>::Token<'a>;
2654 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
2655 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
2656 '_,
2657 > as alloy_sol_types::SolType>::ENCODED_SIZE;
2658 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
2659 '_,
2660 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
2661 #[inline]
2662 fn valid_token(token: &Self::Token<'_>) -> bool {
2663 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
2664 }
2665 #[inline]
2666 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
2667 let tuple = <UnderlyingSolTuple<
2668 '_,
2669 > as alloy_sol_types::SolType>::detokenize(token);
2670 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
2671 }
2672 }
2673 #[automatically_derived]
2674 impl alloy_sol_types::SolStruct for StakeTableState {
2675 const NAME: &'static str = "StakeTableState";
2676 #[inline]
2677 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
2678 alloy_sol_types::private::Cow::Borrowed(
2679 "StakeTableState(uint256 threshold,uint256 blsKeyComm,uint256 schnorrKeyComm,uint256 amountComm)",
2680 )
2681 }
2682 #[inline]
2683 fn eip712_components() -> alloy_sol_types::private::Vec<
2684 alloy_sol_types::private::Cow<'static, str>,
2685 > {
2686 alloy_sol_types::private::Vec::new()
2687 }
2688 #[inline]
2689 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
2690 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
2691 }
2692 #[inline]
2693 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
2694 [
2695 <alloy::sol_types::sol_data::Uint<
2696 256,
2697 > as alloy_sol_types::SolType>::eip712_data_word(&self.threshold)
2698 .0,
2699 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
2700 &self.blsKeyComm,
2701 )
2702 .0,
2703 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
2704 &self.schnorrKeyComm,
2705 )
2706 .0,
2707 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
2708 &self.amountComm,
2709 )
2710 .0,
2711 ]
2712 .concat()
2713 }
2714 }
2715 #[automatically_derived]
2716 impl alloy_sol_types::EventTopic for StakeTableState {
2717 #[inline]
2718 fn topic_preimage_length(rust: &Self::RustType) -> usize {
2719 0usize
2720 + <alloy::sol_types::sol_data::Uint<
2721 256,
2722 > as alloy_sol_types::EventTopic>::topic_preimage_length(
2723 &rust.threshold,
2724 )
2725 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
2726 &rust.blsKeyComm,
2727 )
2728 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
2729 &rust.schnorrKeyComm,
2730 )
2731 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
2732 &rust.amountComm,
2733 )
2734 }
2735 #[inline]
2736 fn encode_topic_preimage(
2737 rust: &Self::RustType,
2738 out: &mut alloy_sol_types::private::Vec<u8>,
2739 ) {
2740 out.reserve(
2741 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
2742 );
2743 <alloy::sol_types::sol_data::Uint<
2744 256,
2745 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
2746 &rust.threshold,
2747 out,
2748 );
2749 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
2750 &rust.blsKeyComm,
2751 out,
2752 );
2753 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
2754 &rust.schnorrKeyComm,
2755 out,
2756 );
2757 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
2758 &rust.amountComm,
2759 out,
2760 );
2761 }
2762 #[inline]
2763 fn encode_topic(
2764 rust: &Self::RustType,
2765 ) -> alloy_sol_types::abi::token::WordToken {
2766 let mut out = alloy_sol_types::private::Vec::new();
2767 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
2768 rust,
2769 &mut out,
2770 );
2771 alloy_sol_types::abi::token::WordToken(
2772 alloy_sol_types::private::keccak256(out),
2773 )
2774 }
2775 }
2776 };
2777 use alloy::contract as alloy_contract;
2778 #[inline]
2782 pub const fn new<
2783 P: alloy_contract::private::Provider<N>,
2784 N: alloy_contract::private::Network,
2785 >(
2786 address: alloy_sol_types::private::Address,
2787 __provider: P,
2788 ) -> LightClientInstance<P, N> {
2789 LightClientInstance::<P, N>::new(address, __provider)
2790 }
2791 #[derive(Clone)]
2803 pub struct LightClientInstance<P, N = alloy_contract::private::Ethereum> {
2804 address: alloy_sol_types::private::Address,
2805 provider: P,
2806 _network: ::core::marker::PhantomData<N>,
2807 }
2808 #[automatically_derived]
2809 impl<P, N> ::core::fmt::Debug for LightClientInstance<P, N> {
2810 #[inline]
2811 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2812 f.debug_tuple("LightClientInstance").field(&self.address).finish()
2813 }
2814 }
2815 #[automatically_derived]
2817 impl<
2818 P: alloy_contract::private::Provider<N>,
2819 N: alloy_contract::private::Network,
2820 > LightClientInstance<P, N> {
2821 #[inline]
2825 pub const fn new(
2826 address: alloy_sol_types::private::Address,
2827 __provider: P,
2828 ) -> Self {
2829 Self {
2830 address,
2831 provider: __provider,
2832 _network: ::core::marker::PhantomData,
2833 }
2834 }
2835 #[inline]
2837 pub const fn address(&self) -> &alloy_sol_types::private::Address {
2838 &self.address
2839 }
2840 #[inline]
2842 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
2843 self.address = address;
2844 }
2845 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
2847 self.set_address(address);
2848 self
2849 }
2850 #[inline]
2852 pub const fn provider(&self) -> &P {
2853 &self.provider
2854 }
2855 }
2856 impl<P: ::core::clone::Clone, N> LightClientInstance<&P, N> {
2857 #[inline]
2859 pub fn with_cloned_provider(self) -> LightClientInstance<P, N> {
2860 LightClientInstance {
2861 address: self.address,
2862 provider: ::core::clone::Clone::clone(&self.provider),
2863 _network: ::core::marker::PhantomData,
2864 }
2865 }
2866 }
2867 #[automatically_derived]
2869 impl<
2870 P: alloy_contract::private::Provider<N>,
2871 N: alloy_contract::private::Network,
2872 > LightClientInstance<P, N> {
2873 pub fn call_builder<C: alloy_sol_types::SolCall>(
2878 &self,
2879 call: &C,
2880 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
2881 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
2882 }
2883 }
2884 #[automatically_derived]
2886 impl<
2887 P: alloy_contract::private::Provider<N>,
2888 N: alloy_contract::private::Network,
2889 > LightClientInstance<P, N> {
2890 pub fn event_filter<E: alloy_sol_types::SolEvent>(
2895 &self,
2896 ) -> alloy_contract::Event<&P, E, N> {
2897 alloy_contract::Event::new_sol(&self.provider, &self.address)
2898 }
2899 }
2900}
2901#[allow(
4910 non_camel_case_types,
4911 non_snake_case,
4912 clippy::pub_underscore_fields,
4913 clippy::style,
4914 clippy::empty_structs_with_brackets
4915)]
4916pub mod LightClientV2 {
4917 use super::*;
4918 use alloy::sol_types as alloy_sol_types;
4919 #[rustfmt::skip]
4925 #[allow(clippy::all)]
4926 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
4927 b"`\xA0`@R0`\x80R4\x80\x15a\0\x13W__\xFD[Pa\0\x1Ca\0!V[a\0\xD3V[\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\0qW`@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\xD0W\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[`\x80Qa4@a\0\xF9_9_\x81\x81a\x1B'\x01R\x81\x81a\x1BP\x01Ra\x1C\xCD\x01Ra4@_\xF3\xFE`\x80`@R`\x046\x10a\x02\x07W_5`\xE0\x1C\x80cqP\x18\xA6\x11a\x01\x13W\x80c\x9F\xDBT\xA7\x11a\0\x9DW\x80c\xD2M\x93=\x11a\0mW\x80c\xD2M\x93=\x14a\x06\xF9W\x80c\xE003\x01\x14a\x07(W\x80c\xF0h T\x14a\x07GW\x80c\xF2\xFD\xE3\x8B\x14a\x07fW\x80c\xF9\xE5\r\x19\x14a\x07\x85W__\xFD[\x80c\x9F\xDBT\xA7\x14a\x06\x10W\x80c\xAD<\xB1\xCC\x14a\x06eW\x80c\xB3;\xC4\x91\x14a\x06\xA2W\x80c\xC2;\x9E\x9E\x14a\x06\xC1W__\xFD[\x80c\x85\x84\xD2?\x11a\0\xE3W\x80c\x85\x84\xD2?\x14a\x05;W\x80c\x8D\xA5\xCB[\x14a\x05wW\x80c\x90\xC1C\x90\x14a\x05\xB3W\x80c\x96\xC1\xCAa\x14a\x05\xD2W\x80c\x9B\xAA<\xC9\x14a\x05\xF1W__\xFD[\x80cqP\x18\xA6\x14a\x04\xD5W\x80cu|7\xAD\x14a\x04\xE9W\x80cvg\x18\x08\x14a\x05\x08W\x80c\x82nA\xFC\x14a\x05\x1CW__\xFD[\x80c0\x0C\x89\xDD\x11a\x01\x94W\x80cBm1\x94\x11a\x01dW\x80cBm1\x94\x14a\x04ZW\x80cC=\xBA\x9F\x14a\x04{W\x80cO\x1E\xF2\x86\x14a\x04\x9AW\x80cR\xD1\x90-\x14a\x04\xADW\x80ci\xCCj\x04\x14a\x04\xC1W__\xFD[\x80c0\x0C\x89\xDD\x14a\x03\xC2W\x80c1=\xF7\xB1\x14a\x03\xE1W\x80c7\x8E\xC2;\x14a\x04\x18W\x80c>\xD5[{\x14a\x044W__\xFD[\x80c\x12\x17<,\x11a\x01\xDAW\x80c\x12\x17<,\x14a\x02\xF6W\x80c\x16z\xC6\x18\x14a\x03\x17W\x80c c\xD4\xF7\x14a\x036W\x80c%)t'\x14a\x03UW\x80c/y\x88\x9D\x14a\x03\x84W__\xFD[\x80c\x01?\xA5\xFC\x14a\x02\x0BW\x80c\x02\xB5\x92\xF3\x14a\x02,W\x80c\x06%\xE1\x9B\x14a\x02\x89W\x80c\r\x8En,\x14a\x02\xCBW[__\xFD[4\x80\x15a\x02\x16W__\xFD[Pa\x02*a\x02%6`\x04a'\x1DV[a\x07\x99V[\0[4\x80\x15a\x027W__\xFD[Pa\x02Ka\x02F6`\x04a'6V[a\x08LV[`@Qa\x02\x80\x94\x93\x92\x91\x90`\x01`\x01`@\x1B\x03\x94\x85\x16\x81R\x92\x84\x16` \x84\x01R\x92\x16`@\x82\x01R``\x81\x01\x91\x90\x91R`\x80\x01\x90V[`@Q\x80\x91\x03\x90\xF3[4\x80\x15a\x02\x94W__\xFD[P`\x0BT`\x0CT`\rT`\x0ETa\x02\xAB\x93\x92\x91\x90\x84V[`@\x80Q\x94\x85R` \x85\x01\x93\x90\x93R\x91\x83\x01R``\x82\x01R`\x80\x01a\x02\x80V[4\x80\x15a\x02\xD6W__\xFD[P`@\x80Q`\x02\x81R_` \x82\x01\x81\x90R\x91\x81\x01\x91\x90\x91R``\x01a\x02\x80V[4\x80\x15a\x03\x01W__\xFD[Pa\x03\na\x08\x95V[`@Qa\x02\x80\x91\x90a'MV[4\x80\x15a\x03\"W__\xFD[Pa\x02*a\x0316`\x04a)dV[a\x08\xAAV[4\x80\x15a\x03AW__\xFD[Pa\x02*a\x03P6`\x04a,&V[a\t!V[4\x80\x15a\x03`W__\xFD[Pa\x03ta\x03o6`\x04a)dV[a\t:V[`@Q\x90\x15\x15\x81R` \x01a\x02\x80V[4\x80\x15a\x03\x8FW__\xFD[P`\x08Ta\x03\xAA\x90`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81V[`@Q`\x01`\x01`@\x1B\x03\x90\x91\x16\x81R` \x01a\x02\x80V[4\x80\x15a\x03\xCDW__\xFD[Pa\x03ta\x03\xDC6`\x04a)dV[a\t\x9CV[4\x80\x15a\x03\xECW__\xFD[P`\x08Ta\x04\0\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x02\x80V[4\x80\x15a\x04#W__\xFD[PC[`@Q\x90\x81R` \x01a\x02\x80V[4\x80\x15a\x04?W__\xFD[P`\nTa\x03\xAA\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81V[4\x80\x15a\x04eW__\xFD[P_T`\x01T`\x02T`\x03Ta\x02\xAB\x93\x92\x91\x90\x84V[4\x80\x15a\x04\x86W__\xFD[Pa\x02*a\x04\x956`\x04a,mV[a\n1V[a\x02*a\x04\xA86`\x04a,\x86V[a\nEV[4\x80\x15a\x04\xB8W__\xFD[Pa\x04&a\ndV[4\x80\x15a\x04\xCCW__\xFD[Pa\x02*a\n\x7FV[4\x80\x15a\x04\xE0W__\xFD[Pa\x02*a\n\xEDV[4\x80\x15a\x04\xF4W__\xFD[Pa\x02*a\x05\x036`\x04a-\x89V[a\n\xFEV[4\x80\x15a\x05\x13W__\xFD[Pa\x03\xAAa\x0E1V[4\x80\x15a\x05'W__\xFD[P`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15a\x03tV[4\x80\x15a\x05FW__\xFD[Pa\x05Za\x05U6`\x04a'6V[a\x0EVV[`@\x80Q\x92\x83R`\x01`\x01`@\x1B\x03\x90\x91\x16` \x83\x01R\x01a\x02\x80V[4\x80\x15a\x05\x82W__\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\x16a\x04\0V[4\x80\x15a\x05\xBEW__\xFD[Pa\x03\xAAa\x05\xCD6`\x04a-\xCDV[a\x0F\x81V[4\x80\x15a\x05\xDDW__\xFD[Pa\x02*a\x05\xEC6`\x04a,mV[a\x0F\xF0V[4\x80\x15a\x05\xFCW__\xFD[Pa\x02*a\x06\x0B6`\x04a-\xF5V[a\x10yV[4\x80\x15a\x06\x1BW__\xFD[P`\x06T`\x07Ta\x06?\x91`\x01`\x01`@\x1B\x03\x80\x82\x16\x92`\x01`@\x1B\x90\x92\x04\x16\x90\x83V[`@\x80Q`\x01`\x01`@\x1B\x03\x94\x85\x16\x81R\x93\x90\x92\x16` \x84\x01R\x90\x82\x01R``\x01a\x02\x80V[4\x80\x15a\x06pW__\xFD[Pa\x06\x95`@Q\x80`@\x01`@R\x80`\x05\x81R` \x01d\x03R\xE3\x02\xE3`\xDC\x1B\x81RP\x81V[`@Qa\x02\x80\x91\x90a.JV[4\x80\x15a\x06\xADW__\xFD[Pa\x02*a\x06\xBC6`\x04a-\xCDV[a\x11\x9BV[4\x80\x15a\x06\xCCW__\xFD[P`\x08Ta\x06\xE4\x90`\x01`\xA0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x81V[`@Qc\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\x02\x80V[4\x80\x15a\x07\x04W__\xFD[P`\x04T`\x05Ta\x06?\x91`\x01`\x01`@\x1B\x03\x80\x82\x16\x92`\x01`@\x1B\x90\x92\x04\x16\x90\x83V[4\x80\x15a\x073W__\xFD[Pa\x03ta\x07B6`\x04a.\x7FV[a\x12\xFFV[4\x80\x15a\x07RW__\xFD[P`\nTa\x03\xAA\x90`\x01`\x01`@\x1B\x03\x16\x81V[4\x80\x15a\x07qW__\xFD[Pa\x02*a\x07\x806`\x04a'\x1DV[a\x14WV[4\x80\x15a\x07\x90W__\xFD[P`\tTa\x04&V[a\x07\xA1a\x14\x96V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x07\xC8W`@Qc\xE6\xC4${`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08T`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x90\x82\x16\x03a\x07\xF7W`@Qc\xA8c\xAE\xC9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x83\x16\x90\x81\x17\x90\x91U`@Q\x90\x81R\x7F\x80\x17\xBB\x88\x7F\xDF\x8F\xCAC\x14\xA9\xD4\x0Fns\xB3\xB8\x10\x02\xD6~\\\xFA\x85\xD8\x81s\xAFj\xA4`r\x90` \x01[`@Q\x80\x91\x03\x90\xA1PV[`\t\x81\x81T\x81\x10a\x08[W_\x80\xFD[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01\x80T`\x01\x90\x91\x01T`\x01`\x01`@\x1B\x03\x80\x83\x16\x93P`\x01`@\x1B\x83\x04\x81\x16\x92`\x01`\x80\x1B\x90\x04\x16\x90\x84V[a\x08\x9Da$\x83V[a\x08\xA5a\x14\xF1V[\x90P\x90V[a\x08\xB2a\x14\x96V[`\n\x80To\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\x19\x81\x16`\x01`@\x1B`\x01`\x01`@\x1B\x03\x85\x81\x16\x82\x02\x92\x83\x17\x94\x85\x90Ua\x08\xF8\x94\x91\x90\x91\x04\x81\x16\x92\x81\x16\x91\x16\x17a\x0F\x81V[`\n`\x10a\x01\0\n\x81T\x81`\x01`\x01`@\x1B\x03\x02\x19\x16\x90\x83`\x01`\x01`@\x1B\x03\x16\x02\x17\x90UPPV[`@QcN@\\\x8D`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_`\x01`\x01`@\x1B\x03\x82\x16\x15\x80a\tZWP`\nT`\x01`\x01`@\x1B\x03\x16\x15[\x15a\tfWP_\x91\x90PV[`\nT`\x01`\x01`@\x1B\x03\x16a\t}\x83`\x05a.\xB3V[a\t\x87\x91\x90a.\xE6V[`\x01`\x01`@\x1B\x03\x16\x15\x92\x91PPV[\x91\x90PV[_`\x01`\x01`@\x1B\x03\x82\x16\x15\x80a\t\xBCWP`\nT`\x01`\x01`@\x1B\x03\x16\x15[\x15a\t\xC8WP_\x91\x90PV[`\nTa\t\xDE\x90`\x01`\x01`@\x1B\x03\x16\x83a.\xE6V[`\x01`\x01`@\x1B\x03\x16\x15\x80a\n+WP`\nTa\n\x06\x90`\x05\x90`\x01`\x01`@\x1B\x03\x16a/\x13V[`\nT`\x01`\x01`@\x1B\x03\x91\x82\x16\x91a\n \x91\x16\x84a.\xE6V[`\x01`\x01`@\x1B\x03\x16\x11[\x92\x91PPV[a\n9a\x14\x96V[a\nB\x81a\x0F\xF0V[PV[a\nMa\x1B\x1CV[a\nV\x82a\x1B\xC0V[a\n`\x82\x82a\x1C\x01V[PPV[_a\nma\x1C\xC2V[P_Q` a4\x14_9_Q\x90_R\x90V[a\n\x87a\x14\x96V[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15a\n\xD2W`\x08\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x90U`@Q\x7F\x9A_W\xDE\x85m\xD6h\xC5M\xD9^\\U\xDF\x93C!q\xCB\xCAI\xA8wmV \xEAY\xC0$P\x90_\x90\xA1V[`@Qc\xA8c\xAE\xC9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[V[a\n\xF5a\x14\x96V[a\n\xEB_a\x1D\x0BV[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15\x80\x15a\x0B#WP`\x08T`\x01`\x01`\xA0\x1B\x03\x163\x14\x15[\x15a\x0BAW`@Qc\x01GL\x8F`\xE7\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x06T\x83Q`\x01`\x01`@\x1B\x03\x91\x82\x16\x91\x16\x11\x15\x80a\x0BzWP`\x06T` \x84\x01Q`\x01`\x01`@\x1B\x03`\x01`@\x1B\x90\x92\x04\x82\x16\x91\x16\x11\x15[\x15a\x0B\x98W`@Qc\x05\x1CF\xEF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0B\xA5\x83`@\x01Qa\x1D{V[a\x0B\xB2\x82` \x01Qa\x1D{V[a\x0B\xBF\x82`@\x01Qa\x1D{V[a\x0B\xCC\x82``\x01Qa\x1D{V[_a\x0B\xD5a\x0E1V[` \x85\x01Q`\nT\x91\x92P_\x91a\x0B\xF5\x91\x90`\x01`\x01`@\x1B\x03\x16a\x0F\x81V[`\nT\x90\x91P`\x01`\x01`@\x1B\x03`\x01`\x80\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x10a\x0C@Wa\x0C\"\x85` \x01Qa\t\x9CV[\x15a\x0C@W`@Qc\x08\n\xE8\xD9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\nT`\x01`\x01`@\x1B\x03`\x01`\x80\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x11\x15a\x0C\xF3W`\x02a\x0Cj\x83\x83a/\x13V[`\x01`\x01`@\x1B\x03\x16\x10a\x0C\x91W`@Qc\x08\n\xE8\xD9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\x9C\x82`\x01a.\xB3V[`\x01`\x01`@\x1B\x03\x16\x81`\x01`\x01`@\x1B\x03\x16\x14\x80\x15a\x0C\xD5WP`\x06Ta\x0C\xD3\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16a\t:V[\x15[\x15a\x0C\xF3W`@Qc\x08\n\xE8\xD9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\xFE\x85\x85\x85a\x1D\xBCV[\x84Q`\x06\x80T` \x88\x01Q`\x01`\x01`@\x1B\x03\x90\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x92\x16\x93\x81\x16\x93\x90\x93\x17\x17\x90U`@\x86\x01Q`\x07U`\nT`\x01`\x80\x1B\x90\x04\x81\x16\x90\x82\x16\x10\x80\x15\x90a\r]WPa\r]\x85` \x01Qa\t:V[\x15a\r\xC7W\x83Q`\x0BU` \x84\x01Q`\x0CU`@\x84\x01Q`\rU``\x84\x01Q`\x0EU\x7F1\xEA\xBD\x90\x99\xFD\xB2]\xAC\xDD\xD2\x06\xAB\xFF\x871\x1EU4A\xFC\x9D\x0F\xCD\xEF \x10b\xD7\xE7\x07\x1Ba\r\xAB\x82`\x01a.\xB3V[`@Q`\x01`\x01`@\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1[a\r\xD2CB\x87a\x1F3V[\x84` \x01Q`\x01`\x01`@\x1B\x03\x16\x85_\x01Q`\x01`\x01`@\x1B\x03\x16\x7F\xA0Jw9$PZA\x85d67%\xF5h2\xF5w.k\x8D\r\xBDn\xFC\xE7$\xDF\xE8\x03\xDA\xE6\x87`@\x01Q`@Qa\x0E\"\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPPPPV[`\x06T`\nT_\x91a\x08\xA5\x91`\x01`\x01`@\x1B\x03`\x01`@\x1B\x90\x92\x04\x82\x16\x91\x16a\x0F\x81V[`\t\x80T_\x91\x82\x91\x90a\x0Ej`\x01\x83a/2V[\x81T\x81\x10a\x0EzWa\x0Eza/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84\x10a\x0E\xB9W`@Qc\x18V\xA4\x99`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16[\x81\x81\x10\x15a\x0FzW\x84`\t\x82\x81T\x81\x10a\x0E\xE9Wa\x0E\xE9a/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x11\x15a\x0FrW`\t\x81\x81T\x81\x10a\x0F\"Wa\x0F\"a/EV[\x90_R` _ \x90`\x02\x02\x01`\x01\x01T`\t\x82\x81T\x81\x10a\x0FEWa\x0FEa/EV[\x90_R` _ \x90`\x02\x02\x01_\x01`\x10\x90T\x90a\x01\0\n\x90\x04`\x01`\x01`@\x1B\x03\x16\x93P\x93PPP\x91P\x91V[`\x01\x01a\x0E\xCDV[PP\x91P\x91V[_\x81`\x01`\x01`@\x1B\x03\x16_\x03a\x0F\x99WP_a\n+V[\x82`\x01`\x01`@\x1B\x03\x16_\x03a\x0F\xB1WP`\x01a\n+V[a\x0F\xBB\x82\x84a.\xE6V[`\x01`\x01`@\x1B\x03\x16_\x03a\x0F\xDBWa\x0F\xD4\x82\x84a/YV[\x90Pa\n+V[a\x0F\xE5\x82\x84a/YV[a\x0F\xD4\x90`\x01a.\xB3V[a\x0F\xF8a\x14\x96V[a\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10\x80a\x10\x17WPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x80a\x105WP`\x08Tc\xFF\xFF\xFF\xFF`\x01`\xA0\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x11\x15[\x15a\x10SW`@Qc\x07\xA5\x07w`\xE5\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08\x80Tc\xFF\xFF\xFF\xFF\x90\x92\x16`\x01`\xA0\x1B\x02c\xFF\xFF\xFF\xFF`\xA0\x1B\x19\x90\x92\x16\x91\x90\x91\x17\x90UV[\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\x90`\x01`\x01`@\x1B\x03\x16_\x81\x15\x80\x15a\x10\xBDWP\x82[\x90P_\x82`\x01`\x01`@\x1B\x03\x16`\x01\x14\x80\x15a\x10\xD8WP0;\x15[\x90P\x81\x15\x80\x15a\x10\xE6WP\x80\x15[\x15a\x11\x04W`@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\x11.W\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x117\x86a!\x1CV[a\x11?a!-V[a\x11J\x89\x89\x89a!5V[\x83\x15a\x11\x90W\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[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80T`\x02\x91\x90`\x01`@\x1B\x90\x04`\xFF\x16\x80a\x11\xE4WP\x80T`\x01`\x01`@\x1B\x03\x80\x84\x16\x91\x16\x10\x15[\x15a\x12\x02W`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Th\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16`\x01`\x01`@\x1B\x03\x80\x84\x16\x91\x90\x91\x17`\x01`@\x1B\x17\x82U`\x05\x90\x85\x16\x11a\x12JW`@QcP\xDD\x03\xF7`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_T`\x0BU`\x01T`\x0CU`\x02T`\rU`\x03T`\x0EU`\n\x80T`\x01`\x01`@\x1B\x03\x85\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x92\x16\x90\x87\x16\x17\x17\x90Ua\x12\x93\x83\x85a\x0F\x81V[`\n\x80Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\x80\x1B\x19\x16`\x01`\x80\x1B`\x01`\x01`@\x1B\x03\x93\x84\x16\x02\x17\x90U\x81T`\xFF`@\x1B\x19\x16\x82U`@Q\x90\x83\x16\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\xA1PPPPV[`\tT_\x90C\x84\x11\x80a\x13\x10WP\x80\x15[\x80a\x13ZWP`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x13>Wa\x13>a/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x84\x10[\x15a\x13xW`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x80\x80a\x13\x86`\x01\x85a/2V[\x90P[\x81a\x14\"W`\x08T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81\x10a\x14\"W\x86`\t\x82\x81T\x81\x10a\x13\xBBWa\x13\xBBa/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x11a\x14\x10W`\x01\x91P`\t\x81\x81T\x81\x10a\x13\xF0Wa\x13\xF0a/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x92Pa\x14\"V[\x80a\x14\x1A\x81a/\x86V[\x91PPa\x13\x89V[\x81a\x14@W`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x85a\x14K\x84\x89a/2V[\x11\x97\x96PPPPPPPV[a\x14_a\x14\x96V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x14\x8DW`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01[`@Q\x80\x91\x03\x90\xFD[a\nB\x81a\x1D\x0BV[3a\x14\xC8\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\n\xEBW`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\x14\x84V[a\x14\xF9a$\x83V[b\x10\0\0\x81R`\x0B` \x82\x01R\x7F&\x86~\xE5\x8A\xAF\x86\x0F\xC9\xE0\xE3\xA7\x86f\xFF\xC5\x1F;\xA1\xAD\x8A\xE0\x01\xC1\x96\x83\x0CU\xB5\xAF\x0B\x8C`@\x82\x01QR\x7F\t\x120\xAD\xB7S\xF8(\x15\x15\x12w\x06\x0C\xC5kTk\xB2\xE9P\xA0\xDE\x19\xED\x06\x1E\xC6\x8C\x07\x1A\x90` `@\x83\x01Q\x01R\x7F\x02\xA5\t\xA0m\x8CV\xF8? F\x88\xFFnB\xEA\xC6\xE3\xCB\xDD\x06;\tq\xA3\xAF\x95>\x81\xBA\xDB\xB6``\x82\x01QR\x7F\x06\xF4>\xD2\xB9\xCE\xCE5\xD1 \x1A\xBC\x13\xFF\xDA\xEA5V\x0C\xF0\xF1Dbw\x13\x8C\xE8\x12\xB9\xAD\x9F9` ``\x83\x01Q\x01R\x7F\x1AX\x8C\x99\xAD\x88\xF7\x89\xC8w\"\xB0a\xBBU5\xDA\xA0\xAB\xCC\x1D\xC6\xD1v\xD7\xFE\xA5\x1E]\x80\xB9&`\x80\x82\x01QR\x7F b\xB9\x95\xE6\x1Aj\xB8\xAA\xB6\xCDnu \xB8y\xD8O\x96Z\xB1\xF0\x94\xC1\x04\xF0\xC1!;(\x03\x8B` `\x80\x83\x01Q\x01R\x7F!\xA2\xFDvj\x0C\xEB\xEC\xFD\xBF\xDF\xE5a9\xA1\xBB\xD9\xAE\xC1^.5\xBE\x8E\xF0\x194\xA0\xECC\x86\x85`\xA0\x82\x01QR\x7F \xFEP\n\xC7\xD1\xAAx \xDB\x8Co\x7F\x9DP\x9E;.\x88s\x1E:\x12\xDDe\xF0oC\xCA\x93\r\xA0` `\xA0\x83\x01Q\x01R\x7F\n\xB5=\x12\x85\xC7\xF4\x81\x9B?\xF6\xE1\xDD\xAD\xA6\xBF%\x15\xD3K\xBA\xF6\x11\x86\xC6\xA0K\xE4}\xFDe\xA3`\xC0\x82\x01QR\x7F\x0B\x80\xA9\x87\x80\x82\xCD\xFD\xD9\xFC\xC1k\xB3?\xA4$\xC0\xADf\xB8\x19I\xBFd!S\xD3\xC7\xAD\x08/\"` `\xC0\x83\x01Q\x01R\x7F\x1B\x90\x0F\x8E_\x8E\x80d\xA5\x88\x8A\x1B\xD7\x96\xB5J&R\xFC\x02\x03O\xE4\xB6\xE6\xFC\x8DfP\xF7E;`\xE0\x82\x01QR~\xCC\xA2X\xA8\x83,d\xD1\xF8\xE1r\x1Ax\xFC%\xB1=)\xAD\xBB\x81\xE3Zy\xFC/I\xF8\x90'\x86` `\xE0\x83\x01Q\x01R\x7F\r\x1D3H\xD6B\xE6\xF2\xE9s\x9Ds]\x8Cr6v\xDB\xAE\xFD\xCB\xB4\xE9fA\xDE\xFA5=&\xEB\xB3a\x01\0\x82\x01QR\x7F\x14\xFE\x9Dj3Q\x04\xE7I\x1C\xA6\xD5\x08a\x13\xE6\xB0\xF5)F\x96\rrfdf{\xD5\x859\xD4\x1E` a\x01\0\x83\x01Q\x01R\x7F\x1D\xA9CdD\x0CN?\xB8\xAF-6<\xDE\xFAN\xDD\xA47W\x9E\x1B\x05j\x16\xA5\xE9\xA1\x1D\xFF\xA2\xABa\x01 \x82\x01QR\x7F\n\x07{\xD3\x07\xED1\"-\xB5\\\xB0\x12\x8B\xAF\xCE^\"U{W\xF5\xAC\x91SY\xC5\x02\x96\xCB\\w` a\x01 \x83\x01Q\x01R\x7F(\xFF\x80\xB13\xD9\x89#\\q)\xDE\xA5Di\xB7\x80\xACG\x17D\x92\x90\x06~|\x9A}[\xE7\xDB\xD5a\x01@\x82\x01QR\x7F\x1C\x0F\xC2.\xEF#\xB5\n-\xDCU?\x9F\xC1\xB6\x1F\xD8\xC5zX\xCA2\x1A\x82\x9C~\xC2U\xF7W\xB3\xA6` a\x01@\x83\x01Q\x01R~<N!\xE5\xDF\xBAb\xA5\xB1p/\xB0\xEF#K\xFE\x95\xA7w\x01\xA4V\x88#PRm\x14\x02C\xF5a\x01`\x82\x01QR\x7F\x06\x01-\xB8(v\xBA3\xE6\xE8\xF8\nQ\x016b\xE5lJ\xBC\x86\xA7\xD8\\'.\x19\xA6\xD7\xF5}\x0B` a\x01`\x83\x01Q\x01R\x7F\x16\xD5$}\xBD\xEA\xE1\xDFp\t>^\xE7rr\x95\x96a\xE0\xFB\xAB\xDAC\x17w\xFAr\x9F[S/Da\x01\x80\x82\x01QR~\x8D\x9E\xE0\x0Fy\x9C\xF0\x06\x08\xB0\x82\xD0;\x9D\xE5\xA4+\x81&\xC3_\xBF\xBD\x1E`!\x08\xDF\x10\xE0\xE3` a\x01\x80\x83\x01Q\x01R\x7F/Rli\x81d?\xF6\xF6\xE9\xD2\xB5\xA9!\xE0l\xF9_'F)\xB5\xA1E\xBDU+\x7F\xDAj\x87\0a\x01\xA0\x82\x01QR\x7F/\xE7\x10\x8F\xD4\xE2B1\xF3\xDA\xDBn\t\x07.\x10o\xCA\x06\x94\xFE9\xDF\xF9eW\xA8\x82!\xA8\x9AP` a\x01\xA0\x83\x01Q\x01R\x7F&\xA3V\x85\x98\xA6\x98\x1Ec%\xF4\x81g6\xE3\x81\x08{[\x0EK'\xEF6M\x8A\xE1\xE2\x9F\xE9\xDF\x99a\x01\xC0\x82\x01QR\x7F\x1D\xB8\x1C\xDF\x82\xA9\xEC\x99\xF3\xC9qm\xF2-81~k\xB8O\xC5}/\x0E{+\xC8\xA0V\x9F|\xC4` a\x01\xC0\x83\x01Q\x01R~\x99\x88\x80\x88\xE1\x1D\xE6\xED\x08l\x99\xB9\xBB\xA9\x86\xD9\x08\xDF[\x0CP\x07h\r\x97V}HW\x19\x94a\x01\xE0\x82\x01QR\x7F\x1F\x91Wn\xAD\xFF\xFF\x93+nT\xBA\xB0\"\xF9?o\xEC>[vt\xD0\0k\xC5\xF2\"5'\xA3H` a\x01\xE0\x83\x01Q\x01R~h\xB3\xC1\x17\xEE~\x84\xD6\xB6p\xB6\xAF \x19wY\xEC\x80\xD3O<YC(f01\xE9\xCD~\x02a\x02\0\x82\x01QR\x7F\x1C82\xE2Hw4f\x80\xE7\x04{\xAE,\xFC\xD5\x1F\xAF\xE3\xE7\xCA\xF1\x99\xE9\xDF\xC8\xE8\xF1\x0C+iC` a\x02\0\x83\x01Q\x01R\x7F\x16L\xDD\x9A\xD5\xD4\xE9n\x10\x90s\xE8\xE75\xCDJ\xC6J\xBAm\xDA\xA2D\xDAg\x016\x9C\x8C\xBA]\xAFa\x02 \x82\x01QR\x7F\x16\xC4\x1Ed\x7F\x1A\xB0\xD4\\\x89\x15D)\x9EN\xF9\xC0\x04\xD8\xBC\n;\xF0\x96\xDC8\xCE\x8E\xD9\x0C\rg` a\x02 \x83\x01Q\x01R\x7F\x13K\xA7\xA9V{\xA2\x0E\x1F5\x95\x9E\xE8\xC2\xCDh\x8D:\x96+\xB1y~\x8A\xB8\xE5\x11v\x8D\xE0\xCE\x83a\x02@\x82\x01QR\x7F\x02\xE4\xD2\x86\xC9C_{\xD9L\x1A,x\xB9\x99f\xD0o\xAC\xA1\xAEE\xDEx\x14\x99P\xA4\xFE\xFC\xD6\xE7` a\x02@\x83\x01Q\x01R\x7F\x03\x9A\x0B-\x92\x0F)\xE3\\\xB2\xA9\xE1\xECl\xC2*\xC1\xD4\x82\xAFE\xE4s\x99rJ\x07E\xD5B\xE89a\x02`\x82\x01QR\x7F\x15\xAC&X\xBF\xDD\"'\xAE\xBF\x8E \x93Y5\xA6H\x81\x9E\x1D\xCE\xA8\x07\xDA\x1C\x83\x8A\xBF\xA7\x89lc` a\x02`\x83\x01Q\x01R\x7F\xB0\x83\x88\x93\xEC\x1F#~\x8B\x072;\x07DY\x9FN\x97\xB5\x98\xB3\xB5\x89\xBC\xC2\xBC7\xB8\xD5\xC4\x18\x01a\x02\x80\x82\x01R\x7F\xC1\x83\x93\xC0\xFA0\xFEN\x8B\x03\x8E5z\xD8Q\xEA\xE8\xDE\x91\x07XN\xFF\xE7\xC7\xF1\xF6Q\xB2\x01\x0E&a\x02\xA0\x82\x01R\x90V[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\x1B\xA2WP\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\x1B\x96_Q` a4\x14_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\n\xEBW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1B\xC8a\x14\x96V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x81R\x7F\xF7\x87!\"n\xFE\x9A\x1B\xB6x\x18\x9A\x16\xD1UI(\xB9\xF2\x19.,\xB9>\xED\xA8;y\xFA@\0}\x90` \x01a\x08AV[\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\x1C[WP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x1CX\x91\x81\x01\x90a/\x9BV[`\x01[a\x1C\x83W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\x14\x84V[_Q` a4\x14_9_Q\x90_R\x81\x14a\x1C\xB3W`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x14\x84V[a\x1C\xBD\x83\x83a\"aV[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\n\xEBW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\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[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x81\x10\x80a\n`W`@Qc\x01l\x173`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a\x1D\xC5a\x08\x95V[\x90Pa\x1D\xCFa&\xE8V[\x84Q`\x01`\x01`@\x1B\x03\x90\x81\x16\x82R` \x80\x87\x01\x80Q\x83\x16\x91\x84\x01\x91\x90\x91R`@\x80\x88\x01Q\x90\x84\x01R`\x0CT``\x84\x01R`\rT`\x80\x84\x01R`\x0ET`\xA0\x84\x01R`\x0BT`\xC0\x84\x01R`\nT\x90Q`\x01`@\x1B\x90\x91\x04\x82\x16\x91\x16\x10\x80\x15\x90a\x1E?WPa\x1E?\x85` \x01Qa\t:V[\x15a\x1EqW` \x84\x01Q`\xE0\x82\x01R`@\x84\x01Qa\x01\0\x82\x01R``\x84\x01Qa\x01 \x82\x01R\x83Qa\x01@\x82\x01Ra\x1E\x95V[`\x0CT`\xE0\x82\x01R`\rTa\x01\0\x82\x01R`\x0ETa\x01 \x82\x01R`\x0BTa\x01@\x82\x01R[`@Qc\xFC\x86`\xC7`\xE0\x1B\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90c\xFC\x86`\xC7\x90a\x1E\xD0\x90\x85\x90\x85\x90\x88\x90`\x04\x01a1\x94V[` `@Q\x80\x83\x03\x81\x86Z\xF4\x15\x80\x15a\x1E\xEBW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x1F\x0F\x91\x90a3\xB4V[a\x1F,W`@Qc\t\xBD\xE39`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPPPPV[`\tT\x15\x80\x15\x90a\x1F\xA8WP`\x08T`\t\x80T`\x01`\xA0\x1B\x83\x04c\xFF\xFF\xFF\xFF\x16\x92`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x1FsWa\x1Fsa/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01Ta\x1F\x9D\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84a/\x13V[`\x01`\x01`@\x1B\x03\x16\x11[\x15a ;W`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x1F\xD5Wa\x1F\xD5a/EV[_\x91\x82R` \x82 `\x02\x90\x91\x02\x01\x80T`\x01`\x01`\xC0\x1B\x03\x19\x16\x81U`\x01\x01U`\x08\x80T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90`\x18a \x15\x83a3\xD3V[\x91\x90a\x01\0\n\x81T\x81`\x01`\x01`@\x1B\x03\x02\x19\x16\x90\x83`\x01`\x01`@\x1B\x03\x16\x02\x17\x90UPP[`@\x80Q`\x80\x81\x01\x82R`\x01`\x01`@\x1B\x03\x94\x85\x16\x81R\x92\x84\x16` \x80\x85\x01\x91\x82R\x83\x01Q\x85\x16\x84\x83\x01\x90\x81R\x92\x90\x91\x01Q``\x84\x01\x90\x81R`\t\x80T`\x01\x81\x01\x82U_\x91\x90\x91R\x93Q`\x02\x90\x94\x02\x7Fn\x15@\x17\x1Bl\x0C\x96\x0Bq\xA7\x02\r\x9F`\x07\x7Fj\xF91\xA8\xBB\xF5\x90\xDA\x02#\xDA\xCFu\xC7\xAF\x81\x01\x80T\x93Q\x94Q\x87\x16`\x01`\x80\x1B\x02g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\x80\x1B\x19\x95\x88\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x95\x16\x96\x90\x97\x16\x95\x90\x95\x17\x92\x90\x92\x17\x92\x90\x92\x16\x93\x90\x93\x17\x90\x91UQ\x7Fn\x15@\x17\x1Bl\x0C\x96\x0Bq\xA7\x02\r\x9F`\x07\x7Fj\xF91\xA8\xBB\xF5\x90\xDA\x02#\xDA\xCFu\xC7\xB0\x90\x91\x01UV[a!$a\"\xB6V[a\nB\x81a\"\xFFV[a\n\xEBa\"\xB6V[\x82Q`\x01`\x01`@\x1B\x03\x16\x15\x15\x80a!YWP` \x83\x01Q`\x01`\x01`@\x1B\x03\x16\x15\x15[\x80a!fWP` \x82\x01Q\x15[\x80a!sWP`@\x82\x01Q\x15[\x80a!\x80WP``\x82\x01Q\x15[\x80a!\x8AWP\x81Q\x15[\x80a!\x9CWPa\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10[\x80a!\xB0WPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x15a!\xCEW`@QcP\xDD\x03\xF7`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82Q`\x04\x80T` \x80\x87\x01Q`\x01`\x01`@\x1B\x03\x90\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x93\x84\x16\x91\x90\x95\x16\x90\x81\x17\x85\x17\x90\x93U`@\x96\x87\x01Q`\x05\x81\x90U\x86Q_U\x90\x86\x01Q`\x01U\x95\x85\x01Q`\x02U``\x90\x94\x01Q`\x03U`\x06\x80T\x90\x94\x16\x17\x17\x90\x91U`\x07\x91\x90\x91U`\x08\x80Tc\xFF\xFF\xFF\xFF\x90\x92\x16`\x01`\xA0\x1B\x02c\xFF\xFF\xFF\xFF`\xA0\x1B\x19\x90\x92\x16\x91\x90\x91\x17\x90UV[a\"j\x82a#\x07V[`@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\"\xAEWa\x1C\xBD\x82\x82a#jV[a\n`a#\xDCV[\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\n\xEBW`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x14_a\"\xB6V[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a#<W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\x14\x84V[_Q` a4\x14_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#\x86\x91\x90a3\xFDV[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a#\xBEW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a#\xC3V[``\x91P[P\x91P\x91Pa#\xD3\x85\x83\x83a#\xFBV[\x95\x94PPPPPV[4\x15a\n\xEBW`@Qc\xB3\x98\x97\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``\x82a$\x10Wa$\x0B\x82a$ZV[a$SV[\x81Q\x15\x80\x15a$'WP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a$PW`@Qc\x99\x96\xB3\x15`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`$\x01a\x14\x84V[P\x80[\x93\x92PPPV[\x80Q\x15a$jW\x80Q\x80\x82` \x01\xFD[`@Qc\n\x12\xF5!`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@Q\x80a\x02\xC0\x01`@R\x80_\x81R` \x01_\x81R` \x01a$\xB6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a$\xD6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a$\xF6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\x16`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%V`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%v`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\x96`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\xB6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\xD6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\xF6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\x16`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&V`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&v`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\x96`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\xB6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\xD6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01_\x81R` \x01_\x81RP\x90V[`@Q\x80a\x01`\x01`@R\x80`\x0B\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\t\x97W__\xFD[_` \x82\x84\x03\x12\x15a'-W__\xFD[a$S\x82a'\x07V[_` \x82\x84\x03\x12\x15a'FW__\xFD[P5\x91\x90PV[_a\x05\0\x82\x01\x90P\x82Q\x82R` \x83\x01Q` \x83\x01R`@\x83\x01Qa'\x7F`@\x84\x01\x82\x80Q\x82R` \x90\x81\x01Q\x91\x01RV[P``\x83\x01Q\x80Q`\x80\x84\x01R` \x81\x01Q`\xA0\x84\x01RP`\x80\x83\x01Q\x80Q`\xC0\x84\x01R` \x81\x01Q`\xE0\x84\x01RP`\xA0\x83\x01Q\x80Qa\x01\0\x84\x01R` \x81\x01Qa\x01 \x84\x01RP`\xC0\x83\x01Q\x80Qa\x01@\x84\x01R` \x81\x01Qa\x01`\x84\x01RP`\xE0\x83\x01Q\x80Qa\x01\x80\x84\x01R` \x81\x01Qa\x01\xA0\x84\x01RPa\x01\0\x83\x01Q\x80Qa\x01\xC0\x84\x01R` \x81\x01Qa\x01\xE0\x84\x01RPa\x01 \x83\x01Q\x80Qa\x02\0\x84\x01R` \x81\x01Qa\x02 \x84\x01RPa\x01@\x83\x01Q\x80Qa\x02@\x84\x01R` \x81\x01Qa\x02`\x84\x01RPa\x01`\x83\x01Q\x80Qa\x02\x80\x84\x01R` \x81\x01Qa\x02\xA0\x84\x01RPa\x01\x80\x83\x01Q\x80Qa\x02\xC0\x84\x01R` \x81\x01Qa\x02\xE0\x84\x01RPa\x01\xA0\x83\x01Q\x80Qa\x03\0\x84\x01R` \x81\x01Qa\x03 \x84\x01RPa\x01\xC0\x83\x01Q\x80Qa\x03@\x84\x01R` \x81\x01Qa\x03`\x84\x01RPa\x01\xE0\x83\x01Q\x80Qa\x03\x80\x84\x01R` \x81\x01Qa\x03\xA0\x84\x01RPa\x02\0\x83\x01Q\x80Qa\x03\xC0\x84\x01R` \x81\x01Qa\x03\xE0\x84\x01RPa\x02 \x83\x01Q\x80Qa\x04\0\x84\x01R` \x81\x01Qa\x04 \x84\x01RPa\x02@\x83\x01Q\x80Qa\x04@\x84\x01R` \x81\x01Qa\x04`\x84\x01RPa\x02`\x83\x01Q\x80Qa\x04\x80\x84\x01R` \x81\x01Qa\x04\xA0\x84\x01RPa\x02\x80\x83\x01Qa\x04\xC0\x83\x01Ra\x02\xA0\x90\x92\x01Qa\x04\xE0\x90\x91\x01R\x90V[\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x14a\t\x97W__\xFD[_` \x82\x84\x03\x12\x15a)tW__\xFD[a$S\x82a)NV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@Qa\x02\xE0\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a)\xB4Wa)\xB4a)}V[`@R\x90V[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a)\xE2Wa)\xE2a)}V[`@R\x91\x90PV[_``\x82\x84\x03\x12\x15a)\xFAW__\xFD[`@Q``\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a*\x1CWa*\x1Ca)}V[`@R\x90P\x80a*+\x83a)NV[\x81Ra*9` \x84\x01a)NV[` \x82\x01R`@\x92\x83\x015\x92\x01\x91\x90\x91R\x91\x90PV[_`@\x82\x84\x03\x12\x15a*_W__\xFD[`@\x80Q\x90\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a*\x81Wa*\x81a)}V[`@R\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[_a\x04\x80\x82\x84\x03\x12\x15a*\xACW__\xFD[a*\xB4a)\x91V[\x90Pa*\xC0\x83\x83a*OV[\x81Ra*\xCF\x83`@\x84\x01a*OV[` \x82\x01Ra*\xE1\x83`\x80\x84\x01a*OV[`@\x82\x01Ra*\xF3\x83`\xC0\x84\x01a*OV[``\x82\x01Ra+\x06\x83a\x01\0\x84\x01a*OV[`\x80\x82\x01Ra+\x19\x83a\x01@\x84\x01a*OV[`\xA0\x82\x01Ra+,\x83a\x01\x80\x84\x01a*OV[`\xC0\x82\x01Ra+?\x83a\x01\xC0\x84\x01a*OV[`\xE0\x82\x01Ra+R\x83a\x02\0\x84\x01a*OV[a\x01\0\x82\x01Ra+f\x83a\x02@\x84\x01a*OV[a\x01 \x82\x01Ra+z\x83a\x02\x80\x84\x01a*OV[a\x01@\x82\x01Ra+\x8E\x83a\x02\xC0\x84\x01a*OV[a\x01`\x82\x01Ra+\xA2\x83a\x03\0\x84\x01a*OV[a\x01\x80\x82\x01Ra\x03@\x82\x015a\x01\xA0\x82\x01Ra\x03`\x82\x015a\x01\xC0\x82\x01Ra\x03\x80\x82\x015a\x01\xE0\x82\x01Ra\x03\xA0\x82\x015a\x02\0\x82\x01Ra\x03\xC0\x82\x015a\x02 \x82\x01Ra\x03\xE0\x82\x015a\x02@\x82\x01Ra\x04\0\x82\x015a\x02`\x82\x01Ra\x04 \x82\x015a\x02\x80\x82\x01Ra\x04@\x82\x015a\x02\xA0\x82\x01Ra\x04`\x90\x91\x015a\x02\xC0\x82\x01R\x91\x90PV[__a\x04\xE0\x83\x85\x03\x12\x15a,8W__\xFD[a,B\x84\x84a)\xEAV[\x91Pa,Q\x84``\x85\x01a*\x9BV[\x90P\x92P\x92\x90PV[\x805c\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\t\x97W__\xFD[_` \x82\x84\x03\x12\x15a,}W__\xFD[a$S\x82a,ZV[__`@\x83\x85\x03\x12\x15a,\x97W__\xFD[a,\xA0\x83a'\x07V[\x91P` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15a,\xBAW__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a,\xCAW__\xFD[\x805`\x01`\x01`@\x1B\x03\x81\x11\x15a,\xE3Wa,\xE3a)}V[a,\xF6`\x1F\x82\x01`\x1F\x19\x16` \x01a)\xBAV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a-\nW__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[_`\x80\x82\x84\x03\x12\x15a-9W__\xFD[`@Q`\x80\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a-[Wa-[a)}V[`@\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[___a\x05`\x84\x86\x03\x12\x15a-\x9CW__\xFD[a-\xA6\x85\x85a)\xEAV[\x92Pa-\xB5\x85``\x86\x01a-)V[\x91Pa-\xC4\x85`\xE0\x86\x01a*\x9BV[\x90P\x92P\x92P\x92V[__`@\x83\x85\x03\x12\x15a-\xDEW__\xFD[a-\xE7\x83a)NV[\x91Pa,Q` \x84\x01a)NV[____a\x01 \x85\x87\x03\x12\x15a.\tW__\xFD[a.\x13\x86\x86a)\xEAV[\x93Pa.\"\x86``\x87\x01a-)V[\x92Pa.0`\xE0\x86\x01a,ZV[\x91Pa.?a\x01\0\x86\x01a'\x07V[\x90P\x92\x95\x91\x94P\x92PV[` \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[__`@\x83\x85\x03\x12\x15a.\x90W__\xFD[PP\x805\x92` \x90\x91\x015\x91PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`\x01`\x01`@\x1B\x03\x81\x81\x16\x83\x82\x16\x01\x90\x81\x11\x15a\n+Wa\n+a.\x9FV[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[_`\x01`\x01`@\x1B\x03\x83\x16\x80a.\xFEWa.\xFEa.\xD2V[\x80`\x01`\x01`@\x1B\x03\x84\x16\x06\x91PP\x92\x91PPV[`\x01`\x01`@\x1B\x03\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\n+Wa\n+a.\x9FV[\x81\x81\x03\x81\x81\x11\x15a\n+Wa\n+a.\x9FV[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_`\x01`\x01`@\x1B\x03\x83\x16\x80a/qWa/qa.\xD2V[\x80`\x01`\x01`@\x1B\x03\x84\x16\x04\x91PP\x92\x91PPV[_\x81a/\x94Wa/\x94a.\x9FV[P_\x19\x01\x90V[_` \x82\x84\x03\x12\x15a/\xABW__\xFD[PQ\x91\x90PV[\x80_[`\x0B\x81\x10\x15a/\xD4W\x81Q\x84R` \x93\x84\x01\x93\x90\x91\x01\x90`\x01\x01a/\xB5V[PPPPV[a/\xEF\x82\x82Q\x80Q\x82R` \x90\x81\x01Q\x91\x01RV[` \x81\x81\x01Q\x80Q`@\x85\x01R\x90\x81\x01Q``\x84\x01RP`@\x81\x01Q\x80Q`\x80\x84\x01R` \x81\x01Q`\xA0\x84\x01RP``\x81\x01Q\x80Q`\xC0\x84\x01R` \x81\x01Q`\xE0\x84\x01RP`\x80\x81\x01Q\x80Qa\x01\0\x84\x01R` \x81\x01Qa\x01 \x84\x01RP`\xA0\x81\x01Q\x80Qa\x01@\x84\x01R` \x81\x01Qa\x01`\x84\x01RP`\xC0\x81\x01Q\x80Qa\x01\x80\x84\x01R` \x81\x01Qa\x01\xA0\x84\x01RP`\xE0\x81\x01Q\x80Qa\x01\xC0\x84\x01R` \x81\x01Qa\x01\xE0\x84\x01RPa\x01\0\x81\x01Q\x80Qa\x02\0\x84\x01R` \x81\x01Qa\x02 \x84\x01RPa\x01 \x81\x01Q\x80Qa\x02@\x84\x01R` \x81\x01Qa\x02`\x84\x01RPa\x01@\x81\x01Q\x80Qa\x02\x80\x84\x01R` \x81\x01Qa\x02\xA0\x84\x01RPa\x01`\x81\x01Q\x80Qa\x02\xC0\x84\x01R` \x81\x01Qa\x02\xE0\x84\x01RPa\x01\x80\x81\x01Q\x80Qa\x03\0\x84\x01R` \x81\x01Qa\x03 \x84\x01RPa\x01\xA0\x81\x01Qa\x03@\x83\x01Ra\x01\xC0\x81\x01Qa\x03`\x83\x01Ra\x01\xE0\x81\x01Qa\x03\x80\x83\x01Ra\x02\0\x81\x01Qa\x03\xA0\x83\x01Ra\x02 \x81\x01Qa\x03\xC0\x83\x01Ra\x02@\x81\x01Qa\x03\xE0\x83\x01Ra\x02`\x81\x01Qa\x04\0\x83\x01Ra\x02\x80\x81\x01Qa\x04 \x83\x01Ra\x02\xA0\x81\x01Qa\x04@\x83\x01Ra\x02\xC0\x01Qa\x04`\x90\x91\x01RV[_a\n\xE0\x82\x01\x90P\x84Q\x82R` \x85\x01Q` \x83\x01R`@\x85\x01Qa1\xC6`@\x84\x01\x82\x80Q\x82R` \x90\x81\x01Q\x91\x01RV[P``\x85\x01Q\x80Q`\x80\x84\x01R` \x81\x01Q`\xA0\x84\x01RP`\x80\x85\x01Q\x80Q`\xC0\x84\x01R` \x81\x01Q`\xE0\x84\x01RP`\xA0\x85\x01Q\x80Qa\x01\0\x84\x01R` \x81\x01Qa\x01 \x84\x01RP`\xC0\x85\x01Q\x80Qa\x01@\x84\x01R` \x81\x01Qa\x01`\x84\x01RP`\xE0\x85\x01Q\x80Qa\x01\x80\x84\x01R` \x81\x01Qa\x01\xA0\x84\x01RPa\x01\0\x85\x01Q\x80Qa\x01\xC0\x84\x01R` \x81\x01Qa\x01\xE0\x84\x01RPa\x01 \x85\x01Q\x80Qa\x02\0\x84\x01R` \x81\x01Qa\x02 \x84\x01RPa\x01@\x85\x01Q\x80Qa\x02@\x84\x01R` \x81\x01Qa\x02`\x84\x01RPa\x01`\x85\x01Q\x80Qa\x02\x80\x84\x01R` \x81\x01Qa\x02\xA0\x84\x01RPa\x01\x80\x85\x01Q\x80Qa\x02\xC0\x84\x01R` \x81\x01Qa\x02\xE0\x84\x01RPa\x01\xA0\x85\x01Q\x80Qa\x03\0\x84\x01R` \x81\x01Qa\x03 \x84\x01RPa\x01\xC0\x85\x01Q\x80Qa\x03@\x84\x01R` \x81\x01Qa\x03`\x84\x01RPa\x01\xE0\x85\x01Q\x80Qa\x03\x80\x84\x01R` \x81\x01Qa\x03\xA0\x84\x01RPa\x02\0\x85\x01Q\x80Qa\x03\xC0\x84\x01R` \x81\x01Qa\x03\xE0\x84\x01RPa\x02 \x85\x01Q\x80Qa\x04\0\x84\x01R` \x81\x01Qa\x04 \x84\x01RPa\x02@\x85\x01Q\x80Qa\x04@\x84\x01R` \x81\x01Qa\x04`\x84\x01RPa\x02`\x85\x01Q\x80Qa\x04\x80\x84\x01R` \x81\x01Qa\x04\xA0\x84\x01RPa\x02\x80\x85\x01Qa\x04\xC0\x83\x01Ra\x02\xA0\x85\x01Qa\x04\xE0\x83\x01Ra3\x9Ea\x05\0\x83\x01\x85a/\xB2V[a3\xACa\x06`\x83\x01\x84a/\xDAV[\x94\x93PPPPV[_` \x82\x84\x03\x12\x15a3\xC4W__\xFD[\x81Q\x80\x15\x15\x81\x14a$SW__\xFD[_`\x01`\x01`@\x1B\x03\x82\x16`\x01`\x01`@\x1B\x03\x81\x03a3\xF4Wa3\xF4a.\x9FV[`\x01\x01\x92\x91PPV[_\x82Q\x80` \x85\x01\x84^_\x92\x01\x91\x82RP\x91\x90PV\xFE6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBC\xA1dsolcC\0\x08\x1C\0\n",
4928 );
4929 #[rustfmt::skip]
4935 #[allow(clippy::all)]
4936 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
4937 b"`\x80`@R`\x046\x10a\x02\x07W_5`\xE0\x1C\x80cqP\x18\xA6\x11a\x01\x13W\x80c\x9F\xDBT\xA7\x11a\0\x9DW\x80c\xD2M\x93=\x11a\0mW\x80c\xD2M\x93=\x14a\x06\xF9W\x80c\xE003\x01\x14a\x07(W\x80c\xF0h T\x14a\x07GW\x80c\xF2\xFD\xE3\x8B\x14a\x07fW\x80c\xF9\xE5\r\x19\x14a\x07\x85W__\xFD[\x80c\x9F\xDBT\xA7\x14a\x06\x10W\x80c\xAD<\xB1\xCC\x14a\x06eW\x80c\xB3;\xC4\x91\x14a\x06\xA2W\x80c\xC2;\x9E\x9E\x14a\x06\xC1W__\xFD[\x80c\x85\x84\xD2?\x11a\0\xE3W\x80c\x85\x84\xD2?\x14a\x05;W\x80c\x8D\xA5\xCB[\x14a\x05wW\x80c\x90\xC1C\x90\x14a\x05\xB3W\x80c\x96\xC1\xCAa\x14a\x05\xD2W\x80c\x9B\xAA<\xC9\x14a\x05\xF1W__\xFD[\x80cqP\x18\xA6\x14a\x04\xD5W\x80cu|7\xAD\x14a\x04\xE9W\x80cvg\x18\x08\x14a\x05\x08W\x80c\x82nA\xFC\x14a\x05\x1CW__\xFD[\x80c0\x0C\x89\xDD\x11a\x01\x94W\x80cBm1\x94\x11a\x01dW\x80cBm1\x94\x14a\x04ZW\x80cC=\xBA\x9F\x14a\x04{W\x80cO\x1E\xF2\x86\x14a\x04\x9AW\x80cR\xD1\x90-\x14a\x04\xADW\x80ci\xCCj\x04\x14a\x04\xC1W__\xFD[\x80c0\x0C\x89\xDD\x14a\x03\xC2W\x80c1=\xF7\xB1\x14a\x03\xE1W\x80c7\x8E\xC2;\x14a\x04\x18W\x80c>\xD5[{\x14a\x044W__\xFD[\x80c\x12\x17<,\x11a\x01\xDAW\x80c\x12\x17<,\x14a\x02\xF6W\x80c\x16z\xC6\x18\x14a\x03\x17W\x80c c\xD4\xF7\x14a\x036W\x80c%)t'\x14a\x03UW\x80c/y\x88\x9D\x14a\x03\x84W__\xFD[\x80c\x01?\xA5\xFC\x14a\x02\x0BW\x80c\x02\xB5\x92\xF3\x14a\x02,W\x80c\x06%\xE1\x9B\x14a\x02\x89W\x80c\r\x8En,\x14a\x02\xCBW[__\xFD[4\x80\x15a\x02\x16W__\xFD[Pa\x02*a\x02%6`\x04a'\x1DV[a\x07\x99V[\0[4\x80\x15a\x027W__\xFD[Pa\x02Ka\x02F6`\x04a'6V[a\x08LV[`@Qa\x02\x80\x94\x93\x92\x91\x90`\x01`\x01`@\x1B\x03\x94\x85\x16\x81R\x92\x84\x16` \x84\x01R\x92\x16`@\x82\x01R``\x81\x01\x91\x90\x91R`\x80\x01\x90V[`@Q\x80\x91\x03\x90\xF3[4\x80\x15a\x02\x94W__\xFD[P`\x0BT`\x0CT`\rT`\x0ETa\x02\xAB\x93\x92\x91\x90\x84V[`@\x80Q\x94\x85R` \x85\x01\x93\x90\x93R\x91\x83\x01R``\x82\x01R`\x80\x01a\x02\x80V[4\x80\x15a\x02\xD6W__\xFD[P`@\x80Q`\x02\x81R_` \x82\x01\x81\x90R\x91\x81\x01\x91\x90\x91R``\x01a\x02\x80V[4\x80\x15a\x03\x01W__\xFD[Pa\x03\na\x08\x95V[`@Qa\x02\x80\x91\x90a'MV[4\x80\x15a\x03\"W__\xFD[Pa\x02*a\x0316`\x04a)dV[a\x08\xAAV[4\x80\x15a\x03AW__\xFD[Pa\x02*a\x03P6`\x04a,&V[a\t!V[4\x80\x15a\x03`W__\xFD[Pa\x03ta\x03o6`\x04a)dV[a\t:V[`@Q\x90\x15\x15\x81R` \x01a\x02\x80V[4\x80\x15a\x03\x8FW__\xFD[P`\x08Ta\x03\xAA\x90`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81V[`@Q`\x01`\x01`@\x1B\x03\x90\x91\x16\x81R` \x01a\x02\x80V[4\x80\x15a\x03\xCDW__\xFD[Pa\x03ta\x03\xDC6`\x04a)dV[a\t\x9CV[4\x80\x15a\x03\xECW__\xFD[P`\x08Ta\x04\0\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x02\x80V[4\x80\x15a\x04#W__\xFD[PC[`@Q\x90\x81R` \x01a\x02\x80V[4\x80\x15a\x04?W__\xFD[P`\nTa\x03\xAA\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81V[4\x80\x15a\x04eW__\xFD[P_T`\x01T`\x02T`\x03Ta\x02\xAB\x93\x92\x91\x90\x84V[4\x80\x15a\x04\x86W__\xFD[Pa\x02*a\x04\x956`\x04a,mV[a\n1V[a\x02*a\x04\xA86`\x04a,\x86V[a\nEV[4\x80\x15a\x04\xB8W__\xFD[Pa\x04&a\ndV[4\x80\x15a\x04\xCCW__\xFD[Pa\x02*a\n\x7FV[4\x80\x15a\x04\xE0W__\xFD[Pa\x02*a\n\xEDV[4\x80\x15a\x04\xF4W__\xFD[Pa\x02*a\x05\x036`\x04a-\x89V[a\n\xFEV[4\x80\x15a\x05\x13W__\xFD[Pa\x03\xAAa\x0E1V[4\x80\x15a\x05'W__\xFD[P`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15a\x03tV[4\x80\x15a\x05FW__\xFD[Pa\x05Za\x05U6`\x04a'6V[a\x0EVV[`@\x80Q\x92\x83R`\x01`\x01`@\x1B\x03\x90\x91\x16` \x83\x01R\x01a\x02\x80V[4\x80\x15a\x05\x82W__\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\x16a\x04\0V[4\x80\x15a\x05\xBEW__\xFD[Pa\x03\xAAa\x05\xCD6`\x04a-\xCDV[a\x0F\x81V[4\x80\x15a\x05\xDDW__\xFD[Pa\x02*a\x05\xEC6`\x04a,mV[a\x0F\xF0V[4\x80\x15a\x05\xFCW__\xFD[Pa\x02*a\x06\x0B6`\x04a-\xF5V[a\x10yV[4\x80\x15a\x06\x1BW__\xFD[P`\x06T`\x07Ta\x06?\x91`\x01`\x01`@\x1B\x03\x80\x82\x16\x92`\x01`@\x1B\x90\x92\x04\x16\x90\x83V[`@\x80Q`\x01`\x01`@\x1B\x03\x94\x85\x16\x81R\x93\x90\x92\x16` \x84\x01R\x90\x82\x01R``\x01a\x02\x80V[4\x80\x15a\x06pW__\xFD[Pa\x06\x95`@Q\x80`@\x01`@R\x80`\x05\x81R` \x01d\x03R\xE3\x02\xE3`\xDC\x1B\x81RP\x81V[`@Qa\x02\x80\x91\x90a.JV[4\x80\x15a\x06\xADW__\xFD[Pa\x02*a\x06\xBC6`\x04a-\xCDV[a\x11\x9BV[4\x80\x15a\x06\xCCW__\xFD[P`\x08Ta\x06\xE4\x90`\x01`\xA0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x81V[`@Qc\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\x02\x80V[4\x80\x15a\x07\x04W__\xFD[P`\x04T`\x05Ta\x06?\x91`\x01`\x01`@\x1B\x03\x80\x82\x16\x92`\x01`@\x1B\x90\x92\x04\x16\x90\x83V[4\x80\x15a\x073W__\xFD[Pa\x03ta\x07B6`\x04a.\x7FV[a\x12\xFFV[4\x80\x15a\x07RW__\xFD[P`\nTa\x03\xAA\x90`\x01`\x01`@\x1B\x03\x16\x81V[4\x80\x15a\x07qW__\xFD[Pa\x02*a\x07\x806`\x04a'\x1DV[a\x14WV[4\x80\x15a\x07\x90W__\xFD[P`\tTa\x04&V[a\x07\xA1a\x14\x96V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x07\xC8W`@Qc\xE6\xC4${`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08T`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x90\x82\x16\x03a\x07\xF7W`@Qc\xA8c\xAE\xC9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x83\x16\x90\x81\x17\x90\x91U`@Q\x90\x81R\x7F\x80\x17\xBB\x88\x7F\xDF\x8F\xCAC\x14\xA9\xD4\x0Fns\xB3\xB8\x10\x02\xD6~\\\xFA\x85\xD8\x81s\xAFj\xA4`r\x90` \x01[`@Q\x80\x91\x03\x90\xA1PV[`\t\x81\x81T\x81\x10a\x08[W_\x80\xFD[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01\x80T`\x01\x90\x91\x01T`\x01`\x01`@\x1B\x03\x80\x83\x16\x93P`\x01`@\x1B\x83\x04\x81\x16\x92`\x01`\x80\x1B\x90\x04\x16\x90\x84V[a\x08\x9Da$\x83V[a\x08\xA5a\x14\xF1V[\x90P\x90V[a\x08\xB2a\x14\x96V[`\n\x80To\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\x19\x81\x16`\x01`@\x1B`\x01`\x01`@\x1B\x03\x85\x81\x16\x82\x02\x92\x83\x17\x94\x85\x90Ua\x08\xF8\x94\x91\x90\x91\x04\x81\x16\x92\x81\x16\x91\x16\x17a\x0F\x81V[`\n`\x10a\x01\0\n\x81T\x81`\x01`\x01`@\x1B\x03\x02\x19\x16\x90\x83`\x01`\x01`@\x1B\x03\x16\x02\x17\x90UPPV[`@QcN@\\\x8D`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_`\x01`\x01`@\x1B\x03\x82\x16\x15\x80a\tZWP`\nT`\x01`\x01`@\x1B\x03\x16\x15[\x15a\tfWP_\x91\x90PV[`\nT`\x01`\x01`@\x1B\x03\x16a\t}\x83`\x05a.\xB3V[a\t\x87\x91\x90a.\xE6V[`\x01`\x01`@\x1B\x03\x16\x15\x92\x91PPV[\x91\x90PV[_`\x01`\x01`@\x1B\x03\x82\x16\x15\x80a\t\xBCWP`\nT`\x01`\x01`@\x1B\x03\x16\x15[\x15a\t\xC8WP_\x91\x90PV[`\nTa\t\xDE\x90`\x01`\x01`@\x1B\x03\x16\x83a.\xE6V[`\x01`\x01`@\x1B\x03\x16\x15\x80a\n+WP`\nTa\n\x06\x90`\x05\x90`\x01`\x01`@\x1B\x03\x16a/\x13V[`\nT`\x01`\x01`@\x1B\x03\x91\x82\x16\x91a\n \x91\x16\x84a.\xE6V[`\x01`\x01`@\x1B\x03\x16\x11[\x92\x91PPV[a\n9a\x14\x96V[a\nB\x81a\x0F\xF0V[PV[a\nMa\x1B\x1CV[a\nV\x82a\x1B\xC0V[a\n`\x82\x82a\x1C\x01V[PPV[_a\nma\x1C\xC2V[P_Q` a4\x14_9_Q\x90_R\x90V[a\n\x87a\x14\x96V[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15a\n\xD2W`\x08\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x90U`@Q\x7F\x9A_W\xDE\x85m\xD6h\xC5M\xD9^\\U\xDF\x93C!q\xCB\xCAI\xA8wmV \xEAY\xC0$P\x90_\x90\xA1V[`@Qc\xA8c\xAE\xC9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[V[a\n\xF5a\x14\x96V[a\n\xEB_a\x1D\x0BV[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15\x80\x15a\x0B#WP`\x08T`\x01`\x01`\xA0\x1B\x03\x163\x14\x15[\x15a\x0BAW`@Qc\x01GL\x8F`\xE7\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x06T\x83Q`\x01`\x01`@\x1B\x03\x91\x82\x16\x91\x16\x11\x15\x80a\x0BzWP`\x06T` \x84\x01Q`\x01`\x01`@\x1B\x03`\x01`@\x1B\x90\x92\x04\x82\x16\x91\x16\x11\x15[\x15a\x0B\x98W`@Qc\x05\x1CF\xEF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0B\xA5\x83`@\x01Qa\x1D{V[a\x0B\xB2\x82` \x01Qa\x1D{V[a\x0B\xBF\x82`@\x01Qa\x1D{V[a\x0B\xCC\x82``\x01Qa\x1D{V[_a\x0B\xD5a\x0E1V[` \x85\x01Q`\nT\x91\x92P_\x91a\x0B\xF5\x91\x90`\x01`\x01`@\x1B\x03\x16a\x0F\x81V[`\nT\x90\x91P`\x01`\x01`@\x1B\x03`\x01`\x80\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x10a\x0C@Wa\x0C\"\x85` \x01Qa\t\x9CV[\x15a\x0C@W`@Qc\x08\n\xE8\xD9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\nT`\x01`\x01`@\x1B\x03`\x01`\x80\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x11\x15a\x0C\xF3W`\x02a\x0Cj\x83\x83a/\x13V[`\x01`\x01`@\x1B\x03\x16\x10a\x0C\x91W`@Qc\x08\n\xE8\xD9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\x9C\x82`\x01a.\xB3V[`\x01`\x01`@\x1B\x03\x16\x81`\x01`\x01`@\x1B\x03\x16\x14\x80\x15a\x0C\xD5WP`\x06Ta\x0C\xD3\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16a\t:V[\x15[\x15a\x0C\xF3W`@Qc\x08\n\xE8\xD9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\xFE\x85\x85\x85a\x1D\xBCV[\x84Q`\x06\x80T` \x88\x01Q`\x01`\x01`@\x1B\x03\x90\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x92\x16\x93\x81\x16\x93\x90\x93\x17\x17\x90U`@\x86\x01Q`\x07U`\nT`\x01`\x80\x1B\x90\x04\x81\x16\x90\x82\x16\x10\x80\x15\x90a\r]WPa\r]\x85` \x01Qa\t:V[\x15a\r\xC7W\x83Q`\x0BU` \x84\x01Q`\x0CU`@\x84\x01Q`\rU``\x84\x01Q`\x0EU\x7F1\xEA\xBD\x90\x99\xFD\xB2]\xAC\xDD\xD2\x06\xAB\xFF\x871\x1EU4A\xFC\x9D\x0F\xCD\xEF \x10b\xD7\xE7\x07\x1Ba\r\xAB\x82`\x01a.\xB3V[`@Q`\x01`\x01`@\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1[a\r\xD2CB\x87a\x1F3V[\x84` \x01Q`\x01`\x01`@\x1B\x03\x16\x85_\x01Q`\x01`\x01`@\x1B\x03\x16\x7F\xA0Jw9$PZA\x85d67%\xF5h2\xF5w.k\x8D\r\xBDn\xFC\xE7$\xDF\xE8\x03\xDA\xE6\x87`@\x01Q`@Qa\x0E\"\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPPPPV[`\x06T`\nT_\x91a\x08\xA5\x91`\x01`\x01`@\x1B\x03`\x01`@\x1B\x90\x92\x04\x82\x16\x91\x16a\x0F\x81V[`\t\x80T_\x91\x82\x91\x90a\x0Ej`\x01\x83a/2V[\x81T\x81\x10a\x0EzWa\x0Eza/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84\x10a\x0E\xB9W`@Qc\x18V\xA4\x99`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16[\x81\x81\x10\x15a\x0FzW\x84`\t\x82\x81T\x81\x10a\x0E\xE9Wa\x0E\xE9a/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x11\x15a\x0FrW`\t\x81\x81T\x81\x10a\x0F\"Wa\x0F\"a/EV[\x90_R` _ \x90`\x02\x02\x01`\x01\x01T`\t\x82\x81T\x81\x10a\x0FEWa\x0FEa/EV[\x90_R` _ \x90`\x02\x02\x01_\x01`\x10\x90T\x90a\x01\0\n\x90\x04`\x01`\x01`@\x1B\x03\x16\x93P\x93PPP\x91P\x91V[`\x01\x01a\x0E\xCDV[PP\x91P\x91V[_\x81`\x01`\x01`@\x1B\x03\x16_\x03a\x0F\x99WP_a\n+V[\x82`\x01`\x01`@\x1B\x03\x16_\x03a\x0F\xB1WP`\x01a\n+V[a\x0F\xBB\x82\x84a.\xE6V[`\x01`\x01`@\x1B\x03\x16_\x03a\x0F\xDBWa\x0F\xD4\x82\x84a/YV[\x90Pa\n+V[a\x0F\xE5\x82\x84a/YV[a\x0F\xD4\x90`\x01a.\xB3V[a\x0F\xF8a\x14\x96V[a\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10\x80a\x10\x17WPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x80a\x105WP`\x08Tc\xFF\xFF\xFF\xFF`\x01`\xA0\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x11\x15[\x15a\x10SW`@Qc\x07\xA5\x07w`\xE5\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x08\x80Tc\xFF\xFF\xFF\xFF\x90\x92\x16`\x01`\xA0\x1B\x02c\xFF\xFF\xFF\xFF`\xA0\x1B\x19\x90\x92\x16\x91\x90\x91\x17\x90UV[\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\x90`\x01`\x01`@\x1B\x03\x16_\x81\x15\x80\x15a\x10\xBDWP\x82[\x90P_\x82`\x01`\x01`@\x1B\x03\x16`\x01\x14\x80\x15a\x10\xD8WP0;\x15[\x90P\x81\x15\x80\x15a\x10\xE6WP\x80\x15[\x15a\x11\x04W`@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\x11.W\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x117\x86a!\x1CV[a\x11?a!-V[a\x11J\x89\x89\x89a!5V[\x83\x15a\x11\x90W\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[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80T`\x02\x91\x90`\x01`@\x1B\x90\x04`\xFF\x16\x80a\x11\xE4WP\x80T`\x01`\x01`@\x1B\x03\x80\x84\x16\x91\x16\x10\x15[\x15a\x12\x02W`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Th\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16`\x01`\x01`@\x1B\x03\x80\x84\x16\x91\x90\x91\x17`\x01`@\x1B\x17\x82U`\x05\x90\x85\x16\x11a\x12JW`@QcP\xDD\x03\xF7`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_T`\x0BU`\x01T`\x0CU`\x02T`\rU`\x03T`\x0EU`\n\x80T`\x01`\x01`@\x1B\x03\x85\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x92\x16\x90\x87\x16\x17\x17\x90Ua\x12\x93\x83\x85a\x0F\x81V[`\n\x80Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\x80\x1B\x19\x16`\x01`\x80\x1B`\x01`\x01`@\x1B\x03\x93\x84\x16\x02\x17\x90U\x81T`\xFF`@\x1B\x19\x16\x82U`@Q\x90\x83\x16\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\xA1PPPPV[`\tT_\x90C\x84\x11\x80a\x13\x10WP\x80\x15[\x80a\x13ZWP`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x13>Wa\x13>a/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x84\x10[\x15a\x13xW`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x80\x80a\x13\x86`\x01\x85a/2V[\x90P[\x81a\x14\"W`\x08T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81\x10a\x14\"W\x86`\t\x82\x81T\x81\x10a\x13\xBBWa\x13\xBBa/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x11a\x14\x10W`\x01\x91P`\t\x81\x81T\x81\x10a\x13\xF0Wa\x13\xF0a/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x92Pa\x14\"V[\x80a\x14\x1A\x81a/\x86V[\x91PPa\x13\x89V[\x81a\x14@W`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x85a\x14K\x84\x89a/2V[\x11\x97\x96PPPPPPPV[a\x14_a\x14\x96V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x14\x8DW`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01[`@Q\x80\x91\x03\x90\xFD[a\nB\x81a\x1D\x0BV[3a\x14\xC8\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\n\xEBW`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\x14\x84V[a\x14\xF9a$\x83V[b\x10\0\0\x81R`\x0B` \x82\x01R\x7F&\x86~\xE5\x8A\xAF\x86\x0F\xC9\xE0\xE3\xA7\x86f\xFF\xC5\x1F;\xA1\xAD\x8A\xE0\x01\xC1\x96\x83\x0CU\xB5\xAF\x0B\x8C`@\x82\x01QR\x7F\t\x120\xAD\xB7S\xF8(\x15\x15\x12w\x06\x0C\xC5kTk\xB2\xE9P\xA0\xDE\x19\xED\x06\x1E\xC6\x8C\x07\x1A\x90` `@\x83\x01Q\x01R\x7F\x02\xA5\t\xA0m\x8CV\xF8? F\x88\xFFnB\xEA\xC6\xE3\xCB\xDD\x06;\tq\xA3\xAF\x95>\x81\xBA\xDB\xB6``\x82\x01QR\x7F\x06\xF4>\xD2\xB9\xCE\xCE5\xD1 \x1A\xBC\x13\xFF\xDA\xEA5V\x0C\xF0\xF1Dbw\x13\x8C\xE8\x12\xB9\xAD\x9F9` ``\x83\x01Q\x01R\x7F\x1AX\x8C\x99\xAD\x88\xF7\x89\xC8w\"\xB0a\xBBU5\xDA\xA0\xAB\xCC\x1D\xC6\xD1v\xD7\xFE\xA5\x1E]\x80\xB9&`\x80\x82\x01QR\x7F b\xB9\x95\xE6\x1Aj\xB8\xAA\xB6\xCDnu \xB8y\xD8O\x96Z\xB1\xF0\x94\xC1\x04\xF0\xC1!;(\x03\x8B` `\x80\x83\x01Q\x01R\x7F!\xA2\xFDvj\x0C\xEB\xEC\xFD\xBF\xDF\xE5a9\xA1\xBB\xD9\xAE\xC1^.5\xBE\x8E\xF0\x194\xA0\xECC\x86\x85`\xA0\x82\x01QR\x7F \xFEP\n\xC7\xD1\xAAx \xDB\x8Co\x7F\x9DP\x9E;.\x88s\x1E:\x12\xDDe\xF0oC\xCA\x93\r\xA0` `\xA0\x83\x01Q\x01R\x7F\n\xB5=\x12\x85\xC7\xF4\x81\x9B?\xF6\xE1\xDD\xAD\xA6\xBF%\x15\xD3K\xBA\xF6\x11\x86\xC6\xA0K\xE4}\xFDe\xA3`\xC0\x82\x01QR\x7F\x0B\x80\xA9\x87\x80\x82\xCD\xFD\xD9\xFC\xC1k\xB3?\xA4$\xC0\xADf\xB8\x19I\xBFd!S\xD3\xC7\xAD\x08/\"` `\xC0\x83\x01Q\x01R\x7F\x1B\x90\x0F\x8E_\x8E\x80d\xA5\x88\x8A\x1B\xD7\x96\xB5J&R\xFC\x02\x03O\xE4\xB6\xE6\xFC\x8DfP\xF7E;`\xE0\x82\x01QR~\xCC\xA2X\xA8\x83,d\xD1\xF8\xE1r\x1Ax\xFC%\xB1=)\xAD\xBB\x81\xE3Zy\xFC/I\xF8\x90'\x86` `\xE0\x83\x01Q\x01R\x7F\r\x1D3H\xD6B\xE6\xF2\xE9s\x9Ds]\x8Cr6v\xDB\xAE\xFD\xCB\xB4\xE9fA\xDE\xFA5=&\xEB\xB3a\x01\0\x82\x01QR\x7F\x14\xFE\x9Dj3Q\x04\xE7I\x1C\xA6\xD5\x08a\x13\xE6\xB0\xF5)F\x96\rrfdf{\xD5\x859\xD4\x1E` a\x01\0\x83\x01Q\x01R\x7F\x1D\xA9CdD\x0CN?\xB8\xAF-6<\xDE\xFAN\xDD\xA47W\x9E\x1B\x05j\x16\xA5\xE9\xA1\x1D\xFF\xA2\xABa\x01 \x82\x01QR\x7F\n\x07{\xD3\x07\xED1\"-\xB5\\\xB0\x12\x8B\xAF\xCE^\"U{W\xF5\xAC\x91SY\xC5\x02\x96\xCB\\w` a\x01 \x83\x01Q\x01R\x7F(\xFF\x80\xB13\xD9\x89#\\q)\xDE\xA5Di\xB7\x80\xACG\x17D\x92\x90\x06~|\x9A}[\xE7\xDB\xD5a\x01@\x82\x01QR\x7F\x1C\x0F\xC2.\xEF#\xB5\n-\xDCU?\x9F\xC1\xB6\x1F\xD8\xC5zX\xCA2\x1A\x82\x9C~\xC2U\xF7W\xB3\xA6` a\x01@\x83\x01Q\x01R~<N!\xE5\xDF\xBAb\xA5\xB1p/\xB0\xEF#K\xFE\x95\xA7w\x01\xA4V\x88#PRm\x14\x02C\xF5a\x01`\x82\x01QR\x7F\x06\x01-\xB8(v\xBA3\xE6\xE8\xF8\nQ\x016b\xE5lJ\xBC\x86\xA7\xD8\\'.\x19\xA6\xD7\xF5}\x0B` a\x01`\x83\x01Q\x01R\x7F\x16\xD5$}\xBD\xEA\xE1\xDFp\t>^\xE7rr\x95\x96a\xE0\xFB\xAB\xDAC\x17w\xFAr\x9F[S/Da\x01\x80\x82\x01QR~\x8D\x9E\xE0\x0Fy\x9C\xF0\x06\x08\xB0\x82\xD0;\x9D\xE5\xA4+\x81&\xC3_\xBF\xBD\x1E`!\x08\xDF\x10\xE0\xE3` a\x01\x80\x83\x01Q\x01R\x7F/Rli\x81d?\xF6\xF6\xE9\xD2\xB5\xA9!\xE0l\xF9_'F)\xB5\xA1E\xBDU+\x7F\xDAj\x87\0a\x01\xA0\x82\x01QR\x7F/\xE7\x10\x8F\xD4\xE2B1\xF3\xDA\xDBn\t\x07.\x10o\xCA\x06\x94\xFE9\xDF\xF9eW\xA8\x82!\xA8\x9AP` a\x01\xA0\x83\x01Q\x01R\x7F&\xA3V\x85\x98\xA6\x98\x1Ec%\xF4\x81g6\xE3\x81\x08{[\x0EK'\xEF6M\x8A\xE1\xE2\x9F\xE9\xDF\x99a\x01\xC0\x82\x01QR\x7F\x1D\xB8\x1C\xDF\x82\xA9\xEC\x99\xF3\xC9qm\xF2-81~k\xB8O\xC5}/\x0E{+\xC8\xA0V\x9F|\xC4` a\x01\xC0\x83\x01Q\x01R~\x99\x88\x80\x88\xE1\x1D\xE6\xED\x08l\x99\xB9\xBB\xA9\x86\xD9\x08\xDF[\x0CP\x07h\r\x97V}HW\x19\x94a\x01\xE0\x82\x01QR\x7F\x1F\x91Wn\xAD\xFF\xFF\x93+nT\xBA\xB0\"\xF9?o\xEC>[vt\xD0\0k\xC5\xF2\"5'\xA3H` a\x01\xE0\x83\x01Q\x01R~h\xB3\xC1\x17\xEE~\x84\xD6\xB6p\xB6\xAF \x19wY\xEC\x80\xD3O<YC(f01\xE9\xCD~\x02a\x02\0\x82\x01QR\x7F\x1C82\xE2Hw4f\x80\xE7\x04{\xAE,\xFC\xD5\x1F\xAF\xE3\xE7\xCA\xF1\x99\xE9\xDF\xC8\xE8\xF1\x0C+iC` a\x02\0\x83\x01Q\x01R\x7F\x16L\xDD\x9A\xD5\xD4\xE9n\x10\x90s\xE8\xE75\xCDJ\xC6J\xBAm\xDA\xA2D\xDAg\x016\x9C\x8C\xBA]\xAFa\x02 \x82\x01QR\x7F\x16\xC4\x1Ed\x7F\x1A\xB0\xD4\\\x89\x15D)\x9EN\xF9\xC0\x04\xD8\xBC\n;\xF0\x96\xDC8\xCE\x8E\xD9\x0C\rg` a\x02 \x83\x01Q\x01R\x7F\x13K\xA7\xA9V{\xA2\x0E\x1F5\x95\x9E\xE8\xC2\xCDh\x8D:\x96+\xB1y~\x8A\xB8\xE5\x11v\x8D\xE0\xCE\x83a\x02@\x82\x01QR\x7F\x02\xE4\xD2\x86\xC9C_{\xD9L\x1A,x\xB9\x99f\xD0o\xAC\xA1\xAEE\xDEx\x14\x99P\xA4\xFE\xFC\xD6\xE7` a\x02@\x83\x01Q\x01R\x7F\x03\x9A\x0B-\x92\x0F)\xE3\\\xB2\xA9\xE1\xECl\xC2*\xC1\xD4\x82\xAFE\xE4s\x99rJ\x07E\xD5B\xE89a\x02`\x82\x01QR\x7F\x15\xAC&X\xBF\xDD\"'\xAE\xBF\x8E \x93Y5\xA6H\x81\x9E\x1D\xCE\xA8\x07\xDA\x1C\x83\x8A\xBF\xA7\x89lc` a\x02`\x83\x01Q\x01R\x7F\xB0\x83\x88\x93\xEC\x1F#~\x8B\x072;\x07DY\x9FN\x97\xB5\x98\xB3\xB5\x89\xBC\xC2\xBC7\xB8\xD5\xC4\x18\x01a\x02\x80\x82\x01R\x7F\xC1\x83\x93\xC0\xFA0\xFEN\x8B\x03\x8E5z\xD8Q\xEA\xE8\xDE\x91\x07XN\xFF\xE7\xC7\xF1\xF6Q\xB2\x01\x0E&a\x02\xA0\x82\x01R\x90V[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\x1B\xA2WP\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\x1B\x96_Q` a4\x14_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\n\xEBW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1B\xC8a\x14\x96V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x81R\x7F\xF7\x87!\"n\xFE\x9A\x1B\xB6x\x18\x9A\x16\xD1UI(\xB9\xF2\x19.,\xB9>\xED\xA8;y\xFA@\0}\x90` \x01a\x08AV[\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\x1C[WP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x1CX\x91\x81\x01\x90a/\x9BV[`\x01[a\x1C\x83W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\x14\x84V[_Q` a4\x14_9_Q\x90_R\x81\x14a\x1C\xB3W`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x14\x84V[a\x1C\xBD\x83\x83a\"aV[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\n\xEBW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\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[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x81\x10\x80a\n`W`@Qc\x01l\x173`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a\x1D\xC5a\x08\x95V[\x90Pa\x1D\xCFa&\xE8V[\x84Q`\x01`\x01`@\x1B\x03\x90\x81\x16\x82R` \x80\x87\x01\x80Q\x83\x16\x91\x84\x01\x91\x90\x91R`@\x80\x88\x01Q\x90\x84\x01R`\x0CT``\x84\x01R`\rT`\x80\x84\x01R`\x0ET`\xA0\x84\x01R`\x0BT`\xC0\x84\x01R`\nT\x90Q`\x01`@\x1B\x90\x91\x04\x82\x16\x91\x16\x10\x80\x15\x90a\x1E?WPa\x1E?\x85` \x01Qa\t:V[\x15a\x1EqW` \x84\x01Q`\xE0\x82\x01R`@\x84\x01Qa\x01\0\x82\x01R``\x84\x01Qa\x01 \x82\x01R\x83Qa\x01@\x82\x01Ra\x1E\x95V[`\x0CT`\xE0\x82\x01R`\rTa\x01\0\x82\x01R`\x0ETa\x01 \x82\x01R`\x0BTa\x01@\x82\x01R[`@Qc\xFC\x86`\xC7`\xE0\x1B\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90c\xFC\x86`\xC7\x90a\x1E\xD0\x90\x85\x90\x85\x90\x88\x90`\x04\x01a1\x94V[` `@Q\x80\x83\x03\x81\x86Z\xF4\x15\x80\x15a\x1E\xEBW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x1F\x0F\x91\x90a3\xB4V[a\x1F,W`@Qc\t\xBD\xE39`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPPPPV[`\tT\x15\x80\x15\x90a\x1F\xA8WP`\x08T`\t\x80T`\x01`\xA0\x1B\x83\x04c\xFF\xFF\xFF\xFF\x16\x92`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x1FsWa\x1Fsa/EV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01Ta\x1F\x9D\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84a/\x13V[`\x01`\x01`@\x1B\x03\x16\x11[\x15a ;W`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x1F\xD5Wa\x1F\xD5a/EV[_\x91\x82R` \x82 `\x02\x90\x91\x02\x01\x80T`\x01`\x01`\xC0\x1B\x03\x19\x16\x81U`\x01\x01U`\x08\x80T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90`\x18a \x15\x83a3\xD3V[\x91\x90a\x01\0\n\x81T\x81`\x01`\x01`@\x1B\x03\x02\x19\x16\x90\x83`\x01`\x01`@\x1B\x03\x16\x02\x17\x90UPP[`@\x80Q`\x80\x81\x01\x82R`\x01`\x01`@\x1B\x03\x94\x85\x16\x81R\x92\x84\x16` \x80\x85\x01\x91\x82R\x83\x01Q\x85\x16\x84\x83\x01\x90\x81R\x92\x90\x91\x01Q``\x84\x01\x90\x81R`\t\x80T`\x01\x81\x01\x82U_\x91\x90\x91R\x93Q`\x02\x90\x94\x02\x7Fn\x15@\x17\x1Bl\x0C\x96\x0Bq\xA7\x02\r\x9F`\x07\x7Fj\xF91\xA8\xBB\xF5\x90\xDA\x02#\xDA\xCFu\xC7\xAF\x81\x01\x80T\x93Q\x94Q\x87\x16`\x01`\x80\x1B\x02g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\x80\x1B\x19\x95\x88\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x95\x16\x96\x90\x97\x16\x95\x90\x95\x17\x92\x90\x92\x17\x92\x90\x92\x16\x93\x90\x93\x17\x90\x91UQ\x7Fn\x15@\x17\x1Bl\x0C\x96\x0Bq\xA7\x02\r\x9F`\x07\x7Fj\xF91\xA8\xBB\xF5\x90\xDA\x02#\xDA\xCFu\xC7\xB0\x90\x91\x01UV[a!$a\"\xB6V[a\nB\x81a\"\xFFV[a\n\xEBa\"\xB6V[\x82Q`\x01`\x01`@\x1B\x03\x16\x15\x15\x80a!YWP` \x83\x01Q`\x01`\x01`@\x1B\x03\x16\x15\x15[\x80a!fWP` \x82\x01Q\x15[\x80a!sWP`@\x82\x01Q\x15[\x80a!\x80WP``\x82\x01Q\x15[\x80a!\x8AWP\x81Q\x15[\x80a!\x9CWPa\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10[\x80a!\xB0WPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x15a!\xCEW`@QcP\xDD\x03\xF7`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82Q`\x04\x80T` \x80\x87\x01Q`\x01`\x01`@\x1B\x03\x90\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x93\x84\x16\x91\x90\x95\x16\x90\x81\x17\x85\x17\x90\x93U`@\x96\x87\x01Q`\x05\x81\x90U\x86Q_U\x90\x86\x01Q`\x01U\x95\x85\x01Q`\x02U``\x90\x94\x01Q`\x03U`\x06\x80T\x90\x94\x16\x17\x17\x90\x91U`\x07\x91\x90\x91U`\x08\x80Tc\xFF\xFF\xFF\xFF\x90\x92\x16`\x01`\xA0\x1B\x02c\xFF\xFF\xFF\xFF`\xA0\x1B\x19\x90\x92\x16\x91\x90\x91\x17\x90UV[a\"j\x82a#\x07V[`@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\"\xAEWa\x1C\xBD\x82\x82a#jV[a\n`a#\xDCV[\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\n\xEBW`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x14_a\"\xB6V[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a#<W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\x14\x84V[_Q` a4\x14_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#\x86\x91\x90a3\xFDV[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a#\xBEW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a#\xC3V[``\x91P[P\x91P\x91Pa#\xD3\x85\x83\x83a#\xFBV[\x95\x94PPPPPV[4\x15a\n\xEBW`@Qc\xB3\x98\x97\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``\x82a$\x10Wa$\x0B\x82a$ZV[a$SV[\x81Q\x15\x80\x15a$'WP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a$PW`@Qc\x99\x96\xB3\x15`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`$\x01a\x14\x84V[P\x80[\x93\x92PPPV[\x80Q\x15a$jW\x80Q\x80\x82` \x01\xFD[`@Qc\n\x12\xF5!`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@Q\x80a\x02\xC0\x01`@R\x80_\x81R` \x01_\x81R` \x01a$\xB6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a$\xD6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a$\xF6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\x16`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%V`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%v`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\x96`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\xB6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\xD6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a%\xF6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\x16`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&V`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&v`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\x96`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\xB6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a&\xD6`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01_\x81R` \x01_\x81RP\x90V[`@Q\x80a\x01`\x01`@R\x80`\x0B\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\t\x97W__\xFD[_` \x82\x84\x03\x12\x15a'-W__\xFD[a$S\x82a'\x07V[_` \x82\x84\x03\x12\x15a'FW__\xFD[P5\x91\x90PV[_a\x05\0\x82\x01\x90P\x82Q\x82R` \x83\x01Q` \x83\x01R`@\x83\x01Qa'\x7F`@\x84\x01\x82\x80Q\x82R` \x90\x81\x01Q\x91\x01RV[P``\x83\x01Q\x80Q`\x80\x84\x01R` \x81\x01Q`\xA0\x84\x01RP`\x80\x83\x01Q\x80Q`\xC0\x84\x01R` \x81\x01Q`\xE0\x84\x01RP`\xA0\x83\x01Q\x80Qa\x01\0\x84\x01R` \x81\x01Qa\x01 \x84\x01RP`\xC0\x83\x01Q\x80Qa\x01@\x84\x01R` \x81\x01Qa\x01`\x84\x01RP`\xE0\x83\x01Q\x80Qa\x01\x80\x84\x01R` \x81\x01Qa\x01\xA0\x84\x01RPa\x01\0\x83\x01Q\x80Qa\x01\xC0\x84\x01R` \x81\x01Qa\x01\xE0\x84\x01RPa\x01 \x83\x01Q\x80Qa\x02\0\x84\x01R` \x81\x01Qa\x02 \x84\x01RPa\x01@\x83\x01Q\x80Qa\x02@\x84\x01R` \x81\x01Qa\x02`\x84\x01RPa\x01`\x83\x01Q\x80Qa\x02\x80\x84\x01R` \x81\x01Qa\x02\xA0\x84\x01RPa\x01\x80\x83\x01Q\x80Qa\x02\xC0\x84\x01R` \x81\x01Qa\x02\xE0\x84\x01RPa\x01\xA0\x83\x01Q\x80Qa\x03\0\x84\x01R` \x81\x01Qa\x03 \x84\x01RPa\x01\xC0\x83\x01Q\x80Qa\x03@\x84\x01R` \x81\x01Qa\x03`\x84\x01RPa\x01\xE0\x83\x01Q\x80Qa\x03\x80\x84\x01R` \x81\x01Qa\x03\xA0\x84\x01RPa\x02\0\x83\x01Q\x80Qa\x03\xC0\x84\x01R` \x81\x01Qa\x03\xE0\x84\x01RPa\x02 \x83\x01Q\x80Qa\x04\0\x84\x01R` \x81\x01Qa\x04 \x84\x01RPa\x02@\x83\x01Q\x80Qa\x04@\x84\x01R` \x81\x01Qa\x04`\x84\x01RPa\x02`\x83\x01Q\x80Qa\x04\x80\x84\x01R` \x81\x01Qa\x04\xA0\x84\x01RPa\x02\x80\x83\x01Qa\x04\xC0\x83\x01Ra\x02\xA0\x90\x92\x01Qa\x04\xE0\x90\x91\x01R\x90V[\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x14a\t\x97W__\xFD[_` \x82\x84\x03\x12\x15a)tW__\xFD[a$S\x82a)NV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@Qa\x02\xE0\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a)\xB4Wa)\xB4a)}V[`@R\x90V[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a)\xE2Wa)\xE2a)}V[`@R\x91\x90PV[_``\x82\x84\x03\x12\x15a)\xFAW__\xFD[`@Q``\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a*\x1CWa*\x1Ca)}V[`@R\x90P\x80a*+\x83a)NV[\x81Ra*9` \x84\x01a)NV[` \x82\x01R`@\x92\x83\x015\x92\x01\x91\x90\x91R\x91\x90PV[_`@\x82\x84\x03\x12\x15a*_W__\xFD[`@\x80Q\x90\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a*\x81Wa*\x81a)}V[`@R\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[_a\x04\x80\x82\x84\x03\x12\x15a*\xACW__\xFD[a*\xB4a)\x91V[\x90Pa*\xC0\x83\x83a*OV[\x81Ra*\xCF\x83`@\x84\x01a*OV[` \x82\x01Ra*\xE1\x83`\x80\x84\x01a*OV[`@\x82\x01Ra*\xF3\x83`\xC0\x84\x01a*OV[``\x82\x01Ra+\x06\x83a\x01\0\x84\x01a*OV[`\x80\x82\x01Ra+\x19\x83a\x01@\x84\x01a*OV[`\xA0\x82\x01Ra+,\x83a\x01\x80\x84\x01a*OV[`\xC0\x82\x01Ra+?\x83a\x01\xC0\x84\x01a*OV[`\xE0\x82\x01Ra+R\x83a\x02\0\x84\x01a*OV[a\x01\0\x82\x01Ra+f\x83a\x02@\x84\x01a*OV[a\x01 \x82\x01Ra+z\x83a\x02\x80\x84\x01a*OV[a\x01@\x82\x01Ra+\x8E\x83a\x02\xC0\x84\x01a*OV[a\x01`\x82\x01Ra+\xA2\x83a\x03\0\x84\x01a*OV[a\x01\x80\x82\x01Ra\x03@\x82\x015a\x01\xA0\x82\x01Ra\x03`\x82\x015a\x01\xC0\x82\x01Ra\x03\x80\x82\x015a\x01\xE0\x82\x01Ra\x03\xA0\x82\x015a\x02\0\x82\x01Ra\x03\xC0\x82\x015a\x02 \x82\x01Ra\x03\xE0\x82\x015a\x02@\x82\x01Ra\x04\0\x82\x015a\x02`\x82\x01Ra\x04 \x82\x015a\x02\x80\x82\x01Ra\x04@\x82\x015a\x02\xA0\x82\x01Ra\x04`\x90\x91\x015a\x02\xC0\x82\x01R\x91\x90PV[__a\x04\xE0\x83\x85\x03\x12\x15a,8W__\xFD[a,B\x84\x84a)\xEAV[\x91Pa,Q\x84``\x85\x01a*\x9BV[\x90P\x92P\x92\x90PV[\x805c\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\t\x97W__\xFD[_` \x82\x84\x03\x12\x15a,}W__\xFD[a$S\x82a,ZV[__`@\x83\x85\x03\x12\x15a,\x97W__\xFD[a,\xA0\x83a'\x07V[\x91P` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15a,\xBAW__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a,\xCAW__\xFD[\x805`\x01`\x01`@\x1B\x03\x81\x11\x15a,\xE3Wa,\xE3a)}V[a,\xF6`\x1F\x82\x01`\x1F\x19\x16` \x01a)\xBAV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a-\nW__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[_`\x80\x82\x84\x03\x12\x15a-9W__\xFD[`@Q`\x80\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a-[Wa-[a)}V[`@\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[___a\x05`\x84\x86\x03\x12\x15a-\x9CW__\xFD[a-\xA6\x85\x85a)\xEAV[\x92Pa-\xB5\x85``\x86\x01a-)V[\x91Pa-\xC4\x85`\xE0\x86\x01a*\x9BV[\x90P\x92P\x92P\x92V[__`@\x83\x85\x03\x12\x15a-\xDEW__\xFD[a-\xE7\x83a)NV[\x91Pa,Q` \x84\x01a)NV[____a\x01 \x85\x87\x03\x12\x15a.\tW__\xFD[a.\x13\x86\x86a)\xEAV[\x93Pa.\"\x86``\x87\x01a-)V[\x92Pa.0`\xE0\x86\x01a,ZV[\x91Pa.?a\x01\0\x86\x01a'\x07V[\x90P\x92\x95\x91\x94P\x92PV[` \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[__`@\x83\x85\x03\x12\x15a.\x90W__\xFD[PP\x805\x92` \x90\x91\x015\x91PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`\x01`\x01`@\x1B\x03\x81\x81\x16\x83\x82\x16\x01\x90\x81\x11\x15a\n+Wa\n+a.\x9FV[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[_`\x01`\x01`@\x1B\x03\x83\x16\x80a.\xFEWa.\xFEa.\xD2V[\x80`\x01`\x01`@\x1B\x03\x84\x16\x06\x91PP\x92\x91PPV[`\x01`\x01`@\x1B\x03\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\n+Wa\n+a.\x9FV[\x81\x81\x03\x81\x81\x11\x15a\n+Wa\n+a.\x9FV[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_`\x01`\x01`@\x1B\x03\x83\x16\x80a/qWa/qa.\xD2V[\x80`\x01`\x01`@\x1B\x03\x84\x16\x04\x91PP\x92\x91PPV[_\x81a/\x94Wa/\x94a.\x9FV[P_\x19\x01\x90V[_` \x82\x84\x03\x12\x15a/\xABW__\xFD[PQ\x91\x90PV[\x80_[`\x0B\x81\x10\x15a/\xD4W\x81Q\x84R` \x93\x84\x01\x93\x90\x91\x01\x90`\x01\x01a/\xB5V[PPPPV[a/\xEF\x82\x82Q\x80Q\x82R` \x90\x81\x01Q\x91\x01RV[` \x81\x81\x01Q\x80Q`@\x85\x01R\x90\x81\x01Q``\x84\x01RP`@\x81\x01Q\x80Q`\x80\x84\x01R` \x81\x01Q`\xA0\x84\x01RP``\x81\x01Q\x80Q`\xC0\x84\x01R` \x81\x01Q`\xE0\x84\x01RP`\x80\x81\x01Q\x80Qa\x01\0\x84\x01R` \x81\x01Qa\x01 \x84\x01RP`\xA0\x81\x01Q\x80Qa\x01@\x84\x01R` \x81\x01Qa\x01`\x84\x01RP`\xC0\x81\x01Q\x80Qa\x01\x80\x84\x01R` \x81\x01Qa\x01\xA0\x84\x01RP`\xE0\x81\x01Q\x80Qa\x01\xC0\x84\x01R` \x81\x01Qa\x01\xE0\x84\x01RPa\x01\0\x81\x01Q\x80Qa\x02\0\x84\x01R` \x81\x01Qa\x02 \x84\x01RPa\x01 \x81\x01Q\x80Qa\x02@\x84\x01R` \x81\x01Qa\x02`\x84\x01RPa\x01@\x81\x01Q\x80Qa\x02\x80\x84\x01R` \x81\x01Qa\x02\xA0\x84\x01RPa\x01`\x81\x01Q\x80Qa\x02\xC0\x84\x01R` \x81\x01Qa\x02\xE0\x84\x01RPa\x01\x80\x81\x01Q\x80Qa\x03\0\x84\x01R` \x81\x01Qa\x03 \x84\x01RPa\x01\xA0\x81\x01Qa\x03@\x83\x01Ra\x01\xC0\x81\x01Qa\x03`\x83\x01Ra\x01\xE0\x81\x01Qa\x03\x80\x83\x01Ra\x02\0\x81\x01Qa\x03\xA0\x83\x01Ra\x02 \x81\x01Qa\x03\xC0\x83\x01Ra\x02@\x81\x01Qa\x03\xE0\x83\x01Ra\x02`\x81\x01Qa\x04\0\x83\x01Ra\x02\x80\x81\x01Qa\x04 \x83\x01Ra\x02\xA0\x81\x01Qa\x04@\x83\x01Ra\x02\xC0\x01Qa\x04`\x90\x91\x01RV[_a\n\xE0\x82\x01\x90P\x84Q\x82R` \x85\x01Q` \x83\x01R`@\x85\x01Qa1\xC6`@\x84\x01\x82\x80Q\x82R` \x90\x81\x01Q\x91\x01RV[P``\x85\x01Q\x80Q`\x80\x84\x01R` \x81\x01Q`\xA0\x84\x01RP`\x80\x85\x01Q\x80Q`\xC0\x84\x01R` \x81\x01Q`\xE0\x84\x01RP`\xA0\x85\x01Q\x80Qa\x01\0\x84\x01R` \x81\x01Qa\x01 \x84\x01RP`\xC0\x85\x01Q\x80Qa\x01@\x84\x01R` \x81\x01Qa\x01`\x84\x01RP`\xE0\x85\x01Q\x80Qa\x01\x80\x84\x01R` \x81\x01Qa\x01\xA0\x84\x01RPa\x01\0\x85\x01Q\x80Qa\x01\xC0\x84\x01R` \x81\x01Qa\x01\xE0\x84\x01RPa\x01 \x85\x01Q\x80Qa\x02\0\x84\x01R` \x81\x01Qa\x02 \x84\x01RPa\x01@\x85\x01Q\x80Qa\x02@\x84\x01R` \x81\x01Qa\x02`\x84\x01RPa\x01`\x85\x01Q\x80Qa\x02\x80\x84\x01R` \x81\x01Qa\x02\xA0\x84\x01RPa\x01\x80\x85\x01Q\x80Qa\x02\xC0\x84\x01R` \x81\x01Qa\x02\xE0\x84\x01RPa\x01\xA0\x85\x01Q\x80Qa\x03\0\x84\x01R` \x81\x01Qa\x03 \x84\x01RPa\x01\xC0\x85\x01Q\x80Qa\x03@\x84\x01R` \x81\x01Qa\x03`\x84\x01RPa\x01\xE0\x85\x01Q\x80Qa\x03\x80\x84\x01R` \x81\x01Qa\x03\xA0\x84\x01RPa\x02\0\x85\x01Q\x80Qa\x03\xC0\x84\x01R` \x81\x01Qa\x03\xE0\x84\x01RPa\x02 \x85\x01Q\x80Qa\x04\0\x84\x01R` \x81\x01Qa\x04 \x84\x01RPa\x02@\x85\x01Q\x80Qa\x04@\x84\x01R` \x81\x01Qa\x04`\x84\x01RPa\x02`\x85\x01Q\x80Qa\x04\x80\x84\x01R` \x81\x01Qa\x04\xA0\x84\x01RPa\x02\x80\x85\x01Qa\x04\xC0\x83\x01Ra\x02\xA0\x85\x01Qa\x04\xE0\x83\x01Ra3\x9Ea\x05\0\x83\x01\x85a/\xB2V[a3\xACa\x06`\x83\x01\x84a/\xDAV[\x94\x93PPPPV[_` \x82\x84\x03\x12\x15a3\xC4W__\xFD[\x81Q\x80\x15\x15\x81\x14a$SW__\xFD[_`\x01`\x01`@\x1B\x03\x82\x16`\x01`\x01`@\x1B\x03\x81\x03a3\xF4Wa3\xF4a.\x9FV[`\x01\x01\x92\x91PPV[_\x82Q\x80` \x85\x01\x84^_\x92\x01\x91\x82RP\x91\x90PV\xFE6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBC\xA1dsolcC\0\x08\x1C\0\n",
4938 );
4939 #[derive(serde::Serialize, serde::Deserialize)]
4940 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4941 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4946 #[derive(Clone)]
4947 pub struct AddressEmptyCode {
4948 #[allow(missing_docs)]
4949 pub target: alloy::sol_types::private::Address,
4950 }
4951 #[allow(
4952 non_camel_case_types,
4953 non_snake_case,
4954 clippy::pub_underscore_fields,
4955 clippy::style
4956 )]
4957 const _: () = {
4958 use alloy::sol_types as alloy_sol_types;
4959 #[doc(hidden)]
4960 #[allow(dead_code)]
4961 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
4962 #[doc(hidden)]
4963 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
4964 #[cfg(test)]
4965 #[allow(dead_code, unreachable_patterns)]
4966 fn _type_assertion(
4967 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4968 ) {
4969 match _t {
4970 alloy_sol_types::private::AssertTypeEq::<
4971 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4972 >(_) => {}
4973 }
4974 }
4975 #[automatically_derived]
4976 #[doc(hidden)]
4977 impl ::core::convert::From<AddressEmptyCode> for UnderlyingRustTuple<'_> {
4978 fn from(value: AddressEmptyCode) -> Self {
4979 (value.target,)
4980 }
4981 }
4982 #[automatically_derived]
4983 #[doc(hidden)]
4984 impl ::core::convert::From<UnderlyingRustTuple<'_>> for AddressEmptyCode {
4985 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4986 Self { target: tuple.0 }
4987 }
4988 }
4989 #[automatically_derived]
4990 impl alloy_sol_types::SolError for AddressEmptyCode {
4991 type Parameters<'a> = UnderlyingSolTuple<'a>;
4992 type Token<'a> = <Self::Parameters<
4993 'a,
4994 > as alloy_sol_types::SolType>::Token<'a>;
4995 const SIGNATURE: &'static str = "AddressEmptyCode(address)";
4996 const SELECTOR: [u8; 4] = [153u8, 150u8, 179u8, 21u8];
4997 #[inline]
4998 fn new<'a>(
4999 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5000 ) -> Self {
5001 tuple.into()
5002 }
5003 #[inline]
5004 fn tokenize(&self) -> Self::Token<'_> {
5005 (
5006 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5007 &self.target,
5008 ),
5009 )
5010 }
5011 #[inline]
5012 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5013 <Self::Parameters<
5014 '_,
5015 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5016 .map(Self::new)
5017 }
5018 }
5019 };
5020 #[derive(serde::Serialize, serde::Deserialize)]
5021 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5022 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5027 #[derive(Clone)]
5028 pub struct DeprecatedApi;
5029 #[allow(
5030 non_camel_case_types,
5031 non_snake_case,
5032 clippy::pub_underscore_fields,
5033 clippy::style
5034 )]
5035 const _: () = {
5036 use alloy::sol_types as alloy_sol_types;
5037 #[doc(hidden)]
5038 #[allow(dead_code)]
5039 type UnderlyingSolTuple<'a> = ();
5040 #[doc(hidden)]
5041 type UnderlyingRustTuple<'a> = ();
5042 #[cfg(test)]
5043 #[allow(dead_code, unreachable_patterns)]
5044 fn _type_assertion(
5045 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5046 ) {
5047 match _t {
5048 alloy_sol_types::private::AssertTypeEq::<
5049 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5050 >(_) => {}
5051 }
5052 }
5053 #[automatically_derived]
5054 #[doc(hidden)]
5055 impl ::core::convert::From<DeprecatedApi> for UnderlyingRustTuple<'_> {
5056 fn from(value: DeprecatedApi) -> Self {
5057 ()
5058 }
5059 }
5060 #[automatically_derived]
5061 #[doc(hidden)]
5062 impl ::core::convert::From<UnderlyingRustTuple<'_>> for DeprecatedApi {
5063 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5064 Self
5065 }
5066 }
5067 #[automatically_derived]
5068 impl alloy_sol_types::SolError for DeprecatedApi {
5069 type Parameters<'a> = UnderlyingSolTuple<'a>;
5070 type Token<'a> = <Self::Parameters<
5071 'a,
5072 > as alloy_sol_types::SolType>::Token<'a>;
5073 const SIGNATURE: &'static str = "DeprecatedApi()";
5074 const SELECTOR: [u8; 4] = [78u8, 64u8, 92u8, 141u8];
5075 #[inline]
5076 fn new<'a>(
5077 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5078 ) -> Self {
5079 tuple.into()
5080 }
5081 #[inline]
5082 fn tokenize(&self) -> Self::Token<'_> {
5083 ()
5084 }
5085 #[inline]
5086 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5087 <Self::Parameters<
5088 '_,
5089 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5090 .map(Self::new)
5091 }
5092 }
5093 };
5094 #[derive(serde::Serialize, serde::Deserialize)]
5095 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5096 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5101 #[derive(Clone)]
5102 pub struct ERC1967InvalidImplementation {
5103 #[allow(missing_docs)]
5104 pub implementation: alloy::sol_types::private::Address,
5105 }
5106 #[allow(
5107 non_camel_case_types,
5108 non_snake_case,
5109 clippy::pub_underscore_fields,
5110 clippy::style
5111 )]
5112 const _: () = {
5113 use alloy::sol_types as alloy_sol_types;
5114 #[doc(hidden)]
5115 #[allow(dead_code)]
5116 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
5117 #[doc(hidden)]
5118 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
5119 #[cfg(test)]
5120 #[allow(dead_code, unreachable_patterns)]
5121 fn _type_assertion(
5122 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5123 ) {
5124 match _t {
5125 alloy_sol_types::private::AssertTypeEq::<
5126 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5127 >(_) => {}
5128 }
5129 }
5130 #[automatically_derived]
5131 #[doc(hidden)]
5132 impl ::core::convert::From<ERC1967InvalidImplementation>
5133 for UnderlyingRustTuple<'_> {
5134 fn from(value: ERC1967InvalidImplementation) -> Self {
5135 (value.implementation,)
5136 }
5137 }
5138 #[automatically_derived]
5139 #[doc(hidden)]
5140 impl ::core::convert::From<UnderlyingRustTuple<'_>>
5141 for ERC1967InvalidImplementation {
5142 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5143 Self { implementation: tuple.0 }
5144 }
5145 }
5146 #[automatically_derived]
5147 impl alloy_sol_types::SolError for ERC1967InvalidImplementation {
5148 type Parameters<'a> = UnderlyingSolTuple<'a>;
5149 type Token<'a> = <Self::Parameters<
5150 'a,
5151 > as alloy_sol_types::SolType>::Token<'a>;
5152 const SIGNATURE: &'static str = "ERC1967InvalidImplementation(address)";
5153 const SELECTOR: [u8; 4] = [76u8, 156u8, 140u8, 227u8];
5154 #[inline]
5155 fn new<'a>(
5156 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5157 ) -> Self {
5158 tuple.into()
5159 }
5160 #[inline]
5161 fn tokenize(&self) -> Self::Token<'_> {
5162 (
5163 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5164 &self.implementation,
5165 ),
5166 )
5167 }
5168 #[inline]
5169 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5170 <Self::Parameters<
5171 '_,
5172 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5173 .map(Self::new)
5174 }
5175 }
5176 };
5177 #[derive(serde::Serialize, serde::Deserialize)]
5178 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5179 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5184 #[derive(Clone)]
5185 pub struct ERC1967NonPayable;
5186 #[allow(
5187 non_camel_case_types,
5188 non_snake_case,
5189 clippy::pub_underscore_fields,
5190 clippy::style
5191 )]
5192 const _: () = {
5193 use alloy::sol_types as alloy_sol_types;
5194 #[doc(hidden)]
5195 #[allow(dead_code)]
5196 type UnderlyingSolTuple<'a> = ();
5197 #[doc(hidden)]
5198 type UnderlyingRustTuple<'a> = ();
5199 #[cfg(test)]
5200 #[allow(dead_code, unreachable_patterns)]
5201 fn _type_assertion(
5202 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5203 ) {
5204 match _t {
5205 alloy_sol_types::private::AssertTypeEq::<
5206 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5207 >(_) => {}
5208 }
5209 }
5210 #[automatically_derived]
5211 #[doc(hidden)]
5212 impl ::core::convert::From<ERC1967NonPayable> for UnderlyingRustTuple<'_> {
5213 fn from(value: ERC1967NonPayable) -> Self {
5214 ()
5215 }
5216 }
5217 #[automatically_derived]
5218 #[doc(hidden)]
5219 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ERC1967NonPayable {
5220 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5221 Self
5222 }
5223 }
5224 #[automatically_derived]
5225 impl alloy_sol_types::SolError for ERC1967NonPayable {
5226 type Parameters<'a> = UnderlyingSolTuple<'a>;
5227 type Token<'a> = <Self::Parameters<
5228 'a,
5229 > as alloy_sol_types::SolType>::Token<'a>;
5230 const SIGNATURE: &'static str = "ERC1967NonPayable()";
5231 const SELECTOR: [u8; 4] = [179u8, 152u8, 151u8, 159u8];
5232 #[inline]
5233 fn new<'a>(
5234 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5235 ) -> Self {
5236 tuple.into()
5237 }
5238 #[inline]
5239 fn tokenize(&self) -> Self::Token<'_> {
5240 ()
5241 }
5242 #[inline]
5243 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5244 <Self::Parameters<
5245 '_,
5246 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5247 .map(Self::new)
5248 }
5249 }
5250 };
5251 #[derive(serde::Serialize, serde::Deserialize)]
5252 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5253 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5258 #[derive(Clone)]
5259 pub struct FailedInnerCall;
5260 #[allow(
5261 non_camel_case_types,
5262 non_snake_case,
5263 clippy::pub_underscore_fields,
5264 clippy::style
5265 )]
5266 const _: () = {
5267 use alloy::sol_types as alloy_sol_types;
5268 #[doc(hidden)]
5269 #[allow(dead_code)]
5270 type UnderlyingSolTuple<'a> = ();
5271 #[doc(hidden)]
5272 type UnderlyingRustTuple<'a> = ();
5273 #[cfg(test)]
5274 #[allow(dead_code, unreachable_patterns)]
5275 fn _type_assertion(
5276 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5277 ) {
5278 match _t {
5279 alloy_sol_types::private::AssertTypeEq::<
5280 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5281 >(_) => {}
5282 }
5283 }
5284 #[automatically_derived]
5285 #[doc(hidden)]
5286 impl ::core::convert::From<FailedInnerCall> for UnderlyingRustTuple<'_> {
5287 fn from(value: FailedInnerCall) -> Self {
5288 ()
5289 }
5290 }
5291 #[automatically_derived]
5292 #[doc(hidden)]
5293 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FailedInnerCall {
5294 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5295 Self
5296 }
5297 }
5298 #[automatically_derived]
5299 impl alloy_sol_types::SolError for FailedInnerCall {
5300 type Parameters<'a> = UnderlyingSolTuple<'a>;
5301 type Token<'a> = <Self::Parameters<
5302 'a,
5303 > as alloy_sol_types::SolType>::Token<'a>;
5304 const SIGNATURE: &'static str = "FailedInnerCall()";
5305 const SELECTOR: [u8; 4] = [20u8, 37u8, 234u8, 66u8];
5306 #[inline]
5307 fn new<'a>(
5308 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5309 ) -> Self {
5310 tuple.into()
5311 }
5312 #[inline]
5313 fn tokenize(&self) -> Self::Token<'_> {
5314 ()
5315 }
5316 #[inline]
5317 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5318 <Self::Parameters<
5319 '_,
5320 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5321 .map(Self::new)
5322 }
5323 }
5324 };
5325 #[derive(serde::Serialize, serde::Deserialize)]
5326 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5327 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5332 #[derive(Clone)]
5333 pub struct InsufficientSnapshotHistory;
5334 #[allow(
5335 non_camel_case_types,
5336 non_snake_case,
5337 clippy::pub_underscore_fields,
5338 clippy::style
5339 )]
5340 const _: () = {
5341 use alloy::sol_types as alloy_sol_types;
5342 #[doc(hidden)]
5343 #[allow(dead_code)]
5344 type UnderlyingSolTuple<'a> = ();
5345 #[doc(hidden)]
5346 type UnderlyingRustTuple<'a> = ();
5347 #[cfg(test)]
5348 #[allow(dead_code, unreachable_patterns)]
5349 fn _type_assertion(
5350 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5351 ) {
5352 match _t {
5353 alloy_sol_types::private::AssertTypeEq::<
5354 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5355 >(_) => {}
5356 }
5357 }
5358 #[automatically_derived]
5359 #[doc(hidden)]
5360 impl ::core::convert::From<InsufficientSnapshotHistory>
5361 for UnderlyingRustTuple<'_> {
5362 fn from(value: InsufficientSnapshotHistory) -> Self {
5363 ()
5364 }
5365 }
5366 #[automatically_derived]
5367 #[doc(hidden)]
5368 impl ::core::convert::From<UnderlyingRustTuple<'_>>
5369 for InsufficientSnapshotHistory {
5370 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5371 Self
5372 }
5373 }
5374 #[automatically_derived]
5375 impl alloy_sol_types::SolError for InsufficientSnapshotHistory {
5376 type Parameters<'a> = UnderlyingSolTuple<'a>;
5377 type Token<'a> = <Self::Parameters<
5378 'a,
5379 > as alloy_sol_types::SolType>::Token<'a>;
5380 const SIGNATURE: &'static str = "InsufficientSnapshotHistory()";
5381 const SELECTOR: [u8; 4] = [176u8, 180u8, 56u8, 119u8];
5382 #[inline]
5383 fn new<'a>(
5384 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5385 ) -> Self {
5386 tuple.into()
5387 }
5388 #[inline]
5389 fn tokenize(&self) -> Self::Token<'_> {
5390 ()
5391 }
5392 #[inline]
5393 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5394 <Self::Parameters<
5395 '_,
5396 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5397 .map(Self::new)
5398 }
5399 }
5400 };
5401 #[derive(serde::Serialize, serde::Deserialize)]
5402 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5403 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5408 #[derive(Clone)]
5409 pub struct InvalidAddress;
5410 #[allow(
5411 non_camel_case_types,
5412 non_snake_case,
5413 clippy::pub_underscore_fields,
5414 clippy::style
5415 )]
5416 const _: () = {
5417 use alloy::sol_types as alloy_sol_types;
5418 #[doc(hidden)]
5419 #[allow(dead_code)]
5420 type UnderlyingSolTuple<'a> = ();
5421 #[doc(hidden)]
5422 type UnderlyingRustTuple<'a> = ();
5423 #[cfg(test)]
5424 #[allow(dead_code, unreachable_patterns)]
5425 fn _type_assertion(
5426 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5427 ) {
5428 match _t {
5429 alloy_sol_types::private::AssertTypeEq::<
5430 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5431 >(_) => {}
5432 }
5433 }
5434 #[automatically_derived]
5435 #[doc(hidden)]
5436 impl ::core::convert::From<InvalidAddress> for UnderlyingRustTuple<'_> {
5437 fn from(value: InvalidAddress) -> Self {
5438 ()
5439 }
5440 }
5441 #[automatically_derived]
5442 #[doc(hidden)]
5443 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidAddress {
5444 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5445 Self
5446 }
5447 }
5448 #[automatically_derived]
5449 impl alloy_sol_types::SolError for InvalidAddress {
5450 type Parameters<'a> = UnderlyingSolTuple<'a>;
5451 type Token<'a> = <Self::Parameters<
5452 'a,
5453 > as alloy_sol_types::SolType>::Token<'a>;
5454 const SIGNATURE: &'static str = "InvalidAddress()";
5455 const SELECTOR: [u8; 4] = [230u8, 196u8, 36u8, 123u8];
5456 #[inline]
5457 fn new<'a>(
5458 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5459 ) -> Self {
5460 tuple.into()
5461 }
5462 #[inline]
5463 fn tokenize(&self) -> Self::Token<'_> {
5464 ()
5465 }
5466 #[inline]
5467 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5468 <Self::Parameters<
5469 '_,
5470 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5471 .map(Self::new)
5472 }
5473 }
5474 };
5475 #[derive(serde::Serialize, serde::Deserialize)]
5476 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5477 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5482 #[derive(Clone)]
5483 pub struct InvalidArgs;
5484 #[allow(
5485 non_camel_case_types,
5486 non_snake_case,
5487 clippy::pub_underscore_fields,
5488 clippy::style
5489 )]
5490 const _: () = {
5491 use alloy::sol_types as alloy_sol_types;
5492 #[doc(hidden)]
5493 #[allow(dead_code)]
5494 type UnderlyingSolTuple<'a> = ();
5495 #[doc(hidden)]
5496 type UnderlyingRustTuple<'a> = ();
5497 #[cfg(test)]
5498 #[allow(dead_code, unreachable_patterns)]
5499 fn _type_assertion(
5500 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5501 ) {
5502 match _t {
5503 alloy_sol_types::private::AssertTypeEq::<
5504 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5505 >(_) => {}
5506 }
5507 }
5508 #[automatically_derived]
5509 #[doc(hidden)]
5510 impl ::core::convert::From<InvalidArgs> for UnderlyingRustTuple<'_> {
5511 fn from(value: InvalidArgs) -> Self {
5512 ()
5513 }
5514 }
5515 #[automatically_derived]
5516 #[doc(hidden)]
5517 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidArgs {
5518 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5519 Self
5520 }
5521 }
5522 #[automatically_derived]
5523 impl alloy_sol_types::SolError for InvalidArgs {
5524 type Parameters<'a> = UnderlyingSolTuple<'a>;
5525 type Token<'a> = <Self::Parameters<
5526 'a,
5527 > as alloy_sol_types::SolType>::Token<'a>;
5528 const SIGNATURE: &'static str = "InvalidArgs()";
5529 const SELECTOR: [u8; 4] = [161u8, 186u8, 7u8, 238u8];
5530 #[inline]
5531 fn new<'a>(
5532 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5533 ) -> Self {
5534 tuple.into()
5535 }
5536 #[inline]
5537 fn tokenize(&self) -> Self::Token<'_> {
5538 ()
5539 }
5540 #[inline]
5541 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5542 <Self::Parameters<
5543 '_,
5544 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5545 .map(Self::new)
5546 }
5547 }
5548 };
5549 #[derive(serde::Serialize, serde::Deserialize)]
5550 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5551 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5556 #[derive(Clone)]
5557 pub struct InvalidHotShotBlockForCommitmentCheck;
5558 #[allow(
5559 non_camel_case_types,
5560 non_snake_case,
5561 clippy::pub_underscore_fields,
5562 clippy::style
5563 )]
5564 const _: () = {
5565 use alloy::sol_types as alloy_sol_types;
5566 #[doc(hidden)]
5567 #[allow(dead_code)]
5568 type UnderlyingSolTuple<'a> = ();
5569 #[doc(hidden)]
5570 type UnderlyingRustTuple<'a> = ();
5571 #[cfg(test)]
5572 #[allow(dead_code, unreachable_patterns)]
5573 fn _type_assertion(
5574 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5575 ) {
5576 match _t {
5577 alloy_sol_types::private::AssertTypeEq::<
5578 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5579 >(_) => {}
5580 }
5581 }
5582 #[automatically_derived]
5583 #[doc(hidden)]
5584 impl ::core::convert::From<InvalidHotShotBlockForCommitmentCheck>
5585 for UnderlyingRustTuple<'_> {
5586 fn from(value: InvalidHotShotBlockForCommitmentCheck) -> Self {
5587 ()
5588 }
5589 }
5590 #[automatically_derived]
5591 #[doc(hidden)]
5592 impl ::core::convert::From<UnderlyingRustTuple<'_>>
5593 for InvalidHotShotBlockForCommitmentCheck {
5594 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5595 Self
5596 }
5597 }
5598 #[automatically_derived]
5599 impl alloy_sol_types::SolError for InvalidHotShotBlockForCommitmentCheck {
5600 type Parameters<'a> = UnderlyingSolTuple<'a>;
5601 type Token<'a> = <Self::Parameters<
5602 'a,
5603 > as alloy_sol_types::SolType>::Token<'a>;
5604 const SIGNATURE: &'static str = "InvalidHotShotBlockForCommitmentCheck()";
5605 const SELECTOR: [u8; 4] = [97u8, 90u8, 146u8, 100u8];
5606 #[inline]
5607 fn new<'a>(
5608 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5609 ) -> Self {
5610 tuple.into()
5611 }
5612 #[inline]
5613 fn tokenize(&self) -> Self::Token<'_> {
5614 ()
5615 }
5616 #[inline]
5617 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5618 <Self::Parameters<
5619 '_,
5620 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5621 .map(Self::new)
5622 }
5623 }
5624 };
5625 #[derive(serde::Serialize, serde::Deserialize)]
5626 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5627 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5632 #[derive(Clone)]
5633 pub struct InvalidInitialization;
5634 #[allow(
5635 non_camel_case_types,
5636 non_snake_case,
5637 clippy::pub_underscore_fields,
5638 clippy::style
5639 )]
5640 const _: () = {
5641 use alloy::sol_types as alloy_sol_types;
5642 #[doc(hidden)]
5643 #[allow(dead_code)]
5644 type UnderlyingSolTuple<'a> = ();
5645 #[doc(hidden)]
5646 type UnderlyingRustTuple<'a> = ();
5647 #[cfg(test)]
5648 #[allow(dead_code, unreachable_patterns)]
5649 fn _type_assertion(
5650 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5651 ) {
5652 match _t {
5653 alloy_sol_types::private::AssertTypeEq::<
5654 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5655 >(_) => {}
5656 }
5657 }
5658 #[automatically_derived]
5659 #[doc(hidden)]
5660 impl ::core::convert::From<InvalidInitialization> for UnderlyingRustTuple<'_> {
5661 fn from(value: InvalidInitialization) -> Self {
5662 ()
5663 }
5664 }
5665 #[automatically_derived]
5666 #[doc(hidden)]
5667 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidInitialization {
5668 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5669 Self
5670 }
5671 }
5672 #[automatically_derived]
5673 impl alloy_sol_types::SolError for InvalidInitialization {
5674 type Parameters<'a> = UnderlyingSolTuple<'a>;
5675 type Token<'a> = <Self::Parameters<
5676 'a,
5677 > as alloy_sol_types::SolType>::Token<'a>;
5678 const SIGNATURE: &'static str = "InvalidInitialization()";
5679 const SELECTOR: [u8; 4] = [249u8, 46u8, 232u8, 169u8];
5680 #[inline]
5681 fn new<'a>(
5682 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5683 ) -> Self {
5684 tuple.into()
5685 }
5686 #[inline]
5687 fn tokenize(&self) -> Self::Token<'_> {
5688 ()
5689 }
5690 #[inline]
5691 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5692 <Self::Parameters<
5693 '_,
5694 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5695 .map(Self::new)
5696 }
5697 }
5698 };
5699 #[derive(serde::Serialize, serde::Deserialize)]
5700 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5701 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5706 #[derive(Clone)]
5707 pub struct InvalidMaxStateHistory;
5708 #[allow(
5709 non_camel_case_types,
5710 non_snake_case,
5711 clippy::pub_underscore_fields,
5712 clippy::style
5713 )]
5714 const _: () = {
5715 use alloy::sol_types as alloy_sol_types;
5716 #[doc(hidden)]
5717 #[allow(dead_code)]
5718 type UnderlyingSolTuple<'a> = ();
5719 #[doc(hidden)]
5720 type UnderlyingRustTuple<'a> = ();
5721 #[cfg(test)]
5722 #[allow(dead_code, unreachable_patterns)]
5723 fn _type_assertion(
5724 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5725 ) {
5726 match _t {
5727 alloy_sol_types::private::AssertTypeEq::<
5728 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5729 >(_) => {}
5730 }
5731 }
5732 #[automatically_derived]
5733 #[doc(hidden)]
5734 impl ::core::convert::From<InvalidMaxStateHistory> for UnderlyingRustTuple<'_> {
5735 fn from(value: InvalidMaxStateHistory) -> Self {
5736 ()
5737 }
5738 }
5739 #[automatically_derived]
5740 #[doc(hidden)]
5741 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidMaxStateHistory {
5742 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5743 Self
5744 }
5745 }
5746 #[automatically_derived]
5747 impl alloy_sol_types::SolError for InvalidMaxStateHistory {
5748 type Parameters<'a> = UnderlyingSolTuple<'a>;
5749 type Token<'a> = <Self::Parameters<
5750 'a,
5751 > as alloy_sol_types::SolType>::Token<'a>;
5752 const SIGNATURE: &'static str = "InvalidMaxStateHistory()";
5753 const SELECTOR: [u8; 4] = [244u8, 160u8, 238u8, 224u8];
5754 #[inline]
5755 fn new<'a>(
5756 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5757 ) -> Self {
5758 tuple.into()
5759 }
5760 #[inline]
5761 fn tokenize(&self) -> Self::Token<'_> {
5762 ()
5763 }
5764 #[inline]
5765 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5766 <Self::Parameters<
5767 '_,
5768 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5769 .map(Self::new)
5770 }
5771 }
5772 };
5773 #[derive(serde::Serialize, serde::Deserialize)]
5774 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5775 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5780 #[derive(Clone)]
5781 pub struct InvalidProof;
5782 #[allow(
5783 non_camel_case_types,
5784 non_snake_case,
5785 clippy::pub_underscore_fields,
5786 clippy::style
5787 )]
5788 const _: () = {
5789 use alloy::sol_types as alloy_sol_types;
5790 #[doc(hidden)]
5791 #[allow(dead_code)]
5792 type UnderlyingSolTuple<'a> = ();
5793 #[doc(hidden)]
5794 type UnderlyingRustTuple<'a> = ();
5795 #[cfg(test)]
5796 #[allow(dead_code, unreachable_patterns)]
5797 fn _type_assertion(
5798 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5799 ) {
5800 match _t {
5801 alloy_sol_types::private::AssertTypeEq::<
5802 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5803 >(_) => {}
5804 }
5805 }
5806 #[automatically_derived]
5807 #[doc(hidden)]
5808 impl ::core::convert::From<InvalidProof> for UnderlyingRustTuple<'_> {
5809 fn from(value: InvalidProof) -> Self {
5810 ()
5811 }
5812 }
5813 #[automatically_derived]
5814 #[doc(hidden)]
5815 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidProof {
5816 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5817 Self
5818 }
5819 }
5820 #[automatically_derived]
5821 impl alloy_sol_types::SolError for InvalidProof {
5822 type Parameters<'a> = UnderlyingSolTuple<'a>;
5823 type Token<'a> = <Self::Parameters<
5824 'a,
5825 > as alloy_sol_types::SolType>::Token<'a>;
5826 const SIGNATURE: &'static str = "InvalidProof()";
5827 const SELECTOR: [u8; 4] = [9u8, 189u8, 227u8, 57u8];
5828 #[inline]
5829 fn new<'a>(
5830 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5831 ) -> Self {
5832 tuple.into()
5833 }
5834 #[inline]
5835 fn tokenize(&self) -> Self::Token<'_> {
5836 ()
5837 }
5838 #[inline]
5839 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5840 <Self::Parameters<
5841 '_,
5842 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5843 .map(Self::new)
5844 }
5845 }
5846 };
5847 #[derive(serde::Serialize, serde::Deserialize)]
5848 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5849 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5854 #[derive(Clone)]
5855 pub struct InvalidScalar;
5856 #[allow(
5857 non_camel_case_types,
5858 non_snake_case,
5859 clippy::pub_underscore_fields,
5860 clippy::style
5861 )]
5862 const _: () = {
5863 use alloy::sol_types as alloy_sol_types;
5864 #[doc(hidden)]
5865 #[allow(dead_code)]
5866 type UnderlyingSolTuple<'a> = ();
5867 #[doc(hidden)]
5868 type UnderlyingRustTuple<'a> = ();
5869 #[cfg(test)]
5870 #[allow(dead_code, unreachable_patterns)]
5871 fn _type_assertion(
5872 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5873 ) {
5874 match _t {
5875 alloy_sol_types::private::AssertTypeEq::<
5876 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5877 >(_) => {}
5878 }
5879 }
5880 #[automatically_derived]
5881 #[doc(hidden)]
5882 impl ::core::convert::From<InvalidScalar> for UnderlyingRustTuple<'_> {
5883 fn from(value: InvalidScalar) -> Self {
5884 ()
5885 }
5886 }
5887 #[automatically_derived]
5888 #[doc(hidden)]
5889 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidScalar {
5890 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5891 Self
5892 }
5893 }
5894 #[automatically_derived]
5895 impl alloy_sol_types::SolError for InvalidScalar {
5896 type Parameters<'a> = UnderlyingSolTuple<'a>;
5897 type Token<'a> = <Self::Parameters<
5898 'a,
5899 > as alloy_sol_types::SolType>::Token<'a>;
5900 const SIGNATURE: &'static str = "InvalidScalar()";
5901 const SELECTOR: [u8; 4] = [5u8, 176u8, 92u8, 204u8];
5902 #[inline]
5903 fn new<'a>(
5904 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5905 ) -> Self {
5906 tuple.into()
5907 }
5908 #[inline]
5909 fn tokenize(&self) -> Self::Token<'_> {
5910 ()
5911 }
5912 #[inline]
5913 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5914 <Self::Parameters<
5915 '_,
5916 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5917 .map(Self::new)
5918 }
5919 }
5920 };
5921 #[derive(serde::Serialize, serde::Deserialize)]
5922 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5923 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5928 #[derive(Clone)]
5929 pub struct MissingEpochRootUpdate;
5930 #[allow(
5931 non_camel_case_types,
5932 non_snake_case,
5933 clippy::pub_underscore_fields,
5934 clippy::style
5935 )]
5936 const _: () = {
5937 use alloy::sol_types as alloy_sol_types;
5938 #[doc(hidden)]
5939 #[allow(dead_code)]
5940 type UnderlyingSolTuple<'a> = ();
5941 #[doc(hidden)]
5942 type UnderlyingRustTuple<'a> = ();
5943 #[cfg(test)]
5944 #[allow(dead_code, unreachable_patterns)]
5945 fn _type_assertion(
5946 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5947 ) {
5948 match _t {
5949 alloy_sol_types::private::AssertTypeEq::<
5950 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5951 >(_) => {}
5952 }
5953 }
5954 #[automatically_derived]
5955 #[doc(hidden)]
5956 impl ::core::convert::From<MissingEpochRootUpdate> for UnderlyingRustTuple<'_> {
5957 fn from(value: MissingEpochRootUpdate) -> Self {
5958 ()
5959 }
5960 }
5961 #[automatically_derived]
5962 #[doc(hidden)]
5963 impl ::core::convert::From<UnderlyingRustTuple<'_>> for MissingEpochRootUpdate {
5964 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5965 Self
5966 }
5967 }
5968 #[automatically_derived]
5969 impl alloy_sol_types::SolError for MissingEpochRootUpdate {
5970 type Parameters<'a> = UnderlyingSolTuple<'a>;
5971 type Token<'a> = <Self::Parameters<
5972 'a,
5973 > as alloy_sol_types::SolType>::Token<'a>;
5974 const SIGNATURE: &'static str = "MissingEpochRootUpdate()";
5975 const SELECTOR: [u8; 4] = [8u8, 10u8, 232u8, 217u8];
5976 #[inline]
5977 fn new<'a>(
5978 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5979 ) -> Self {
5980 tuple.into()
5981 }
5982 #[inline]
5983 fn tokenize(&self) -> Self::Token<'_> {
5984 ()
5985 }
5986 #[inline]
5987 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5988 <Self::Parameters<
5989 '_,
5990 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5991 .map(Self::new)
5992 }
5993 }
5994 };
5995 #[derive(serde::Serialize, serde::Deserialize)]
5996 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5997 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6002 #[derive(Clone)]
6003 pub struct NoChangeRequired;
6004 #[allow(
6005 non_camel_case_types,
6006 non_snake_case,
6007 clippy::pub_underscore_fields,
6008 clippy::style
6009 )]
6010 const _: () = {
6011 use alloy::sol_types as alloy_sol_types;
6012 #[doc(hidden)]
6013 #[allow(dead_code)]
6014 type UnderlyingSolTuple<'a> = ();
6015 #[doc(hidden)]
6016 type UnderlyingRustTuple<'a> = ();
6017 #[cfg(test)]
6018 #[allow(dead_code, unreachable_patterns)]
6019 fn _type_assertion(
6020 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6021 ) {
6022 match _t {
6023 alloy_sol_types::private::AssertTypeEq::<
6024 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6025 >(_) => {}
6026 }
6027 }
6028 #[automatically_derived]
6029 #[doc(hidden)]
6030 impl ::core::convert::From<NoChangeRequired> for UnderlyingRustTuple<'_> {
6031 fn from(value: NoChangeRequired) -> Self {
6032 ()
6033 }
6034 }
6035 #[automatically_derived]
6036 #[doc(hidden)]
6037 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NoChangeRequired {
6038 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6039 Self
6040 }
6041 }
6042 #[automatically_derived]
6043 impl alloy_sol_types::SolError for NoChangeRequired {
6044 type Parameters<'a> = UnderlyingSolTuple<'a>;
6045 type Token<'a> = <Self::Parameters<
6046 'a,
6047 > as alloy_sol_types::SolType>::Token<'a>;
6048 const SIGNATURE: &'static str = "NoChangeRequired()";
6049 const SELECTOR: [u8; 4] = [168u8, 99u8, 174u8, 201u8];
6050 #[inline]
6051 fn new<'a>(
6052 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6053 ) -> Self {
6054 tuple.into()
6055 }
6056 #[inline]
6057 fn tokenize(&self) -> Self::Token<'_> {
6058 ()
6059 }
6060 #[inline]
6061 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6062 <Self::Parameters<
6063 '_,
6064 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6065 .map(Self::new)
6066 }
6067 }
6068 };
6069 #[derive(serde::Serialize, serde::Deserialize)]
6070 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6071 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6076 #[derive(Clone)]
6077 pub struct NotInitializing;
6078 #[allow(
6079 non_camel_case_types,
6080 non_snake_case,
6081 clippy::pub_underscore_fields,
6082 clippy::style
6083 )]
6084 const _: () = {
6085 use alloy::sol_types as alloy_sol_types;
6086 #[doc(hidden)]
6087 #[allow(dead_code)]
6088 type UnderlyingSolTuple<'a> = ();
6089 #[doc(hidden)]
6090 type UnderlyingRustTuple<'a> = ();
6091 #[cfg(test)]
6092 #[allow(dead_code, unreachable_patterns)]
6093 fn _type_assertion(
6094 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6095 ) {
6096 match _t {
6097 alloy_sol_types::private::AssertTypeEq::<
6098 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6099 >(_) => {}
6100 }
6101 }
6102 #[automatically_derived]
6103 #[doc(hidden)]
6104 impl ::core::convert::From<NotInitializing> for UnderlyingRustTuple<'_> {
6105 fn from(value: NotInitializing) -> Self {
6106 ()
6107 }
6108 }
6109 #[automatically_derived]
6110 #[doc(hidden)]
6111 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NotInitializing {
6112 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6113 Self
6114 }
6115 }
6116 #[automatically_derived]
6117 impl alloy_sol_types::SolError for NotInitializing {
6118 type Parameters<'a> = UnderlyingSolTuple<'a>;
6119 type Token<'a> = <Self::Parameters<
6120 'a,
6121 > as alloy_sol_types::SolType>::Token<'a>;
6122 const SIGNATURE: &'static str = "NotInitializing()";
6123 const SELECTOR: [u8; 4] = [215u8, 230u8, 188u8, 248u8];
6124 #[inline]
6125 fn new<'a>(
6126 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6127 ) -> Self {
6128 tuple.into()
6129 }
6130 #[inline]
6131 fn tokenize(&self) -> Self::Token<'_> {
6132 ()
6133 }
6134 #[inline]
6135 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6136 <Self::Parameters<
6137 '_,
6138 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6139 .map(Self::new)
6140 }
6141 }
6142 };
6143 #[derive(serde::Serialize, serde::Deserialize)]
6144 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6145 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6150 #[derive(Clone)]
6151 pub struct OutdatedState;
6152 #[allow(
6153 non_camel_case_types,
6154 non_snake_case,
6155 clippy::pub_underscore_fields,
6156 clippy::style
6157 )]
6158 const _: () = {
6159 use alloy::sol_types as alloy_sol_types;
6160 #[doc(hidden)]
6161 #[allow(dead_code)]
6162 type UnderlyingSolTuple<'a> = ();
6163 #[doc(hidden)]
6164 type UnderlyingRustTuple<'a> = ();
6165 #[cfg(test)]
6166 #[allow(dead_code, unreachable_patterns)]
6167 fn _type_assertion(
6168 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6169 ) {
6170 match _t {
6171 alloy_sol_types::private::AssertTypeEq::<
6172 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6173 >(_) => {}
6174 }
6175 }
6176 #[automatically_derived]
6177 #[doc(hidden)]
6178 impl ::core::convert::From<OutdatedState> for UnderlyingRustTuple<'_> {
6179 fn from(value: OutdatedState) -> Self {
6180 ()
6181 }
6182 }
6183 #[automatically_derived]
6184 #[doc(hidden)]
6185 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OutdatedState {
6186 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6187 Self
6188 }
6189 }
6190 #[automatically_derived]
6191 impl alloy_sol_types::SolError for OutdatedState {
6192 type Parameters<'a> = UnderlyingSolTuple<'a>;
6193 type Token<'a> = <Self::Parameters<
6194 'a,
6195 > as alloy_sol_types::SolType>::Token<'a>;
6196 const SIGNATURE: &'static str = "OutdatedState()";
6197 const SELECTOR: [u8; 4] = [5u8, 28u8, 70u8, 239u8];
6198 #[inline]
6199 fn new<'a>(
6200 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6201 ) -> Self {
6202 tuple.into()
6203 }
6204 #[inline]
6205 fn tokenize(&self) -> Self::Token<'_> {
6206 ()
6207 }
6208 #[inline]
6209 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6210 <Self::Parameters<
6211 '_,
6212 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6213 .map(Self::new)
6214 }
6215 }
6216 };
6217 #[derive(serde::Serialize, serde::Deserialize)]
6218 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6219 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6224 #[derive(Clone)]
6225 pub struct OwnableInvalidOwner {
6226 #[allow(missing_docs)]
6227 pub owner: alloy::sol_types::private::Address,
6228 }
6229 #[allow(
6230 non_camel_case_types,
6231 non_snake_case,
6232 clippy::pub_underscore_fields,
6233 clippy::style
6234 )]
6235 const _: () = {
6236 use alloy::sol_types as alloy_sol_types;
6237 #[doc(hidden)]
6238 #[allow(dead_code)]
6239 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6240 #[doc(hidden)]
6241 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6242 #[cfg(test)]
6243 #[allow(dead_code, unreachable_patterns)]
6244 fn _type_assertion(
6245 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6246 ) {
6247 match _t {
6248 alloy_sol_types::private::AssertTypeEq::<
6249 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6250 >(_) => {}
6251 }
6252 }
6253 #[automatically_derived]
6254 #[doc(hidden)]
6255 impl ::core::convert::From<OwnableInvalidOwner> for UnderlyingRustTuple<'_> {
6256 fn from(value: OwnableInvalidOwner) -> Self {
6257 (value.owner,)
6258 }
6259 }
6260 #[automatically_derived]
6261 #[doc(hidden)]
6262 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OwnableInvalidOwner {
6263 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6264 Self { owner: tuple.0 }
6265 }
6266 }
6267 #[automatically_derived]
6268 impl alloy_sol_types::SolError for OwnableInvalidOwner {
6269 type Parameters<'a> = UnderlyingSolTuple<'a>;
6270 type Token<'a> = <Self::Parameters<
6271 'a,
6272 > as alloy_sol_types::SolType>::Token<'a>;
6273 const SIGNATURE: &'static str = "OwnableInvalidOwner(address)";
6274 const SELECTOR: [u8; 4] = [30u8, 79u8, 189u8, 247u8];
6275 #[inline]
6276 fn new<'a>(
6277 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6278 ) -> Self {
6279 tuple.into()
6280 }
6281 #[inline]
6282 fn tokenize(&self) -> Self::Token<'_> {
6283 (
6284 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6285 &self.owner,
6286 ),
6287 )
6288 }
6289 #[inline]
6290 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6291 <Self::Parameters<
6292 '_,
6293 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6294 .map(Self::new)
6295 }
6296 }
6297 };
6298 #[derive(serde::Serialize, serde::Deserialize)]
6299 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6300 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6305 #[derive(Clone)]
6306 pub struct OwnableUnauthorizedAccount {
6307 #[allow(missing_docs)]
6308 pub account: alloy::sol_types::private::Address,
6309 }
6310 #[allow(
6311 non_camel_case_types,
6312 non_snake_case,
6313 clippy::pub_underscore_fields,
6314 clippy::style
6315 )]
6316 const _: () = {
6317 use alloy::sol_types as alloy_sol_types;
6318 #[doc(hidden)]
6319 #[allow(dead_code)]
6320 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6321 #[doc(hidden)]
6322 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6323 #[cfg(test)]
6324 #[allow(dead_code, unreachable_patterns)]
6325 fn _type_assertion(
6326 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6327 ) {
6328 match _t {
6329 alloy_sol_types::private::AssertTypeEq::<
6330 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6331 >(_) => {}
6332 }
6333 }
6334 #[automatically_derived]
6335 #[doc(hidden)]
6336 impl ::core::convert::From<OwnableUnauthorizedAccount>
6337 for UnderlyingRustTuple<'_> {
6338 fn from(value: OwnableUnauthorizedAccount) -> Self {
6339 (value.account,)
6340 }
6341 }
6342 #[automatically_derived]
6343 #[doc(hidden)]
6344 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6345 for OwnableUnauthorizedAccount {
6346 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6347 Self { account: tuple.0 }
6348 }
6349 }
6350 #[automatically_derived]
6351 impl alloy_sol_types::SolError for OwnableUnauthorizedAccount {
6352 type Parameters<'a> = UnderlyingSolTuple<'a>;
6353 type Token<'a> = <Self::Parameters<
6354 'a,
6355 > as alloy_sol_types::SolType>::Token<'a>;
6356 const SIGNATURE: &'static str = "OwnableUnauthorizedAccount(address)";
6357 const SELECTOR: [u8; 4] = [17u8, 140u8, 218u8, 167u8];
6358 #[inline]
6359 fn new<'a>(
6360 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6361 ) -> Self {
6362 tuple.into()
6363 }
6364 #[inline]
6365 fn tokenize(&self) -> Self::Token<'_> {
6366 (
6367 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6368 &self.account,
6369 ),
6370 )
6371 }
6372 #[inline]
6373 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6374 <Self::Parameters<
6375 '_,
6376 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6377 .map(Self::new)
6378 }
6379 }
6380 };
6381 #[derive(serde::Serialize, serde::Deserialize)]
6382 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6383 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6388 #[derive(Clone)]
6389 pub struct ProverNotPermissioned;
6390 #[allow(
6391 non_camel_case_types,
6392 non_snake_case,
6393 clippy::pub_underscore_fields,
6394 clippy::style
6395 )]
6396 const _: () = {
6397 use alloy::sol_types as alloy_sol_types;
6398 #[doc(hidden)]
6399 #[allow(dead_code)]
6400 type UnderlyingSolTuple<'a> = ();
6401 #[doc(hidden)]
6402 type UnderlyingRustTuple<'a> = ();
6403 #[cfg(test)]
6404 #[allow(dead_code, unreachable_patterns)]
6405 fn _type_assertion(
6406 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6407 ) {
6408 match _t {
6409 alloy_sol_types::private::AssertTypeEq::<
6410 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6411 >(_) => {}
6412 }
6413 }
6414 #[automatically_derived]
6415 #[doc(hidden)]
6416 impl ::core::convert::From<ProverNotPermissioned> for UnderlyingRustTuple<'_> {
6417 fn from(value: ProverNotPermissioned) -> Self {
6418 ()
6419 }
6420 }
6421 #[automatically_derived]
6422 #[doc(hidden)]
6423 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ProverNotPermissioned {
6424 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6425 Self
6426 }
6427 }
6428 #[automatically_derived]
6429 impl alloy_sol_types::SolError for ProverNotPermissioned {
6430 type Parameters<'a> = UnderlyingSolTuple<'a>;
6431 type Token<'a> = <Self::Parameters<
6432 'a,
6433 > as alloy_sol_types::SolType>::Token<'a>;
6434 const SIGNATURE: &'static str = "ProverNotPermissioned()";
6435 const SELECTOR: [u8; 4] = [163u8, 166u8, 71u8, 128u8];
6436 #[inline]
6437 fn new<'a>(
6438 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6439 ) -> Self {
6440 tuple.into()
6441 }
6442 #[inline]
6443 fn tokenize(&self) -> Self::Token<'_> {
6444 ()
6445 }
6446 #[inline]
6447 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6448 <Self::Parameters<
6449 '_,
6450 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6451 .map(Self::new)
6452 }
6453 }
6454 };
6455 #[derive(serde::Serialize, serde::Deserialize)]
6456 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6457 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6462 #[derive(Clone)]
6463 pub struct UUPSUnauthorizedCallContext;
6464 #[allow(
6465 non_camel_case_types,
6466 non_snake_case,
6467 clippy::pub_underscore_fields,
6468 clippy::style
6469 )]
6470 const _: () = {
6471 use alloy::sol_types as alloy_sol_types;
6472 #[doc(hidden)]
6473 #[allow(dead_code)]
6474 type UnderlyingSolTuple<'a> = ();
6475 #[doc(hidden)]
6476 type UnderlyingRustTuple<'a> = ();
6477 #[cfg(test)]
6478 #[allow(dead_code, unreachable_patterns)]
6479 fn _type_assertion(
6480 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6481 ) {
6482 match _t {
6483 alloy_sol_types::private::AssertTypeEq::<
6484 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6485 >(_) => {}
6486 }
6487 }
6488 #[automatically_derived]
6489 #[doc(hidden)]
6490 impl ::core::convert::From<UUPSUnauthorizedCallContext>
6491 for UnderlyingRustTuple<'_> {
6492 fn from(value: UUPSUnauthorizedCallContext) -> Self {
6493 ()
6494 }
6495 }
6496 #[automatically_derived]
6497 #[doc(hidden)]
6498 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6499 for UUPSUnauthorizedCallContext {
6500 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6501 Self
6502 }
6503 }
6504 #[automatically_derived]
6505 impl alloy_sol_types::SolError for UUPSUnauthorizedCallContext {
6506 type Parameters<'a> = UnderlyingSolTuple<'a>;
6507 type Token<'a> = <Self::Parameters<
6508 'a,
6509 > as alloy_sol_types::SolType>::Token<'a>;
6510 const SIGNATURE: &'static str = "UUPSUnauthorizedCallContext()";
6511 const SELECTOR: [u8; 4] = [224u8, 124u8, 141u8, 186u8];
6512 #[inline]
6513 fn new<'a>(
6514 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6515 ) -> Self {
6516 tuple.into()
6517 }
6518 #[inline]
6519 fn tokenize(&self) -> Self::Token<'_> {
6520 ()
6521 }
6522 #[inline]
6523 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6524 <Self::Parameters<
6525 '_,
6526 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6527 .map(Self::new)
6528 }
6529 }
6530 };
6531 #[derive(serde::Serialize, serde::Deserialize)]
6532 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6533 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6538 #[derive(Clone)]
6539 pub struct UUPSUnsupportedProxiableUUID {
6540 #[allow(missing_docs)]
6541 pub slot: alloy::sol_types::private::FixedBytes<32>,
6542 }
6543 #[allow(
6544 non_camel_case_types,
6545 non_snake_case,
6546 clippy::pub_underscore_fields,
6547 clippy::style
6548 )]
6549 const _: () = {
6550 use alloy::sol_types as alloy_sol_types;
6551 #[doc(hidden)]
6552 #[allow(dead_code)]
6553 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6554 #[doc(hidden)]
6555 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
6556 #[cfg(test)]
6557 #[allow(dead_code, unreachable_patterns)]
6558 fn _type_assertion(
6559 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6560 ) {
6561 match _t {
6562 alloy_sol_types::private::AssertTypeEq::<
6563 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6564 >(_) => {}
6565 }
6566 }
6567 #[automatically_derived]
6568 #[doc(hidden)]
6569 impl ::core::convert::From<UUPSUnsupportedProxiableUUID>
6570 for UnderlyingRustTuple<'_> {
6571 fn from(value: UUPSUnsupportedProxiableUUID) -> Self {
6572 (value.slot,)
6573 }
6574 }
6575 #[automatically_derived]
6576 #[doc(hidden)]
6577 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6578 for UUPSUnsupportedProxiableUUID {
6579 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6580 Self { slot: tuple.0 }
6581 }
6582 }
6583 #[automatically_derived]
6584 impl alloy_sol_types::SolError for UUPSUnsupportedProxiableUUID {
6585 type Parameters<'a> = UnderlyingSolTuple<'a>;
6586 type Token<'a> = <Self::Parameters<
6587 'a,
6588 > as alloy_sol_types::SolType>::Token<'a>;
6589 const SIGNATURE: &'static str = "UUPSUnsupportedProxiableUUID(bytes32)";
6590 const SELECTOR: [u8; 4] = [170u8, 29u8, 73u8, 164u8];
6591 #[inline]
6592 fn new<'a>(
6593 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6594 ) -> Self {
6595 tuple.into()
6596 }
6597 #[inline]
6598 fn tokenize(&self) -> Self::Token<'_> {
6599 (
6600 <alloy::sol_types::sol_data::FixedBytes<
6601 32,
6602 > as alloy_sol_types::SolType>::tokenize(&self.slot),
6603 )
6604 }
6605 #[inline]
6606 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6607 <Self::Parameters<
6608 '_,
6609 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6610 .map(Self::new)
6611 }
6612 }
6613 };
6614 #[derive(serde::Serialize, serde::Deserialize)]
6615 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6616 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6621 #[derive(Clone)]
6622 pub struct WrongStakeTableUsed;
6623 #[allow(
6624 non_camel_case_types,
6625 non_snake_case,
6626 clippy::pub_underscore_fields,
6627 clippy::style
6628 )]
6629 const _: () = {
6630 use alloy::sol_types as alloy_sol_types;
6631 #[doc(hidden)]
6632 #[allow(dead_code)]
6633 type UnderlyingSolTuple<'a> = ();
6634 #[doc(hidden)]
6635 type UnderlyingRustTuple<'a> = ();
6636 #[cfg(test)]
6637 #[allow(dead_code, unreachable_patterns)]
6638 fn _type_assertion(
6639 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6640 ) {
6641 match _t {
6642 alloy_sol_types::private::AssertTypeEq::<
6643 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6644 >(_) => {}
6645 }
6646 }
6647 #[automatically_derived]
6648 #[doc(hidden)]
6649 impl ::core::convert::From<WrongStakeTableUsed> for UnderlyingRustTuple<'_> {
6650 fn from(value: WrongStakeTableUsed) -> Self {
6651 ()
6652 }
6653 }
6654 #[automatically_derived]
6655 #[doc(hidden)]
6656 impl ::core::convert::From<UnderlyingRustTuple<'_>> for WrongStakeTableUsed {
6657 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6658 Self
6659 }
6660 }
6661 #[automatically_derived]
6662 impl alloy_sol_types::SolError for WrongStakeTableUsed {
6663 type Parameters<'a> = UnderlyingSolTuple<'a>;
6664 type Token<'a> = <Self::Parameters<
6665 'a,
6666 > as alloy_sol_types::SolType>::Token<'a>;
6667 const SIGNATURE: &'static str = "WrongStakeTableUsed()";
6668 const SELECTOR: [u8; 4] = [81u8, 97u8, 128u8, 137u8];
6669 #[inline]
6670 fn new<'a>(
6671 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6672 ) -> Self {
6673 tuple.into()
6674 }
6675 #[inline]
6676 fn tokenize(&self) -> Self::Token<'_> {
6677 ()
6678 }
6679 #[inline]
6680 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
6681 <Self::Parameters<
6682 '_,
6683 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6684 .map(Self::new)
6685 }
6686 }
6687 };
6688 #[derive(serde::Serialize, serde::Deserialize)]
6689 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6690 #[allow(
6695 non_camel_case_types,
6696 non_snake_case,
6697 clippy::pub_underscore_fields,
6698 clippy::style
6699 )]
6700 #[derive(Clone)]
6701 pub struct Initialized {
6702 #[allow(missing_docs)]
6703 pub version: u64,
6704 }
6705 #[allow(
6706 non_camel_case_types,
6707 non_snake_case,
6708 clippy::pub_underscore_fields,
6709 clippy::style
6710 )]
6711 const _: () = {
6712 use alloy::sol_types as alloy_sol_types;
6713 #[automatically_derived]
6714 impl alloy_sol_types::SolEvent for Initialized {
6715 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
6716 type DataToken<'a> = <Self::DataTuple<
6717 'a,
6718 > as alloy_sol_types::SolType>::Token<'a>;
6719 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
6720 const SIGNATURE: &'static str = "Initialized(uint64)";
6721 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6722 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8,
6723 19u8, 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8,
6724 33u8, 238u8, 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
6725 ]);
6726 const ANONYMOUS: bool = false;
6727 #[allow(unused_variables)]
6728 #[inline]
6729 fn new(
6730 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6731 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6732 ) -> Self {
6733 Self { version: data.0 }
6734 }
6735 #[inline]
6736 fn check_signature(
6737 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6738 ) -> alloy_sol_types::Result<()> {
6739 if topics.0 != Self::SIGNATURE_HASH {
6740 return Err(
6741 alloy_sol_types::Error::invalid_event_signature_hash(
6742 Self::SIGNATURE,
6743 topics.0,
6744 Self::SIGNATURE_HASH,
6745 ),
6746 );
6747 }
6748 Ok(())
6749 }
6750 #[inline]
6751 fn tokenize_body(&self) -> Self::DataToken<'_> {
6752 (
6753 <alloy::sol_types::sol_data::Uint<
6754 64,
6755 > as alloy_sol_types::SolType>::tokenize(&self.version),
6756 )
6757 }
6758 #[inline]
6759 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6760 (Self::SIGNATURE_HASH.into(),)
6761 }
6762 #[inline]
6763 fn encode_topics_raw(
6764 &self,
6765 out: &mut [alloy_sol_types::abi::token::WordToken],
6766 ) -> alloy_sol_types::Result<()> {
6767 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6768 return Err(alloy_sol_types::Error::Overrun);
6769 }
6770 out[0usize] = alloy_sol_types::abi::token::WordToken(
6771 Self::SIGNATURE_HASH,
6772 );
6773 Ok(())
6774 }
6775 }
6776 #[automatically_derived]
6777 impl alloy_sol_types::private::IntoLogData for Initialized {
6778 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6779 From::from(self)
6780 }
6781 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6782 From::from(&self)
6783 }
6784 }
6785 #[automatically_derived]
6786 impl From<&Initialized> for alloy_sol_types::private::LogData {
6787 #[inline]
6788 fn from(this: &Initialized) -> alloy_sol_types::private::LogData {
6789 alloy_sol_types::SolEvent::encode_log_data(this)
6790 }
6791 }
6792 };
6793 #[derive(serde::Serialize, serde::Deserialize)]
6794 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6795 #[allow(
6800 non_camel_case_types,
6801 non_snake_case,
6802 clippy::pub_underscore_fields,
6803 clippy::style
6804 )]
6805 #[derive(Clone)]
6806 pub struct NewEpoch {
6807 #[allow(missing_docs)]
6808 pub epoch: u64,
6809 }
6810 #[allow(
6811 non_camel_case_types,
6812 non_snake_case,
6813 clippy::pub_underscore_fields,
6814 clippy::style
6815 )]
6816 const _: () = {
6817 use alloy::sol_types as alloy_sol_types;
6818 #[automatically_derived]
6819 impl alloy_sol_types::SolEvent for NewEpoch {
6820 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
6821 type DataToken<'a> = <Self::DataTuple<
6822 'a,
6823 > as alloy_sol_types::SolType>::Token<'a>;
6824 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
6825 const SIGNATURE: &'static str = "NewEpoch(uint64)";
6826 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6827 49u8, 234u8, 189u8, 144u8, 153u8, 253u8, 178u8, 93u8, 172u8, 221u8,
6828 210u8, 6u8, 171u8, 255u8, 135u8, 49u8, 30u8, 85u8, 52u8, 65u8, 252u8,
6829 157u8, 15u8, 205u8, 239u8, 32u8, 16u8, 98u8, 215u8, 231u8, 7u8, 27u8,
6830 ]);
6831 const ANONYMOUS: bool = false;
6832 #[allow(unused_variables)]
6833 #[inline]
6834 fn new(
6835 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6836 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6837 ) -> Self {
6838 Self { epoch: data.0 }
6839 }
6840 #[inline]
6841 fn check_signature(
6842 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6843 ) -> alloy_sol_types::Result<()> {
6844 if topics.0 != Self::SIGNATURE_HASH {
6845 return Err(
6846 alloy_sol_types::Error::invalid_event_signature_hash(
6847 Self::SIGNATURE,
6848 topics.0,
6849 Self::SIGNATURE_HASH,
6850 ),
6851 );
6852 }
6853 Ok(())
6854 }
6855 #[inline]
6856 fn tokenize_body(&self) -> Self::DataToken<'_> {
6857 (
6858 <alloy::sol_types::sol_data::Uint<
6859 64,
6860 > as alloy_sol_types::SolType>::tokenize(&self.epoch),
6861 )
6862 }
6863 #[inline]
6864 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6865 (Self::SIGNATURE_HASH.into(),)
6866 }
6867 #[inline]
6868 fn encode_topics_raw(
6869 &self,
6870 out: &mut [alloy_sol_types::abi::token::WordToken],
6871 ) -> alloy_sol_types::Result<()> {
6872 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6873 return Err(alloy_sol_types::Error::Overrun);
6874 }
6875 out[0usize] = alloy_sol_types::abi::token::WordToken(
6876 Self::SIGNATURE_HASH,
6877 );
6878 Ok(())
6879 }
6880 }
6881 #[automatically_derived]
6882 impl alloy_sol_types::private::IntoLogData for NewEpoch {
6883 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6884 From::from(self)
6885 }
6886 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6887 From::from(&self)
6888 }
6889 }
6890 #[automatically_derived]
6891 impl From<&NewEpoch> for alloy_sol_types::private::LogData {
6892 #[inline]
6893 fn from(this: &NewEpoch) -> alloy_sol_types::private::LogData {
6894 alloy_sol_types::SolEvent::encode_log_data(this)
6895 }
6896 }
6897 };
6898 #[derive(serde::Serialize, serde::Deserialize)]
6899 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6900 #[allow(
6905 non_camel_case_types,
6906 non_snake_case,
6907 clippy::pub_underscore_fields,
6908 clippy::style
6909 )]
6910 #[derive(Clone)]
6911 pub struct NewState {
6912 #[allow(missing_docs)]
6913 pub viewNum: u64,
6914 #[allow(missing_docs)]
6915 pub blockHeight: u64,
6916 #[allow(missing_docs)]
6917 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6918 }
6919 #[allow(
6920 non_camel_case_types,
6921 non_snake_case,
6922 clippy::pub_underscore_fields,
6923 clippy::style
6924 )]
6925 const _: () = {
6926 use alloy::sol_types as alloy_sol_types;
6927 #[automatically_derived]
6928 impl alloy_sol_types::SolEvent for NewState {
6929 type DataTuple<'a> = (BN254::ScalarField,);
6930 type DataToken<'a> = <Self::DataTuple<
6931 'a,
6932 > as alloy_sol_types::SolType>::Token<'a>;
6933 type TopicList = (
6934 alloy_sol_types::sol_data::FixedBytes<32>,
6935 alloy::sol_types::sol_data::Uint<64>,
6936 alloy::sol_types::sol_data::Uint<64>,
6937 );
6938 const SIGNATURE: &'static str = "NewState(uint64,uint64,uint256)";
6939 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6940 160u8, 74u8, 119u8, 57u8, 36u8, 80u8, 90u8, 65u8, 133u8, 100u8, 54u8,
6941 55u8, 37u8, 245u8, 104u8, 50u8, 245u8, 119u8, 46u8, 107u8, 141u8, 13u8,
6942 189u8, 110u8, 252u8, 231u8, 36u8, 223u8, 232u8, 3u8, 218u8, 230u8,
6943 ]);
6944 const ANONYMOUS: bool = false;
6945 #[allow(unused_variables)]
6946 #[inline]
6947 fn new(
6948 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6949 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6950 ) -> Self {
6951 Self {
6952 viewNum: topics.1,
6953 blockHeight: topics.2,
6954 blockCommRoot: data.0,
6955 }
6956 }
6957 #[inline]
6958 fn check_signature(
6959 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6960 ) -> alloy_sol_types::Result<()> {
6961 if topics.0 != Self::SIGNATURE_HASH {
6962 return Err(
6963 alloy_sol_types::Error::invalid_event_signature_hash(
6964 Self::SIGNATURE,
6965 topics.0,
6966 Self::SIGNATURE_HASH,
6967 ),
6968 );
6969 }
6970 Ok(())
6971 }
6972 #[inline]
6973 fn tokenize_body(&self) -> Self::DataToken<'_> {
6974 (
6975 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
6976 &self.blockCommRoot,
6977 ),
6978 )
6979 }
6980 #[inline]
6981 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6982 (
6983 Self::SIGNATURE_HASH.into(),
6984 self.viewNum.clone(),
6985 self.blockHeight.clone(),
6986 )
6987 }
6988 #[inline]
6989 fn encode_topics_raw(
6990 &self,
6991 out: &mut [alloy_sol_types::abi::token::WordToken],
6992 ) -> alloy_sol_types::Result<()> {
6993 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6994 return Err(alloy_sol_types::Error::Overrun);
6995 }
6996 out[0usize] = alloy_sol_types::abi::token::WordToken(
6997 Self::SIGNATURE_HASH,
6998 );
6999 out[1usize] = <alloy::sol_types::sol_data::Uint<
7000 64,
7001 > as alloy_sol_types::EventTopic>::encode_topic(&self.viewNum);
7002 out[2usize] = <alloy::sol_types::sol_data::Uint<
7003 64,
7004 > as alloy_sol_types::EventTopic>::encode_topic(&self.blockHeight);
7005 Ok(())
7006 }
7007 }
7008 #[automatically_derived]
7009 impl alloy_sol_types::private::IntoLogData for NewState {
7010 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
7011 From::from(self)
7012 }
7013 fn into_log_data(self) -> alloy_sol_types::private::LogData {
7014 From::from(&self)
7015 }
7016 }
7017 #[automatically_derived]
7018 impl From<&NewState> for alloy_sol_types::private::LogData {
7019 #[inline]
7020 fn from(this: &NewState) -> alloy_sol_types::private::LogData {
7021 alloy_sol_types::SolEvent::encode_log_data(this)
7022 }
7023 }
7024 };
7025 #[derive(serde::Serialize, serde::Deserialize)]
7026 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7027 #[allow(
7032 non_camel_case_types,
7033 non_snake_case,
7034 clippy::pub_underscore_fields,
7035 clippy::style
7036 )]
7037 #[derive(Clone)]
7038 pub struct OwnershipTransferred {
7039 #[allow(missing_docs)]
7040 pub previousOwner: alloy::sol_types::private::Address,
7041 #[allow(missing_docs)]
7042 pub newOwner: alloy::sol_types::private::Address,
7043 }
7044 #[allow(
7045 non_camel_case_types,
7046 non_snake_case,
7047 clippy::pub_underscore_fields,
7048 clippy::style
7049 )]
7050 const _: () = {
7051 use alloy::sol_types as alloy_sol_types;
7052 #[automatically_derived]
7053 impl alloy_sol_types::SolEvent for OwnershipTransferred {
7054 type DataTuple<'a> = ();
7055 type DataToken<'a> = <Self::DataTuple<
7056 'a,
7057 > as alloy_sol_types::SolType>::Token<'a>;
7058 type TopicList = (
7059 alloy_sol_types::sol_data::FixedBytes<32>,
7060 alloy::sol_types::sol_data::Address,
7061 alloy::sol_types::sol_data::Address,
7062 );
7063 const SIGNATURE: &'static str = "OwnershipTransferred(address,address)";
7064 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
7065 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8,
7066 31u8, 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8,
7067 218u8, 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
7068 ]);
7069 const ANONYMOUS: bool = false;
7070 #[allow(unused_variables)]
7071 #[inline]
7072 fn new(
7073 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
7074 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
7075 ) -> Self {
7076 Self {
7077 previousOwner: topics.1,
7078 newOwner: topics.2,
7079 }
7080 }
7081 #[inline]
7082 fn check_signature(
7083 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
7084 ) -> alloy_sol_types::Result<()> {
7085 if topics.0 != Self::SIGNATURE_HASH {
7086 return Err(
7087 alloy_sol_types::Error::invalid_event_signature_hash(
7088 Self::SIGNATURE,
7089 topics.0,
7090 Self::SIGNATURE_HASH,
7091 ),
7092 );
7093 }
7094 Ok(())
7095 }
7096 #[inline]
7097 fn tokenize_body(&self) -> Self::DataToken<'_> {
7098 ()
7099 }
7100 #[inline]
7101 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
7102 (
7103 Self::SIGNATURE_HASH.into(),
7104 self.previousOwner.clone(),
7105 self.newOwner.clone(),
7106 )
7107 }
7108 #[inline]
7109 fn encode_topics_raw(
7110 &self,
7111 out: &mut [alloy_sol_types::abi::token::WordToken],
7112 ) -> alloy_sol_types::Result<()> {
7113 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
7114 return Err(alloy_sol_types::Error::Overrun);
7115 }
7116 out[0usize] = alloy_sol_types::abi::token::WordToken(
7117 Self::SIGNATURE_HASH,
7118 );
7119 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
7120 &self.previousOwner,
7121 );
7122 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
7123 &self.newOwner,
7124 );
7125 Ok(())
7126 }
7127 }
7128 #[automatically_derived]
7129 impl alloy_sol_types::private::IntoLogData for OwnershipTransferred {
7130 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
7131 From::from(self)
7132 }
7133 fn into_log_data(self) -> alloy_sol_types::private::LogData {
7134 From::from(&self)
7135 }
7136 }
7137 #[automatically_derived]
7138 impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData {
7139 #[inline]
7140 fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData {
7141 alloy_sol_types::SolEvent::encode_log_data(this)
7142 }
7143 }
7144 };
7145 #[derive(serde::Serialize, serde::Deserialize)]
7146 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7147 #[allow(
7152 non_camel_case_types,
7153 non_snake_case,
7154 clippy::pub_underscore_fields,
7155 clippy::style
7156 )]
7157 #[derive(Clone)]
7158 pub struct PermissionedProverNotRequired;
7159 #[allow(
7160 non_camel_case_types,
7161 non_snake_case,
7162 clippy::pub_underscore_fields,
7163 clippy::style
7164 )]
7165 const _: () = {
7166 use alloy::sol_types as alloy_sol_types;
7167 #[automatically_derived]
7168 impl alloy_sol_types::SolEvent for PermissionedProverNotRequired {
7169 type DataTuple<'a> = ();
7170 type DataToken<'a> = <Self::DataTuple<
7171 'a,
7172 > as alloy_sol_types::SolType>::Token<'a>;
7173 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
7174 const SIGNATURE: &'static str = "PermissionedProverNotRequired()";
7175 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
7176 154u8, 95u8, 87u8, 222u8, 133u8, 109u8, 214u8, 104u8, 197u8, 77u8, 217u8,
7177 94u8, 92u8, 85u8, 223u8, 147u8, 67u8, 33u8, 113u8, 203u8, 202u8, 73u8,
7178 168u8, 119u8, 109u8, 86u8, 32u8, 234u8, 89u8, 192u8, 36u8, 80u8,
7179 ]);
7180 const ANONYMOUS: bool = false;
7181 #[allow(unused_variables)]
7182 #[inline]
7183 fn new(
7184 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
7185 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
7186 ) -> Self {
7187 Self {}
7188 }
7189 #[inline]
7190 fn check_signature(
7191 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
7192 ) -> alloy_sol_types::Result<()> {
7193 if topics.0 != Self::SIGNATURE_HASH {
7194 return Err(
7195 alloy_sol_types::Error::invalid_event_signature_hash(
7196 Self::SIGNATURE,
7197 topics.0,
7198 Self::SIGNATURE_HASH,
7199 ),
7200 );
7201 }
7202 Ok(())
7203 }
7204 #[inline]
7205 fn tokenize_body(&self) -> Self::DataToken<'_> {
7206 ()
7207 }
7208 #[inline]
7209 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
7210 (Self::SIGNATURE_HASH.into(),)
7211 }
7212 #[inline]
7213 fn encode_topics_raw(
7214 &self,
7215 out: &mut [alloy_sol_types::abi::token::WordToken],
7216 ) -> alloy_sol_types::Result<()> {
7217 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
7218 return Err(alloy_sol_types::Error::Overrun);
7219 }
7220 out[0usize] = alloy_sol_types::abi::token::WordToken(
7221 Self::SIGNATURE_HASH,
7222 );
7223 Ok(())
7224 }
7225 }
7226 #[automatically_derived]
7227 impl alloy_sol_types::private::IntoLogData for PermissionedProverNotRequired {
7228 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
7229 From::from(self)
7230 }
7231 fn into_log_data(self) -> alloy_sol_types::private::LogData {
7232 From::from(&self)
7233 }
7234 }
7235 #[automatically_derived]
7236 impl From<&PermissionedProverNotRequired> for alloy_sol_types::private::LogData {
7237 #[inline]
7238 fn from(
7239 this: &PermissionedProverNotRequired,
7240 ) -> alloy_sol_types::private::LogData {
7241 alloy_sol_types::SolEvent::encode_log_data(this)
7242 }
7243 }
7244 };
7245 #[derive(serde::Serialize, serde::Deserialize)]
7246 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7247 #[allow(
7252 non_camel_case_types,
7253 non_snake_case,
7254 clippy::pub_underscore_fields,
7255 clippy::style
7256 )]
7257 #[derive(Clone)]
7258 pub struct PermissionedProverRequired {
7259 #[allow(missing_docs)]
7260 pub permissionedProver: alloy::sol_types::private::Address,
7261 }
7262 #[allow(
7263 non_camel_case_types,
7264 non_snake_case,
7265 clippy::pub_underscore_fields,
7266 clippy::style
7267 )]
7268 const _: () = {
7269 use alloy::sol_types as alloy_sol_types;
7270 #[automatically_derived]
7271 impl alloy_sol_types::SolEvent for PermissionedProverRequired {
7272 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
7273 type DataToken<'a> = <Self::DataTuple<
7274 'a,
7275 > as alloy_sol_types::SolType>::Token<'a>;
7276 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
7277 const SIGNATURE: &'static str = "PermissionedProverRequired(address)";
7278 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
7279 128u8, 23u8, 187u8, 136u8, 127u8, 223u8, 143u8, 202u8, 67u8, 20u8, 169u8,
7280 212u8, 15u8, 110u8, 115u8, 179u8, 184u8, 16u8, 2u8, 214u8, 126u8, 92u8,
7281 250u8, 133u8, 216u8, 129u8, 115u8, 175u8, 106u8, 164u8, 96u8, 114u8,
7282 ]);
7283 const ANONYMOUS: bool = false;
7284 #[allow(unused_variables)]
7285 #[inline]
7286 fn new(
7287 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
7288 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
7289 ) -> Self {
7290 Self { permissionedProver: data.0 }
7291 }
7292 #[inline]
7293 fn check_signature(
7294 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
7295 ) -> alloy_sol_types::Result<()> {
7296 if topics.0 != Self::SIGNATURE_HASH {
7297 return Err(
7298 alloy_sol_types::Error::invalid_event_signature_hash(
7299 Self::SIGNATURE,
7300 topics.0,
7301 Self::SIGNATURE_HASH,
7302 ),
7303 );
7304 }
7305 Ok(())
7306 }
7307 #[inline]
7308 fn tokenize_body(&self) -> Self::DataToken<'_> {
7309 (
7310 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7311 &self.permissionedProver,
7312 ),
7313 )
7314 }
7315 #[inline]
7316 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
7317 (Self::SIGNATURE_HASH.into(),)
7318 }
7319 #[inline]
7320 fn encode_topics_raw(
7321 &self,
7322 out: &mut [alloy_sol_types::abi::token::WordToken],
7323 ) -> alloy_sol_types::Result<()> {
7324 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
7325 return Err(alloy_sol_types::Error::Overrun);
7326 }
7327 out[0usize] = alloy_sol_types::abi::token::WordToken(
7328 Self::SIGNATURE_HASH,
7329 );
7330 Ok(())
7331 }
7332 }
7333 #[automatically_derived]
7334 impl alloy_sol_types::private::IntoLogData for PermissionedProverRequired {
7335 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
7336 From::from(self)
7337 }
7338 fn into_log_data(self) -> alloy_sol_types::private::LogData {
7339 From::from(&self)
7340 }
7341 }
7342 #[automatically_derived]
7343 impl From<&PermissionedProverRequired> for alloy_sol_types::private::LogData {
7344 #[inline]
7345 fn from(
7346 this: &PermissionedProverRequired,
7347 ) -> alloy_sol_types::private::LogData {
7348 alloy_sol_types::SolEvent::encode_log_data(this)
7349 }
7350 }
7351 };
7352 #[derive(serde::Serialize, serde::Deserialize)]
7353 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7354 #[allow(
7359 non_camel_case_types,
7360 non_snake_case,
7361 clippy::pub_underscore_fields,
7362 clippy::style
7363 )]
7364 #[derive(Clone)]
7365 pub struct Upgrade {
7366 #[allow(missing_docs)]
7367 pub implementation: alloy::sol_types::private::Address,
7368 }
7369 #[allow(
7370 non_camel_case_types,
7371 non_snake_case,
7372 clippy::pub_underscore_fields,
7373 clippy::style
7374 )]
7375 const _: () = {
7376 use alloy::sol_types as alloy_sol_types;
7377 #[automatically_derived]
7378 impl alloy_sol_types::SolEvent for Upgrade {
7379 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
7380 type DataToken<'a> = <Self::DataTuple<
7381 'a,
7382 > as alloy_sol_types::SolType>::Token<'a>;
7383 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
7384 const SIGNATURE: &'static str = "Upgrade(address)";
7385 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
7386 247u8, 135u8, 33u8, 34u8, 110u8, 254u8, 154u8, 27u8, 182u8, 120u8, 24u8,
7387 154u8, 22u8, 209u8, 85u8, 73u8, 40u8, 185u8, 242u8, 25u8, 46u8, 44u8,
7388 185u8, 62u8, 237u8, 168u8, 59u8, 121u8, 250u8, 64u8, 0u8, 125u8,
7389 ]);
7390 const ANONYMOUS: bool = false;
7391 #[allow(unused_variables)]
7392 #[inline]
7393 fn new(
7394 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
7395 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
7396 ) -> Self {
7397 Self { implementation: data.0 }
7398 }
7399 #[inline]
7400 fn check_signature(
7401 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
7402 ) -> alloy_sol_types::Result<()> {
7403 if topics.0 != Self::SIGNATURE_HASH {
7404 return Err(
7405 alloy_sol_types::Error::invalid_event_signature_hash(
7406 Self::SIGNATURE,
7407 topics.0,
7408 Self::SIGNATURE_HASH,
7409 ),
7410 );
7411 }
7412 Ok(())
7413 }
7414 #[inline]
7415 fn tokenize_body(&self) -> Self::DataToken<'_> {
7416 (
7417 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7418 &self.implementation,
7419 ),
7420 )
7421 }
7422 #[inline]
7423 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
7424 (Self::SIGNATURE_HASH.into(),)
7425 }
7426 #[inline]
7427 fn encode_topics_raw(
7428 &self,
7429 out: &mut [alloy_sol_types::abi::token::WordToken],
7430 ) -> alloy_sol_types::Result<()> {
7431 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
7432 return Err(alloy_sol_types::Error::Overrun);
7433 }
7434 out[0usize] = alloy_sol_types::abi::token::WordToken(
7435 Self::SIGNATURE_HASH,
7436 );
7437 Ok(())
7438 }
7439 }
7440 #[automatically_derived]
7441 impl alloy_sol_types::private::IntoLogData for Upgrade {
7442 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
7443 From::from(self)
7444 }
7445 fn into_log_data(self) -> alloy_sol_types::private::LogData {
7446 From::from(&self)
7447 }
7448 }
7449 #[automatically_derived]
7450 impl From<&Upgrade> for alloy_sol_types::private::LogData {
7451 #[inline]
7452 fn from(this: &Upgrade) -> alloy_sol_types::private::LogData {
7453 alloy_sol_types::SolEvent::encode_log_data(this)
7454 }
7455 }
7456 };
7457 #[derive(serde::Serialize, serde::Deserialize)]
7458 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7459 #[allow(
7464 non_camel_case_types,
7465 non_snake_case,
7466 clippy::pub_underscore_fields,
7467 clippy::style
7468 )]
7469 #[derive(Clone)]
7470 pub struct Upgraded {
7471 #[allow(missing_docs)]
7472 pub implementation: alloy::sol_types::private::Address,
7473 }
7474 #[allow(
7475 non_camel_case_types,
7476 non_snake_case,
7477 clippy::pub_underscore_fields,
7478 clippy::style
7479 )]
7480 const _: () = {
7481 use alloy::sol_types as alloy_sol_types;
7482 #[automatically_derived]
7483 impl alloy_sol_types::SolEvent for Upgraded {
7484 type DataTuple<'a> = ();
7485 type DataToken<'a> = <Self::DataTuple<
7486 'a,
7487 > as alloy_sol_types::SolType>::Token<'a>;
7488 type TopicList = (
7489 alloy_sol_types::sol_data::FixedBytes<32>,
7490 alloy::sol_types::sol_data::Address,
7491 );
7492 const SIGNATURE: &'static str = "Upgraded(address)";
7493 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
7494 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
7495 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8,
7496 12u8, 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
7497 ]);
7498 const ANONYMOUS: bool = false;
7499 #[allow(unused_variables)]
7500 #[inline]
7501 fn new(
7502 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
7503 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
7504 ) -> Self {
7505 Self { implementation: topics.1 }
7506 }
7507 #[inline]
7508 fn check_signature(
7509 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
7510 ) -> alloy_sol_types::Result<()> {
7511 if topics.0 != Self::SIGNATURE_HASH {
7512 return Err(
7513 alloy_sol_types::Error::invalid_event_signature_hash(
7514 Self::SIGNATURE,
7515 topics.0,
7516 Self::SIGNATURE_HASH,
7517 ),
7518 );
7519 }
7520 Ok(())
7521 }
7522 #[inline]
7523 fn tokenize_body(&self) -> Self::DataToken<'_> {
7524 ()
7525 }
7526 #[inline]
7527 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
7528 (Self::SIGNATURE_HASH.into(), self.implementation.clone())
7529 }
7530 #[inline]
7531 fn encode_topics_raw(
7532 &self,
7533 out: &mut [alloy_sol_types::abi::token::WordToken],
7534 ) -> alloy_sol_types::Result<()> {
7535 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
7536 return Err(alloy_sol_types::Error::Overrun);
7537 }
7538 out[0usize] = alloy_sol_types::abi::token::WordToken(
7539 Self::SIGNATURE_HASH,
7540 );
7541 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
7542 &self.implementation,
7543 );
7544 Ok(())
7545 }
7546 }
7547 #[automatically_derived]
7548 impl alloy_sol_types::private::IntoLogData for Upgraded {
7549 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
7550 From::from(self)
7551 }
7552 fn into_log_data(self) -> alloy_sol_types::private::LogData {
7553 From::from(&self)
7554 }
7555 }
7556 #[automatically_derived]
7557 impl From<&Upgraded> for alloy_sol_types::private::LogData {
7558 #[inline]
7559 fn from(this: &Upgraded) -> alloy_sol_types::private::LogData {
7560 alloy_sol_types::SolEvent::encode_log_data(this)
7561 }
7562 }
7563 };
7564 #[derive(serde::Serialize, serde::Deserialize)]
7565 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7566 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7571 #[derive(Clone)]
7572 pub struct UPGRADE_INTERFACE_VERSIONCall;
7573 #[derive(serde::Serialize, serde::Deserialize)]
7574 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7575 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7577 #[derive(Clone)]
7578 pub struct UPGRADE_INTERFACE_VERSIONReturn {
7579 #[allow(missing_docs)]
7580 pub _0: alloy::sol_types::private::String,
7581 }
7582 #[allow(
7583 non_camel_case_types,
7584 non_snake_case,
7585 clippy::pub_underscore_fields,
7586 clippy::style
7587 )]
7588 const _: () = {
7589 use alloy::sol_types as alloy_sol_types;
7590 {
7591 #[doc(hidden)]
7592 #[allow(dead_code)]
7593 type UnderlyingSolTuple<'a> = ();
7594 #[doc(hidden)]
7595 type UnderlyingRustTuple<'a> = ();
7596 #[cfg(test)]
7597 #[allow(dead_code, unreachable_patterns)]
7598 fn _type_assertion(
7599 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7600 ) {
7601 match _t {
7602 alloy_sol_types::private::AssertTypeEq::<
7603 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7604 >(_) => {}
7605 }
7606 }
7607 #[automatically_derived]
7608 #[doc(hidden)]
7609 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONCall>
7610 for UnderlyingRustTuple<'_> {
7611 fn from(value: UPGRADE_INTERFACE_VERSIONCall) -> Self {
7612 ()
7613 }
7614 }
7615 #[automatically_derived]
7616 #[doc(hidden)]
7617 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7618 for UPGRADE_INTERFACE_VERSIONCall {
7619 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7620 Self
7621 }
7622 }
7623 }
7624 {
7625 #[doc(hidden)]
7626 #[allow(dead_code)]
7627 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
7628 #[doc(hidden)]
7629 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
7630 #[cfg(test)]
7631 #[allow(dead_code, unreachable_patterns)]
7632 fn _type_assertion(
7633 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7634 ) {
7635 match _t {
7636 alloy_sol_types::private::AssertTypeEq::<
7637 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7638 >(_) => {}
7639 }
7640 }
7641 #[automatically_derived]
7642 #[doc(hidden)]
7643 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONReturn>
7644 for UnderlyingRustTuple<'_> {
7645 fn from(value: UPGRADE_INTERFACE_VERSIONReturn) -> Self {
7646 (value._0,)
7647 }
7648 }
7649 #[automatically_derived]
7650 #[doc(hidden)]
7651 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7652 for UPGRADE_INTERFACE_VERSIONReturn {
7653 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7654 Self { _0: tuple.0 }
7655 }
7656 }
7657 }
7658 #[automatically_derived]
7659 impl alloy_sol_types::SolCall for UPGRADE_INTERFACE_VERSIONCall {
7660 type Parameters<'a> = ();
7661 type Token<'a> = <Self::Parameters<
7662 'a,
7663 > as alloy_sol_types::SolType>::Token<'a>;
7664 type Return = alloy::sol_types::private::String;
7665 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
7666 type ReturnToken<'a> = <Self::ReturnTuple<
7667 'a,
7668 > as alloy_sol_types::SolType>::Token<'a>;
7669 const SIGNATURE: &'static str = "UPGRADE_INTERFACE_VERSION()";
7670 const SELECTOR: [u8; 4] = [173u8, 60u8, 177u8, 204u8];
7671 #[inline]
7672 fn new<'a>(
7673 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7674 ) -> Self {
7675 tuple.into()
7676 }
7677 #[inline]
7678 fn tokenize(&self) -> Self::Token<'_> {
7679 ()
7680 }
7681 #[inline]
7682 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7683 (
7684 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
7685 ret,
7686 ),
7687 )
7688 }
7689 #[inline]
7690 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7691 <Self::ReturnTuple<
7692 '_,
7693 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7694 .map(|r| {
7695 let r: UPGRADE_INTERFACE_VERSIONReturn = r.into();
7696 r._0
7697 })
7698 }
7699 #[inline]
7700 fn abi_decode_returns_validate(
7701 data: &[u8],
7702 ) -> alloy_sol_types::Result<Self::Return> {
7703 <Self::ReturnTuple<
7704 '_,
7705 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7706 .map(|r| {
7707 let r: UPGRADE_INTERFACE_VERSIONReturn = r.into();
7708 r._0
7709 })
7710 }
7711 }
7712 };
7713 #[derive(serde::Serialize, serde::Deserialize)]
7714 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7715 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7720 #[derive(Clone)]
7721 pub struct _getVkCall;
7722 #[derive(serde::Serialize, serde::Deserialize)]
7723 #[derive()]
7724 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7726 #[derive(Clone)]
7727 pub struct _getVkReturn {
7728 #[allow(missing_docs)]
7729 pub vk: <IPlonkVerifier::VerifyingKey as alloy::sol_types::SolType>::RustType,
7730 }
7731 #[allow(
7732 non_camel_case_types,
7733 non_snake_case,
7734 clippy::pub_underscore_fields,
7735 clippy::style
7736 )]
7737 const _: () = {
7738 use alloy::sol_types as alloy_sol_types;
7739 {
7740 #[doc(hidden)]
7741 #[allow(dead_code)]
7742 type UnderlyingSolTuple<'a> = ();
7743 #[doc(hidden)]
7744 type UnderlyingRustTuple<'a> = ();
7745 #[cfg(test)]
7746 #[allow(dead_code, unreachable_patterns)]
7747 fn _type_assertion(
7748 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7749 ) {
7750 match _t {
7751 alloy_sol_types::private::AssertTypeEq::<
7752 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7753 >(_) => {}
7754 }
7755 }
7756 #[automatically_derived]
7757 #[doc(hidden)]
7758 impl ::core::convert::From<_getVkCall> for UnderlyingRustTuple<'_> {
7759 fn from(value: _getVkCall) -> Self {
7760 ()
7761 }
7762 }
7763 #[automatically_derived]
7764 #[doc(hidden)]
7765 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _getVkCall {
7766 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7767 Self
7768 }
7769 }
7770 }
7771 {
7772 #[doc(hidden)]
7773 #[allow(dead_code)]
7774 type UnderlyingSolTuple<'a> = (IPlonkVerifier::VerifyingKey,);
7775 #[doc(hidden)]
7776 type UnderlyingRustTuple<'a> = (
7777 <IPlonkVerifier::VerifyingKey as alloy::sol_types::SolType>::RustType,
7778 );
7779 #[cfg(test)]
7780 #[allow(dead_code, unreachable_patterns)]
7781 fn _type_assertion(
7782 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7783 ) {
7784 match _t {
7785 alloy_sol_types::private::AssertTypeEq::<
7786 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7787 >(_) => {}
7788 }
7789 }
7790 #[automatically_derived]
7791 #[doc(hidden)]
7792 impl ::core::convert::From<_getVkReturn> for UnderlyingRustTuple<'_> {
7793 fn from(value: _getVkReturn) -> Self {
7794 (value.vk,)
7795 }
7796 }
7797 #[automatically_derived]
7798 #[doc(hidden)]
7799 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _getVkReturn {
7800 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7801 Self { vk: tuple.0 }
7802 }
7803 }
7804 }
7805 #[automatically_derived]
7806 impl alloy_sol_types::SolCall for _getVkCall {
7807 type Parameters<'a> = ();
7808 type Token<'a> = <Self::Parameters<
7809 'a,
7810 > as alloy_sol_types::SolType>::Token<'a>;
7811 type Return = <IPlonkVerifier::VerifyingKey as alloy::sol_types::SolType>::RustType;
7812 type ReturnTuple<'a> = (IPlonkVerifier::VerifyingKey,);
7813 type ReturnToken<'a> = <Self::ReturnTuple<
7814 'a,
7815 > as alloy_sol_types::SolType>::Token<'a>;
7816 const SIGNATURE: &'static str = "_getVk()";
7817 const SELECTOR: [u8; 4] = [18u8, 23u8, 60u8, 44u8];
7818 #[inline]
7819 fn new<'a>(
7820 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7821 ) -> Self {
7822 tuple.into()
7823 }
7824 #[inline]
7825 fn tokenize(&self) -> Self::Token<'_> {
7826 ()
7827 }
7828 #[inline]
7829 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7830 (
7831 <IPlonkVerifier::VerifyingKey as alloy_sol_types::SolType>::tokenize(
7832 ret,
7833 ),
7834 )
7835 }
7836 #[inline]
7837 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7838 <Self::ReturnTuple<
7839 '_,
7840 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7841 .map(|r| {
7842 let r: _getVkReturn = r.into();
7843 r.vk
7844 })
7845 }
7846 #[inline]
7847 fn abi_decode_returns_validate(
7848 data: &[u8],
7849 ) -> alloy_sol_types::Result<Self::Return> {
7850 <Self::ReturnTuple<
7851 '_,
7852 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7853 .map(|r| {
7854 let r: _getVkReturn = r.into();
7855 r.vk
7856 })
7857 }
7858 }
7859 };
7860 #[derive(serde::Serialize, serde::Deserialize)]
7861 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7862 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7867 #[derive(Clone)]
7868 pub struct blocksPerEpochCall;
7869 #[derive(serde::Serialize, serde::Deserialize)]
7870 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7871 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7873 #[derive(Clone)]
7874 pub struct blocksPerEpochReturn {
7875 #[allow(missing_docs)]
7876 pub _0: u64,
7877 }
7878 #[allow(
7879 non_camel_case_types,
7880 non_snake_case,
7881 clippy::pub_underscore_fields,
7882 clippy::style
7883 )]
7884 const _: () = {
7885 use alloy::sol_types as alloy_sol_types;
7886 {
7887 #[doc(hidden)]
7888 #[allow(dead_code)]
7889 type UnderlyingSolTuple<'a> = ();
7890 #[doc(hidden)]
7891 type UnderlyingRustTuple<'a> = ();
7892 #[cfg(test)]
7893 #[allow(dead_code, unreachable_patterns)]
7894 fn _type_assertion(
7895 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7896 ) {
7897 match _t {
7898 alloy_sol_types::private::AssertTypeEq::<
7899 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7900 >(_) => {}
7901 }
7902 }
7903 #[automatically_derived]
7904 #[doc(hidden)]
7905 impl ::core::convert::From<blocksPerEpochCall> for UnderlyingRustTuple<'_> {
7906 fn from(value: blocksPerEpochCall) -> Self {
7907 ()
7908 }
7909 }
7910 #[automatically_derived]
7911 #[doc(hidden)]
7912 impl ::core::convert::From<UnderlyingRustTuple<'_>> for blocksPerEpochCall {
7913 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7914 Self
7915 }
7916 }
7917 }
7918 {
7919 #[doc(hidden)]
7920 #[allow(dead_code)]
7921 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
7922 #[doc(hidden)]
7923 type UnderlyingRustTuple<'a> = (u64,);
7924 #[cfg(test)]
7925 #[allow(dead_code, unreachable_patterns)]
7926 fn _type_assertion(
7927 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7928 ) {
7929 match _t {
7930 alloy_sol_types::private::AssertTypeEq::<
7931 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7932 >(_) => {}
7933 }
7934 }
7935 #[automatically_derived]
7936 #[doc(hidden)]
7937 impl ::core::convert::From<blocksPerEpochReturn>
7938 for UnderlyingRustTuple<'_> {
7939 fn from(value: blocksPerEpochReturn) -> Self {
7940 (value._0,)
7941 }
7942 }
7943 #[automatically_derived]
7944 #[doc(hidden)]
7945 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7946 for blocksPerEpochReturn {
7947 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7948 Self { _0: tuple.0 }
7949 }
7950 }
7951 }
7952 #[automatically_derived]
7953 impl alloy_sol_types::SolCall for blocksPerEpochCall {
7954 type Parameters<'a> = ();
7955 type Token<'a> = <Self::Parameters<
7956 'a,
7957 > as alloy_sol_types::SolType>::Token<'a>;
7958 type Return = u64;
7959 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
7960 type ReturnToken<'a> = <Self::ReturnTuple<
7961 'a,
7962 > as alloy_sol_types::SolType>::Token<'a>;
7963 const SIGNATURE: &'static str = "blocksPerEpoch()";
7964 const SELECTOR: [u8; 4] = [240u8, 104u8, 32u8, 84u8];
7965 #[inline]
7966 fn new<'a>(
7967 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7968 ) -> Self {
7969 tuple.into()
7970 }
7971 #[inline]
7972 fn tokenize(&self) -> Self::Token<'_> {
7973 ()
7974 }
7975 #[inline]
7976 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7977 (
7978 <alloy::sol_types::sol_data::Uint<
7979 64,
7980 > as alloy_sol_types::SolType>::tokenize(ret),
7981 )
7982 }
7983 #[inline]
7984 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7985 <Self::ReturnTuple<
7986 '_,
7987 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7988 .map(|r| {
7989 let r: blocksPerEpochReturn = r.into();
7990 r._0
7991 })
7992 }
7993 #[inline]
7994 fn abi_decode_returns_validate(
7995 data: &[u8],
7996 ) -> alloy_sol_types::Result<Self::Return> {
7997 <Self::ReturnTuple<
7998 '_,
7999 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8000 .map(|r| {
8001 let r: blocksPerEpochReturn = r.into();
8002 r._0
8003 })
8004 }
8005 }
8006 };
8007 #[derive(serde::Serialize, serde::Deserialize)]
8008 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8009 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8014 #[derive(Clone)]
8015 pub struct currentBlockNumberCall;
8016 #[derive(serde::Serialize, serde::Deserialize)]
8017 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8018 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8020 #[derive(Clone)]
8021 pub struct currentBlockNumberReturn {
8022 #[allow(missing_docs)]
8023 pub _0: alloy::sol_types::private::primitives::aliases::U256,
8024 }
8025 #[allow(
8026 non_camel_case_types,
8027 non_snake_case,
8028 clippy::pub_underscore_fields,
8029 clippy::style
8030 )]
8031 const _: () = {
8032 use alloy::sol_types as alloy_sol_types;
8033 {
8034 #[doc(hidden)]
8035 #[allow(dead_code)]
8036 type UnderlyingSolTuple<'a> = ();
8037 #[doc(hidden)]
8038 type UnderlyingRustTuple<'a> = ();
8039 #[cfg(test)]
8040 #[allow(dead_code, unreachable_patterns)]
8041 fn _type_assertion(
8042 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8043 ) {
8044 match _t {
8045 alloy_sol_types::private::AssertTypeEq::<
8046 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8047 >(_) => {}
8048 }
8049 }
8050 #[automatically_derived]
8051 #[doc(hidden)]
8052 impl ::core::convert::From<currentBlockNumberCall>
8053 for UnderlyingRustTuple<'_> {
8054 fn from(value: currentBlockNumberCall) -> Self {
8055 ()
8056 }
8057 }
8058 #[automatically_derived]
8059 #[doc(hidden)]
8060 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8061 for currentBlockNumberCall {
8062 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8063 Self
8064 }
8065 }
8066 }
8067 {
8068 #[doc(hidden)]
8069 #[allow(dead_code)]
8070 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8071 #[doc(hidden)]
8072 type UnderlyingRustTuple<'a> = (
8073 alloy::sol_types::private::primitives::aliases::U256,
8074 );
8075 #[cfg(test)]
8076 #[allow(dead_code, unreachable_patterns)]
8077 fn _type_assertion(
8078 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8079 ) {
8080 match _t {
8081 alloy_sol_types::private::AssertTypeEq::<
8082 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8083 >(_) => {}
8084 }
8085 }
8086 #[automatically_derived]
8087 #[doc(hidden)]
8088 impl ::core::convert::From<currentBlockNumberReturn>
8089 for UnderlyingRustTuple<'_> {
8090 fn from(value: currentBlockNumberReturn) -> Self {
8091 (value._0,)
8092 }
8093 }
8094 #[automatically_derived]
8095 #[doc(hidden)]
8096 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8097 for currentBlockNumberReturn {
8098 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8099 Self { _0: tuple.0 }
8100 }
8101 }
8102 }
8103 #[automatically_derived]
8104 impl alloy_sol_types::SolCall for currentBlockNumberCall {
8105 type Parameters<'a> = ();
8106 type Token<'a> = <Self::Parameters<
8107 'a,
8108 > as alloy_sol_types::SolType>::Token<'a>;
8109 type Return = alloy::sol_types::private::primitives::aliases::U256;
8110 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8111 type ReturnToken<'a> = <Self::ReturnTuple<
8112 'a,
8113 > as alloy_sol_types::SolType>::Token<'a>;
8114 const SIGNATURE: &'static str = "currentBlockNumber()";
8115 const SELECTOR: [u8; 4] = [55u8, 142u8, 194u8, 59u8];
8116 #[inline]
8117 fn new<'a>(
8118 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8119 ) -> Self {
8120 tuple.into()
8121 }
8122 #[inline]
8123 fn tokenize(&self) -> Self::Token<'_> {
8124 ()
8125 }
8126 #[inline]
8127 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8128 (
8129 <alloy::sol_types::sol_data::Uint<
8130 256,
8131 > as alloy_sol_types::SolType>::tokenize(ret),
8132 )
8133 }
8134 #[inline]
8135 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8136 <Self::ReturnTuple<
8137 '_,
8138 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8139 .map(|r| {
8140 let r: currentBlockNumberReturn = r.into();
8141 r._0
8142 })
8143 }
8144 #[inline]
8145 fn abi_decode_returns_validate(
8146 data: &[u8],
8147 ) -> alloy_sol_types::Result<Self::Return> {
8148 <Self::ReturnTuple<
8149 '_,
8150 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8151 .map(|r| {
8152 let r: currentBlockNumberReturn = r.into();
8153 r._0
8154 })
8155 }
8156 }
8157 };
8158 #[derive(serde::Serialize, serde::Deserialize)]
8159 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8160 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8165 #[derive(Clone)]
8166 pub struct currentEpochCall;
8167 #[derive(serde::Serialize, serde::Deserialize)]
8168 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8169 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8171 #[derive(Clone)]
8172 pub struct currentEpochReturn {
8173 #[allow(missing_docs)]
8174 pub _0: u64,
8175 }
8176 #[allow(
8177 non_camel_case_types,
8178 non_snake_case,
8179 clippy::pub_underscore_fields,
8180 clippy::style
8181 )]
8182 const _: () = {
8183 use alloy::sol_types as alloy_sol_types;
8184 {
8185 #[doc(hidden)]
8186 #[allow(dead_code)]
8187 type UnderlyingSolTuple<'a> = ();
8188 #[doc(hidden)]
8189 type UnderlyingRustTuple<'a> = ();
8190 #[cfg(test)]
8191 #[allow(dead_code, unreachable_patterns)]
8192 fn _type_assertion(
8193 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8194 ) {
8195 match _t {
8196 alloy_sol_types::private::AssertTypeEq::<
8197 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8198 >(_) => {}
8199 }
8200 }
8201 #[automatically_derived]
8202 #[doc(hidden)]
8203 impl ::core::convert::From<currentEpochCall> for UnderlyingRustTuple<'_> {
8204 fn from(value: currentEpochCall) -> Self {
8205 ()
8206 }
8207 }
8208 #[automatically_derived]
8209 #[doc(hidden)]
8210 impl ::core::convert::From<UnderlyingRustTuple<'_>> for currentEpochCall {
8211 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8212 Self
8213 }
8214 }
8215 }
8216 {
8217 #[doc(hidden)]
8218 #[allow(dead_code)]
8219 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8220 #[doc(hidden)]
8221 type UnderlyingRustTuple<'a> = (u64,);
8222 #[cfg(test)]
8223 #[allow(dead_code, unreachable_patterns)]
8224 fn _type_assertion(
8225 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8226 ) {
8227 match _t {
8228 alloy_sol_types::private::AssertTypeEq::<
8229 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8230 >(_) => {}
8231 }
8232 }
8233 #[automatically_derived]
8234 #[doc(hidden)]
8235 impl ::core::convert::From<currentEpochReturn> for UnderlyingRustTuple<'_> {
8236 fn from(value: currentEpochReturn) -> Self {
8237 (value._0,)
8238 }
8239 }
8240 #[automatically_derived]
8241 #[doc(hidden)]
8242 impl ::core::convert::From<UnderlyingRustTuple<'_>> for currentEpochReturn {
8243 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8244 Self { _0: tuple.0 }
8245 }
8246 }
8247 }
8248 #[automatically_derived]
8249 impl alloy_sol_types::SolCall for currentEpochCall {
8250 type Parameters<'a> = ();
8251 type Token<'a> = <Self::Parameters<
8252 'a,
8253 > as alloy_sol_types::SolType>::Token<'a>;
8254 type Return = u64;
8255 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8256 type ReturnToken<'a> = <Self::ReturnTuple<
8257 'a,
8258 > as alloy_sol_types::SolType>::Token<'a>;
8259 const SIGNATURE: &'static str = "currentEpoch()";
8260 const SELECTOR: [u8; 4] = [118u8, 103u8, 24u8, 8u8];
8261 #[inline]
8262 fn new<'a>(
8263 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8264 ) -> Self {
8265 tuple.into()
8266 }
8267 #[inline]
8268 fn tokenize(&self) -> Self::Token<'_> {
8269 ()
8270 }
8271 #[inline]
8272 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8273 (
8274 <alloy::sol_types::sol_data::Uint<
8275 64,
8276 > as alloy_sol_types::SolType>::tokenize(ret),
8277 )
8278 }
8279 #[inline]
8280 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8281 <Self::ReturnTuple<
8282 '_,
8283 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8284 .map(|r| {
8285 let r: currentEpochReturn = r.into();
8286 r._0
8287 })
8288 }
8289 #[inline]
8290 fn abi_decode_returns_validate(
8291 data: &[u8],
8292 ) -> alloy_sol_types::Result<Self::Return> {
8293 <Self::ReturnTuple<
8294 '_,
8295 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8296 .map(|r| {
8297 let r: currentEpochReturn = r.into();
8298 r._0
8299 })
8300 }
8301 }
8302 };
8303 #[derive(serde::Serialize, serde::Deserialize)]
8304 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8305 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8310 #[derive(Clone)]
8311 pub struct disablePermissionedProverModeCall;
8312 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8314 #[derive(Clone)]
8315 pub struct disablePermissionedProverModeReturn {}
8316 #[allow(
8317 non_camel_case_types,
8318 non_snake_case,
8319 clippy::pub_underscore_fields,
8320 clippy::style
8321 )]
8322 const _: () = {
8323 use alloy::sol_types as alloy_sol_types;
8324 {
8325 #[doc(hidden)]
8326 #[allow(dead_code)]
8327 type UnderlyingSolTuple<'a> = ();
8328 #[doc(hidden)]
8329 type UnderlyingRustTuple<'a> = ();
8330 #[cfg(test)]
8331 #[allow(dead_code, unreachable_patterns)]
8332 fn _type_assertion(
8333 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8334 ) {
8335 match _t {
8336 alloy_sol_types::private::AssertTypeEq::<
8337 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8338 >(_) => {}
8339 }
8340 }
8341 #[automatically_derived]
8342 #[doc(hidden)]
8343 impl ::core::convert::From<disablePermissionedProverModeCall>
8344 for UnderlyingRustTuple<'_> {
8345 fn from(value: disablePermissionedProverModeCall) -> Self {
8346 ()
8347 }
8348 }
8349 #[automatically_derived]
8350 #[doc(hidden)]
8351 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8352 for disablePermissionedProverModeCall {
8353 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8354 Self
8355 }
8356 }
8357 }
8358 {
8359 #[doc(hidden)]
8360 #[allow(dead_code)]
8361 type UnderlyingSolTuple<'a> = ();
8362 #[doc(hidden)]
8363 type UnderlyingRustTuple<'a> = ();
8364 #[cfg(test)]
8365 #[allow(dead_code, unreachable_patterns)]
8366 fn _type_assertion(
8367 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8368 ) {
8369 match _t {
8370 alloy_sol_types::private::AssertTypeEq::<
8371 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8372 >(_) => {}
8373 }
8374 }
8375 #[automatically_derived]
8376 #[doc(hidden)]
8377 impl ::core::convert::From<disablePermissionedProverModeReturn>
8378 for UnderlyingRustTuple<'_> {
8379 fn from(value: disablePermissionedProverModeReturn) -> Self {
8380 ()
8381 }
8382 }
8383 #[automatically_derived]
8384 #[doc(hidden)]
8385 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8386 for disablePermissionedProverModeReturn {
8387 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8388 Self {}
8389 }
8390 }
8391 }
8392 impl disablePermissionedProverModeReturn {
8393 fn _tokenize(
8394 &self,
8395 ) -> <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::ReturnToken<
8396 '_,
8397 > {
8398 ()
8399 }
8400 }
8401 #[automatically_derived]
8402 impl alloy_sol_types::SolCall for disablePermissionedProverModeCall {
8403 type Parameters<'a> = ();
8404 type Token<'a> = <Self::Parameters<
8405 'a,
8406 > as alloy_sol_types::SolType>::Token<'a>;
8407 type Return = disablePermissionedProverModeReturn;
8408 type ReturnTuple<'a> = ();
8409 type ReturnToken<'a> = <Self::ReturnTuple<
8410 'a,
8411 > as alloy_sol_types::SolType>::Token<'a>;
8412 const SIGNATURE: &'static str = "disablePermissionedProverMode()";
8413 const SELECTOR: [u8; 4] = [105u8, 204u8, 106u8, 4u8];
8414 #[inline]
8415 fn new<'a>(
8416 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8417 ) -> Self {
8418 tuple.into()
8419 }
8420 #[inline]
8421 fn tokenize(&self) -> Self::Token<'_> {
8422 ()
8423 }
8424 #[inline]
8425 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8426 disablePermissionedProverModeReturn::_tokenize(ret)
8427 }
8428 #[inline]
8429 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8430 <Self::ReturnTuple<
8431 '_,
8432 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8433 .map(Into::into)
8434 }
8435 #[inline]
8436 fn abi_decode_returns_validate(
8437 data: &[u8],
8438 ) -> alloy_sol_types::Result<Self::Return> {
8439 <Self::ReturnTuple<
8440 '_,
8441 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8442 .map(Into::into)
8443 }
8444 }
8445 };
8446 #[derive(serde::Serialize, serde::Deserialize)]
8447 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8448 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8453 #[derive(Clone)]
8454 pub struct epochFromBlockNumberCall {
8455 #[allow(missing_docs)]
8456 pub _blockNum: u64,
8457 #[allow(missing_docs)]
8458 pub _blocksPerEpoch: u64,
8459 }
8460 #[derive(serde::Serialize, serde::Deserialize)]
8461 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8462 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8464 #[derive(Clone)]
8465 pub struct epochFromBlockNumberReturn {
8466 #[allow(missing_docs)]
8467 pub _0: u64,
8468 }
8469 #[allow(
8470 non_camel_case_types,
8471 non_snake_case,
8472 clippy::pub_underscore_fields,
8473 clippy::style
8474 )]
8475 const _: () = {
8476 use alloy::sol_types as alloy_sol_types;
8477 {
8478 #[doc(hidden)]
8479 #[allow(dead_code)]
8480 type UnderlyingSolTuple<'a> = (
8481 alloy::sol_types::sol_data::Uint<64>,
8482 alloy::sol_types::sol_data::Uint<64>,
8483 );
8484 #[doc(hidden)]
8485 type UnderlyingRustTuple<'a> = (u64, u64);
8486 #[cfg(test)]
8487 #[allow(dead_code, unreachable_patterns)]
8488 fn _type_assertion(
8489 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8490 ) {
8491 match _t {
8492 alloy_sol_types::private::AssertTypeEq::<
8493 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8494 >(_) => {}
8495 }
8496 }
8497 #[automatically_derived]
8498 #[doc(hidden)]
8499 impl ::core::convert::From<epochFromBlockNumberCall>
8500 for UnderlyingRustTuple<'_> {
8501 fn from(value: epochFromBlockNumberCall) -> Self {
8502 (value._blockNum, value._blocksPerEpoch)
8503 }
8504 }
8505 #[automatically_derived]
8506 #[doc(hidden)]
8507 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8508 for epochFromBlockNumberCall {
8509 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8510 Self {
8511 _blockNum: tuple.0,
8512 _blocksPerEpoch: tuple.1,
8513 }
8514 }
8515 }
8516 }
8517 {
8518 #[doc(hidden)]
8519 #[allow(dead_code)]
8520 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8521 #[doc(hidden)]
8522 type UnderlyingRustTuple<'a> = (u64,);
8523 #[cfg(test)]
8524 #[allow(dead_code, unreachable_patterns)]
8525 fn _type_assertion(
8526 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8527 ) {
8528 match _t {
8529 alloy_sol_types::private::AssertTypeEq::<
8530 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8531 >(_) => {}
8532 }
8533 }
8534 #[automatically_derived]
8535 #[doc(hidden)]
8536 impl ::core::convert::From<epochFromBlockNumberReturn>
8537 for UnderlyingRustTuple<'_> {
8538 fn from(value: epochFromBlockNumberReturn) -> Self {
8539 (value._0,)
8540 }
8541 }
8542 #[automatically_derived]
8543 #[doc(hidden)]
8544 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8545 for epochFromBlockNumberReturn {
8546 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8547 Self { _0: tuple.0 }
8548 }
8549 }
8550 }
8551 #[automatically_derived]
8552 impl alloy_sol_types::SolCall for epochFromBlockNumberCall {
8553 type Parameters<'a> = (
8554 alloy::sol_types::sol_data::Uint<64>,
8555 alloy::sol_types::sol_data::Uint<64>,
8556 );
8557 type Token<'a> = <Self::Parameters<
8558 'a,
8559 > as alloy_sol_types::SolType>::Token<'a>;
8560 type Return = u64;
8561 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8562 type ReturnToken<'a> = <Self::ReturnTuple<
8563 'a,
8564 > as alloy_sol_types::SolType>::Token<'a>;
8565 const SIGNATURE: &'static str = "epochFromBlockNumber(uint64,uint64)";
8566 const SELECTOR: [u8; 4] = [144u8, 193u8, 67u8, 144u8];
8567 #[inline]
8568 fn new<'a>(
8569 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8570 ) -> Self {
8571 tuple.into()
8572 }
8573 #[inline]
8574 fn tokenize(&self) -> Self::Token<'_> {
8575 (
8576 <alloy::sol_types::sol_data::Uint<
8577 64,
8578 > as alloy_sol_types::SolType>::tokenize(&self._blockNum),
8579 <alloy::sol_types::sol_data::Uint<
8580 64,
8581 > as alloy_sol_types::SolType>::tokenize(&self._blocksPerEpoch),
8582 )
8583 }
8584 #[inline]
8585 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8586 (
8587 <alloy::sol_types::sol_data::Uint<
8588 64,
8589 > as alloy_sol_types::SolType>::tokenize(ret),
8590 )
8591 }
8592 #[inline]
8593 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8594 <Self::ReturnTuple<
8595 '_,
8596 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8597 .map(|r| {
8598 let r: epochFromBlockNumberReturn = r.into();
8599 r._0
8600 })
8601 }
8602 #[inline]
8603 fn abi_decode_returns_validate(
8604 data: &[u8],
8605 ) -> alloy_sol_types::Result<Self::Return> {
8606 <Self::ReturnTuple<
8607 '_,
8608 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8609 .map(|r| {
8610 let r: epochFromBlockNumberReturn = r.into();
8611 r._0
8612 })
8613 }
8614 }
8615 };
8616 #[derive(serde::Serialize, serde::Deserialize)]
8617 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8618 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8623 #[derive(Clone)]
8624 pub struct epochStartBlockCall;
8625 #[derive(serde::Serialize, serde::Deserialize)]
8626 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8627 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8629 #[derive(Clone)]
8630 pub struct epochStartBlockReturn {
8631 #[allow(missing_docs)]
8632 pub _0: u64,
8633 }
8634 #[allow(
8635 non_camel_case_types,
8636 non_snake_case,
8637 clippy::pub_underscore_fields,
8638 clippy::style
8639 )]
8640 const _: () = {
8641 use alloy::sol_types as alloy_sol_types;
8642 {
8643 #[doc(hidden)]
8644 #[allow(dead_code)]
8645 type UnderlyingSolTuple<'a> = ();
8646 #[doc(hidden)]
8647 type UnderlyingRustTuple<'a> = ();
8648 #[cfg(test)]
8649 #[allow(dead_code, unreachable_patterns)]
8650 fn _type_assertion(
8651 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8652 ) {
8653 match _t {
8654 alloy_sol_types::private::AssertTypeEq::<
8655 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8656 >(_) => {}
8657 }
8658 }
8659 #[automatically_derived]
8660 #[doc(hidden)]
8661 impl ::core::convert::From<epochStartBlockCall> for UnderlyingRustTuple<'_> {
8662 fn from(value: epochStartBlockCall) -> Self {
8663 ()
8664 }
8665 }
8666 #[automatically_derived]
8667 #[doc(hidden)]
8668 impl ::core::convert::From<UnderlyingRustTuple<'_>> for epochStartBlockCall {
8669 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8670 Self
8671 }
8672 }
8673 }
8674 {
8675 #[doc(hidden)]
8676 #[allow(dead_code)]
8677 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8678 #[doc(hidden)]
8679 type UnderlyingRustTuple<'a> = (u64,);
8680 #[cfg(test)]
8681 #[allow(dead_code, unreachable_patterns)]
8682 fn _type_assertion(
8683 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8684 ) {
8685 match _t {
8686 alloy_sol_types::private::AssertTypeEq::<
8687 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8688 >(_) => {}
8689 }
8690 }
8691 #[automatically_derived]
8692 #[doc(hidden)]
8693 impl ::core::convert::From<epochStartBlockReturn>
8694 for UnderlyingRustTuple<'_> {
8695 fn from(value: epochStartBlockReturn) -> Self {
8696 (value._0,)
8697 }
8698 }
8699 #[automatically_derived]
8700 #[doc(hidden)]
8701 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8702 for epochStartBlockReturn {
8703 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8704 Self { _0: tuple.0 }
8705 }
8706 }
8707 }
8708 #[automatically_derived]
8709 impl alloy_sol_types::SolCall for epochStartBlockCall {
8710 type Parameters<'a> = ();
8711 type Token<'a> = <Self::Parameters<
8712 'a,
8713 > as alloy_sol_types::SolType>::Token<'a>;
8714 type Return = u64;
8715 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8716 type ReturnToken<'a> = <Self::ReturnTuple<
8717 'a,
8718 > as alloy_sol_types::SolType>::Token<'a>;
8719 const SIGNATURE: &'static str = "epochStartBlock()";
8720 const SELECTOR: [u8; 4] = [62u8, 213u8, 91u8, 123u8];
8721 #[inline]
8722 fn new<'a>(
8723 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8724 ) -> Self {
8725 tuple.into()
8726 }
8727 #[inline]
8728 fn tokenize(&self) -> Self::Token<'_> {
8729 ()
8730 }
8731 #[inline]
8732 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8733 (
8734 <alloy::sol_types::sol_data::Uint<
8735 64,
8736 > as alloy_sol_types::SolType>::tokenize(ret),
8737 )
8738 }
8739 #[inline]
8740 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8741 <Self::ReturnTuple<
8742 '_,
8743 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8744 .map(|r| {
8745 let r: epochStartBlockReturn = r.into();
8746 r._0
8747 })
8748 }
8749 #[inline]
8750 fn abi_decode_returns_validate(
8751 data: &[u8],
8752 ) -> alloy_sol_types::Result<Self::Return> {
8753 <Self::ReturnTuple<
8754 '_,
8755 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8756 .map(|r| {
8757 let r: epochStartBlockReturn = r.into();
8758 r._0
8759 })
8760 }
8761 }
8762 };
8763 #[derive(serde::Serialize, serde::Deserialize)]
8764 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8765 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8770 #[derive(Clone)]
8771 pub struct finalizedStateCall;
8772 #[derive(serde::Serialize, serde::Deserialize)]
8773 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8774 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8776 #[derive(Clone)]
8777 pub struct finalizedStateReturn {
8778 #[allow(missing_docs)]
8779 pub viewNum: u64,
8780 #[allow(missing_docs)]
8781 pub blockHeight: u64,
8782 #[allow(missing_docs)]
8783 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8784 }
8785 #[allow(
8786 non_camel_case_types,
8787 non_snake_case,
8788 clippy::pub_underscore_fields,
8789 clippy::style
8790 )]
8791 const _: () = {
8792 use alloy::sol_types as alloy_sol_types;
8793 {
8794 #[doc(hidden)]
8795 #[allow(dead_code)]
8796 type UnderlyingSolTuple<'a> = ();
8797 #[doc(hidden)]
8798 type UnderlyingRustTuple<'a> = ();
8799 #[cfg(test)]
8800 #[allow(dead_code, unreachable_patterns)]
8801 fn _type_assertion(
8802 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8803 ) {
8804 match _t {
8805 alloy_sol_types::private::AssertTypeEq::<
8806 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8807 >(_) => {}
8808 }
8809 }
8810 #[automatically_derived]
8811 #[doc(hidden)]
8812 impl ::core::convert::From<finalizedStateCall> for UnderlyingRustTuple<'_> {
8813 fn from(value: finalizedStateCall) -> Self {
8814 ()
8815 }
8816 }
8817 #[automatically_derived]
8818 #[doc(hidden)]
8819 impl ::core::convert::From<UnderlyingRustTuple<'_>> for finalizedStateCall {
8820 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8821 Self
8822 }
8823 }
8824 }
8825 {
8826 #[doc(hidden)]
8827 #[allow(dead_code)]
8828 type UnderlyingSolTuple<'a> = (
8829 alloy::sol_types::sol_data::Uint<64>,
8830 alloy::sol_types::sol_data::Uint<64>,
8831 BN254::ScalarField,
8832 );
8833 #[doc(hidden)]
8834 type UnderlyingRustTuple<'a> = (
8835 u64,
8836 u64,
8837 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8838 );
8839 #[cfg(test)]
8840 #[allow(dead_code, unreachable_patterns)]
8841 fn _type_assertion(
8842 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8843 ) {
8844 match _t {
8845 alloy_sol_types::private::AssertTypeEq::<
8846 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8847 >(_) => {}
8848 }
8849 }
8850 #[automatically_derived]
8851 #[doc(hidden)]
8852 impl ::core::convert::From<finalizedStateReturn>
8853 for UnderlyingRustTuple<'_> {
8854 fn from(value: finalizedStateReturn) -> Self {
8855 (value.viewNum, value.blockHeight, value.blockCommRoot)
8856 }
8857 }
8858 #[automatically_derived]
8859 #[doc(hidden)]
8860 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8861 for finalizedStateReturn {
8862 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8863 Self {
8864 viewNum: tuple.0,
8865 blockHeight: tuple.1,
8866 blockCommRoot: tuple.2,
8867 }
8868 }
8869 }
8870 }
8871 impl finalizedStateReturn {
8872 fn _tokenize(
8873 &self,
8874 ) -> <finalizedStateCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8875 (
8876 <alloy::sol_types::sol_data::Uint<
8877 64,
8878 > as alloy_sol_types::SolType>::tokenize(&self.viewNum),
8879 <alloy::sol_types::sol_data::Uint<
8880 64,
8881 > as alloy_sol_types::SolType>::tokenize(&self.blockHeight),
8882 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
8883 &self.blockCommRoot,
8884 ),
8885 )
8886 }
8887 }
8888 #[automatically_derived]
8889 impl alloy_sol_types::SolCall for finalizedStateCall {
8890 type Parameters<'a> = ();
8891 type Token<'a> = <Self::Parameters<
8892 'a,
8893 > as alloy_sol_types::SolType>::Token<'a>;
8894 type Return = finalizedStateReturn;
8895 type ReturnTuple<'a> = (
8896 alloy::sol_types::sol_data::Uint<64>,
8897 alloy::sol_types::sol_data::Uint<64>,
8898 BN254::ScalarField,
8899 );
8900 type ReturnToken<'a> = <Self::ReturnTuple<
8901 'a,
8902 > as alloy_sol_types::SolType>::Token<'a>;
8903 const SIGNATURE: &'static str = "finalizedState()";
8904 const SELECTOR: [u8; 4] = [159u8, 219u8, 84u8, 167u8];
8905 #[inline]
8906 fn new<'a>(
8907 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8908 ) -> Self {
8909 tuple.into()
8910 }
8911 #[inline]
8912 fn tokenize(&self) -> Self::Token<'_> {
8913 ()
8914 }
8915 #[inline]
8916 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8917 finalizedStateReturn::_tokenize(ret)
8918 }
8919 #[inline]
8920 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8921 <Self::ReturnTuple<
8922 '_,
8923 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8924 .map(Into::into)
8925 }
8926 #[inline]
8927 fn abi_decode_returns_validate(
8928 data: &[u8],
8929 ) -> alloy_sol_types::Result<Self::Return> {
8930 <Self::ReturnTuple<
8931 '_,
8932 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8933 .map(Into::into)
8934 }
8935 }
8936 };
8937 #[derive(serde::Serialize, serde::Deserialize)]
8938 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8939 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8944 #[derive(Clone)]
8945 pub struct genesisStakeTableStateCall;
8946 #[derive(serde::Serialize, serde::Deserialize)]
8947 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8948 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8950 #[derive(Clone)]
8951 pub struct genesisStakeTableStateReturn {
8952 #[allow(missing_docs)]
8953 pub threshold: alloy::sol_types::private::primitives::aliases::U256,
8954 #[allow(missing_docs)]
8955 pub blsKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8956 #[allow(missing_docs)]
8957 pub schnorrKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8958 #[allow(missing_docs)]
8959 pub amountComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8960 }
8961 #[allow(
8962 non_camel_case_types,
8963 non_snake_case,
8964 clippy::pub_underscore_fields,
8965 clippy::style
8966 )]
8967 const _: () = {
8968 use alloy::sol_types as alloy_sol_types;
8969 {
8970 #[doc(hidden)]
8971 #[allow(dead_code)]
8972 type UnderlyingSolTuple<'a> = ();
8973 #[doc(hidden)]
8974 type UnderlyingRustTuple<'a> = ();
8975 #[cfg(test)]
8976 #[allow(dead_code, unreachable_patterns)]
8977 fn _type_assertion(
8978 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8979 ) {
8980 match _t {
8981 alloy_sol_types::private::AssertTypeEq::<
8982 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8983 >(_) => {}
8984 }
8985 }
8986 #[automatically_derived]
8987 #[doc(hidden)]
8988 impl ::core::convert::From<genesisStakeTableStateCall>
8989 for UnderlyingRustTuple<'_> {
8990 fn from(value: genesisStakeTableStateCall) -> Self {
8991 ()
8992 }
8993 }
8994 #[automatically_derived]
8995 #[doc(hidden)]
8996 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8997 for genesisStakeTableStateCall {
8998 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8999 Self
9000 }
9001 }
9002 }
9003 {
9004 #[doc(hidden)]
9005 #[allow(dead_code)]
9006 type UnderlyingSolTuple<'a> = (
9007 alloy::sol_types::sol_data::Uint<256>,
9008 BN254::ScalarField,
9009 BN254::ScalarField,
9010 BN254::ScalarField,
9011 );
9012 #[doc(hidden)]
9013 type UnderlyingRustTuple<'a> = (
9014 alloy::sol_types::private::primitives::aliases::U256,
9015 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9016 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9017 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9018 );
9019 #[cfg(test)]
9020 #[allow(dead_code, unreachable_patterns)]
9021 fn _type_assertion(
9022 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9023 ) {
9024 match _t {
9025 alloy_sol_types::private::AssertTypeEq::<
9026 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9027 >(_) => {}
9028 }
9029 }
9030 #[automatically_derived]
9031 #[doc(hidden)]
9032 impl ::core::convert::From<genesisStakeTableStateReturn>
9033 for UnderlyingRustTuple<'_> {
9034 fn from(value: genesisStakeTableStateReturn) -> Self {
9035 (
9036 value.threshold,
9037 value.blsKeyComm,
9038 value.schnorrKeyComm,
9039 value.amountComm,
9040 )
9041 }
9042 }
9043 #[automatically_derived]
9044 #[doc(hidden)]
9045 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9046 for genesisStakeTableStateReturn {
9047 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9048 Self {
9049 threshold: tuple.0,
9050 blsKeyComm: tuple.1,
9051 schnorrKeyComm: tuple.2,
9052 amountComm: tuple.3,
9053 }
9054 }
9055 }
9056 }
9057 impl genesisStakeTableStateReturn {
9058 fn _tokenize(
9059 &self,
9060 ) -> <genesisStakeTableStateCall as alloy_sol_types::SolCall>::ReturnToken<
9061 '_,
9062 > {
9063 (
9064 <alloy::sol_types::sol_data::Uint<
9065 256,
9066 > as alloy_sol_types::SolType>::tokenize(&self.threshold),
9067 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
9068 &self.blsKeyComm,
9069 ),
9070 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
9071 &self.schnorrKeyComm,
9072 ),
9073 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
9074 &self.amountComm,
9075 ),
9076 )
9077 }
9078 }
9079 #[automatically_derived]
9080 impl alloy_sol_types::SolCall for genesisStakeTableStateCall {
9081 type Parameters<'a> = ();
9082 type Token<'a> = <Self::Parameters<
9083 'a,
9084 > as alloy_sol_types::SolType>::Token<'a>;
9085 type Return = genesisStakeTableStateReturn;
9086 type ReturnTuple<'a> = (
9087 alloy::sol_types::sol_data::Uint<256>,
9088 BN254::ScalarField,
9089 BN254::ScalarField,
9090 BN254::ScalarField,
9091 );
9092 type ReturnToken<'a> = <Self::ReturnTuple<
9093 'a,
9094 > as alloy_sol_types::SolType>::Token<'a>;
9095 const SIGNATURE: &'static str = "genesisStakeTableState()";
9096 const SELECTOR: [u8; 4] = [66u8, 109u8, 49u8, 148u8];
9097 #[inline]
9098 fn new<'a>(
9099 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9100 ) -> Self {
9101 tuple.into()
9102 }
9103 #[inline]
9104 fn tokenize(&self) -> Self::Token<'_> {
9105 ()
9106 }
9107 #[inline]
9108 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9109 genesisStakeTableStateReturn::_tokenize(ret)
9110 }
9111 #[inline]
9112 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9113 <Self::ReturnTuple<
9114 '_,
9115 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9116 .map(Into::into)
9117 }
9118 #[inline]
9119 fn abi_decode_returns_validate(
9120 data: &[u8],
9121 ) -> alloy_sol_types::Result<Self::Return> {
9122 <Self::ReturnTuple<
9123 '_,
9124 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9125 .map(Into::into)
9126 }
9127 }
9128 };
9129 #[derive(serde::Serialize, serde::Deserialize)]
9130 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9131 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9136 #[derive(Clone)]
9137 pub struct genesisStateCall;
9138 #[derive(serde::Serialize, serde::Deserialize)]
9139 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9140 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9142 #[derive(Clone)]
9143 pub struct genesisStateReturn {
9144 #[allow(missing_docs)]
9145 pub viewNum: u64,
9146 #[allow(missing_docs)]
9147 pub blockHeight: u64,
9148 #[allow(missing_docs)]
9149 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9150 }
9151 #[allow(
9152 non_camel_case_types,
9153 non_snake_case,
9154 clippy::pub_underscore_fields,
9155 clippy::style
9156 )]
9157 const _: () = {
9158 use alloy::sol_types as alloy_sol_types;
9159 {
9160 #[doc(hidden)]
9161 #[allow(dead_code)]
9162 type UnderlyingSolTuple<'a> = ();
9163 #[doc(hidden)]
9164 type UnderlyingRustTuple<'a> = ();
9165 #[cfg(test)]
9166 #[allow(dead_code, unreachable_patterns)]
9167 fn _type_assertion(
9168 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9169 ) {
9170 match _t {
9171 alloy_sol_types::private::AssertTypeEq::<
9172 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9173 >(_) => {}
9174 }
9175 }
9176 #[automatically_derived]
9177 #[doc(hidden)]
9178 impl ::core::convert::From<genesisStateCall> for UnderlyingRustTuple<'_> {
9179 fn from(value: genesisStateCall) -> Self {
9180 ()
9181 }
9182 }
9183 #[automatically_derived]
9184 #[doc(hidden)]
9185 impl ::core::convert::From<UnderlyingRustTuple<'_>> for genesisStateCall {
9186 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9187 Self
9188 }
9189 }
9190 }
9191 {
9192 #[doc(hidden)]
9193 #[allow(dead_code)]
9194 type UnderlyingSolTuple<'a> = (
9195 alloy::sol_types::sol_data::Uint<64>,
9196 alloy::sol_types::sol_data::Uint<64>,
9197 BN254::ScalarField,
9198 );
9199 #[doc(hidden)]
9200 type UnderlyingRustTuple<'a> = (
9201 u64,
9202 u64,
9203 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9204 );
9205 #[cfg(test)]
9206 #[allow(dead_code, unreachable_patterns)]
9207 fn _type_assertion(
9208 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9209 ) {
9210 match _t {
9211 alloy_sol_types::private::AssertTypeEq::<
9212 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9213 >(_) => {}
9214 }
9215 }
9216 #[automatically_derived]
9217 #[doc(hidden)]
9218 impl ::core::convert::From<genesisStateReturn> for UnderlyingRustTuple<'_> {
9219 fn from(value: genesisStateReturn) -> Self {
9220 (value.viewNum, value.blockHeight, value.blockCommRoot)
9221 }
9222 }
9223 #[automatically_derived]
9224 #[doc(hidden)]
9225 impl ::core::convert::From<UnderlyingRustTuple<'_>> for genesisStateReturn {
9226 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9227 Self {
9228 viewNum: tuple.0,
9229 blockHeight: tuple.1,
9230 blockCommRoot: tuple.2,
9231 }
9232 }
9233 }
9234 }
9235 impl genesisStateReturn {
9236 fn _tokenize(
9237 &self,
9238 ) -> <genesisStateCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9239 (
9240 <alloy::sol_types::sol_data::Uint<
9241 64,
9242 > as alloy_sol_types::SolType>::tokenize(&self.viewNum),
9243 <alloy::sol_types::sol_data::Uint<
9244 64,
9245 > as alloy_sol_types::SolType>::tokenize(&self.blockHeight),
9246 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
9247 &self.blockCommRoot,
9248 ),
9249 )
9250 }
9251 }
9252 #[automatically_derived]
9253 impl alloy_sol_types::SolCall for genesisStateCall {
9254 type Parameters<'a> = ();
9255 type Token<'a> = <Self::Parameters<
9256 'a,
9257 > as alloy_sol_types::SolType>::Token<'a>;
9258 type Return = genesisStateReturn;
9259 type ReturnTuple<'a> = (
9260 alloy::sol_types::sol_data::Uint<64>,
9261 alloy::sol_types::sol_data::Uint<64>,
9262 BN254::ScalarField,
9263 );
9264 type ReturnToken<'a> = <Self::ReturnTuple<
9265 'a,
9266 > as alloy_sol_types::SolType>::Token<'a>;
9267 const SIGNATURE: &'static str = "genesisState()";
9268 const SELECTOR: [u8; 4] = [210u8, 77u8, 147u8, 61u8];
9269 #[inline]
9270 fn new<'a>(
9271 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9272 ) -> Self {
9273 tuple.into()
9274 }
9275 #[inline]
9276 fn tokenize(&self) -> Self::Token<'_> {
9277 ()
9278 }
9279 #[inline]
9280 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9281 genesisStateReturn::_tokenize(ret)
9282 }
9283 #[inline]
9284 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9285 <Self::ReturnTuple<
9286 '_,
9287 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9288 .map(Into::into)
9289 }
9290 #[inline]
9291 fn abi_decode_returns_validate(
9292 data: &[u8],
9293 ) -> alloy_sol_types::Result<Self::Return> {
9294 <Self::ReturnTuple<
9295 '_,
9296 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9297 .map(Into::into)
9298 }
9299 }
9300 };
9301 #[derive(serde::Serialize, serde::Deserialize)]
9302 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9303 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9308 #[derive(Clone)]
9309 pub struct getHotShotCommitmentCall {
9310 #[allow(missing_docs)]
9311 pub hotShotBlockHeight: alloy::sol_types::private::primitives::aliases::U256,
9312 }
9313 #[derive(serde::Serialize, serde::Deserialize)]
9314 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9315 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9317 #[derive(Clone)]
9318 pub struct getHotShotCommitmentReturn {
9319 #[allow(missing_docs)]
9320 pub hotShotBlockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9321 #[allow(missing_docs)]
9322 pub hotshotBlockHeight: u64,
9323 }
9324 #[allow(
9325 non_camel_case_types,
9326 non_snake_case,
9327 clippy::pub_underscore_fields,
9328 clippy::style
9329 )]
9330 const _: () = {
9331 use alloy::sol_types as alloy_sol_types;
9332 {
9333 #[doc(hidden)]
9334 #[allow(dead_code)]
9335 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9336 #[doc(hidden)]
9337 type UnderlyingRustTuple<'a> = (
9338 alloy::sol_types::private::primitives::aliases::U256,
9339 );
9340 #[cfg(test)]
9341 #[allow(dead_code, unreachable_patterns)]
9342 fn _type_assertion(
9343 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9344 ) {
9345 match _t {
9346 alloy_sol_types::private::AssertTypeEq::<
9347 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9348 >(_) => {}
9349 }
9350 }
9351 #[automatically_derived]
9352 #[doc(hidden)]
9353 impl ::core::convert::From<getHotShotCommitmentCall>
9354 for UnderlyingRustTuple<'_> {
9355 fn from(value: getHotShotCommitmentCall) -> Self {
9356 (value.hotShotBlockHeight,)
9357 }
9358 }
9359 #[automatically_derived]
9360 #[doc(hidden)]
9361 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9362 for getHotShotCommitmentCall {
9363 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9364 Self {
9365 hotShotBlockHeight: tuple.0,
9366 }
9367 }
9368 }
9369 }
9370 {
9371 #[doc(hidden)]
9372 #[allow(dead_code)]
9373 type UnderlyingSolTuple<'a> = (
9374 BN254::ScalarField,
9375 alloy::sol_types::sol_data::Uint<64>,
9376 );
9377 #[doc(hidden)]
9378 type UnderlyingRustTuple<'a> = (
9379 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
9380 u64,
9381 );
9382 #[cfg(test)]
9383 #[allow(dead_code, unreachable_patterns)]
9384 fn _type_assertion(
9385 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9386 ) {
9387 match _t {
9388 alloy_sol_types::private::AssertTypeEq::<
9389 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9390 >(_) => {}
9391 }
9392 }
9393 #[automatically_derived]
9394 #[doc(hidden)]
9395 impl ::core::convert::From<getHotShotCommitmentReturn>
9396 for UnderlyingRustTuple<'_> {
9397 fn from(value: getHotShotCommitmentReturn) -> Self {
9398 (value.hotShotBlockCommRoot, value.hotshotBlockHeight)
9399 }
9400 }
9401 #[automatically_derived]
9402 #[doc(hidden)]
9403 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9404 for getHotShotCommitmentReturn {
9405 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9406 Self {
9407 hotShotBlockCommRoot: tuple.0,
9408 hotshotBlockHeight: tuple.1,
9409 }
9410 }
9411 }
9412 }
9413 impl getHotShotCommitmentReturn {
9414 fn _tokenize(
9415 &self,
9416 ) -> <getHotShotCommitmentCall as alloy_sol_types::SolCall>::ReturnToken<
9417 '_,
9418 > {
9419 (
9420 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
9421 &self.hotShotBlockCommRoot,
9422 ),
9423 <alloy::sol_types::sol_data::Uint<
9424 64,
9425 > as alloy_sol_types::SolType>::tokenize(&self.hotshotBlockHeight),
9426 )
9427 }
9428 }
9429 #[automatically_derived]
9430 impl alloy_sol_types::SolCall for getHotShotCommitmentCall {
9431 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9432 type Token<'a> = <Self::Parameters<
9433 'a,
9434 > as alloy_sol_types::SolType>::Token<'a>;
9435 type Return = getHotShotCommitmentReturn;
9436 type ReturnTuple<'a> = (
9437 BN254::ScalarField,
9438 alloy::sol_types::sol_data::Uint<64>,
9439 );
9440 type ReturnToken<'a> = <Self::ReturnTuple<
9441 'a,
9442 > as alloy_sol_types::SolType>::Token<'a>;
9443 const SIGNATURE: &'static str = "getHotShotCommitment(uint256)";
9444 const SELECTOR: [u8; 4] = [133u8, 132u8, 210u8, 63u8];
9445 #[inline]
9446 fn new<'a>(
9447 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9448 ) -> Self {
9449 tuple.into()
9450 }
9451 #[inline]
9452 fn tokenize(&self) -> Self::Token<'_> {
9453 (
9454 <alloy::sol_types::sol_data::Uint<
9455 256,
9456 > as alloy_sol_types::SolType>::tokenize(&self.hotShotBlockHeight),
9457 )
9458 }
9459 #[inline]
9460 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9461 getHotShotCommitmentReturn::_tokenize(ret)
9462 }
9463 #[inline]
9464 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9465 <Self::ReturnTuple<
9466 '_,
9467 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9468 .map(Into::into)
9469 }
9470 #[inline]
9471 fn abi_decode_returns_validate(
9472 data: &[u8],
9473 ) -> alloy_sol_types::Result<Self::Return> {
9474 <Self::ReturnTuple<
9475 '_,
9476 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9477 .map(Into::into)
9478 }
9479 }
9480 };
9481 #[derive(serde::Serialize, serde::Deserialize)]
9482 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9483 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9488 #[derive(Clone)]
9489 pub struct getStateHistoryCountCall;
9490 #[derive(serde::Serialize, serde::Deserialize)]
9491 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9492 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9494 #[derive(Clone)]
9495 pub struct getStateHistoryCountReturn {
9496 #[allow(missing_docs)]
9497 pub _0: alloy::sol_types::private::primitives::aliases::U256,
9498 }
9499 #[allow(
9500 non_camel_case_types,
9501 non_snake_case,
9502 clippy::pub_underscore_fields,
9503 clippy::style
9504 )]
9505 const _: () = {
9506 use alloy::sol_types as alloy_sol_types;
9507 {
9508 #[doc(hidden)]
9509 #[allow(dead_code)]
9510 type UnderlyingSolTuple<'a> = ();
9511 #[doc(hidden)]
9512 type UnderlyingRustTuple<'a> = ();
9513 #[cfg(test)]
9514 #[allow(dead_code, unreachable_patterns)]
9515 fn _type_assertion(
9516 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9517 ) {
9518 match _t {
9519 alloy_sol_types::private::AssertTypeEq::<
9520 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9521 >(_) => {}
9522 }
9523 }
9524 #[automatically_derived]
9525 #[doc(hidden)]
9526 impl ::core::convert::From<getStateHistoryCountCall>
9527 for UnderlyingRustTuple<'_> {
9528 fn from(value: getStateHistoryCountCall) -> Self {
9529 ()
9530 }
9531 }
9532 #[automatically_derived]
9533 #[doc(hidden)]
9534 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9535 for getStateHistoryCountCall {
9536 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9537 Self
9538 }
9539 }
9540 }
9541 {
9542 #[doc(hidden)]
9543 #[allow(dead_code)]
9544 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9545 #[doc(hidden)]
9546 type UnderlyingRustTuple<'a> = (
9547 alloy::sol_types::private::primitives::aliases::U256,
9548 );
9549 #[cfg(test)]
9550 #[allow(dead_code, unreachable_patterns)]
9551 fn _type_assertion(
9552 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9553 ) {
9554 match _t {
9555 alloy_sol_types::private::AssertTypeEq::<
9556 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9557 >(_) => {}
9558 }
9559 }
9560 #[automatically_derived]
9561 #[doc(hidden)]
9562 impl ::core::convert::From<getStateHistoryCountReturn>
9563 for UnderlyingRustTuple<'_> {
9564 fn from(value: getStateHistoryCountReturn) -> Self {
9565 (value._0,)
9566 }
9567 }
9568 #[automatically_derived]
9569 #[doc(hidden)]
9570 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9571 for getStateHistoryCountReturn {
9572 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9573 Self { _0: tuple.0 }
9574 }
9575 }
9576 }
9577 #[automatically_derived]
9578 impl alloy_sol_types::SolCall for getStateHistoryCountCall {
9579 type Parameters<'a> = ();
9580 type Token<'a> = <Self::Parameters<
9581 'a,
9582 > as alloy_sol_types::SolType>::Token<'a>;
9583 type Return = alloy::sol_types::private::primitives::aliases::U256;
9584 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9585 type ReturnToken<'a> = <Self::ReturnTuple<
9586 'a,
9587 > as alloy_sol_types::SolType>::Token<'a>;
9588 const SIGNATURE: &'static str = "getStateHistoryCount()";
9589 const SELECTOR: [u8; 4] = [249u8, 229u8, 13u8, 25u8];
9590 #[inline]
9591 fn new<'a>(
9592 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9593 ) -> Self {
9594 tuple.into()
9595 }
9596 #[inline]
9597 fn tokenize(&self) -> Self::Token<'_> {
9598 ()
9599 }
9600 #[inline]
9601 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9602 (
9603 <alloy::sol_types::sol_data::Uint<
9604 256,
9605 > as alloy_sol_types::SolType>::tokenize(ret),
9606 )
9607 }
9608 #[inline]
9609 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9610 <Self::ReturnTuple<
9611 '_,
9612 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9613 .map(|r| {
9614 let r: getStateHistoryCountReturn = r.into();
9615 r._0
9616 })
9617 }
9618 #[inline]
9619 fn abi_decode_returns_validate(
9620 data: &[u8],
9621 ) -> alloy_sol_types::Result<Self::Return> {
9622 <Self::ReturnTuple<
9623 '_,
9624 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9625 .map(|r| {
9626 let r: getStateHistoryCountReturn = r.into();
9627 r._0
9628 })
9629 }
9630 }
9631 };
9632 #[derive(serde::Serialize, serde::Deserialize)]
9633 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9634 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9639 #[derive(Clone)]
9640 pub struct getVersionCall;
9641 #[derive(serde::Serialize, serde::Deserialize)]
9642 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9643 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9645 #[derive(Clone)]
9646 pub struct getVersionReturn {
9647 #[allow(missing_docs)]
9648 pub majorVersion: u8,
9649 #[allow(missing_docs)]
9650 pub minorVersion: u8,
9651 #[allow(missing_docs)]
9652 pub patchVersion: u8,
9653 }
9654 #[allow(
9655 non_camel_case_types,
9656 non_snake_case,
9657 clippy::pub_underscore_fields,
9658 clippy::style
9659 )]
9660 const _: () = {
9661 use alloy::sol_types as alloy_sol_types;
9662 {
9663 #[doc(hidden)]
9664 #[allow(dead_code)]
9665 type UnderlyingSolTuple<'a> = ();
9666 #[doc(hidden)]
9667 type UnderlyingRustTuple<'a> = ();
9668 #[cfg(test)]
9669 #[allow(dead_code, unreachable_patterns)]
9670 fn _type_assertion(
9671 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9672 ) {
9673 match _t {
9674 alloy_sol_types::private::AssertTypeEq::<
9675 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9676 >(_) => {}
9677 }
9678 }
9679 #[automatically_derived]
9680 #[doc(hidden)]
9681 impl ::core::convert::From<getVersionCall> for UnderlyingRustTuple<'_> {
9682 fn from(value: getVersionCall) -> Self {
9683 ()
9684 }
9685 }
9686 #[automatically_derived]
9687 #[doc(hidden)]
9688 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionCall {
9689 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9690 Self
9691 }
9692 }
9693 }
9694 {
9695 #[doc(hidden)]
9696 #[allow(dead_code)]
9697 type UnderlyingSolTuple<'a> = (
9698 alloy::sol_types::sol_data::Uint<8>,
9699 alloy::sol_types::sol_data::Uint<8>,
9700 alloy::sol_types::sol_data::Uint<8>,
9701 );
9702 #[doc(hidden)]
9703 type UnderlyingRustTuple<'a> = (u8, u8, u8);
9704 #[cfg(test)]
9705 #[allow(dead_code, unreachable_patterns)]
9706 fn _type_assertion(
9707 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9708 ) {
9709 match _t {
9710 alloy_sol_types::private::AssertTypeEq::<
9711 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9712 >(_) => {}
9713 }
9714 }
9715 #[automatically_derived]
9716 #[doc(hidden)]
9717 impl ::core::convert::From<getVersionReturn> for UnderlyingRustTuple<'_> {
9718 fn from(value: getVersionReturn) -> Self {
9719 (value.majorVersion, value.minorVersion, value.patchVersion)
9720 }
9721 }
9722 #[automatically_derived]
9723 #[doc(hidden)]
9724 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionReturn {
9725 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9726 Self {
9727 majorVersion: tuple.0,
9728 minorVersion: tuple.1,
9729 patchVersion: tuple.2,
9730 }
9731 }
9732 }
9733 }
9734 impl getVersionReturn {
9735 fn _tokenize(
9736 &self,
9737 ) -> <getVersionCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9738 (
9739 <alloy::sol_types::sol_data::Uint<
9740 8,
9741 > as alloy_sol_types::SolType>::tokenize(&self.majorVersion),
9742 <alloy::sol_types::sol_data::Uint<
9743 8,
9744 > as alloy_sol_types::SolType>::tokenize(&self.minorVersion),
9745 <alloy::sol_types::sol_data::Uint<
9746 8,
9747 > as alloy_sol_types::SolType>::tokenize(&self.patchVersion),
9748 )
9749 }
9750 }
9751 #[automatically_derived]
9752 impl alloy_sol_types::SolCall for getVersionCall {
9753 type Parameters<'a> = ();
9754 type Token<'a> = <Self::Parameters<
9755 'a,
9756 > as alloy_sol_types::SolType>::Token<'a>;
9757 type Return = getVersionReturn;
9758 type ReturnTuple<'a> = (
9759 alloy::sol_types::sol_data::Uint<8>,
9760 alloy::sol_types::sol_data::Uint<8>,
9761 alloy::sol_types::sol_data::Uint<8>,
9762 );
9763 type ReturnToken<'a> = <Self::ReturnTuple<
9764 'a,
9765 > as alloy_sol_types::SolType>::Token<'a>;
9766 const SIGNATURE: &'static str = "getVersion()";
9767 const SELECTOR: [u8; 4] = [13u8, 142u8, 110u8, 44u8];
9768 #[inline]
9769 fn new<'a>(
9770 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9771 ) -> Self {
9772 tuple.into()
9773 }
9774 #[inline]
9775 fn tokenize(&self) -> Self::Token<'_> {
9776 ()
9777 }
9778 #[inline]
9779 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9780 getVersionReturn::_tokenize(ret)
9781 }
9782 #[inline]
9783 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9784 <Self::ReturnTuple<
9785 '_,
9786 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9787 .map(Into::into)
9788 }
9789 #[inline]
9790 fn abi_decode_returns_validate(
9791 data: &[u8],
9792 ) -> alloy_sol_types::Result<Self::Return> {
9793 <Self::ReturnTuple<
9794 '_,
9795 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9796 .map(Into::into)
9797 }
9798 }
9799 };
9800 #[derive(serde::Serialize, serde::Deserialize)]
9801 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9802 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9807 #[derive(Clone)]
9808 pub struct initializeCall {
9809 #[allow(missing_docs)]
9810 pub _genesis: <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
9811 #[allow(missing_docs)]
9812 pub _genesisStakeTableState: <LightClient::StakeTableState as alloy::sol_types::SolType>::RustType,
9813 #[allow(missing_docs)]
9814 pub _stateHistoryRetentionPeriod: u32,
9815 #[allow(missing_docs)]
9816 pub owner: alloy::sol_types::private::Address,
9817 }
9818 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9820 #[derive(Clone)]
9821 pub struct initializeReturn {}
9822 #[allow(
9823 non_camel_case_types,
9824 non_snake_case,
9825 clippy::pub_underscore_fields,
9826 clippy::style
9827 )]
9828 const _: () = {
9829 use alloy::sol_types as alloy_sol_types;
9830 {
9831 #[doc(hidden)]
9832 #[allow(dead_code)]
9833 type UnderlyingSolTuple<'a> = (
9834 LightClient::LightClientState,
9835 LightClient::StakeTableState,
9836 alloy::sol_types::sol_data::Uint<32>,
9837 alloy::sol_types::sol_data::Address,
9838 );
9839 #[doc(hidden)]
9840 type UnderlyingRustTuple<'a> = (
9841 <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
9842 <LightClient::StakeTableState as alloy::sol_types::SolType>::RustType,
9843 u32,
9844 alloy::sol_types::private::Address,
9845 );
9846 #[cfg(test)]
9847 #[allow(dead_code, unreachable_patterns)]
9848 fn _type_assertion(
9849 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9850 ) {
9851 match _t {
9852 alloy_sol_types::private::AssertTypeEq::<
9853 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9854 >(_) => {}
9855 }
9856 }
9857 #[automatically_derived]
9858 #[doc(hidden)]
9859 impl ::core::convert::From<initializeCall> for UnderlyingRustTuple<'_> {
9860 fn from(value: initializeCall) -> Self {
9861 (
9862 value._genesis,
9863 value._genesisStakeTableState,
9864 value._stateHistoryRetentionPeriod,
9865 value.owner,
9866 )
9867 }
9868 }
9869 #[automatically_derived]
9870 #[doc(hidden)]
9871 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeCall {
9872 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9873 Self {
9874 _genesis: tuple.0,
9875 _genesisStakeTableState: tuple.1,
9876 _stateHistoryRetentionPeriod: tuple.2,
9877 owner: tuple.3,
9878 }
9879 }
9880 }
9881 }
9882 {
9883 #[doc(hidden)]
9884 #[allow(dead_code)]
9885 type UnderlyingSolTuple<'a> = ();
9886 #[doc(hidden)]
9887 type UnderlyingRustTuple<'a> = ();
9888 #[cfg(test)]
9889 #[allow(dead_code, unreachable_patterns)]
9890 fn _type_assertion(
9891 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9892 ) {
9893 match _t {
9894 alloy_sol_types::private::AssertTypeEq::<
9895 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9896 >(_) => {}
9897 }
9898 }
9899 #[automatically_derived]
9900 #[doc(hidden)]
9901 impl ::core::convert::From<initializeReturn> for UnderlyingRustTuple<'_> {
9902 fn from(value: initializeReturn) -> Self {
9903 ()
9904 }
9905 }
9906 #[automatically_derived]
9907 #[doc(hidden)]
9908 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeReturn {
9909 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9910 Self {}
9911 }
9912 }
9913 }
9914 impl initializeReturn {
9915 fn _tokenize(
9916 &self,
9917 ) -> <initializeCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9918 ()
9919 }
9920 }
9921 #[automatically_derived]
9922 impl alloy_sol_types::SolCall for initializeCall {
9923 type Parameters<'a> = (
9924 LightClient::LightClientState,
9925 LightClient::StakeTableState,
9926 alloy::sol_types::sol_data::Uint<32>,
9927 alloy::sol_types::sol_data::Address,
9928 );
9929 type Token<'a> = <Self::Parameters<
9930 'a,
9931 > as alloy_sol_types::SolType>::Token<'a>;
9932 type Return = initializeReturn;
9933 type ReturnTuple<'a> = ();
9934 type ReturnToken<'a> = <Self::ReturnTuple<
9935 'a,
9936 > as alloy_sol_types::SolType>::Token<'a>;
9937 const SIGNATURE: &'static str = "initialize((uint64,uint64,uint256),(uint256,uint256,uint256,uint256),uint32,address)";
9938 const SELECTOR: [u8; 4] = [155u8, 170u8, 60u8, 201u8];
9939 #[inline]
9940 fn new<'a>(
9941 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9942 ) -> Self {
9943 tuple.into()
9944 }
9945 #[inline]
9946 fn tokenize(&self) -> Self::Token<'_> {
9947 (
9948 <LightClient::LightClientState as alloy_sol_types::SolType>::tokenize(
9949 &self._genesis,
9950 ),
9951 <LightClient::StakeTableState as alloy_sol_types::SolType>::tokenize(
9952 &self._genesisStakeTableState,
9953 ),
9954 <alloy::sol_types::sol_data::Uint<
9955 32,
9956 > as alloy_sol_types::SolType>::tokenize(
9957 &self._stateHistoryRetentionPeriod,
9958 ),
9959 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9960 &self.owner,
9961 ),
9962 )
9963 }
9964 #[inline]
9965 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9966 initializeReturn::_tokenize(ret)
9967 }
9968 #[inline]
9969 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9970 <Self::ReturnTuple<
9971 '_,
9972 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9973 .map(Into::into)
9974 }
9975 #[inline]
9976 fn abi_decode_returns_validate(
9977 data: &[u8],
9978 ) -> alloy_sol_types::Result<Self::Return> {
9979 <Self::ReturnTuple<
9980 '_,
9981 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9982 .map(Into::into)
9983 }
9984 }
9985 };
9986 #[derive(serde::Serialize, serde::Deserialize)]
9987 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9988 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9993 #[derive(Clone)]
9994 pub struct initializeV2Call {
9995 #[allow(missing_docs)]
9996 pub _blocksPerEpoch: u64,
9997 #[allow(missing_docs)]
9998 pub _epochStartBlock: u64,
9999 }
10000 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10002 #[derive(Clone)]
10003 pub struct initializeV2Return {}
10004 #[allow(
10005 non_camel_case_types,
10006 non_snake_case,
10007 clippy::pub_underscore_fields,
10008 clippy::style
10009 )]
10010 const _: () = {
10011 use alloy::sol_types as alloy_sol_types;
10012 {
10013 #[doc(hidden)]
10014 #[allow(dead_code)]
10015 type UnderlyingSolTuple<'a> = (
10016 alloy::sol_types::sol_data::Uint<64>,
10017 alloy::sol_types::sol_data::Uint<64>,
10018 );
10019 #[doc(hidden)]
10020 type UnderlyingRustTuple<'a> = (u64, u64);
10021 #[cfg(test)]
10022 #[allow(dead_code, unreachable_patterns)]
10023 fn _type_assertion(
10024 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10025 ) {
10026 match _t {
10027 alloy_sol_types::private::AssertTypeEq::<
10028 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10029 >(_) => {}
10030 }
10031 }
10032 #[automatically_derived]
10033 #[doc(hidden)]
10034 impl ::core::convert::From<initializeV2Call> for UnderlyingRustTuple<'_> {
10035 fn from(value: initializeV2Call) -> Self {
10036 (value._blocksPerEpoch, value._epochStartBlock)
10037 }
10038 }
10039 #[automatically_derived]
10040 #[doc(hidden)]
10041 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeV2Call {
10042 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10043 Self {
10044 _blocksPerEpoch: tuple.0,
10045 _epochStartBlock: tuple.1,
10046 }
10047 }
10048 }
10049 }
10050 {
10051 #[doc(hidden)]
10052 #[allow(dead_code)]
10053 type UnderlyingSolTuple<'a> = ();
10054 #[doc(hidden)]
10055 type UnderlyingRustTuple<'a> = ();
10056 #[cfg(test)]
10057 #[allow(dead_code, unreachable_patterns)]
10058 fn _type_assertion(
10059 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10060 ) {
10061 match _t {
10062 alloy_sol_types::private::AssertTypeEq::<
10063 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10064 >(_) => {}
10065 }
10066 }
10067 #[automatically_derived]
10068 #[doc(hidden)]
10069 impl ::core::convert::From<initializeV2Return> for UnderlyingRustTuple<'_> {
10070 fn from(value: initializeV2Return) -> Self {
10071 ()
10072 }
10073 }
10074 #[automatically_derived]
10075 #[doc(hidden)]
10076 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeV2Return {
10077 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10078 Self {}
10079 }
10080 }
10081 }
10082 impl initializeV2Return {
10083 fn _tokenize(
10084 &self,
10085 ) -> <initializeV2Call as alloy_sol_types::SolCall>::ReturnToken<'_> {
10086 ()
10087 }
10088 }
10089 #[automatically_derived]
10090 impl alloy_sol_types::SolCall for initializeV2Call {
10091 type Parameters<'a> = (
10092 alloy::sol_types::sol_data::Uint<64>,
10093 alloy::sol_types::sol_data::Uint<64>,
10094 );
10095 type Token<'a> = <Self::Parameters<
10096 'a,
10097 > as alloy_sol_types::SolType>::Token<'a>;
10098 type Return = initializeV2Return;
10099 type ReturnTuple<'a> = ();
10100 type ReturnToken<'a> = <Self::ReturnTuple<
10101 'a,
10102 > as alloy_sol_types::SolType>::Token<'a>;
10103 const SIGNATURE: &'static str = "initializeV2(uint64,uint64)";
10104 const SELECTOR: [u8; 4] = [179u8, 59u8, 196u8, 145u8];
10105 #[inline]
10106 fn new<'a>(
10107 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10108 ) -> Self {
10109 tuple.into()
10110 }
10111 #[inline]
10112 fn tokenize(&self) -> Self::Token<'_> {
10113 (
10114 <alloy::sol_types::sol_data::Uint<
10115 64,
10116 > as alloy_sol_types::SolType>::tokenize(&self._blocksPerEpoch),
10117 <alloy::sol_types::sol_data::Uint<
10118 64,
10119 > as alloy_sol_types::SolType>::tokenize(&self._epochStartBlock),
10120 )
10121 }
10122 #[inline]
10123 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10124 initializeV2Return::_tokenize(ret)
10125 }
10126 #[inline]
10127 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10128 <Self::ReturnTuple<
10129 '_,
10130 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10131 .map(Into::into)
10132 }
10133 #[inline]
10134 fn abi_decode_returns_validate(
10135 data: &[u8],
10136 ) -> alloy_sol_types::Result<Self::Return> {
10137 <Self::ReturnTuple<
10138 '_,
10139 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10140 .map(Into::into)
10141 }
10142 }
10143 };
10144 #[derive(serde::Serialize, serde::Deserialize)]
10145 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10146 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10151 #[derive(Clone)]
10152 pub struct isEpochRootCall {
10153 #[allow(missing_docs)]
10154 pub blockHeight: u64,
10155 }
10156 #[derive(serde::Serialize, serde::Deserialize)]
10157 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10158 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10160 #[derive(Clone)]
10161 pub struct isEpochRootReturn {
10162 #[allow(missing_docs)]
10163 pub _0: bool,
10164 }
10165 #[allow(
10166 non_camel_case_types,
10167 non_snake_case,
10168 clippy::pub_underscore_fields,
10169 clippy::style
10170 )]
10171 const _: () = {
10172 use alloy::sol_types as alloy_sol_types;
10173 {
10174 #[doc(hidden)]
10175 #[allow(dead_code)]
10176 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
10177 #[doc(hidden)]
10178 type UnderlyingRustTuple<'a> = (u64,);
10179 #[cfg(test)]
10180 #[allow(dead_code, unreachable_patterns)]
10181 fn _type_assertion(
10182 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10183 ) {
10184 match _t {
10185 alloy_sol_types::private::AssertTypeEq::<
10186 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10187 >(_) => {}
10188 }
10189 }
10190 #[automatically_derived]
10191 #[doc(hidden)]
10192 impl ::core::convert::From<isEpochRootCall> for UnderlyingRustTuple<'_> {
10193 fn from(value: isEpochRootCall) -> Self {
10194 (value.blockHeight,)
10195 }
10196 }
10197 #[automatically_derived]
10198 #[doc(hidden)]
10199 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isEpochRootCall {
10200 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10201 Self { blockHeight: tuple.0 }
10202 }
10203 }
10204 }
10205 {
10206 #[doc(hidden)]
10207 #[allow(dead_code)]
10208 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10209 #[doc(hidden)]
10210 type UnderlyingRustTuple<'a> = (bool,);
10211 #[cfg(test)]
10212 #[allow(dead_code, unreachable_patterns)]
10213 fn _type_assertion(
10214 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10215 ) {
10216 match _t {
10217 alloy_sol_types::private::AssertTypeEq::<
10218 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10219 >(_) => {}
10220 }
10221 }
10222 #[automatically_derived]
10223 #[doc(hidden)]
10224 impl ::core::convert::From<isEpochRootReturn> for UnderlyingRustTuple<'_> {
10225 fn from(value: isEpochRootReturn) -> Self {
10226 (value._0,)
10227 }
10228 }
10229 #[automatically_derived]
10230 #[doc(hidden)]
10231 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isEpochRootReturn {
10232 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10233 Self { _0: tuple.0 }
10234 }
10235 }
10236 }
10237 #[automatically_derived]
10238 impl alloy_sol_types::SolCall for isEpochRootCall {
10239 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<64>,);
10240 type Token<'a> = <Self::Parameters<
10241 'a,
10242 > as alloy_sol_types::SolType>::Token<'a>;
10243 type Return = bool;
10244 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10245 type ReturnToken<'a> = <Self::ReturnTuple<
10246 'a,
10247 > as alloy_sol_types::SolType>::Token<'a>;
10248 const SIGNATURE: &'static str = "isEpochRoot(uint64)";
10249 const SELECTOR: [u8; 4] = [37u8, 41u8, 116u8, 39u8];
10250 #[inline]
10251 fn new<'a>(
10252 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10253 ) -> Self {
10254 tuple.into()
10255 }
10256 #[inline]
10257 fn tokenize(&self) -> Self::Token<'_> {
10258 (
10259 <alloy::sol_types::sol_data::Uint<
10260 64,
10261 > as alloy_sol_types::SolType>::tokenize(&self.blockHeight),
10262 )
10263 }
10264 #[inline]
10265 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10266 (
10267 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
10268 ret,
10269 ),
10270 )
10271 }
10272 #[inline]
10273 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10274 <Self::ReturnTuple<
10275 '_,
10276 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10277 .map(|r| {
10278 let r: isEpochRootReturn = r.into();
10279 r._0
10280 })
10281 }
10282 #[inline]
10283 fn abi_decode_returns_validate(
10284 data: &[u8],
10285 ) -> alloy_sol_types::Result<Self::Return> {
10286 <Self::ReturnTuple<
10287 '_,
10288 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10289 .map(|r| {
10290 let r: isEpochRootReturn = r.into();
10291 r._0
10292 })
10293 }
10294 }
10295 };
10296 #[derive(serde::Serialize, serde::Deserialize)]
10297 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10298 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10303 #[derive(Clone)]
10304 pub struct isGtEpochRootCall {
10305 #[allow(missing_docs)]
10306 pub blockHeight: u64,
10307 }
10308 #[derive(serde::Serialize, serde::Deserialize)]
10309 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10310 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10312 #[derive(Clone)]
10313 pub struct isGtEpochRootReturn {
10314 #[allow(missing_docs)]
10315 pub _0: bool,
10316 }
10317 #[allow(
10318 non_camel_case_types,
10319 non_snake_case,
10320 clippy::pub_underscore_fields,
10321 clippy::style
10322 )]
10323 const _: () = {
10324 use alloy::sol_types as alloy_sol_types;
10325 {
10326 #[doc(hidden)]
10327 #[allow(dead_code)]
10328 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
10329 #[doc(hidden)]
10330 type UnderlyingRustTuple<'a> = (u64,);
10331 #[cfg(test)]
10332 #[allow(dead_code, unreachable_patterns)]
10333 fn _type_assertion(
10334 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10335 ) {
10336 match _t {
10337 alloy_sol_types::private::AssertTypeEq::<
10338 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10339 >(_) => {}
10340 }
10341 }
10342 #[automatically_derived]
10343 #[doc(hidden)]
10344 impl ::core::convert::From<isGtEpochRootCall> for UnderlyingRustTuple<'_> {
10345 fn from(value: isGtEpochRootCall) -> Self {
10346 (value.blockHeight,)
10347 }
10348 }
10349 #[automatically_derived]
10350 #[doc(hidden)]
10351 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isGtEpochRootCall {
10352 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10353 Self { blockHeight: tuple.0 }
10354 }
10355 }
10356 }
10357 {
10358 #[doc(hidden)]
10359 #[allow(dead_code)]
10360 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10361 #[doc(hidden)]
10362 type UnderlyingRustTuple<'a> = (bool,);
10363 #[cfg(test)]
10364 #[allow(dead_code, unreachable_patterns)]
10365 fn _type_assertion(
10366 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10367 ) {
10368 match _t {
10369 alloy_sol_types::private::AssertTypeEq::<
10370 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10371 >(_) => {}
10372 }
10373 }
10374 #[automatically_derived]
10375 #[doc(hidden)]
10376 impl ::core::convert::From<isGtEpochRootReturn> for UnderlyingRustTuple<'_> {
10377 fn from(value: isGtEpochRootReturn) -> Self {
10378 (value._0,)
10379 }
10380 }
10381 #[automatically_derived]
10382 #[doc(hidden)]
10383 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isGtEpochRootReturn {
10384 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10385 Self { _0: tuple.0 }
10386 }
10387 }
10388 }
10389 #[automatically_derived]
10390 impl alloy_sol_types::SolCall for isGtEpochRootCall {
10391 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<64>,);
10392 type Token<'a> = <Self::Parameters<
10393 'a,
10394 > as alloy_sol_types::SolType>::Token<'a>;
10395 type Return = bool;
10396 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10397 type ReturnToken<'a> = <Self::ReturnTuple<
10398 'a,
10399 > as alloy_sol_types::SolType>::Token<'a>;
10400 const SIGNATURE: &'static str = "isGtEpochRoot(uint64)";
10401 const SELECTOR: [u8; 4] = [48u8, 12u8, 137u8, 221u8];
10402 #[inline]
10403 fn new<'a>(
10404 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10405 ) -> Self {
10406 tuple.into()
10407 }
10408 #[inline]
10409 fn tokenize(&self) -> Self::Token<'_> {
10410 (
10411 <alloy::sol_types::sol_data::Uint<
10412 64,
10413 > as alloy_sol_types::SolType>::tokenize(&self.blockHeight),
10414 )
10415 }
10416 #[inline]
10417 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10418 (
10419 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
10420 ret,
10421 ),
10422 )
10423 }
10424 #[inline]
10425 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10426 <Self::ReturnTuple<
10427 '_,
10428 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10429 .map(|r| {
10430 let r: isGtEpochRootReturn = r.into();
10431 r._0
10432 })
10433 }
10434 #[inline]
10435 fn abi_decode_returns_validate(
10436 data: &[u8],
10437 ) -> alloy_sol_types::Result<Self::Return> {
10438 <Self::ReturnTuple<
10439 '_,
10440 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10441 .map(|r| {
10442 let r: isGtEpochRootReturn = r.into();
10443 r._0
10444 })
10445 }
10446 }
10447 };
10448 #[derive(serde::Serialize, serde::Deserialize)]
10449 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10450 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10455 #[derive(Clone)]
10456 pub struct isPermissionedProverEnabledCall;
10457 #[derive(serde::Serialize, serde::Deserialize)]
10458 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10459 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10461 #[derive(Clone)]
10462 pub struct isPermissionedProverEnabledReturn {
10463 #[allow(missing_docs)]
10464 pub _0: bool,
10465 }
10466 #[allow(
10467 non_camel_case_types,
10468 non_snake_case,
10469 clippy::pub_underscore_fields,
10470 clippy::style
10471 )]
10472 const _: () = {
10473 use alloy::sol_types as alloy_sol_types;
10474 {
10475 #[doc(hidden)]
10476 #[allow(dead_code)]
10477 type UnderlyingSolTuple<'a> = ();
10478 #[doc(hidden)]
10479 type UnderlyingRustTuple<'a> = ();
10480 #[cfg(test)]
10481 #[allow(dead_code, unreachable_patterns)]
10482 fn _type_assertion(
10483 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10484 ) {
10485 match _t {
10486 alloy_sol_types::private::AssertTypeEq::<
10487 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10488 >(_) => {}
10489 }
10490 }
10491 #[automatically_derived]
10492 #[doc(hidden)]
10493 impl ::core::convert::From<isPermissionedProverEnabledCall>
10494 for UnderlyingRustTuple<'_> {
10495 fn from(value: isPermissionedProverEnabledCall) -> Self {
10496 ()
10497 }
10498 }
10499 #[automatically_derived]
10500 #[doc(hidden)]
10501 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10502 for isPermissionedProverEnabledCall {
10503 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10504 Self
10505 }
10506 }
10507 }
10508 {
10509 #[doc(hidden)]
10510 #[allow(dead_code)]
10511 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10512 #[doc(hidden)]
10513 type UnderlyingRustTuple<'a> = (bool,);
10514 #[cfg(test)]
10515 #[allow(dead_code, unreachable_patterns)]
10516 fn _type_assertion(
10517 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10518 ) {
10519 match _t {
10520 alloy_sol_types::private::AssertTypeEq::<
10521 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10522 >(_) => {}
10523 }
10524 }
10525 #[automatically_derived]
10526 #[doc(hidden)]
10527 impl ::core::convert::From<isPermissionedProverEnabledReturn>
10528 for UnderlyingRustTuple<'_> {
10529 fn from(value: isPermissionedProverEnabledReturn) -> Self {
10530 (value._0,)
10531 }
10532 }
10533 #[automatically_derived]
10534 #[doc(hidden)]
10535 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10536 for isPermissionedProverEnabledReturn {
10537 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10538 Self { _0: tuple.0 }
10539 }
10540 }
10541 }
10542 #[automatically_derived]
10543 impl alloy_sol_types::SolCall for isPermissionedProverEnabledCall {
10544 type Parameters<'a> = ();
10545 type Token<'a> = <Self::Parameters<
10546 'a,
10547 > as alloy_sol_types::SolType>::Token<'a>;
10548 type Return = bool;
10549 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10550 type ReturnToken<'a> = <Self::ReturnTuple<
10551 'a,
10552 > as alloy_sol_types::SolType>::Token<'a>;
10553 const SIGNATURE: &'static str = "isPermissionedProverEnabled()";
10554 const SELECTOR: [u8; 4] = [130u8, 110u8, 65u8, 252u8];
10555 #[inline]
10556 fn new<'a>(
10557 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10558 ) -> Self {
10559 tuple.into()
10560 }
10561 #[inline]
10562 fn tokenize(&self) -> Self::Token<'_> {
10563 ()
10564 }
10565 #[inline]
10566 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10567 (
10568 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
10569 ret,
10570 ),
10571 )
10572 }
10573 #[inline]
10574 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10575 <Self::ReturnTuple<
10576 '_,
10577 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10578 .map(|r| {
10579 let r: isPermissionedProverEnabledReturn = r.into();
10580 r._0
10581 })
10582 }
10583 #[inline]
10584 fn abi_decode_returns_validate(
10585 data: &[u8],
10586 ) -> alloy_sol_types::Result<Self::Return> {
10587 <Self::ReturnTuple<
10588 '_,
10589 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10590 .map(|r| {
10591 let r: isPermissionedProverEnabledReturn = r.into();
10592 r._0
10593 })
10594 }
10595 }
10596 };
10597 #[derive(serde::Serialize, serde::Deserialize)]
10598 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10599 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10604 #[derive(Clone)]
10605 pub struct lagOverEscapeHatchThresholdCall {
10606 #[allow(missing_docs)]
10607 pub blockNumber: alloy::sol_types::private::primitives::aliases::U256,
10608 #[allow(missing_docs)]
10609 pub blockThreshold: alloy::sol_types::private::primitives::aliases::U256,
10610 }
10611 #[derive(serde::Serialize, serde::Deserialize)]
10612 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10613 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10615 #[derive(Clone)]
10616 pub struct lagOverEscapeHatchThresholdReturn {
10617 #[allow(missing_docs)]
10618 pub _0: bool,
10619 }
10620 #[allow(
10621 non_camel_case_types,
10622 non_snake_case,
10623 clippy::pub_underscore_fields,
10624 clippy::style
10625 )]
10626 const _: () = {
10627 use alloy::sol_types as alloy_sol_types;
10628 {
10629 #[doc(hidden)]
10630 #[allow(dead_code)]
10631 type UnderlyingSolTuple<'a> = (
10632 alloy::sol_types::sol_data::Uint<256>,
10633 alloy::sol_types::sol_data::Uint<256>,
10634 );
10635 #[doc(hidden)]
10636 type UnderlyingRustTuple<'a> = (
10637 alloy::sol_types::private::primitives::aliases::U256,
10638 alloy::sol_types::private::primitives::aliases::U256,
10639 );
10640 #[cfg(test)]
10641 #[allow(dead_code, unreachable_patterns)]
10642 fn _type_assertion(
10643 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10644 ) {
10645 match _t {
10646 alloy_sol_types::private::AssertTypeEq::<
10647 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10648 >(_) => {}
10649 }
10650 }
10651 #[automatically_derived]
10652 #[doc(hidden)]
10653 impl ::core::convert::From<lagOverEscapeHatchThresholdCall>
10654 for UnderlyingRustTuple<'_> {
10655 fn from(value: lagOverEscapeHatchThresholdCall) -> Self {
10656 (value.blockNumber, value.blockThreshold)
10657 }
10658 }
10659 #[automatically_derived]
10660 #[doc(hidden)]
10661 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10662 for lagOverEscapeHatchThresholdCall {
10663 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10664 Self {
10665 blockNumber: tuple.0,
10666 blockThreshold: tuple.1,
10667 }
10668 }
10669 }
10670 }
10671 {
10672 #[doc(hidden)]
10673 #[allow(dead_code)]
10674 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10675 #[doc(hidden)]
10676 type UnderlyingRustTuple<'a> = (bool,);
10677 #[cfg(test)]
10678 #[allow(dead_code, unreachable_patterns)]
10679 fn _type_assertion(
10680 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10681 ) {
10682 match _t {
10683 alloy_sol_types::private::AssertTypeEq::<
10684 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10685 >(_) => {}
10686 }
10687 }
10688 #[automatically_derived]
10689 #[doc(hidden)]
10690 impl ::core::convert::From<lagOverEscapeHatchThresholdReturn>
10691 for UnderlyingRustTuple<'_> {
10692 fn from(value: lagOverEscapeHatchThresholdReturn) -> Self {
10693 (value._0,)
10694 }
10695 }
10696 #[automatically_derived]
10697 #[doc(hidden)]
10698 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10699 for lagOverEscapeHatchThresholdReturn {
10700 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10701 Self { _0: tuple.0 }
10702 }
10703 }
10704 }
10705 #[automatically_derived]
10706 impl alloy_sol_types::SolCall for lagOverEscapeHatchThresholdCall {
10707 type Parameters<'a> = (
10708 alloy::sol_types::sol_data::Uint<256>,
10709 alloy::sol_types::sol_data::Uint<256>,
10710 );
10711 type Token<'a> = <Self::Parameters<
10712 'a,
10713 > as alloy_sol_types::SolType>::Token<'a>;
10714 type Return = bool;
10715 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
10716 type ReturnToken<'a> = <Self::ReturnTuple<
10717 'a,
10718 > as alloy_sol_types::SolType>::Token<'a>;
10719 const SIGNATURE: &'static str = "lagOverEscapeHatchThreshold(uint256,uint256)";
10720 const SELECTOR: [u8; 4] = [224u8, 48u8, 51u8, 1u8];
10721 #[inline]
10722 fn new<'a>(
10723 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10724 ) -> Self {
10725 tuple.into()
10726 }
10727 #[inline]
10728 fn tokenize(&self) -> Self::Token<'_> {
10729 (
10730 <alloy::sol_types::sol_data::Uint<
10731 256,
10732 > as alloy_sol_types::SolType>::tokenize(&self.blockNumber),
10733 <alloy::sol_types::sol_data::Uint<
10734 256,
10735 > as alloy_sol_types::SolType>::tokenize(&self.blockThreshold),
10736 )
10737 }
10738 #[inline]
10739 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10740 (
10741 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
10742 ret,
10743 ),
10744 )
10745 }
10746 #[inline]
10747 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10748 <Self::ReturnTuple<
10749 '_,
10750 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10751 .map(|r| {
10752 let r: lagOverEscapeHatchThresholdReturn = r.into();
10753 r._0
10754 })
10755 }
10756 #[inline]
10757 fn abi_decode_returns_validate(
10758 data: &[u8],
10759 ) -> alloy_sol_types::Result<Self::Return> {
10760 <Self::ReturnTuple<
10761 '_,
10762 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10763 .map(|r| {
10764 let r: lagOverEscapeHatchThresholdReturn = r.into();
10765 r._0
10766 })
10767 }
10768 }
10769 };
10770 #[derive(serde::Serialize, serde::Deserialize)]
10771 #[derive()]
10772 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10777 #[derive(Clone)]
10778 pub struct newFinalizedState_0Call {
10779 #[allow(missing_docs)]
10780 pub _0: <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
10781 #[allow(missing_docs)]
10782 pub _1: <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
10783 }
10784 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10786 #[derive(Clone)]
10787 pub struct newFinalizedState_0Return {}
10788 #[allow(
10789 non_camel_case_types,
10790 non_snake_case,
10791 clippy::pub_underscore_fields,
10792 clippy::style
10793 )]
10794 const _: () = {
10795 use alloy::sol_types as alloy_sol_types;
10796 {
10797 #[doc(hidden)]
10798 #[allow(dead_code)]
10799 type UnderlyingSolTuple<'a> = (
10800 LightClient::LightClientState,
10801 IPlonkVerifier::PlonkProof,
10802 );
10803 #[doc(hidden)]
10804 type UnderlyingRustTuple<'a> = (
10805 <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
10806 <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
10807 );
10808 #[cfg(test)]
10809 #[allow(dead_code, unreachable_patterns)]
10810 fn _type_assertion(
10811 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10812 ) {
10813 match _t {
10814 alloy_sol_types::private::AssertTypeEq::<
10815 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10816 >(_) => {}
10817 }
10818 }
10819 #[automatically_derived]
10820 #[doc(hidden)]
10821 impl ::core::convert::From<newFinalizedState_0Call>
10822 for UnderlyingRustTuple<'_> {
10823 fn from(value: newFinalizedState_0Call) -> Self {
10824 (value._0, value._1)
10825 }
10826 }
10827 #[automatically_derived]
10828 #[doc(hidden)]
10829 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10830 for newFinalizedState_0Call {
10831 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10832 Self { _0: tuple.0, _1: tuple.1 }
10833 }
10834 }
10835 }
10836 {
10837 #[doc(hidden)]
10838 #[allow(dead_code)]
10839 type UnderlyingSolTuple<'a> = ();
10840 #[doc(hidden)]
10841 type UnderlyingRustTuple<'a> = ();
10842 #[cfg(test)]
10843 #[allow(dead_code, unreachable_patterns)]
10844 fn _type_assertion(
10845 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10846 ) {
10847 match _t {
10848 alloy_sol_types::private::AssertTypeEq::<
10849 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10850 >(_) => {}
10851 }
10852 }
10853 #[automatically_derived]
10854 #[doc(hidden)]
10855 impl ::core::convert::From<newFinalizedState_0Return>
10856 for UnderlyingRustTuple<'_> {
10857 fn from(value: newFinalizedState_0Return) -> Self {
10858 ()
10859 }
10860 }
10861 #[automatically_derived]
10862 #[doc(hidden)]
10863 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10864 for newFinalizedState_0Return {
10865 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10866 Self {}
10867 }
10868 }
10869 }
10870 impl newFinalizedState_0Return {
10871 fn _tokenize(
10872 &self,
10873 ) -> <newFinalizedState_0Call as alloy_sol_types::SolCall>::ReturnToken<'_> {
10874 ()
10875 }
10876 }
10877 #[automatically_derived]
10878 impl alloy_sol_types::SolCall for newFinalizedState_0Call {
10879 type Parameters<'a> = (
10880 LightClient::LightClientState,
10881 IPlonkVerifier::PlonkProof,
10882 );
10883 type Token<'a> = <Self::Parameters<
10884 'a,
10885 > as alloy_sol_types::SolType>::Token<'a>;
10886 type Return = newFinalizedState_0Return;
10887 type ReturnTuple<'a> = ();
10888 type ReturnToken<'a> = <Self::ReturnTuple<
10889 'a,
10890 > as alloy_sol_types::SolType>::Token<'a>;
10891 const SIGNATURE: &'static str = "newFinalizedState((uint64,uint64,uint256),((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))";
10892 const SELECTOR: [u8; 4] = [32u8, 99u8, 212u8, 247u8];
10893 #[inline]
10894 fn new<'a>(
10895 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10896 ) -> Self {
10897 tuple.into()
10898 }
10899 #[inline]
10900 fn tokenize(&self) -> Self::Token<'_> {
10901 (
10902 <LightClient::LightClientState as alloy_sol_types::SolType>::tokenize(
10903 &self._0,
10904 ),
10905 <IPlonkVerifier::PlonkProof as alloy_sol_types::SolType>::tokenize(
10906 &self._1,
10907 ),
10908 )
10909 }
10910 #[inline]
10911 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10912 newFinalizedState_0Return::_tokenize(ret)
10913 }
10914 #[inline]
10915 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10916 <Self::ReturnTuple<
10917 '_,
10918 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10919 .map(Into::into)
10920 }
10921 #[inline]
10922 fn abi_decode_returns_validate(
10923 data: &[u8],
10924 ) -> alloy_sol_types::Result<Self::Return> {
10925 <Self::ReturnTuple<
10926 '_,
10927 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10928 .map(Into::into)
10929 }
10930 }
10931 };
10932 #[derive(serde::Serialize, serde::Deserialize)]
10933 #[derive()]
10934 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10939 #[derive(Clone)]
10940 pub struct newFinalizedState_1Call {
10941 #[allow(missing_docs)]
10942 pub newState: <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
10943 #[allow(missing_docs)]
10944 pub nextStakeTable: <LightClient::StakeTableState as alloy::sol_types::SolType>::RustType,
10945 #[allow(missing_docs)]
10946 pub proof: <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
10947 }
10948 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10950 #[derive(Clone)]
10951 pub struct newFinalizedState_1Return {}
10952 #[allow(
10953 non_camel_case_types,
10954 non_snake_case,
10955 clippy::pub_underscore_fields,
10956 clippy::style
10957 )]
10958 const _: () = {
10959 use alloy::sol_types as alloy_sol_types;
10960 {
10961 #[doc(hidden)]
10962 #[allow(dead_code)]
10963 type UnderlyingSolTuple<'a> = (
10964 LightClient::LightClientState,
10965 LightClient::StakeTableState,
10966 IPlonkVerifier::PlonkProof,
10967 );
10968 #[doc(hidden)]
10969 type UnderlyingRustTuple<'a> = (
10970 <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
10971 <LightClient::StakeTableState as alloy::sol_types::SolType>::RustType,
10972 <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
10973 );
10974 #[cfg(test)]
10975 #[allow(dead_code, unreachable_patterns)]
10976 fn _type_assertion(
10977 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10978 ) {
10979 match _t {
10980 alloy_sol_types::private::AssertTypeEq::<
10981 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10982 >(_) => {}
10983 }
10984 }
10985 #[automatically_derived]
10986 #[doc(hidden)]
10987 impl ::core::convert::From<newFinalizedState_1Call>
10988 for UnderlyingRustTuple<'_> {
10989 fn from(value: newFinalizedState_1Call) -> Self {
10990 (value.newState, value.nextStakeTable, value.proof)
10991 }
10992 }
10993 #[automatically_derived]
10994 #[doc(hidden)]
10995 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10996 for newFinalizedState_1Call {
10997 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10998 Self {
10999 newState: tuple.0,
11000 nextStakeTable: tuple.1,
11001 proof: tuple.2,
11002 }
11003 }
11004 }
11005 }
11006 {
11007 #[doc(hidden)]
11008 #[allow(dead_code)]
11009 type UnderlyingSolTuple<'a> = ();
11010 #[doc(hidden)]
11011 type UnderlyingRustTuple<'a> = ();
11012 #[cfg(test)]
11013 #[allow(dead_code, unreachable_patterns)]
11014 fn _type_assertion(
11015 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11016 ) {
11017 match _t {
11018 alloy_sol_types::private::AssertTypeEq::<
11019 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11020 >(_) => {}
11021 }
11022 }
11023 #[automatically_derived]
11024 #[doc(hidden)]
11025 impl ::core::convert::From<newFinalizedState_1Return>
11026 for UnderlyingRustTuple<'_> {
11027 fn from(value: newFinalizedState_1Return) -> Self {
11028 ()
11029 }
11030 }
11031 #[automatically_derived]
11032 #[doc(hidden)]
11033 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11034 for newFinalizedState_1Return {
11035 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11036 Self {}
11037 }
11038 }
11039 }
11040 impl newFinalizedState_1Return {
11041 fn _tokenize(
11042 &self,
11043 ) -> <newFinalizedState_1Call as alloy_sol_types::SolCall>::ReturnToken<'_> {
11044 ()
11045 }
11046 }
11047 #[automatically_derived]
11048 impl alloy_sol_types::SolCall for newFinalizedState_1Call {
11049 type Parameters<'a> = (
11050 LightClient::LightClientState,
11051 LightClient::StakeTableState,
11052 IPlonkVerifier::PlonkProof,
11053 );
11054 type Token<'a> = <Self::Parameters<
11055 'a,
11056 > as alloy_sol_types::SolType>::Token<'a>;
11057 type Return = newFinalizedState_1Return;
11058 type ReturnTuple<'a> = ();
11059 type ReturnToken<'a> = <Self::ReturnTuple<
11060 'a,
11061 > as alloy_sol_types::SolType>::Token<'a>;
11062 const SIGNATURE: &'static str = "newFinalizedState((uint64,uint64,uint256),(uint256,uint256,uint256,uint256),((uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),(uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256))";
11063 const SELECTOR: [u8; 4] = [117u8, 124u8, 55u8, 173u8];
11064 #[inline]
11065 fn new<'a>(
11066 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11067 ) -> Self {
11068 tuple.into()
11069 }
11070 #[inline]
11071 fn tokenize(&self) -> Self::Token<'_> {
11072 (
11073 <LightClient::LightClientState as alloy_sol_types::SolType>::tokenize(
11074 &self.newState,
11075 ),
11076 <LightClient::StakeTableState as alloy_sol_types::SolType>::tokenize(
11077 &self.nextStakeTable,
11078 ),
11079 <IPlonkVerifier::PlonkProof as alloy_sol_types::SolType>::tokenize(
11080 &self.proof,
11081 ),
11082 )
11083 }
11084 #[inline]
11085 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11086 newFinalizedState_1Return::_tokenize(ret)
11087 }
11088 #[inline]
11089 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11090 <Self::ReturnTuple<
11091 '_,
11092 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11093 .map(Into::into)
11094 }
11095 #[inline]
11096 fn abi_decode_returns_validate(
11097 data: &[u8],
11098 ) -> alloy_sol_types::Result<Self::Return> {
11099 <Self::ReturnTuple<
11100 '_,
11101 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11102 .map(Into::into)
11103 }
11104 }
11105 };
11106 #[derive(serde::Serialize, serde::Deserialize)]
11107 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11108 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11113 #[derive(Clone)]
11114 pub struct ownerCall;
11115 #[derive(serde::Serialize, serde::Deserialize)]
11116 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11117 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11119 #[derive(Clone)]
11120 pub struct ownerReturn {
11121 #[allow(missing_docs)]
11122 pub _0: alloy::sol_types::private::Address,
11123 }
11124 #[allow(
11125 non_camel_case_types,
11126 non_snake_case,
11127 clippy::pub_underscore_fields,
11128 clippy::style
11129 )]
11130 const _: () = {
11131 use alloy::sol_types as alloy_sol_types;
11132 {
11133 #[doc(hidden)]
11134 #[allow(dead_code)]
11135 type UnderlyingSolTuple<'a> = ();
11136 #[doc(hidden)]
11137 type UnderlyingRustTuple<'a> = ();
11138 #[cfg(test)]
11139 #[allow(dead_code, unreachable_patterns)]
11140 fn _type_assertion(
11141 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11142 ) {
11143 match _t {
11144 alloy_sol_types::private::AssertTypeEq::<
11145 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11146 >(_) => {}
11147 }
11148 }
11149 #[automatically_derived]
11150 #[doc(hidden)]
11151 impl ::core::convert::From<ownerCall> for UnderlyingRustTuple<'_> {
11152 fn from(value: ownerCall) -> Self {
11153 ()
11154 }
11155 }
11156 #[automatically_derived]
11157 #[doc(hidden)]
11158 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerCall {
11159 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11160 Self
11161 }
11162 }
11163 }
11164 {
11165 #[doc(hidden)]
11166 #[allow(dead_code)]
11167 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
11168 #[doc(hidden)]
11169 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
11170 #[cfg(test)]
11171 #[allow(dead_code, unreachable_patterns)]
11172 fn _type_assertion(
11173 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11174 ) {
11175 match _t {
11176 alloy_sol_types::private::AssertTypeEq::<
11177 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11178 >(_) => {}
11179 }
11180 }
11181 #[automatically_derived]
11182 #[doc(hidden)]
11183 impl ::core::convert::From<ownerReturn> for UnderlyingRustTuple<'_> {
11184 fn from(value: ownerReturn) -> Self {
11185 (value._0,)
11186 }
11187 }
11188 #[automatically_derived]
11189 #[doc(hidden)]
11190 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerReturn {
11191 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11192 Self { _0: tuple.0 }
11193 }
11194 }
11195 }
11196 #[automatically_derived]
11197 impl alloy_sol_types::SolCall for ownerCall {
11198 type Parameters<'a> = ();
11199 type Token<'a> = <Self::Parameters<
11200 'a,
11201 > as alloy_sol_types::SolType>::Token<'a>;
11202 type Return = alloy::sol_types::private::Address;
11203 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
11204 type ReturnToken<'a> = <Self::ReturnTuple<
11205 'a,
11206 > as alloy_sol_types::SolType>::Token<'a>;
11207 const SIGNATURE: &'static str = "owner()";
11208 const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8];
11209 #[inline]
11210 fn new<'a>(
11211 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11212 ) -> Self {
11213 tuple.into()
11214 }
11215 #[inline]
11216 fn tokenize(&self) -> Self::Token<'_> {
11217 ()
11218 }
11219 #[inline]
11220 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11221 (
11222 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11223 ret,
11224 ),
11225 )
11226 }
11227 #[inline]
11228 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11229 <Self::ReturnTuple<
11230 '_,
11231 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11232 .map(|r| {
11233 let r: ownerReturn = r.into();
11234 r._0
11235 })
11236 }
11237 #[inline]
11238 fn abi_decode_returns_validate(
11239 data: &[u8],
11240 ) -> alloy_sol_types::Result<Self::Return> {
11241 <Self::ReturnTuple<
11242 '_,
11243 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11244 .map(|r| {
11245 let r: ownerReturn = r.into();
11246 r._0
11247 })
11248 }
11249 }
11250 };
11251 #[derive(serde::Serialize, serde::Deserialize)]
11252 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11253 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11258 #[derive(Clone)]
11259 pub struct permissionedProverCall;
11260 #[derive(serde::Serialize, serde::Deserialize)]
11261 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11262 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11264 #[derive(Clone)]
11265 pub struct permissionedProverReturn {
11266 #[allow(missing_docs)]
11267 pub _0: alloy::sol_types::private::Address,
11268 }
11269 #[allow(
11270 non_camel_case_types,
11271 non_snake_case,
11272 clippy::pub_underscore_fields,
11273 clippy::style
11274 )]
11275 const _: () = {
11276 use alloy::sol_types as alloy_sol_types;
11277 {
11278 #[doc(hidden)]
11279 #[allow(dead_code)]
11280 type UnderlyingSolTuple<'a> = ();
11281 #[doc(hidden)]
11282 type UnderlyingRustTuple<'a> = ();
11283 #[cfg(test)]
11284 #[allow(dead_code, unreachable_patterns)]
11285 fn _type_assertion(
11286 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11287 ) {
11288 match _t {
11289 alloy_sol_types::private::AssertTypeEq::<
11290 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11291 >(_) => {}
11292 }
11293 }
11294 #[automatically_derived]
11295 #[doc(hidden)]
11296 impl ::core::convert::From<permissionedProverCall>
11297 for UnderlyingRustTuple<'_> {
11298 fn from(value: permissionedProverCall) -> Self {
11299 ()
11300 }
11301 }
11302 #[automatically_derived]
11303 #[doc(hidden)]
11304 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11305 for permissionedProverCall {
11306 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11307 Self
11308 }
11309 }
11310 }
11311 {
11312 #[doc(hidden)]
11313 #[allow(dead_code)]
11314 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
11315 #[doc(hidden)]
11316 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
11317 #[cfg(test)]
11318 #[allow(dead_code, unreachable_patterns)]
11319 fn _type_assertion(
11320 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11321 ) {
11322 match _t {
11323 alloy_sol_types::private::AssertTypeEq::<
11324 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11325 >(_) => {}
11326 }
11327 }
11328 #[automatically_derived]
11329 #[doc(hidden)]
11330 impl ::core::convert::From<permissionedProverReturn>
11331 for UnderlyingRustTuple<'_> {
11332 fn from(value: permissionedProverReturn) -> Self {
11333 (value._0,)
11334 }
11335 }
11336 #[automatically_derived]
11337 #[doc(hidden)]
11338 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11339 for permissionedProverReturn {
11340 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11341 Self { _0: tuple.0 }
11342 }
11343 }
11344 }
11345 #[automatically_derived]
11346 impl alloy_sol_types::SolCall for permissionedProverCall {
11347 type Parameters<'a> = ();
11348 type Token<'a> = <Self::Parameters<
11349 'a,
11350 > as alloy_sol_types::SolType>::Token<'a>;
11351 type Return = alloy::sol_types::private::Address;
11352 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
11353 type ReturnToken<'a> = <Self::ReturnTuple<
11354 'a,
11355 > as alloy_sol_types::SolType>::Token<'a>;
11356 const SIGNATURE: &'static str = "permissionedProver()";
11357 const SELECTOR: [u8; 4] = [49u8, 61u8, 247u8, 177u8];
11358 #[inline]
11359 fn new<'a>(
11360 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11361 ) -> Self {
11362 tuple.into()
11363 }
11364 #[inline]
11365 fn tokenize(&self) -> Self::Token<'_> {
11366 ()
11367 }
11368 #[inline]
11369 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11370 (
11371 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11372 ret,
11373 ),
11374 )
11375 }
11376 #[inline]
11377 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11378 <Self::ReturnTuple<
11379 '_,
11380 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11381 .map(|r| {
11382 let r: permissionedProverReturn = r.into();
11383 r._0
11384 })
11385 }
11386 #[inline]
11387 fn abi_decode_returns_validate(
11388 data: &[u8],
11389 ) -> alloy_sol_types::Result<Self::Return> {
11390 <Self::ReturnTuple<
11391 '_,
11392 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11393 .map(|r| {
11394 let r: permissionedProverReturn = r.into();
11395 r._0
11396 })
11397 }
11398 }
11399 };
11400 #[derive(serde::Serialize, serde::Deserialize)]
11401 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11402 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11407 #[derive(Clone)]
11408 pub struct proxiableUUIDCall;
11409 #[derive(serde::Serialize, serde::Deserialize)]
11410 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11411 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11413 #[derive(Clone)]
11414 pub struct proxiableUUIDReturn {
11415 #[allow(missing_docs)]
11416 pub _0: alloy::sol_types::private::FixedBytes<32>,
11417 }
11418 #[allow(
11419 non_camel_case_types,
11420 non_snake_case,
11421 clippy::pub_underscore_fields,
11422 clippy::style
11423 )]
11424 const _: () = {
11425 use alloy::sol_types as alloy_sol_types;
11426 {
11427 #[doc(hidden)]
11428 #[allow(dead_code)]
11429 type UnderlyingSolTuple<'a> = ();
11430 #[doc(hidden)]
11431 type UnderlyingRustTuple<'a> = ();
11432 #[cfg(test)]
11433 #[allow(dead_code, unreachable_patterns)]
11434 fn _type_assertion(
11435 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11436 ) {
11437 match _t {
11438 alloy_sol_types::private::AssertTypeEq::<
11439 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11440 >(_) => {}
11441 }
11442 }
11443 #[automatically_derived]
11444 #[doc(hidden)]
11445 impl ::core::convert::From<proxiableUUIDCall> for UnderlyingRustTuple<'_> {
11446 fn from(value: proxiableUUIDCall) -> Self {
11447 ()
11448 }
11449 }
11450 #[automatically_derived]
11451 #[doc(hidden)]
11452 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDCall {
11453 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11454 Self
11455 }
11456 }
11457 }
11458 {
11459 #[doc(hidden)]
11460 #[allow(dead_code)]
11461 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
11462 #[doc(hidden)]
11463 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
11464 #[cfg(test)]
11465 #[allow(dead_code, unreachable_patterns)]
11466 fn _type_assertion(
11467 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11468 ) {
11469 match _t {
11470 alloy_sol_types::private::AssertTypeEq::<
11471 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11472 >(_) => {}
11473 }
11474 }
11475 #[automatically_derived]
11476 #[doc(hidden)]
11477 impl ::core::convert::From<proxiableUUIDReturn> for UnderlyingRustTuple<'_> {
11478 fn from(value: proxiableUUIDReturn) -> Self {
11479 (value._0,)
11480 }
11481 }
11482 #[automatically_derived]
11483 #[doc(hidden)]
11484 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDReturn {
11485 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11486 Self { _0: tuple.0 }
11487 }
11488 }
11489 }
11490 #[automatically_derived]
11491 impl alloy_sol_types::SolCall for proxiableUUIDCall {
11492 type Parameters<'a> = ();
11493 type Token<'a> = <Self::Parameters<
11494 'a,
11495 > as alloy_sol_types::SolType>::Token<'a>;
11496 type Return = alloy::sol_types::private::FixedBytes<32>;
11497 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
11498 type ReturnToken<'a> = <Self::ReturnTuple<
11499 'a,
11500 > as alloy_sol_types::SolType>::Token<'a>;
11501 const SIGNATURE: &'static str = "proxiableUUID()";
11502 const SELECTOR: [u8; 4] = [82u8, 209u8, 144u8, 45u8];
11503 #[inline]
11504 fn new<'a>(
11505 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11506 ) -> Self {
11507 tuple.into()
11508 }
11509 #[inline]
11510 fn tokenize(&self) -> Self::Token<'_> {
11511 ()
11512 }
11513 #[inline]
11514 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11515 (
11516 <alloy::sol_types::sol_data::FixedBytes<
11517 32,
11518 > as alloy_sol_types::SolType>::tokenize(ret),
11519 )
11520 }
11521 #[inline]
11522 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11523 <Self::ReturnTuple<
11524 '_,
11525 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11526 .map(|r| {
11527 let r: proxiableUUIDReturn = r.into();
11528 r._0
11529 })
11530 }
11531 #[inline]
11532 fn abi_decode_returns_validate(
11533 data: &[u8],
11534 ) -> alloy_sol_types::Result<Self::Return> {
11535 <Self::ReturnTuple<
11536 '_,
11537 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11538 .map(|r| {
11539 let r: proxiableUUIDReturn = r.into();
11540 r._0
11541 })
11542 }
11543 }
11544 };
11545 #[derive(serde::Serialize, serde::Deserialize)]
11546 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11547 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11552 #[derive(Clone)]
11553 pub struct renounceOwnershipCall;
11554 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11556 #[derive(Clone)]
11557 pub struct renounceOwnershipReturn {}
11558 #[allow(
11559 non_camel_case_types,
11560 non_snake_case,
11561 clippy::pub_underscore_fields,
11562 clippy::style
11563 )]
11564 const _: () = {
11565 use alloy::sol_types as alloy_sol_types;
11566 {
11567 #[doc(hidden)]
11568 #[allow(dead_code)]
11569 type UnderlyingSolTuple<'a> = ();
11570 #[doc(hidden)]
11571 type UnderlyingRustTuple<'a> = ();
11572 #[cfg(test)]
11573 #[allow(dead_code, unreachable_patterns)]
11574 fn _type_assertion(
11575 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11576 ) {
11577 match _t {
11578 alloy_sol_types::private::AssertTypeEq::<
11579 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11580 >(_) => {}
11581 }
11582 }
11583 #[automatically_derived]
11584 #[doc(hidden)]
11585 impl ::core::convert::From<renounceOwnershipCall>
11586 for UnderlyingRustTuple<'_> {
11587 fn from(value: renounceOwnershipCall) -> Self {
11588 ()
11589 }
11590 }
11591 #[automatically_derived]
11592 #[doc(hidden)]
11593 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11594 for renounceOwnershipCall {
11595 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11596 Self
11597 }
11598 }
11599 }
11600 {
11601 #[doc(hidden)]
11602 #[allow(dead_code)]
11603 type UnderlyingSolTuple<'a> = ();
11604 #[doc(hidden)]
11605 type UnderlyingRustTuple<'a> = ();
11606 #[cfg(test)]
11607 #[allow(dead_code, unreachable_patterns)]
11608 fn _type_assertion(
11609 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11610 ) {
11611 match _t {
11612 alloy_sol_types::private::AssertTypeEq::<
11613 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11614 >(_) => {}
11615 }
11616 }
11617 #[automatically_derived]
11618 #[doc(hidden)]
11619 impl ::core::convert::From<renounceOwnershipReturn>
11620 for UnderlyingRustTuple<'_> {
11621 fn from(value: renounceOwnershipReturn) -> Self {
11622 ()
11623 }
11624 }
11625 #[automatically_derived]
11626 #[doc(hidden)]
11627 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11628 for renounceOwnershipReturn {
11629 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11630 Self {}
11631 }
11632 }
11633 }
11634 impl renounceOwnershipReturn {
11635 fn _tokenize(
11636 &self,
11637 ) -> <renounceOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
11638 ()
11639 }
11640 }
11641 #[automatically_derived]
11642 impl alloy_sol_types::SolCall for renounceOwnershipCall {
11643 type Parameters<'a> = ();
11644 type Token<'a> = <Self::Parameters<
11645 'a,
11646 > as alloy_sol_types::SolType>::Token<'a>;
11647 type Return = renounceOwnershipReturn;
11648 type ReturnTuple<'a> = ();
11649 type ReturnToken<'a> = <Self::ReturnTuple<
11650 'a,
11651 > as alloy_sol_types::SolType>::Token<'a>;
11652 const SIGNATURE: &'static str = "renounceOwnership()";
11653 const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8];
11654 #[inline]
11655 fn new<'a>(
11656 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11657 ) -> Self {
11658 tuple.into()
11659 }
11660 #[inline]
11661 fn tokenize(&self) -> Self::Token<'_> {
11662 ()
11663 }
11664 #[inline]
11665 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11666 renounceOwnershipReturn::_tokenize(ret)
11667 }
11668 #[inline]
11669 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11670 <Self::ReturnTuple<
11671 '_,
11672 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11673 .map(Into::into)
11674 }
11675 #[inline]
11676 fn abi_decode_returns_validate(
11677 data: &[u8],
11678 ) -> alloy_sol_types::Result<Self::Return> {
11679 <Self::ReturnTuple<
11680 '_,
11681 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11682 .map(Into::into)
11683 }
11684 }
11685 };
11686 #[derive(serde::Serialize, serde::Deserialize)]
11687 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11688 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11693 #[derive(Clone)]
11694 pub struct setPermissionedProverCall {
11695 #[allow(missing_docs)]
11696 pub prover: alloy::sol_types::private::Address,
11697 }
11698 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11700 #[derive(Clone)]
11701 pub struct setPermissionedProverReturn {}
11702 #[allow(
11703 non_camel_case_types,
11704 non_snake_case,
11705 clippy::pub_underscore_fields,
11706 clippy::style
11707 )]
11708 const _: () = {
11709 use alloy::sol_types as alloy_sol_types;
11710 {
11711 #[doc(hidden)]
11712 #[allow(dead_code)]
11713 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
11714 #[doc(hidden)]
11715 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
11716 #[cfg(test)]
11717 #[allow(dead_code, unreachable_patterns)]
11718 fn _type_assertion(
11719 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11720 ) {
11721 match _t {
11722 alloy_sol_types::private::AssertTypeEq::<
11723 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11724 >(_) => {}
11725 }
11726 }
11727 #[automatically_derived]
11728 #[doc(hidden)]
11729 impl ::core::convert::From<setPermissionedProverCall>
11730 for UnderlyingRustTuple<'_> {
11731 fn from(value: setPermissionedProverCall) -> Self {
11732 (value.prover,)
11733 }
11734 }
11735 #[automatically_derived]
11736 #[doc(hidden)]
11737 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11738 for setPermissionedProverCall {
11739 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11740 Self { prover: tuple.0 }
11741 }
11742 }
11743 }
11744 {
11745 #[doc(hidden)]
11746 #[allow(dead_code)]
11747 type UnderlyingSolTuple<'a> = ();
11748 #[doc(hidden)]
11749 type UnderlyingRustTuple<'a> = ();
11750 #[cfg(test)]
11751 #[allow(dead_code, unreachable_patterns)]
11752 fn _type_assertion(
11753 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11754 ) {
11755 match _t {
11756 alloy_sol_types::private::AssertTypeEq::<
11757 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11758 >(_) => {}
11759 }
11760 }
11761 #[automatically_derived]
11762 #[doc(hidden)]
11763 impl ::core::convert::From<setPermissionedProverReturn>
11764 for UnderlyingRustTuple<'_> {
11765 fn from(value: setPermissionedProverReturn) -> Self {
11766 ()
11767 }
11768 }
11769 #[automatically_derived]
11770 #[doc(hidden)]
11771 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11772 for setPermissionedProverReturn {
11773 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11774 Self {}
11775 }
11776 }
11777 }
11778 impl setPermissionedProverReturn {
11779 fn _tokenize(
11780 &self,
11781 ) -> <setPermissionedProverCall as alloy_sol_types::SolCall>::ReturnToken<
11782 '_,
11783 > {
11784 ()
11785 }
11786 }
11787 #[automatically_derived]
11788 impl alloy_sol_types::SolCall for setPermissionedProverCall {
11789 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
11790 type Token<'a> = <Self::Parameters<
11791 'a,
11792 > as alloy_sol_types::SolType>::Token<'a>;
11793 type Return = setPermissionedProverReturn;
11794 type ReturnTuple<'a> = ();
11795 type ReturnToken<'a> = <Self::ReturnTuple<
11796 'a,
11797 > as alloy_sol_types::SolType>::Token<'a>;
11798 const SIGNATURE: &'static str = "setPermissionedProver(address)";
11799 const SELECTOR: [u8; 4] = [1u8, 63u8, 165u8, 252u8];
11800 #[inline]
11801 fn new<'a>(
11802 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11803 ) -> Self {
11804 tuple.into()
11805 }
11806 #[inline]
11807 fn tokenize(&self) -> Self::Token<'_> {
11808 (
11809 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11810 &self.prover,
11811 ),
11812 )
11813 }
11814 #[inline]
11815 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11816 setPermissionedProverReturn::_tokenize(ret)
11817 }
11818 #[inline]
11819 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11820 <Self::ReturnTuple<
11821 '_,
11822 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11823 .map(Into::into)
11824 }
11825 #[inline]
11826 fn abi_decode_returns_validate(
11827 data: &[u8],
11828 ) -> alloy_sol_types::Result<Self::Return> {
11829 <Self::ReturnTuple<
11830 '_,
11831 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11832 .map(Into::into)
11833 }
11834 }
11835 };
11836 #[derive(serde::Serialize, serde::Deserialize)]
11837 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11838 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11843 #[derive(Clone)]
11844 pub struct setStateHistoryRetentionPeriodCall {
11845 #[allow(missing_docs)]
11846 pub historySeconds: u32,
11847 }
11848 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11850 #[derive(Clone)]
11851 pub struct setStateHistoryRetentionPeriodReturn {}
11852 #[allow(
11853 non_camel_case_types,
11854 non_snake_case,
11855 clippy::pub_underscore_fields,
11856 clippy::style
11857 )]
11858 const _: () = {
11859 use alloy::sol_types as alloy_sol_types;
11860 {
11861 #[doc(hidden)]
11862 #[allow(dead_code)]
11863 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
11864 #[doc(hidden)]
11865 type UnderlyingRustTuple<'a> = (u32,);
11866 #[cfg(test)]
11867 #[allow(dead_code, unreachable_patterns)]
11868 fn _type_assertion(
11869 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11870 ) {
11871 match _t {
11872 alloy_sol_types::private::AssertTypeEq::<
11873 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11874 >(_) => {}
11875 }
11876 }
11877 #[automatically_derived]
11878 #[doc(hidden)]
11879 impl ::core::convert::From<setStateHistoryRetentionPeriodCall>
11880 for UnderlyingRustTuple<'_> {
11881 fn from(value: setStateHistoryRetentionPeriodCall) -> Self {
11882 (value.historySeconds,)
11883 }
11884 }
11885 #[automatically_derived]
11886 #[doc(hidden)]
11887 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11888 for setStateHistoryRetentionPeriodCall {
11889 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11890 Self { historySeconds: tuple.0 }
11891 }
11892 }
11893 }
11894 {
11895 #[doc(hidden)]
11896 #[allow(dead_code)]
11897 type UnderlyingSolTuple<'a> = ();
11898 #[doc(hidden)]
11899 type UnderlyingRustTuple<'a> = ();
11900 #[cfg(test)]
11901 #[allow(dead_code, unreachable_patterns)]
11902 fn _type_assertion(
11903 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11904 ) {
11905 match _t {
11906 alloy_sol_types::private::AssertTypeEq::<
11907 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11908 >(_) => {}
11909 }
11910 }
11911 #[automatically_derived]
11912 #[doc(hidden)]
11913 impl ::core::convert::From<setStateHistoryRetentionPeriodReturn>
11914 for UnderlyingRustTuple<'_> {
11915 fn from(value: setStateHistoryRetentionPeriodReturn) -> Self {
11916 ()
11917 }
11918 }
11919 #[automatically_derived]
11920 #[doc(hidden)]
11921 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11922 for setStateHistoryRetentionPeriodReturn {
11923 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11924 Self {}
11925 }
11926 }
11927 }
11928 impl setStateHistoryRetentionPeriodReturn {
11929 fn _tokenize(
11930 &self,
11931 ) -> <setStateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::ReturnToken<
11932 '_,
11933 > {
11934 ()
11935 }
11936 }
11937 #[automatically_derived]
11938 impl alloy_sol_types::SolCall for setStateHistoryRetentionPeriodCall {
11939 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,);
11940 type Token<'a> = <Self::Parameters<
11941 'a,
11942 > as alloy_sol_types::SolType>::Token<'a>;
11943 type Return = setStateHistoryRetentionPeriodReturn;
11944 type ReturnTuple<'a> = ();
11945 type ReturnToken<'a> = <Self::ReturnTuple<
11946 'a,
11947 > as alloy_sol_types::SolType>::Token<'a>;
11948 const SIGNATURE: &'static str = "setStateHistoryRetentionPeriod(uint32)";
11949 const SELECTOR: [u8; 4] = [67u8, 61u8, 186u8, 159u8];
11950 #[inline]
11951 fn new<'a>(
11952 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11953 ) -> Self {
11954 tuple.into()
11955 }
11956 #[inline]
11957 fn tokenize(&self) -> Self::Token<'_> {
11958 (
11959 <alloy::sol_types::sol_data::Uint<
11960 32,
11961 > as alloy_sol_types::SolType>::tokenize(&self.historySeconds),
11962 )
11963 }
11964 #[inline]
11965 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11966 setStateHistoryRetentionPeriodReturn::_tokenize(ret)
11967 }
11968 #[inline]
11969 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11970 <Self::ReturnTuple<
11971 '_,
11972 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11973 .map(Into::into)
11974 }
11975 #[inline]
11976 fn abi_decode_returns_validate(
11977 data: &[u8],
11978 ) -> alloy_sol_types::Result<Self::Return> {
11979 <Self::ReturnTuple<
11980 '_,
11981 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11982 .map(Into::into)
11983 }
11984 }
11985 };
11986 #[derive(serde::Serialize, serde::Deserialize)]
11987 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11988 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11993 #[derive(Clone)]
11994 pub struct setstateHistoryRetentionPeriodCall {
11995 #[allow(missing_docs)]
11996 pub historySeconds: u32,
11997 }
11998 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12000 #[derive(Clone)]
12001 pub struct setstateHistoryRetentionPeriodReturn {}
12002 #[allow(
12003 non_camel_case_types,
12004 non_snake_case,
12005 clippy::pub_underscore_fields,
12006 clippy::style
12007 )]
12008 const _: () = {
12009 use alloy::sol_types as alloy_sol_types;
12010 {
12011 #[doc(hidden)]
12012 #[allow(dead_code)]
12013 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
12014 #[doc(hidden)]
12015 type UnderlyingRustTuple<'a> = (u32,);
12016 #[cfg(test)]
12017 #[allow(dead_code, unreachable_patterns)]
12018 fn _type_assertion(
12019 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12020 ) {
12021 match _t {
12022 alloy_sol_types::private::AssertTypeEq::<
12023 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12024 >(_) => {}
12025 }
12026 }
12027 #[automatically_derived]
12028 #[doc(hidden)]
12029 impl ::core::convert::From<setstateHistoryRetentionPeriodCall>
12030 for UnderlyingRustTuple<'_> {
12031 fn from(value: setstateHistoryRetentionPeriodCall) -> Self {
12032 (value.historySeconds,)
12033 }
12034 }
12035 #[automatically_derived]
12036 #[doc(hidden)]
12037 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12038 for setstateHistoryRetentionPeriodCall {
12039 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12040 Self { historySeconds: tuple.0 }
12041 }
12042 }
12043 }
12044 {
12045 #[doc(hidden)]
12046 #[allow(dead_code)]
12047 type UnderlyingSolTuple<'a> = ();
12048 #[doc(hidden)]
12049 type UnderlyingRustTuple<'a> = ();
12050 #[cfg(test)]
12051 #[allow(dead_code, unreachable_patterns)]
12052 fn _type_assertion(
12053 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12054 ) {
12055 match _t {
12056 alloy_sol_types::private::AssertTypeEq::<
12057 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12058 >(_) => {}
12059 }
12060 }
12061 #[automatically_derived]
12062 #[doc(hidden)]
12063 impl ::core::convert::From<setstateHistoryRetentionPeriodReturn>
12064 for UnderlyingRustTuple<'_> {
12065 fn from(value: setstateHistoryRetentionPeriodReturn) -> Self {
12066 ()
12067 }
12068 }
12069 #[automatically_derived]
12070 #[doc(hidden)]
12071 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12072 for setstateHistoryRetentionPeriodReturn {
12073 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12074 Self {}
12075 }
12076 }
12077 }
12078 impl setstateHistoryRetentionPeriodReturn {
12079 fn _tokenize(
12080 &self,
12081 ) -> <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::ReturnToken<
12082 '_,
12083 > {
12084 ()
12085 }
12086 }
12087 #[automatically_derived]
12088 impl alloy_sol_types::SolCall for setstateHistoryRetentionPeriodCall {
12089 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,);
12090 type Token<'a> = <Self::Parameters<
12091 'a,
12092 > as alloy_sol_types::SolType>::Token<'a>;
12093 type Return = setstateHistoryRetentionPeriodReturn;
12094 type ReturnTuple<'a> = ();
12095 type ReturnToken<'a> = <Self::ReturnTuple<
12096 'a,
12097 > as alloy_sol_types::SolType>::Token<'a>;
12098 const SIGNATURE: &'static str = "setstateHistoryRetentionPeriod(uint32)";
12099 const SELECTOR: [u8; 4] = [150u8, 193u8, 202u8, 97u8];
12100 #[inline]
12101 fn new<'a>(
12102 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12103 ) -> Self {
12104 tuple.into()
12105 }
12106 #[inline]
12107 fn tokenize(&self) -> Self::Token<'_> {
12108 (
12109 <alloy::sol_types::sol_data::Uint<
12110 32,
12111 > as alloy_sol_types::SolType>::tokenize(&self.historySeconds),
12112 )
12113 }
12114 #[inline]
12115 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12116 setstateHistoryRetentionPeriodReturn::_tokenize(ret)
12117 }
12118 #[inline]
12119 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12120 <Self::ReturnTuple<
12121 '_,
12122 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12123 .map(Into::into)
12124 }
12125 #[inline]
12126 fn abi_decode_returns_validate(
12127 data: &[u8],
12128 ) -> alloy_sol_types::Result<Self::Return> {
12129 <Self::ReturnTuple<
12130 '_,
12131 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12132 .map(Into::into)
12133 }
12134 }
12135 };
12136 #[derive(serde::Serialize, serde::Deserialize)]
12137 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12138 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12143 #[derive(Clone)]
12144 pub struct stateHistoryCommitmentsCall(
12145 pub alloy::sol_types::private::primitives::aliases::U256,
12146 );
12147 #[derive(serde::Serialize, serde::Deserialize)]
12148 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12149 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12151 #[derive(Clone)]
12152 pub struct stateHistoryCommitmentsReturn {
12153 #[allow(missing_docs)]
12154 pub l1BlockHeight: u64,
12155 #[allow(missing_docs)]
12156 pub l1BlockTimestamp: u64,
12157 #[allow(missing_docs)]
12158 pub hotShotBlockHeight: u64,
12159 #[allow(missing_docs)]
12160 pub hotShotBlockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
12161 }
12162 #[allow(
12163 non_camel_case_types,
12164 non_snake_case,
12165 clippy::pub_underscore_fields,
12166 clippy::style
12167 )]
12168 const _: () = {
12169 use alloy::sol_types as alloy_sol_types;
12170 {
12171 #[doc(hidden)]
12172 #[allow(dead_code)]
12173 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
12174 #[doc(hidden)]
12175 type UnderlyingRustTuple<'a> = (
12176 alloy::sol_types::private::primitives::aliases::U256,
12177 );
12178 #[cfg(test)]
12179 #[allow(dead_code, unreachable_patterns)]
12180 fn _type_assertion(
12181 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12182 ) {
12183 match _t {
12184 alloy_sol_types::private::AssertTypeEq::<
12185 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12186 >(_) => {}
12187 }
12188 }
12189 #[automatically_derived]
12190 #[doc(hidden)]
12191 impl ::core::convert::From<stateHistoryCommitmentsCall>
12192 for UnderlyingRustTuple<'_> {
12193 fn from(value: stateHistoryCommitmentsCall) -> Self {
12194 (value.0,)
12195 }
12196 }
12197 #[automatically_derived]
12198 #[doc(hidden)]
12199 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12200 for stateHistoryCommitmentsCall {
12201 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12202 Self(tuple.0)
12203 }
12204 }
12205 }
12206 {
12207 #[doc(hidden)]
12208 #[allow(dead_code)]
12209 type UnderlyingSolTuple<'a> = (
12210 alloy::sol_types::sol_data::Uint<64>,
12211 alloy::sol_types::sol_data::Uint<64>,
12212 alloy::sol_types::sol_data::Uint<64>,
12213 BN254::ScalarField,
12214 );
12215 #[doc(hidden)]
12216 type UnderlyingRustTuple<'a> = (
12217 u64,
12218 u64,
12219 u64,
12220 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
12221 );
12222 #[cfg(test)]
12223 #[allow(dead_code, unreachable_patterns)]
12224 fn _type_assertion(
12225 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12226 ) {
12227 match _t {
12228 alloy_sol_types::private::AssertTypeEq::<
12229 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12230 >(_) => {}
12231 }
12232 }
12233 #[automatically_derived]
12234 #[doc(hidden)]
12235 impl ::core::convert::From<stateHistoryCommitmentsReturn>
12236 for UnderlyingRustTuple<'_> {
12237 fn from(value: stateHistoryCommitmentsReturn) -> Self {
12238 (
12239 value.l1BlockHeight,
12240 value.l1BlockTimestamp,
12241 value.hotShotBlockHeight,
12242 value.hotShotBlockCommRoot,
12243 )
12244 }
12245 }
12246 #[automatically_derived]
12247 #[doc(hidden)]
12248 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12249 for stateHistoryCommitmentsReturn {
12250 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12251 Self {
12252 l1BlockHeight: tuple.0,
12253 l1BlockTimestamp: tuple.1,
12254 hotShotBlockHeight: tuple.2,
12255 hotShotBlockCommRoot: tuple.3,
12256 }
12257 }
12258 }
12259 }
12260 impl stateHistoryCommitmentsReturn {
12261 fn _tokenize(
12262 &self,
12263 ) -> <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::ReturnToken<
12264 '_,
12265 > {
12266 (
12267 <alloy::sol_types::sol_data::Uint<
12268 64,
12269 > as alloy_sol_types::SolType>::tokenize(&self.l1BlockHeight),
12270 <alloy::sol_types::sol_data::Uint<
12271 64,
12272 > as alloy_sol_types::SolType>::tokenize(&self.l1BlockTimestamp),
12273 <alloy::sol_types::sol_data::Uint<
12274 64,
12275 > as alloy_sol_types::SolType>::tokenize(&self.hotShotBlockHeight),
12276 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
12277 &self.hotShotBlockCommRoot,
12278 ),
12279 )
12280 }
12281 }
12282 #[automatically_derived]
12283 impl alloy_sol_types::SolCall for stateHistoryCommitmentsCall {
12284 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
12285 type Token<'a> = <Self::Parameters<
12286 'a,
12287 > as alloy_sol_types::SolType>::Token<'a>;
12288 type Return = stateHistoryCommitmentsReturn;
12289 type ReturnTuple<'a> = (
12290 alloy::sol_types::sol_data::Uint<64>,
12291 alloy::sol_types::sol_data::Uint<64>,
12292 alloy::sol_types::sol_data::Uint<64>,
12293 BN254::ScalarField,
12294 );
12295 type ReturnToken<'a> = <Self::ReturnTuple<
12296 'a,
12297 > as alloy_sol_types::SolType>::Token<'a>;
12298 const SIGNATURE: &'static str = "stateHistoryCommitments(uint256)";
12299 const SELECTOR: [u8; 4] = [2u8, 181u8, 146u8, 243u8];
12300 #[inline]
12301 fn new<'a>(
12302 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12303 ) -> Self {
12304 tuple.into()
12305 }
12306 #[inline]
12307 fn tokenize(&self) -> Self::Token<'_> {
12308 (
12309 <alloy::sol_types::sol_data::Uint<
12310 256,
12311 > as alloy_sol_types::SolType>::tokenize(&self.0),
12312 )
12313 }
12314 #[inline]
12315 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12316 stateHistoryCommitmentsReturn::_tokenize(ret)
12317 }
12318 #[inline]
12319 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12320 <Self::ReturnTuple<
12321 '_,
12322 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12323 .map(Into::into)
12324 }
12325 #[inline]
12326 fn abi_decode_returns_validate(
12327 data: &[u8],
12328 ) -> alloy_sol_types::Result<Self::Return> {
12329 <Self::ReturnTuple<
12330 '_,
12331 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12332 .map(Into::into)
12333 }
12334 }
12335 };
12336 #[derive(serde::Serialize, serde::Deserialize)]
12337 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12338 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12343 #[derive(Clone)]
12344 pub struct stateHistoryFirstIndexCall;
12345 #[derive(serde::Serialize, serde::Deserialize)]
12346 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12347 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12349 #[derive(Clone)]
12350 pub struct stateHistoryFirstIndexReturn {
12351 #[allow(missing_docs)]
12352 pub _0: u64,
12353 }
12354 #[allow(
12355 non_camel_case_types,
12356 non_snake_case,
12357 clippy::pub_underscore_fields,
12358 clippy::style
12359 )]
12360 const _: () = {
12361 use alloy::sol_types as alloy_sol_types;
12362 {
12363 #[doc(hidden)]
12364 #[allow(dead_code)]
12365 type UnderlyingSolTuple<'a> = ();
12366 #[doc(hidden)]
12367 type UnderlyingRustTuple<'a> = ();
12368 #[cfg(test)]
12369 #[allow(dead_code, unreachable_patterns)]
12370 fn _type_assertion(
12371 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12372 ) {
12373 match _t {
12374 alloy_sol_types::private::AssertTypeEq::<
12375 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12376 >(_) => {}
12377 }
12378 }
12379 #[automatically_derived]
12380 #[doc(hidden)]
12381 impl ::core::convert::From<stateHistoryFirstIndexCall>
12382 for UnderlyingRustTuple<'_> {
12383 fn from(value: stateHistoryFirstIndexCall) -> Self {
12384 ()
12385 }
12386 }
12387 #[automatically_derived]
12388 #[doc(hidden)]
12389 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12390 for stateHistoryFirstIndexCall {
12391 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12392 Self
12393 }
12394 }
12395 }
12396 {
12397 #[doc(hidden)]
12398 #[allow(dead_code)]
12399 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
12400 #[doc(hidden)]
12401 type UnderlyingRustTuple<'a> = (u64,);
12402 #[cfg(test)]
12403 #[allow(dead_code, unreachable_patterns)]
12404 fn _type_assertion(
12405 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12406 ) {
12407 match _t {
12408 alloy_sol_types::private::AssertTypeEq::<
12409 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12410 >(_) => {}
12411 }
12412 }
12413 #[automatically_derived]
12414 #[doc(hidden)]
12415 impl ::core::convert::From<stateHistoryFirstIndexReturn>
12416 for UnderlyingRustTuple<'_> {
12417 fn from(value: stateHistoryFirstIndexReturn) -> Self {
12418 (value._0,)
12419 }
12420 }
12421 #[automatically_derived]
12422 #[doc(hidden)]
12423 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12424 for stateHistoryFirstIndexReturn {
12425 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12426 Self { _0: tuple.0 }
12427 }
12428 }
12429 }
12430 #[automatically_derived]
12431 impl alloy_sol_types::SolCall for stateHistoryFirstIndexCall {
12432 type Parameters<'a> = ();
12433 type Token<'a> = <Self::Parameters<
12434 'a,
12435 > as alloy_sol_types::SolType>::Token<'a>;
12436 type Return = u64;
12437 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
12438 type ReturnToken<'a> = <Self::ReturnTuple<
12439 'a,
12440 > as alloy_sol_types::SolType>::Token<'a>;
12441 const SIGNATURE: &'static str = "stateHistoryFirstIndex()";
12442 const SELECTOR: [u8; 4] = [47u8, 121u8, 136u8, 157u8];
12443 #[inline]
12444 fn new<'a>(
12445 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12446 ) -> Self {
12447 tuple.into()
12448 }
12449 #[inline]
12450 fn tokenize(&self) -> Self::Token<'_> {
12451 ()
12452 }
12453 #[inline]
12454 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12455 (
12456 <alloy::sol_types::sol_data::Uint<
12457 64,
12458 > as alloy_sol_types::SolType>::tokenize(ret),
12459 )
12460 }
12461 #[inline]
12462 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12463 <Self::ReturnTuple<
12464 '_,
12465 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12466 .map(|r| {
12467 let r: stateHistoryFirstIndexReturn = r.into();
12468 r._0
12469 })
12470 }
12471 #[inline]
12472 fn abi_decode_returns_validate(
12473 data: &[u8],
12474 ) -> alloy_sol_types::Result<Self::Return> {
12475 <Self::ReturnTuple<
12476 '_,
12477 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12478 .map(|r| {
12479 let r: stateHistoryFirstIndexReturn = r.into();
12480 r._0
12481 })
12482 }
12483 }
12484 };
12485 #[derive(serde::Serialize, serde::Deserialize)]
12486 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12487 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12492 #[derive(Clone)]
12493 pub struct stateHistoryRetentionPeriodCall;
12494 #[derive(serde::Serialize, serde::Deserialize)]
12495 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12496 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12498 #[derive(Clone)]
12499 pub struct stateHistoryRetentionPeriodReturn {
12500 #[allow(missing_docs)]
12501 pub _0: u32,
12502 }
12503 #[allow(
12504 non_camel_case_types,
12505 non_snake_case,
12506 clippy::pub_underscore_fields,
12507 clippy::style
12508 )]
12509 const _: () = {
12510 use alloy::sol_types as alloy_sol_types;
12511 {
12512 #[doc(hidden)]
12513 #[allow(dead_code)]
12514 type UnderlyingSolTuple<'a> = ();
12515 #[doc(hidden)]
12516 type UnderlyingRustTuple<'a> = ();
12517 #[cfg(test)]
12518 #[allow(dead_code, unreachable_patterns)]
12519 fn _type_assertion(
12520 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12521 ) {
12522 match _t {
12523 alloy_sol_types::private::AssertTypeEq::<
12524 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12525 >(_) => {}
12526 }
12527 }
12528 #[automatically_derived]
12529 #[doc(hidden)]
12530 impl ::core::convert::From<stateHistoryRetentionPeriodCall>
12531 for UnderlyingRustTuple<'_> {
12532 fn from(value: stateHistoryRetentionPeriodCall) -> Self {
12533 ()
12534 }
12535 }
12536 #[automatically_derived]
12537 #[doc(hidden)]
12538 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12539 for stateHistoryRetentionPeriodCall {
12540 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12541 Self
12542 }
12543 }
12544 }
12545 {
12546 #[doc(hidden)]
12547 #[allow(dead_code)]
12548 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
12549 #[doc(hidden)]
12550 type UnderlyingRustTuple<'a> = (u32,);
12551 #[cfg(test)]
12552 #[allow(dead_code, unreachable_patterns)]
12553 fn _type_assertion(
12554 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12555 ) {
12556 match _t {
12557 alloy_sol_types::private::AssertTypeEq::<
12558 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12559 >(_) => {}
12560 }
12561 }
12562 #[automatically_derived]
12563 #[doc(hidden)]
12564 impl ::core::convert::From<stateHistoryRetentionPeriodReturn>
12565 for UnderlyingRustTuple<'_> {
12566 fn from(value: stateHistoryRetentionPeriodReturn) -> Self {
12567 (value._0,)
12568 }
12569 }
12570 #[automatically_derived]
12571 #[doc(hidden)]
12572 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12573 for stateHistoryRetentionPeriodReturn {
12574 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12575 Self { _0: tuple.0 }
12576 }
12577 }
12578 }
12579 #[automatically_derived]
12580 impl alloy_sol_types::SolCall for stateHistoryRetentionPeriodCall {
12581 type Parameters<'a> = ();
12582 type Token<'a> = <Self::Parameters<
12583 'a,
12584 > as alloy_sol_types::SolType>::Token<'a>;
12585 type Return = u32;
12586 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
12587 type ReturnToken<'a> = <Self::ReturnTuple<
12588 'a,
12589 > as alloy_sol_types::SolType>::Token<'a>;
12590 const SIGNATURE: &'static str = "stateHistoryRetentionPeriod()";
12591 const SELECTOR: [u8; 4] = [194u8, 59u8, 158u8, 158u8];
12592 #[inline]
12593 fn new<'a>(
12594 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12595 ) -> Self {
12596 tuple.into()
12597 }
12598 #[inline]
12599 fn tokenize(&self) -> Self::Token<'_> {
12600 ()
12601 }
12602 #[inline]
12603 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12604 (
12605 <alloy::sol_types::sol_data::Uint<
12606 32,
12607 > as alloy_sol_types::SolType>::tokenize(ret),
12608 )
12609 }
12610 #[inline]
12611 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12612 <Self::ReturnTuple<
12613 '_,
12614 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12615 .map(|r| {
12616 let r: stateHistoryRetentionPeriodReturn = r.into();
12617 r._0
12618 })
12619 }
12620 #[inline]
12621 fn abi_decode_returns_validate(
12622 data: &[u8],
12623 ) -> alloy_sol_types::Result<Self::Return> {
12624 <Self::ReturnTuple<
12625 '_,
12626 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12627 .map(|r| {
12628 let r: stateHistoryRetentionPeriodReturn = r.into();
12629 r._0
12630 })
12631 }
12632 }
12633 };
12634 #[derive(serde::Serialize, serde::Deserialize)]
12635 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12636 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12641 #[derive(Clone)]
12642 pub struct transferOwnershipCall {
12643 #[allow(missing_docs)]
12644 pub newOwner: alloy::sol_types::private::Address,
12645 }
12646 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12648 #[derive(Clone)]
12649 pub struct transferOwnershipReturn {}
12650 #[allow(
12651 non_camel_case_types,
12652 non_snake_case,
12653 clippy::pub_underscore_fields,
12654 clippy::style
12655 )]
12656 const _: () = {
12657 use alloy::sol_types as alloy_sol_types;
12658 {
12659 #[doc(hidden)]
12660 #[allow(dead_code)]
12661 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
12662 #[doc(hidden)]
12663 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
12664 #[cfg(test)]
12665 #[allow(dead_code, unreachable_patterns)]
12666 fn _type_assertion(
12667 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12668 ) {
12669 match _t {
12670 alloy_sol_types::private::AssertTypeEq::<
12671 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12672 >(_) => {}
12673 }
12674 }
12675 #[automatically_derived]
12676 #[doc(hidden)]
12677 impl ::core::convert::From<transferOwnershipCall>
12678 for UnderlyingRustTuple<'_> {
12679 fn from(value: transferOwnershipCall) -> Self {
12680 (value.newOwner,)
12681 }
12682 }
12683 #[automatically_derived]
12684 #[doc(hidden)]
12685 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12686 for transferOwnershipCall {
12687 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12688 Self { newOwner: tuple.0 }
12689 }
12690 }
12691 }
12692 {
12693 #[doc(hidden)]
12694 #[allow(dead_code)]
12695 type UnderlyingSolTuple<'a> = ();
12696 #[doc(hidden)]
12697 type UnderlyingRustTuple<'a> = ();
12698 #[cfg(test)]
12699 #[allow(dead_code, unreachable_patterns)]
12700 fn _type_assertion(
12701 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12702 ) {
12703 match _t {
12704 alloy_sol_types::private::AssertTypeEq::<
12705 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12706 >(_) => {}
12707 }
12708 }
12709 #[automatically_derived]
12710 #[doc(hidden)]
12711 impl ::core::convert::From<transferOwnershipReturn>
12712 for UnderlyingRustTuple<'_> {
12713 fn from(value: transferOwnershipReturn) -> Self {
12714 ()
12715 }
12716 }
12717 #[automatically_derived]
12718 #[doc(hidden)]
12719 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12720 for transferOwnershipReturn {
12721 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12722 Self {}
12723 }
12724 }
12725 }
12726 impl transferOwnershipReturn {
12727 fn _tokenize(
12728 &self,
12729 ) -> <transferOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
12730 ()
12731 }
12732 }
12733 #[automatically_derived]
12734 impl alloy_sol_types::SolCall for transferOwnershipCall {
12735 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
12736 type Token<'a> = <Self::Parameters<
12737 'a,
12738 > as alloy_sol_types::SolType>::Token<'a>;
12739 type Return = transferOwnershipReturn;
12740 type ReturnTuple<'a> = ();
12741 type ReturnToken<'a> = <Self::ReturnTuple<
12742 'a,
12743 > as alloy_sol_types::SolType>::Token<'a>;
12744 const SIGNATURE: &'static str = "transferOwnership(address)";
12745 const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8];
12746 #[inline]
12747 fn new<'a>(
12748 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12749 ) -> Self {
12750 tuple.into()
12751 }
12752 #[inline]
12753 fn tokenize(&self) -> Self::Token<'_> {
12754 (
12755 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
12756 &self.newOwner,
12757 ),
12758 )
12759 }
12760 #[inline]
12761 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12762 transferOwnershipReturn::_tokenize(ret)
12763 }
12764 #[inline]
12765 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12766 <Self::ReturnTuple<
12767 '_,
12768 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12769 .map(Into::into)
12770 }
12771 #[inline]
12772 fn abi_decode_returns_validate(
12773 data: &[u8],
12774 ) -> alloy_sol_types::Result<Self::Return> {
12775 <Self::ReturnTuple<
12776 '_,
12777 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12778 .map(Into::into)
12779 }
12780 }
12781 };
12782 #[derive(serde::Serialize, serde::Deserialize)]
12783 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12784 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12789 #[derive(Clone)]
12790 pub struct updateEpochStartBlockCall {
12791 #[allow(missing_docs)]
12792 pub newEpochStartBlock: u64,
12793 }
12794 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12796 #[derive(Clone)]
12797 pub struct updateEpochStartBlockReturn {}
12798 #[allow(
12799 non_camel_case_types,
12800 non_snake_case,
12801 clippy::pub_underscore_fields,
12802 clippy::style
12803 )]
12804 const _: () = {
12805 use alloy::sol_types as alloy_sol_types;
12806 {
12807 #[doc(hidden)]
12808 #[allow(dead_code)]
12809 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
12810 #[doc(hidden)]
12811 type UnderlyingRustTuple<'a> = (u64,);
12812 #[cfg(test)]
12813 #[allow(dead_code, unreachable_patterns)]
12814 fn _type_assertion(
12815 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12816 ) {
12817 match _t {
12818 alloy_sol_types::private::AssertTypeEq::<
12819 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12820 >(_) => {}
12821 }
12822 }
12823 #[automatically_derived]
12824 #[doc(hidden)]
12825 impl ::core::convert::From<updateEpochStartBlockCall>
12826 for UnderlyingRustTuple<'_> {
12827 fn from(value: updateEpochStartBlockCall) -> Self {
12828 (value.newEpochStartBlock,)
12829 }
12830 }
12831 #[automatically_derived]
12832 #[doc(hidden)]
12833 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12834 for updateEpochStartBlockCall {
12835 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12836 Self {
12837 newEpochStartBlock: tuple.0,
12838 }
12839 }
12840 }
12841 }
12842 {
12843 #[doc(hidden)]
12844 #[allow(dead_code)]
12845 type UnderlyingSolTuple<'a> = ();
12846 #[doc(hidden)]
12847 type UnderlyingRustTuple<'a> = ();
12848 #[cfg(test)]
12849 #[allow(dead_code, unreachable_patterns)]
12850 fn _type_assertion(
12851 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12852 ) {
12853 match _t {
12854 alloy_sol_types::private::AssertTypeEq::<
12855 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12856 >(_) => {}
12857 }
12858 }
12859 #[automatically_derived]
12860 #[doc(hidden)]
12861 impl ::core::convert::From<updateEpochStartBlockReturn>
12862 for UnderlyingRustTuple<'_> {
12863 fn from(value: updateEpochStartBlockReturn) -> Self {
12864 ()
12865 }
12866 }
12867 #[automatically_derived]
12868 #[doc(hidden)]
12869 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12870 for updateEpochStartBlockReturn {
12871 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12872 Self {}
12873 }
12874 }
12875 }
12876 impl updateEpochStartBlockReturn {
12877 fn _tokenize(
12878 &self,
12879 ) -> <updateEpochStartBlockCall as alloy_sol_types::SolCall>::ReturnToken<
12880 '_,
12881 > {
12882 ()
12883 }
12884 }
12885 #[automatically_derived]
12886 impl alloy_sol_types::SolCall for updateEpochStartBlockCall {
12887 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<64>,);
12888 type Token<'a> = <Self::Parameters<
12889 'a,
12890 > as alloy_sol_types::SolType>::Token<'a>;
12891 type Return = updateEpochStartBlockReturn;
12892 type ReturnTuple<'a> = ();
12893 type ReturnToken<'a> = <Self::ReturnTuple<
12894 'a,
12895 > as alloy_sol_types::SolType>::Token<'a>;
12896 const SIGNATURE: &'static str = "updateEpochStartBlock(uint64)";
12897 const SELECTOR: [u8; 4] = [22u8, 122u8, 198u8, 24u8];
12898 #[inline]
12899 fn new<'a>(
12900 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12901 ) -> Self {
12902 tuple.into()
12903 }
12904 #[inline]
12905 fn tokenize(&self) -> Self::Token<'_> {
12906 (
12907 <alloy::sol_types::sol_data::Uint<
12908 64,
12909 > as alloy_sol_types::SolType>::tokenize(&self.newEpochStartBlock),
12910 )
12911 }
12912 #[inline]
12913 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12914 updateEpochStartBlockReturn::_tokenize(ret)
12915 }
12916 #[inline]
12917 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12918 <Self::ReturnTuple<
12919 '_,
12920 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12921 .map(Into::into)
12922 }
12923 #[inline]
12924 fn abi_decode_returns_validate(
12925 data: &[u8],
12926 ) -> alloy_sol_types::Result<Self::Return> {
12927 <Self::ReturnTuple<
12928 '_,
12929 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12930 .map(Into::into)
12931 }
12932 }
12933 };
12934 #[derive(serde::Serialize, serde::Deserialize)]
12935 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12936 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12941 #[derive(Clone)]
12942 pub struct upgradeToAndCallCall {
12943 #[allow(missing_docs)]
12944 pub newImplementation: alloy::sol_types::private::Address,
12945 #[allow(missing_docs)]
12946 pub data: alloy::sol_types::private::Bytes,
12947 }
12948 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12950 #[derive(Clone)]
12951 pub struct upgradeToAndCallReturn {}
12952 #[allow(
12953 non_camel_case_types,
12954 non_snake_case,
12955 clippy::pub_underscore_fields,
12956 clippy::style
12957 )]
12958 const _: () = {
12959 use alloy::sol_types as alloy_sol_types;
12960 {
12961 #[doc(hidden)]
12962 #[allow(dead_code)]
12963 type UnderlyingSolTuple<'a> = (
12964 alloy::sol_types::sol_data::Address,
12965 alloy::sol_types::sol_data::Bytes,
12966 );
12967 #[doc(hidden)]
12968 type UnderlyingRustTuple<'a> = (
12969 alloy::sol_types::private::Address,
12970 alloy::sol_types::private::Bytes,
12971 );
12972 #[cfg(test)]
12973 #[allow(dead_code, unreachable_patterns)]
12974 fn _type_assertion(
12975 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12976 ) {
12977 match _t {
12978 alloy_sol_types::private::AssertTypeEq::<
12979 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12980 >(_) => {}
12981 }
12982 }
12983 #[automatically_derived]
12984 #[doc(hidden)]
12985 impl ::core::convert::From<upgradeToAndCallCall>
12986 for UnderlyingRustTuple<'_> {
12987 fn from(value: upgradeToAndCallCall) -> Self {
12988 (value.newImplementation, value.data)
12989 }
12990 }
12991 #[automatically_derived]
12992 #[doc(hidden)]
12993 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12994 for upgradeToAndCallCall {
12995 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12996 Self {
12997 newImplementation: tuple.0,
12998 data: tuple.1,
12999 }
13000 }
13001 }
13002 }
13003 {
13004 #[doc(hidden)]
13005 #[allow(dead_code)]
13006 type UnderlyingSolTuple<'a> = ();
13007 #[doc(hidden)]
13008 type UnderlyingRustTuple<'a> = ();
13009 #[cfg(test)]
13010 #[allow(dead_code, unreachable_patterns)]
13011 fn _type_assertion(
13012 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13013 ) {
13014 match _t {
13015 alloy_sol_types::private::AssertTypeEq::<
13016 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13017 >(_) => {}
13018 }
13019 }
13020 #[automatically_derived]
13021 #[doc(hidden)]
13022 impl ::core::convert::From<upgradeToAndCallReturn>
13023 for UnderlyingRustTuple<'_> {
13024 fn from(value: upgradeToAndCallReturn) -> Self {
13025 ()
13026 }
13027 }
13028 #[automatically_derived]
13029 #[doc(hidden)]
13030 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13031 for upgradeToAndCallReturn {
13032 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13033 Self {}
13034 }
13035 }
13036 }
13037 impl upgradeToAndCallReturn {
13038 fn _tokenize(
13039 &self,
13040 ) -> <upgradeToAndCallCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
13041 ()
13042 }
13043 }
13044 #[automatically_derived]
13045 impl alloy_sol_types::SolCall for upgradeToAndCallCall {
13046 type Parameters<'a> = (
13047 alloy::sol_types::sol_data::Address,
13048 alloy::sol_types::sol_data::Bytes,
13049 );
13050 type Token<'a> = <Self::Parameters<
13051 'a,
13052 > as alloy_sol_types::SolType>::Token<'a>;
13053 type Return = upgradeToAndCallReturn;
13054 type ReturnTuple<'a> = ();
13055 type ReturnToken<'a> = <Self::ReturnTuple<
13056 'a,
13057 > as alloy_sol_types::SolType>::Token<'a>;
13058 const SIGNATURE: &'static str = "upgradeToAndCall(address,bytes)";
13059 const SELECTOR: [u8; 4] = [79u8, 30u8, 242u8, 134u8];
13060 #[inline]
13061 fn new<'a>(
13062 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13063 ) -> Self {
13064 tuple.into()
13065 }
13066 #[inline]
13067 fn tokenize(&self) -> Self::Token<'_> {
13068 (
13069 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
13070 &self.newImplementation,
13071 ),
13072 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
13073 &self.data,
13074 ),
13075 )
13076 }
13077 #[inline]
13078 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13079 upgradeToAndCallReturn::_tokenize(ret)
13080 }
13081 #[inline]
13082 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13083 <Self::ReturnTuple<
13084 '_,
13085 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13086 .map(Into::into)
13087 }
13088 #[inline]
13089 fn abi_decode_returns_validate(
13090 data: &[u8],
13091 ) -> alloy_sol_types::Result<Self::Return> {
13092 <Self::ReturnTuple<
13093 '_,
13094 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13095 .map(Into::into)
13096 }
13097 }
13098 };
13099 #[derive(serde::Serialize, serde::Deserialize)]
13100 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13101 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13106 #[derive(Clone)]
13107 pub struct votingStakeTableStateCall;
13108 #[derive(serde::Serialize, serde::Deserialize)]
13109 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13110 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13112 #[derive(Clone)]
13113 pub struct votingStakeTableStateReturn {
13114 #[allow(missing_docs)]
13115 pub threshold: alloy::sol_types::private::primitives::aliases::U256,
13116 #[allow(missing_docs)]
13117 pub blsKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
13118 #[allow(missing_docs)]
13119 pub schnorrKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
13120 #[allow(missing_docs)]
13121 pub amountComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
13122 }
13123 #[allow(
13124 non_camel_case_types,
13125 non_snake_case,
13126 clippy::pub_underscore_fields,
13127 clippy::style
13128 )]
13129 const _: () = {
13130 use alloy::sol_types as alloy_sol_types;
13131 {
13132 #[doc(hidden)]
13133 #[allow(dead_code)]
13134 type UnderlyingSolTuple<'a> = ();
13135 #[doc(hidden)]
13136 type UnderlyingRustTuple<'a> = ();
13137 #[cfg(test)]
13138 #[allow(dead_code, unreachable_patterns)]
13139 fn _type_assertion(
13140 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13141 ) {
13142 match _t {
13143 alloy_sol_types::private::AssertTypeEq::<
13144 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13145 >(_) => {}
13146 }
13147 }
13148 #[automatically_derived]
13149 #[doc(hidden)]
13150 impl ::core::convert::From<votingStakeTableStateCall>
13151 for UnderlyingRustTuple<'_> {
13152 fn from(value: votingStakeTableStateCall) -> Self {
13153 ()
13154 }
13155 }
13156 #[automatically_derived]
13157 #[doc(hidden)]
13158 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13159 for votingStakeTableStateCall {
13160 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13161 Self
13162 }
13163 }
13164 }
13165 {
13166 #[doc(hidden)]
13167 #[allow(dead_code)]
13168 type UnderlyingSolTuple<'a> = (
13169 alloy::sol_types::sol_data::Uint<256>,
13170 BN254::ScalarField,
13171 BN254::ScalarField,
13172 BN254::ScalarField,
13173 );
13174 #[doc(hidden)]
13175 type UnderlyingRustTuple<'a> = (
13176 alloy::sol_types::private::primitives::aliases::U256,
13177 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
13178 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
13179 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
13180 );
13181 #[cfg(test)]
13182 #[allow(dead_code, unreachable_patterns)]
13183 fn _type_assertion(
13184 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13185 ) {
13186 match _t {
13187 alloy_sol_types::private::AssertTypeEq::<
13188 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13189 >(_) => {}
13190 }
13191 }
13192 #[automatically_derived]
13193 #[doc(hidden)]
13194 impl ::core::convert::From<votingStakeTableStateReturn>
13195 for UnderlyingRustTuple<'_> {
13196 fn from(value: votingStakeTableStateReturn) -> Self {
13197 (
13198 value.threshold,
13199 value.blsKeyComm,
13200 value.schnorrKeyComm,
13201 value.amountComm,
13202 )
13203 }
13204 }
13205 #[automatically_derived]
13206 #[doc(hidden)]
13207 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13208 for votingStakeTableStateReturn {
13209 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13210 Self {
13211 threshold: tuple.0,
13212 blsKeyComm: tuple.1,
13213 schnorrKeyComm: tuple.2,
13214 amountComm: tuple.3,
13215 }
13216 }
13217 }
13218 }
13219 impl votingStakeTableStateReturn {
13220 fn _tokenize(
13221 &self,
13222 ) -> <votingStakeTableStateCall as alloy_sol_types::SolCall>::ReturnToken<
13223 '_,
13224 > {
13225 (
13226 <alloy::sol_types::sol_data::Uint<
13227 256,
13228 > as alloy_sol_types::SolType>::tokenize(&self.threshold),
13229 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
13230 &self.blsKeyComm,
13231 ),
13232 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
13233 &self.schnorrKeyComm,
13234 ),
13235 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
13236 &self.amountComm,
13237 ),
13238 )
13239 }
13240 }
13241 #[automatically_derived]
13242 impl alloy_sol_types::SolCall for votingStakeTableStateCall {
13243 type Parameters<'a> = ();
13244 type Token<'a> = <Self::Parameters<
13245 'a,
13246 > as alloy_sol_types::SolType>::Token<'a>;
13247 type Return = votingStakeTableStateReturn;
13248 type ReturnTuple<'a> = (
13249 alloy::sol_types::sol_data::Uint<256>,
13250 BN254::ScalarField,
13251 BN254::ScalarField,
13252 BN254::ScalarField,
13253 );
13254 type ReturnToken<'a> = <Self::ReturnTuple<
13255 'a,
13256 > as alloy_sol_types::SolType>::Token<'a>;
13257 const SIGNATURE: &'static str = "votingStakeTableState()";
13258 const SELECTOR: [u8; 4] = [6u8, 37u8, 225u8, 155u8];
13259 #[inline]
13260 fn new<'a>(
13261 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13262 ) -> Self {
13263 tuple.into()
13264 }
13265 #[inline]
13266 fn tokenize(&self) -> Self::Token<'_> {
13267 ()
13268 }
13269 #[inline]
13270 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13271 votingStakeTableStateReturn::_tokenize(ret)
13272 }
13273 #[inline]
13274 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13275 <Self::ReturnTuple<
13276 '_,
13277 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13278 .map(Into::into)
13279 }
13280 #[inline]
13281 fn abi_decode_returns_validate(
13282 data: &[u8],
13283 ) -> alloy_sol_types::Result<Self::Return> {
13284 <Self::ReturnTuple<
13285 '_,
13286 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13287 .map(Into::into)
13288 }
13289 }
13290 };
13291 #[derive(serde::Serialize, serde::Deserialize)]
13293 #[derive()]
13294 pub enum LightClientV2Calls {
13295 #[allow(missing_docs)]
13296 UPGRADE_INTERFACE_VERSION(UPGRADE_INTERFACE_VERSIONCall),
13297 #[allow(missing_docs)]
13298 _getVk(_getVkCall),
13299 #[allow(missing_docs)]
13300 blocksPerEpoch(blocksPerEpochCall),
13301 #[allow(missing_docs)]
13302 currentBlockNumber(currentBlockNumberCall),
13303 #[allow(missing_docs)]
13304 currentEpoch(currentEpochCall),
13305 #[allow(missing_docs)]
13306 disablePermissionedProverMode(disablePermissionedProverModeCall),
13307 #[allow(missing_docs)]
13308 epochFromBlockNumber(epochFromBlockNumberCall),
13309 #[allow(missing_docs)]
13310 epochStartBlock(epochStartBlockCall),
13311 #[allow(missing_docs)]
13312 finalizedState(finalizedStateCall),
13313 #[allow(missing_docs)]
13314 genesisStakeTableState(genesisStakeTableStateCall),
13315 #[allow(missing_docs)]
13316 genesisState(genesisStateCall),
13317 #[allow(missing_docs)]
13318 getHotShotCommitment(getHotShotCommitmentCall),
13319 #[allow(missing_docs)]
13320 getStateHistoryCount(getStateHistoryCountCall),
13321 #[allow(missing_docs)]
13322 getVersion(getVersionCall),
13323 #[allow(missing_docs)]
13324 initialize(initializeCall),
13325 #[allow(missing_docs)]
13326 initializeV2(initializeV2Call),
13327 #[allow(missing_docs)]
13328 isEpochRoot(isEpochRootCall),
13329 #[allow(missing_docs)]
13330 isGtEpochRoot(isGtEpochRootCall),
13331 #[allow(missing_docs)]
13332 isPermissionedProverEnabled(isPermissionedProverEnabledCall),
13333 #[allow(missing_docs)]
13334 lagOverEscapeHatchThreshold(lagOverEscapeHatchThresholdCall),
13335 #[allow(missing_docs)]
13336 newFinalizedState_0(newFinalizedState_0Call),
13337 #[allow(missing_docs)]
13338 newFinalizedState_1(newFinalizedState_1Call),
13339 #[allow(missing_docs)]
13340 owner(ownerCall),
13341 #[allow(missing_docs)]
13342 permissionedProver(permissionedProverCall),
13343 #[allow(missing_docs)]
13344 proxiableUUID(proxiableUUIDCall),
13345 #[allow(missing_docs)]
13346 renounceOwnership(renounceOwnershipCall),
13347 #[allow(missing_docs)]
13348 setPermissionedProver(setPermissionedProverCall),
13349 #[allow(missing_docs)]
13350 setStateHistoryRetentionPeriod(setStateHistoryRetentionPeriodCall),
13351 #[allow(missing_docs)]
13352 setstateHistoryRetentionPeriod(setstateHistoryRetentionPeriodCall),
13353 #[allow(missing_docs)]
13354 stateHistoryCommitments(stateHistoryCommitmentsCall),
13355 #[allow(missing_docs)]
13356 stateHistoryFirstIndex(stateHistoryFirstIndexCall),
13357 #[allow(missing_docs)]
13358 stateHistoryRetentionPeriod(stateHistoryRetentionPeriodCall),
13359 #[allow(missing_docs)]
13360 transferOwnership(transferOwnershipCall),
13361 #[allow(missing_docs)]
13362 updateEpochStartBlock(updateEpochStartBlockCall),
13363 #[allow(missing_docs)]
13364 upgradeToAndCall(upgradeToAndCallCall),
13365 #[allow(missing_docs)]
13366 votingStakeTableState(votingStakeTableStateCall),
13367 }
13368 #[automatically_derived]
13369 impl LightClientV2Calls {
13370 pub const SELECTORS: &'static [[u8; 4usize]] = &[
13377 [1u8, 63u8, 165u8, 252u8],
13378 [2u8, 181u8, 146u8, 243u8],
13379 [6u8, 37u8, 225u8, 155u8],
13380 [13u8, 142u8, 110u8, 44u8],
13381 [18u8, 23u8, 60u8, 44u8],
13382 [22u8, 122u8, 198u8, 24u8],
13383 [32u8, 99u8, 212u8, 247u8],
13384 [37u8, 41u8, 116u8, 39u8],
13385 [47u8, 121u8, 136u8, 157u8],
13386 [48u8, 12u8, 137u8, 221u8],
13387 [49u8, 61u8, 247u8, 177u8],
13388 [55u8, 142u8, 194u8, 59u8],
13389 [62u8, 213u8, 91u8, 123u8],
13390 [66u8, 109u8, 49u8, 148u8],
13391 [67u8, 61u8, 186u8, 159u8],
13392 [79u8, 30u8, 242u8, 134u8],
13393 [82u8, 209u8, 144u8, 45u8],
13394 [105u8, 204u8, 106u8, 4u8],
13395 [113u8, 80u8, 24u8, 166u8],
13396 [117u8, 124u8, 55u8, 173u8],
13397 [118u8, 103u8, 24u8, 8u8],
13398 [130u8, 110u8, 65u8, 252u8],
13399 [133u8, 132u8, 210u8, 63u8],
13400 [141u8, 165u8, 203u8, 91u8],
13401 [144u8, 193u8, 67u8, 144u8],
13402 [150u8, 193u8, 202u8, 97u8],
13403 [155u8, 170u8, 60u8, 201u8],
13404 [159u8, 219u8, 84u8, 167u8],
13405 [173u8, 60u8, 177u8, 204u8],
13406 [179u8, 59u8, 196u8, 145u8],
13407 [194u8, 59u8, 158u8, 158u8],
13408 [210u8, 77u8, 147u8, 61u8],
13409 [224u8, 48u8, 51u8, 1u8],
13410 [240u8, 104u8, 32u8, 84u8],
13411 [242u8, 253u8, 227u8, 139u8],
13412 [249u8, 229u8, 13u8, 25u8],
13413 ];
13414 }
13415 #[automatically_derived]
13416 impl alloy_sol_types::SolInterface for LightClientV2Calls {
13417 const NAME: &'static str = "LightClientV2Calls";
13418 const MIN_DATA_LENGTH: usize = 0usize;
13419 const COUNT: usize = 36usize;
13420 #[inline]
13421 fn selector(&self) -> [u8; 4] {
13422 match self {
13423 Self::UPGRADE_INTERFACE_VERSION(_) => {
13424 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::SELECTOR
13425 }
13426 Self::_getVk(_) => <_getVkCall as alloy_sol_types::SolCall>::SELECTOR,
13427 Self::blocksPerEpoch(_) => {
13428 <blocksPerEpochCall as alloy_sol_types::SolCall>::SELECTOR
13429 }
13430 Self::currentBlockNumber(_) => {
13431 <currentBlockNumberCall as alloy_sol_types::SolCall>::SELECTOR
13432 }
13433 Self::currentEpoch(_) => {
13434 <currentEpochCall as alloy_sol_types::SolCall>::SELECTOR
13435 }
13436 Self::disablePermissionedProverMode(_) => {
13437 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::SELECTOR
13438 }
13439 Self::epochFromBlockNumber(_) => {
13440 <epochFromBlockNumberCall as alloy_sol_types::SolCall>::SELECTOR
13441 }
13442 Self::epochStartBlock(_) => {
13443 <epochStartBlockCall as alloy_sol_types::SolCall>::SELECTOR
13444 }
13445 Self::finalizedState(_) => {
13446 <finalizedStateCall as alloy_sol_types::SolCall>::SELECTOR
13447 }
13448 Self::genesisStakeTableState(_) => {
13449 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::SELECTOR
13450 }
13451 Self::genesisState(_) => {
13452 <genesisStateCall as alloy_sol_types::SolCall>::SELECTOR
13453 }
13454 Self::getHotShotCommitment(_) => {
13455 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::SELECTOR
13456 }
13457 Self::getStateHistoryCount(_) => {
13458 <getStateHistoryCountCall as alloy_sol_types::SolCall>::SELECTOR
13459 }
13460 Self::getVersion(_) => {
13461 <getVersionCall as alloy_sol_types::SolCall>::SELECTOR
13462 }
13463 Self::initialize(_) => {
13464 <initializeCall as alloy_sol_types::SolCall>::SELECTOR
13465 }
13466 Self::initializeV2(_) => {
13467 <initializeV2Call as alloy_sol_types::SolCall>::SELECTOR
13468 }
13469 Self::isEpochRoot(_) => {
13470 <isEpochRootCall as alloy_sol_types::SolCall>::SELECTOR
13471 }
13472 Self::isGtEpochRoot(_) => {
13473 <isGtEpochRootCall as alloy_sol_types::SolCall>::SELECTOR
13474 }
13475 Self::isPermissionedProverEnabled(_) => {
13476 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::SELECTOR
13477 }
13478 Self::lagOverEscapeHatchThreshold(_) => {
13479 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::SELECTOR
13480 }
13481 Self::newFinalizedState_0(_) => {
13482 <newFinalizedState_0Call as alloy_sol_types::SolCall>::SELECTOR
13483 }
13484 Self::newFinalizedState_1(_) => {
13485 <newFinalizedState_1Call as alloy_sol_types::SolCall>::SELECTOR
13486 }
13487 Self::owner(_) => <ownerCall as alloy_sol_types::SolCall>::SELECTOR,
13488 Self::permissionedProver(_) => {
13489 <permissionedProverCall as alloy_sol_types::SolCall>::SELECTOR
13490 }
13491 Self::proxiableUUID(_) => {
13492 <proxiableUUIDCall as alloy_sol_types::SolCall>::SELECTOR
13493 }
13494 Self::renounceOwnership(_) => {
13495 <renounceOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
13496 }
13497 Self::setPermissionedProver(_) => {
13498 <setPermissionedProverCall as alloy_sol_types::SolCall>::SELECTOR
13499 }
13500 Self::setStateHistoryRetentionPeriod(_) => {
13501 <setStateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::SELECTOR
13502 }
13503 Self::setstateHistoryRetentionPeriod(_) => {
13504 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::SELECTOR
13505 }
13506 Self::stateHistoryCommitments(_) => {
13507 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::SELECTOR
13508 }
13509 Self::stateHistoryFirstIndex(_) => {
13510 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::SELECTOR
13511 }
13512 Self::stateHistoryRetentionPeriod(_) => {
13513 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::SELECTOR
13514 }
13515 Self::transferOwnership(_) => {
13516 <transferOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
13517 }
13518 Self::updateEpochStartBlock(_) => {
13519 <updateEpochStartBlockCall as alloy_sol_types::SolCall>::SELECTOR
13520 }
13521 Self::upgradeToAndCall(_) => {
13522 <upgradeToAndCallCall as alloy_sol_types::SolCall>::SELECTOR
13523 }
13524 Self::votingStakeTableState(_) => {
13525 <votingStakeTableStateCall as alloy_sol_types::SolCall>::SELECTOR
13526 }
13527 }
13528 }
13529 #[inline]
13530 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
13531 Self::SELECTORS.get(i).copied()
13532 }
13533 #[inline]
13534 fn valid_selector(selector: [u8; 4]) -> bool {
13535 Self::SELECTORS.binary_search(&selector).is_ok()
13536 }
13537 #[inline]
13538 #[allow(non_snake_case)]
13539 fn abi_decode_raw(
13540 selector: [u8; 4],
13541 data: &[u8],
13542 ) -> alloy_sol_types::Result<Self> {
13543 static DECODE_SHIMS: &[fn(
13544 &[u8],
13545 ) -> alloy_sol_types::Result<LightClientV2Calls>] = &[
13546 {
13547 fn setPermissionedProver(
13548 data: &[u8],
13549 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13550 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_decode_raw(
13551 data,
13552 )
13553 .map(LightClientV2Calls::setPermissionedProver)
13554 }
13555 setPermissionedProver
13556 },
13557 {
13558 fn stateHistoryCommitments(
13559 data: &[u8],
13560 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13561 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_decode_raw(
13562 data,
13563 )
13564 .map(LightClientV2Calls::stateHistoryCommitments)
13565 }
13566 stateHistoryCommitments
13567 },
13568 {
13569 fn votingStakeTableState(
13570 data: &[u8],
13571 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13572 <votingStakeTableStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
13573 data,
13574 )
13575 .map(LightClientV2Calls::votingStakeTableState)
13576 }
13577 votingStakeTableState
13578 },
13579 {
13580 fn getVersion(
13581 data: &[u8],
13582 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13583 <getVersionCall as alloy_sol_types::SolCall>::abi_decode_raw(
13584 data,
13585 )
13586 .map(LightClientV2Calls::getVersion)
13587 }
13588 getVersion
13589 },
13590 {
13591 fn _getVk(
13592 data: &[u8],
13593 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13594 <_getVkCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
13595 .map(LightClientV2Calls::_getVk)
13596 }
13597 _getVk
13598 },
13599 {
13600 fn updateEpochStartBlock(
13601 data: &[u8],
13602 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13603 <updateEpochStartBlockCall as alloy_sol_types::SolCall>::abi_decode_raw(
13604 data,
13605 )
13606 .map(LightClientV2Calls::updateEpochStartBlock)
13607 }
13608 updateEpochStartBlock
13609 },
13610 {
13611 fn newFinalizedState_0(
13612 data: &[u8],
13613 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13614 <newFinalizedState_0Call as alloy_sol_types::SolCall>::abi_decode_raw(
13615 data,
13616 )
13617 .map(LightClientV2Calls::newFinalizedState_0)
13618 }
13619 newFinalizedState_0
13620 },
13621 {
13622 fn isEpochRoot(
13623 data: &[u8],
13624 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13625 <isEpochRootCall as alloy_sol_types::SolCall>::abi_decode_raw(
13626 data,
13627 )
13628 .map(LightClientV2Calls::isEpochRoot)
13629 }
13630 isEpochRoot
13631 },
13632 {
13633 fn stateHistoryFirstIndex(
13634 data: &[u8],
13635 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13636 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_decode_raw(
13637 data,
13638 )
13639 .map(LightClientV2Calls::stateHistoryFirstIndex)
13640 }
13641 stateHistoryFirstIndex
13642 },
13643 {
13644 fn isGtEpochRoot(
13645 data: &[u8],
13646 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13647 <isGtEpochRootCall as alloy_sol_types::SolCall>::abi_decode_raw(
13648 data,
13649 )
13650 .map(LightClientV2Calls::isGtEpochRoot)
13651 }
13652 isGtEpochRoot
13653 },
13654 {
13655 fn permissionedProver(
13656 data: &[u8],
13657 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13658 <permissionedProverCall as alloy_sol_types::SolCall>::abi_decode_raw(
13659 data,
13660 )
13661 .map(LightClientV2Calls::permissionedProver)
13662 }
13663 permissionedProver
13664 },
13665 {
13666 fn currentBlockNumber(
13667 data: &[u8],
13668 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13669 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_decode_raw(
13670 data,
13671 )
13672 .map(LightClientV2Calls::currentBlockNumber)
13673 }
13674 currentBlockNumber
13675 },
13676 {
13677 fn epochStartBlock(
13678 data: &[u8],
13679 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13680 <epochStartBlockCall as alloy_sol_types::SolCall>::abi_decode_raw(
13681 data,
13682 )
13683 .map(LightClientV2Calls::epochStartBlock)
13684 }
13685 epochStartBlock
13686 },
13687 {
13688 fn genesisStakeTableState(
13689 data: &[u8],
13690 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13691 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
13692 data,
13693 )
13694 .map(LightClientV2Calls::genesisStakeTableState)
13695 }
13696 genesisStakeTableState
13697 },
13698 {
13699 fn setStateHistoryRetentionPeriod(
13700 data: &[u8],
13701 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13702 <setStateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
13703 data,
13704 )
13705 .map(LightClientV2Calls::setStateHistoryRetentionPeriod)
13706 }
13707 setStateHistoryRetentionPeriod
13708 },
13709 {
13710 fn upgradeToAndCall(
13711 data: &[u8],
13712 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13713 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_decode_raw(
13714 data,
13715 )
13716 .map(LightClientV2Calls::upgradeToAndCall)
13717 }
13718 upgradeToAndCall
13719 },
13720 {
13721 fn proxiableUUID(
13722 data: &[u8],
13723 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13724 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_decode_raw(
13725 data,
13726 )
13727 .map(LightClientV2Calls::proxiableUUID)
13728 }
13729 proxiableUUID
13730 },
13731 {
13732 fn disablePermissionedProverMode(
13733 data: &[u8],
13734 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13735 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_decode_raw(
13736 data,
13737 )
13738 .map(LightClientV2Calls::disablePermissionedProverMode)
13739 }
13740 disablePermissionedProverMode
13741 },
13742 {
13743 fn renounceOwnership(
13744 data: &[u8],
13745 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13746 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
13747 data,
13748 )
13749 .map(LightClientV2Calls::renounceOwnership)
13750 }
13751 renounceOwnership
13752 },
13753 {
13754 fn newFinalizedState_1(
13755 data: &[u8],
13756 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13757 <newFinalizedState_1Call as alloy_sol_types::SolCall>::abi_decode_raw(
13758 data,
13759 )
13760 .map(LightClientV2Calls::newFinalizedState_1)
13761 }
13762 newFinalizedState_1
13763 },
13764 {
13765 fn currentEpoch(
13766 data: &[u8],
13767 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13768 <currentEpochCall as alloy_sol_types::SolCall>::abi_decode_raw(
13769 data,
13770 )
13771 .map(LightClientV2Calls::currentEpoch)
13772 }
13773 currentEpoch
13774 },
13775 {
13776 fn isPermissionedProverEnabled(
13777 data: &[u8],
13778 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13779 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_decode_raw(
13780 data,
13781 )
13782 .map(LightClientV2Calls::isPermissionedProverEnabled)
13783 }
13784 isPermissionedProverEnabled
13785 },
13786 {
13787 fn getHotShotCommitment(
13788 data: &[u8],
13789 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13790 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_decode_raw(
13791 data,
13792 )
13793 .map(LightClientV2Calls::getHotShotCommitment)
13794 }
13795 getHotShotCommitment
13796 },
13797 {
13798 fn owner(
13799 data: &[u8],
13800 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13801 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
13802 .map(LightClientV2Calls::owner)
13803 }
13804 owner
13805 },
13806 {
13807 fn epochFromBlockNumber(
13808 data: &[u8],
13809 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13810 <epochFromBlockNumberCall as alloy_sol_types::SolCall>::abi_decode_raw(
13811 data,
13812 )
13813 .map(LightClientV2Calls::epochFromBlockNumber)
13814 }
13815 epochFromBlockNumber
13816 },
13817 {
13818 fn setstateHistoryRetentionPeriod(
13819 data: &[u8],
13820 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13821 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
13822 data,
13823 )
13824 .map(LightClientV2Calls::setstateHistoryRetentionPeriod)
13825 }
13826 setstateHistoryRetentionPeriod
13827 },
13828 {
13829 fn initialize(
13830 data: &[u8],
13831 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13832 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw(
13833 data,
13834 )
13835 .map(LightClientV2Calls::initialize)
13836 }
13837 initialize
13838 },
13839 {
13840 fn finalizedState(
13841 data: &[u8],
13842 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13843 <finalizedStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
13844 data,
13845 )
13846 .map(LightClientV2Calls::finalizedState)
13847 }
13848 finalizedState
13849 },
13850 {
13851 fn UPGRADE_INTERFACE_VERSION(
13852 data: &[u8],
13853 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13854 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_decode_raw(
13855 data,
13856 )
13857 .map(LightClientV2Calls::UPGRADE_INTERFACE_VERSION)
13858 }
13859 UPGRADE_INTERFACE_VERSION
13860 },
13861 {
13862 fn initializeV2(
13863 data: &[u8],
13864 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13865 <initializeV2Call as alloy_sol_types::SolCall>::abi_decode_raw(
13866 data,
13867 )
13868 .map(LightClientV2Calls::initializeV2)
13869 }
13870 initializeV2
13871 },
13872 {
13873 fn stateHistoryRetentionPeriod(
13874 data: &[u8],
13875 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13876 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
13877 data,
13878 )
13879 .map(LightClientV2Calls::stateHistoryRetentionPeriod)
13880 }
13881 stateHistoryRetentionPeriod
13882 },
13883 {
13884 fn genesisState(
13885 data: &[u8],
13886 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13887 <genesisStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
13888 data,
13889 )
13890 .map(LightClientV2Calls::genesisState)
13891 }
13892 genesisState
13893 },
13894 {
13895 fn lagOverEscapeHatchThreshold(
13896 data: &[u8],
13897 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13898 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_decode_raw(
13899 data,
13900 )
13901 .map(LightClientV2Calls::lagOverEscapeHatchThreshold)
13902 }
13903 lagOverEscapeHatchThreshold
13904 },
13905 {
13906 fn blocksPerEpoch(
13907 data: &[u8],
13908 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13909 <blocksPerEpochCall as alloy_sol_types::SolCall>::abi_decode_raw(
13910 data,
13911 )
13912 .map(LightClientV2Calls::blocksPerEpoch)
13913 }
13914 blocksPerEpoch
13915 },
13916 {
13917 fn transferOwnership(
13918 data: &[u8],
13919 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13920 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
13921 data,
13922 )
13923 .map(LightClientV2Calls::transferOwnership)
13924 }
13925 transferOwnership
13926 },
13927 {
13928 fn getStateHistoryCount(
13929 data: &[u8],
13930 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13931 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_decode_raw(
13932 data,
13933 )
13934 .map(LightClientV2Calls::getStateHistoryCount)
13935 }
13936 getStateHistoryCount
13937 },
13938 ];
13939 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
13940 return Err(
13941 alloy_sol_types::Error::unknown_selector(
13942 <Self as alloy_sol_types::SolInterface>::NAME,
13943 selector,
13944 ),
13945 );
13946 };
13947 DECODE_SHIMS[idx](data)
13948 }
13949 #[inline]
13950 #[allow(non_snake_case)]
13951 fn abi_decode_raw_validate(
13952 selector: [u8; 4],
13953 data: &[u8],
13954 ) -> alloy_sol_types::Result<Self> {
13955 static DECODE_VALIDATE_SHIMS: &[fn(
13956 &[u8],
13957 ) -> alloy_sol_types::Result<LightClientV2Calls>] = &[
13958 {
13959 fn setPermissionedProver(
13960 data: &[u8],
13961 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13962 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
13963 data,
13964 )
13965 .map(LightClientV2Calls::setPermissionedProver)
13966 }
13967 setPermissionedProver
13968 },
13969 {
13970 fn stateHistoryCommitments(
13971 data: &[u8],
13972 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13973 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
13974 data,
13975 )
13976 .map(LightClientV2Calls::stateHistoryCommitments)
13977 }
13978 stateHistoryCommitments
13979 },
13980 {
13981 fn votingStakeTableState(
13982 data: &[u8],
13983 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13984 <votingStakeTableStateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
13985 data,
13986 )
13987 .map(LightClientV2Calls::votingStakeTableState)
13988 }
13989 votingStakeTableState
13990 },
13991 {
13992 fn getVersion(
13993 data: &[u8],
13994 ) -> alloy_sol_types::Result<LightClientV2Calls> {
13995 <getVersionCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
13996 data,
13997 )
13998 .map(LightClientV2Calls::getVersion)
13999 }
14000 getVersion
14001 },
14002 {
14003 fn _getVk(
14004 data: &[u8],
14005 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14006 <_getVkCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14007 data,
14008 )
14009 .map(LightClientV2Calls::_getVk)
14010 }
14011 _getVk
14012 },
14013 {
14014 fn updateEpochStartBlock(
14015 data: &[u8],
14016 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14017 <updateEpochStartBlockCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14018 data,
14019 )
14020 .map(LightClientV2Calls::updateEpochStartBlock)
14021 }
14022 updateEpochStartBlock
14023 },
14024 {
14025 fn newFinalizedState_0(
14026 data: &[u8],
14027 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14028 <newFinalizedState_0Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14029 data,
14030 )
14031 .map(LightClientV2Calls::newFinalizedState_0)
14032 }
14033 newFinalizedState_0
14034 },
14035 {
14036 fn isEpochRoot(
14037 data: &[u8],
14038 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14039 <isEpochRootCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14040 data,
14041 )
14042 .map(LightClientV2Calls::isEpochRoot)
14043 }
14044 isEpochRoot
14045 },
14046 {
14047 fn stateHistoryFirstIndex(
14048 data: &[u8],
14049 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14050 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14051 data,
14052 )
14053 .map(LightClientV2Calls::stateHistoryFirstIndex)
14054 }
14055 stateHistoryFirstIndex
14056 },
14057 {
14058 fn isGtEpochRoot(
14059 data: &[u8],
14060 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14061 <isGtEpochRootCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14062 data,
14063 )
14064 .map(LightClientV2Calls::isGtEpochRoot)
14065 }
14066 isGtEpochRoot
14067 },
14068 {
14069 fn permissionedProver(
14070 data: &[u8],
14071 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14072 <permissionedProverCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14073 data,
14074 )
14075 .map(LightClientV2Calls::permissionedProver)
14076 }
14077 permissionedProver
14078 },
14079 {
14080 fn currentBlockNumber(
14081 data: &[u8],
14082 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14083 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14084 data,
14085 )
14086 .map(LightClientV2Calls::currentBlockNumber)
14087 }
14088 currentBlockNumber
14089 },
14090 {
14091 fn epochStartBlock(
14092 data: &[u8],
14093 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14094 <epochStartBlockCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14095 data,
14096 )
14097 .map(LightClientV2Calls::epochStartBlock)
14098 }
14099 epochStartBlock
14100 },
14101 {
14102 fn genesisStakeTableState(
14103 data: &[u8],
14104 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14105 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14106 data,
14107 )
14108 .map(LightClientV2Calls::genesisStakeTableState)
14109 }
14110 genesisStakeTableState
14111 },
14112 {
14113 fn setStateHistoryRetentionPeriod(
14114 data: &[u8],
14115 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14116 <setStateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14117 data,
14118 )
14119 .map(LightClientV2Calls::setStateHistoryRetentionPeriod)
14120 }
14121 setStateHistoryRetentionPeriod
14122 },
14123 {
14124 fn upgradeToAndCall(
14125 data: &[u8],
14126 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14127 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14128 data,
14129 )
14130 .map(LightClientV2Calls::upgradeToAndCall)
14131 }
14132 upgradeToAndCall
14133 },
14134 {
14135 fn proxiableUUID(
14136 data: &[u8],
14137 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14138 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14139 data,
14140 )
14141 .map(LightClientV2Calls::proxiableUUID)
14142 }
14143 proxiableUUID
14144 },
14145 {
14146 fn disablePermissionedProverMode(
14147 data: &[u8],
14148 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14149 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14150 data,
14151 )
14152 .map(LightClientV2Calls::disablePermissionedProverMode)
14153 }
14154 disablePermissionedProverMode
14155 },
14156 {
14157 fn renounceOwnership(
14158 data: &[u8],
14159 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14160 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14161 data,
14162 )
14163 .map(LightClientV2Calls::renounceOwnership)
14164 }
14165 renounceOwnership
14166 },
14167 {
14168 fn newFinalizedState_1(
14169 data: &[u8],
14170 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14171 <newFinalizedState_1Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14172 data,
14173 )
14174 .map(LightClientV2Calls::newFinalizedState_1)
14175 }
14176 newFinalizedState_1
14177 },
14178 {
14179 fn currentEpoch(
14180 data: &[u8],
14181 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14182 <currentEpochCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14183 data,
14184 )
14185 .map(LightClientV2Calls::currentEpoch)
14186 }
14187 currentEpoch
14188 },
14189 {
14190 fn isPermissionedProverEnabled(
14191 data: &[u8],
14192 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14193 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14194 data,
14195 )
14196 .map(LightClientV2Calls::isPermissionedProverEnabled)
14197 }
14198 isPermissionedProverEnabled
14199 },
14200 {
14201 fn getHotShotCommitment(
14202 data: &[u8],
14203 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14204 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14205 data,
14206 )
14207 .map(LightClientV2Calls::getHotShotCommitment)
14208 }
14209 getHotShotCommitment
14210 },
14211 {
14212 fn owner(
14213 data: &[u8],
14214 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14215 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14216 data,
14217 )
14218 .map(LightClientV2Calls::owner)
14219 }
14220 owner
14221 },
14222 {
14223 fn epochFromBlockNumber(
14224 data: &[u8],
14225 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14226 <epochFromBlockNumberCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14227 data,
14228 )
14229 .map(LightClientV2Calls::epochFromBlockNumber)
14230 }
14231 epochFromBlockNumber
14232 },
14233 {
14234 fn setstateHistoryRetentionPeriod(
14235 data: &[u8],
14236 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14237 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14238 data,
14239 )
14240 .map(LightClientV2Calls::setstateHistoryRetentionPeriod)
14241 }
14242 setstateHistoryRetentionPeriod
14243 },
14244 {
14245 fn initialize(
14246 data: &[u8],
14247 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14248 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14249 data,
14250 )
14251 .map(LightClientV2Calls::initialize)
14252 }
14253 initialize
14254 },
14255 {
14256 fn finalizedState(
14257 data: &[u8],
14258 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14259 <finalizedStateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14260 data,
14261 )
14262 .map(LightClientV2Calls::finalizedState)
14263 }
14264 finalizedState
14265 },
14266 {
14267 fn UPGRADE_INTERFACE_VERSION(
14268 data: &[u8],
14269 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14270 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14271 data,
14272 )
14273 .map(LightClientV2Calls::UPGRADE_INTERFACE_VERSION)
14274 }
14275 UPGRADE_INTERFACE_VERSION
14276 },
14277 {
14278 fn initializeV2(
14279 data: &[u8],
14280 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14281 <initializeV2Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14282 data,
14283 )
14284 .map(LightClientV2Calls::initializeV2)
14285 }
14286 initializeV2
14287 },
14288 {
14289 fn stateHistoryRetentionPeriod(
14290 data: &[u8],
14291 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14292 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14293 data,
14294 )
14295 .map(LightClientV2Calls::stateHistoryRetentionPeriod)
14296 }
14297 stateHistoryRetentionPeriod
14298 },
14299 {
14300 fn genesisState(
14301 data: &[u8],
14302 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14303 <genesisStateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14304 data,
14305 )
14306 .map(LightClientV2Calls::genesisState)
14307 }
14308 genesisState
14309 },
14310 {
14311 fn lagOverEscapeHatchThreshold(
14312 data: &[u8],
14313 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14314 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14315 data,
14316 )
14317 .map(LightClientV2Calls::lagOverEscapeHatchThreshold)
14318 }
14319 lagOverEscapeHatchThreshold
14320 },
14321 {
14322 fn blocksPerEpoch(
14323 data: &[u8],
14324 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14325 <blocksPerEpochCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14326 data,
14327 )
14328 .map(LightClientV2Calls::blocksPerEpoch)
14329 }
14330 blocksPerEpoch
14331 },
14332 {
14333 fn transferOwnership(
14334 data: &[u8],
14335 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14336 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14337 data,
14338 )
14339 .map(LightClientV2Calls::transferOwnership)
14340 }
14341 transferOwnership
14342 },
14343 {
14344 fn getStateHistoryCount(
14345 data: &[u8],
14346 ) -> alloy_sol_types::Result<LightClientV2Calls> {
14347 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
14348 data,
14349 )
14350 .map(LightClientV2Calls::getStateHistoryCount)
14351 }
14352 getStateHistoryCount
14353 },
14354 ];
14355 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
14356 return Err(
14357 alloy_sol_types::Error::unknown_selector(
14358 <Self as alloy_sol_types::SolInterface>::NAME,
14359 selector,
14360 ),
14361 );
14362 };
14363 DECODE_VALIDATE_SHIMS[idx](data)
14364 }
14365 #[inline]
14366 fn abi_encoded_size(&self) -> usize {
14367 match self {
14368 Self::UPGRADE_INTERFACE_VERSION(inner) => {
14369 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encoded_size(
14370 inner,
14371 )
14372 }
14373 Self::_getVk(inner) => {
14374 <_getVkCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
14375 }
14376 Self::blocksPerEpoch(inner) => {
14377 <blocksPerEpochCall as alloy_sol_types::SolCall>::abi_encoded_size(
14378 inner,
14379 )
14380 }
14381 Self::currentBlockNumber(inner) => {
14382 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_encoded_size(
14383 inner,
14384 )
14385 }
14386 Self::currentEpoch(inner) => {
14387 <currentEpochCall as alloy_sol_types::SolCall>::abi_encoded_size(
14388 inner,
14389 )
14390 }
14391 Self::disablePermissionedProverMode(inner) => {
14392 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_encoded_size(
14393 inner,
14394 )
14395 }
14396 Self::epochFromBlockNumber(inner) => {
14397 <epochFromBlockNumberCall as alloy_sol_types::SolCall>::abi_encoded_size(
14398 inner,
14399 )
14400 }
14401 Self::epochStartBlock(inner) => {
14402 <epochStartBlockCall as alloy_sol_types::SolCall>::abi_encoded_size(
14403 inner,
14404 )
14405 }
14406 Self::finalizedState(inner) => {
14407 <finalizedStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
14408 inner,
14409 )
14410 }
14411 Self::genesisStakeTableState(inner) => {
14412 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
14413 inner,
14414 )
14415 }
14416 Self::genesisState(inner) => {
14417 <genesisStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
14418 inner,
14419 )
14420 }
14421 Self::getHotShotCommitment(inner) => {
14422 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_encoded_size(
14423 inner,
14424 )
14425 }
14426 Self::getStateHistoryCount(inner) => {
14427 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_encoded_size(
14428 inner,
14429 )
14430 }
14431 Self::getVersion(inner) => {
14432 <getVersionCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
14433 }
14434 Self::initialize(inner) => {
14435 <initializeCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
14436 }
14437 Self::initializeV2(inner) => {
14438 <initializeV2Call as alloy_sol_types::SolCall>::abi_encoded_size(
14439 inner,
14440 )
14441 }
14442 Self::isEpochRoot(inner) => {
14443 <isEpochRootCall as alloy_sol_types::SolCall>::abi_encoded_size(
14444 inner,
14445 )
14446 }
14447 Self::isGtEpochRoot(inner) => {
14448 <isGtEpochRootCall as alloy_sol_types::SolCall>::abi_encoded_size(
14449 inner,
14450 )
14451 }
14452 Self::isPermissionedProverEnabled(inner) => {
14453 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_encoded_size(
14454 inner,
14455 )
14456 }
14457 Self::lagOverEscapeHatchThreshold(inner) => {
14458 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_encoded_size(
14459 inner,
14460 )
14461 }
14462 Self::newFinalizedState_0(inner) => {
14463 <newFinalizedState_0Call as alloy_sol_types::SolCall>::abi_encoded_size(
14464 inner,
14465 )
14466 }
14467 Self::newFinalizedState_1(inner) => {
14468 <newFinalizedState_1Call as alloy_sol_types::SolCall>::abi_encoded_size(
14469 inner,
14470 )
14471 }
14472 Self::owner(inner) => {
14473 <ownerCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
14474 }
14475 Self::permissionedProver(inner) => {
14476 <permissionedProverCall as alloy_sol_types::SolCall>::abi_encoded_size(
14477 inner,
14478 )
14479 }
14480 Self::proxiableUUID(inner) => {
14481 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encoded_size(
14482 inner,
14483 )
14484 }
14485 Self::renounceOwnership(inner) => {
14486 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
14487 inner,
14488 )
14489 }
14490 Self::setPermissionedProver(inner) => {
14491 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_encoded_size(
14492 inner,
14493 )
14494 }
14495 Self::setStateHistoryRetentionPeriod(inner) => {
14496 <setStateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(
14497 inner,
14498 )
14499 }
14500 Self::setstateHistoryRetentionPeriod(inner) => {
14501 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(
14502 inner,
14503 )
14504 }
14505 Self::stateHistoryCommitments(inner) => {
14506 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_encoded_size(
14507 inner,
14508 )
14509 }
14510 Self::stateHistoryFirstIndex(inner) => {
14511 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_encoded_size(
14512 inner,
14513 )
14514 }
14515 Self::stateHistoryRetentionPeriod(inner) => {
14516 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(
14517 inner,
14518 )
14519 }
14520 Self::transferOwnership(inner) => {
14521 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
14522 inner,
14523 )
14524 }
14525 Self::updateEpochStartBlock(inner) => {
14526 <updateEpochStartBlockCall as alloy_sol_types::SolCall>::abi_encoded_size(
14527 inner,
14528 )
14529 }
14530 Self::upgradeToAndCall(inner) => {
14531 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encoded_size(
14532 inner,
14533 )
14534 }
14535 Self::votingStakeTableState(inner) => {
14536 <votingStakeTableStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
14537 inner,
14538 )
14539 }
14540 }
14541 }
14542 #[inline]
14543 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
14544 match self {
14545 Self::UPGRADE_INTERFACE_VERSION(inner) => {
14546 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encode_raw(
14547 inner,
14548 out,
14549 )
14550 }
14551 Self::_getVk(inner) => {
14552 <_getVkCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
14553 }
14554 Self::blocksPerEpoch(inner) => {
14555 <blocksPerEpochCall as alloy_sol_types::SolCall>::abi_encode_raw(
14556 inner,
14557 out,
14558 )
14559 }
14560 Self::currentBlockNumber(inner) => {
14561 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_encode_raw(
14562 inner,
14563 out,
14564 )
14565 }
14566 Self::currentEpoch(inner) => {
14567 <currentEpochCall as alloy_sol_types::SolCall>::abi_encode_raw(
14568 inner,
14569 out,
14570 )
14571 }
14572 Self::disablePermissionedProverMode(inner) => {
14573 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_encode_raw(
14574 inner,
14575 out,
14576 )
14577 }
14578 Self::epochFromBlockNumber(inner) => {
14579 <epochFromBlockNumberCall as alloy_sol_types::SolCall>::abi_encode_raw(
14580 inner,
14581 out,
14582 )
14583 }
14584 Self::epochStartBlock(inner) => {
14585 <epochStartBlockCall as alloy_sol_types::SolCall>::abi_encode_raw(
14586 inner,
14587 out,
14588 )
14589 }
14590 Self::finalizedState(inner) => {
14591 <finalizedStateCall as alloy_sol_types::SolCall>::abi_encode_raw(
14592 inner,
14593 out,
14594 )
14595 }
14596 Self::genesisStakeTableState(inner) => {
14597 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_encode_raw(
14598 inner,
14599 out,
14600 )
14601 }
14602 Self::genesisState(inner) => {
14603 <genesisStateCall as alloy_sol_types::SolCall>::abi_encode_raw(
14604 inner,
14605 out,
14606 )
14607 }
14608 Self::getHotShotCommitment(inner) => {
14609 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_encode_raw(
14610 inner,
14611 out,
14612 )
14613 }
14614 Self::getStateHistoryCount(inner) => {
14615 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_encode_raw(
14616 inner,
14617 out,
14618 )
14619 }
14620 Self::getVersion(inner) => {
14621 <getVersionCall as alloy_sol_types::SolCall>::abi_encode_raw(
14622 inner,
14623 out,
14624 )
14625 }
14626 Self::initialize(inner) => {
14627 <initializeCall as alloy_sol_types::SolCall>::abi_encode_raw(
14628 inner,
14629 out,
14630 )
14631 }
14632 Self::initializeV2(inner) => {
14633 <initializeV2Call as alloy_sol_types::SolCall>::abi_encode_raw(
14634 inner,
14635 out,
14636 )
14637 }
14638 Self::isEpochRoot(inner) => {
14639 <isEpochRootCall as alloy_sol_types::SolCall>::abi_encode_raw(
14640 inner,
14641 out,
14642 )
14643 }
14644 Self::isGtEpochRoot(inner) => {
14645 <isGtEpochRootCall as alloy_sol_types::SolCall>::abi_encode_raw(
14646 inner,
14647 out,
14648 )
14649 }
14650 Self::isPermissionedProverEnabled(inner) => {
14651 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_encode_raw(
14652 inner,
14653 out,
14654 )
14655 }
14656 Self::lagOverEscapeHatchThreshold(inner) => {
14657 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_encode_raw(
14658 inner,
14659 out,
14660 )
14661 }
14662 Self::newFinalizedState_0(inner) => {
14663 <newFinalizedState_0Call as alloy_sol_types::SolCall>::abi_encode_raw(
14664 inner,
14665 out,
14666 )
14667 }
14668 Self::newFinalizedState_1(inner) => {
14669 <newFinalizedState_1Call as alloy_sol_types::SolCall>::abi_encode_raw(
14670 inner,
14671 out,
14672 )
14673 }
14674 Self::owner(inner) => {
14675 <ownerCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
14676 }
14677 Self::permissionedProver(inner) => {
14678 <permissionedProverCall as alloy_sol_types::SolCall>::abi_encode_raw(
14679 inner,
14680 out,
14681 )
14682 }
14683 Self::proxiableUUID(inner) => {
14684 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encode_raw(
14685 inner,
14686 out,
14687 )
14688 }
14689 Self::renounceOwnership(inner) => {
14690 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
14691 inner,
14692 out,
14693 )
14694 }
14695 Self::setPermissionedProver(inner) => {
14696 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_encode_raw(
14697 inner,
14698 out,
14699 )
14700 }
14701 Self::setStateHistoryRetentionPeriod(inner) => {
14702 <setStateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(
14703 inner,
14704 out,
14705 )
14706 }
14707 Self::setstateHistoryRetentionPeriod(inner) => {
14708 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(
14709 inner,
14710 out,
14711 )
14712 }
14713 Self::stateHistoryCommitments(inner) => {
14714 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_encode_raw(
14715 inner,
14716 out,
14717 )
14718 }
14719 Self::stateHistoryFirstIndex(inner) => {
14720 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_encode_raw(
14721 inner,
14722 out,
14723 )
14724 }
14725 Self::stateHistoryRetentionPeriod(inner) => {
14726 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(
14727 inner,
14728 out,
14729 )
14730 }
14731 Self::transferOwnership(inner) => {
14732 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
14733 inner,
14734 out,
14735 )
14736 }
14737 Self::updateEpochStartBlock(inner) => {
14738 <updateEpochStartBlockCall as alloy_sol_types::SolCall>::abi_encode_raw(
14739 inner,
14740 out,
14741 )
14742 }
14743 Self::upgradeToAndCall(inner) => {
14744 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encode_raw(
14745 inner,
14746 out,
14747 )
14748 }
14749 Self::votingStakeTableState(inner) => {
14750 <votingStakeTableStateCall as alloy_sol_types::SolCall>::abi_encode_raw(
14751 inner,
14752 out,
14753 )
14754 }
14755 }
14756 }
14757 }
14758 #[derive(serde::Serialize, serde::Deserialize)]
14760 #[derive(Debug, PartialEq, Eq, Hash)]
14761 pub enum LightClientV2Errors {
14762 #[allow(missing_docs)]
14763 AddressEmptyCode(AddressEmptyCode),
14764 #[allow(missing_docs)]
14765 DeprecatedApi(DeprecatedApi),
14766 #[allow(missing_docs)]
14767 ERC1967InvalidImplementation(ERC1967InvalidImplementation),
14768 #[allow(missing_docs)]
14769 ERC1967NonPayable(ERC1967NonPayable),
14770 #[allow(missing_docs)]
14771 FailedInnerCall(FailedInnerCall),
14772 #[allow(missing_docs)]
14773 InsufficientSnapshotHistory(InsufficientSnapshotHistory),
14774 #[allow(missing_docs)]
14775 InvalidAddress(InvalidAddress),
14776 #[allow(missing_docs)]
14777 InvalidArgs(InvalidArgs),
14778 #[allow(missing_docs)]
14779 InvalidHotShotBlockForCommitmentCheck(InvalidHotShotBlockForCommitmentCheck),
14780 #[allow(missing_docs)]
14781 InvalidInitialization(InvalidInitialization),
14782 #[allow(missing_docs)]
14783 InvalidMaxStateHistory(InvalidMaxStateHistory),
14784 #[allow(missing_docs)]
14785 InvalidProof(InvalidProof),
14786 #[allow(missing_docs)]
14787 InvalidScalar(InvalidScalar),
14788 #[allow(missing_docs)]
14789 MissingEpochRootUpdate(MissingEpochRootUpdate),
14790 #[allow(missing_docs)]
14791 NoChangeRequired(NoChangeRequired),
14792 #[allow(missing_docs)]
14793 NotInitializing(NotInitializing),
14794 #[allow(missing_docs)]
14795 OutdatedState(OutdatedState),
14796 #[allow(missing_docs)]
14797 OwnableInvalidOwner(OwnableInvalidOwner),
14798 #[allow(missing_docs)]
14799 OwnableUnauthorizedAccount(OwnableUnauthorizedAccount),
14800 #[allow(missing_docs)]
14801 ProverNotPermissioned(ProverNotPermissioned),
14802 #[allow(missing_docs)]
14803 UUPSUnauthorizedCallContext(UUPSUnauthorizedCallContext),
14804 #[allow(missing_docs)]
14805 UUPSUnsupportedProxiableUUID(UUPSUnsupportedProxiableUUID),
14806 #[allow(missing_docs)]
14807 WrongStakeTableUsed(WrongStakeTableUsed),
14808 }
14809 #[automatically_derived]
14810 impl LightClientV2Errors {
14811 pub const SELECTORS: &'static [[u8; 4usize]] = &[
14818 [5u8, 28u8, 70u8, 239u8],
14819 [5u8, 176u8, 92u8, 204u8],
14820 [8u8, 10u8, 232u8, 217u8],
14821 [9u8, 189u8, 227u8, 57u8],
14822 [17u8, 140u8, 218u8, 167u8],
14823 [20u8, 37u8, 234u8, 66u8],
14824 [30u8, 79u8, 189u8, 247u8],
14825 [76u8, 156u8, 140u8, 227u8],
14826 [78u8, 64u8, 92u8, 141u8],
14827 [81u8, 97u8, 128u8, 137u8],
14828 [97u8, 90u8, 146u8, 100u8],
14829 [153u8, 150u8, 179u8, 21u8],
14830 [161u8, 186u8, 7u8, 238u8],
14831 [163u8, 166u8, 71u8, 128u8],
14832 [168u8, 99u8, 174u8, 201u8],
14833 [170u8, 29u8, 73u8, 164u8],
14834 [176u8, 180u8, 56u8, 119u8],
14835 [179u8, 152u8, 151u8, 159u8],
14836 [215u8, 230u8, 188u8, 248u8],
14837 [224u8, 124u8, 141u8, 186u8],
14838 [230u8, 196u8, 36u8, 123u8],
14839 [244u8, 160u8, 238u8, 224u8],
14840 [249u8, 46u8, 232u8, 169u8],
14841 ];
14842 }
14843 #[automatically_derived]
14844 impl alloy_sol_types::SolInterface for LightClientV2Errors {
14845 const NAME: &'static str = "LightClientV2Errors";
14846 const MIN_DATA_LENGTH: usize = 0usize;
14847 const COUNT: usize = 23usize;
14848 #[inline]
14849 fn selector(&self) -> [u8; 4] {
14850 match self {
14851 Self::AddressEmptyCode(_) => {
14852 <AddressEmptyCode as alloy_sol_types::SolError>::SELECTOR
14853 }
14854 Self::DeprecatedApi(_) => {
14855 <DeprecatedApi as alloy_sol_types::SolError>::SELECTOR
14856 }
14857 Self::ERC1967InvalidImplementation(_) => {
14858 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::SELECTOR
14859 }
14860 Self::ERC1967NonPayable(_) => {
14861 <ERC1967NonPayable as alloy_sol_types::SolError>::SELECTOR
14862 }
14863 Self::FailedInnerCall(_) => {
14864 <FailedInnerCall as alloy_sol_types::SolError>::SELECTOR
14865 }
14866 Self::InsufficientSnapshotHistory(_) => {
14867 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::SELECTOR
14868 }
14869 Self::InvalidAddress(_) => {
14870 <InvalidAddress as alloy_sol_types::SolError>::SELECTOR
14871 }
14872 Self::InvalidArgs(_) => {
14873 <InvalidArgs as alloy_sol_types::SolError>::SELECTOR
14874 }
14875 Self::InvalidHotShotBlockForCommitmentCheck(_) => {
14876 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::SELECTOR
14877 }
14878 Self::InvalidInitialization(_) => {
14879 <InvalidInitialization as alloy_sol_types::SolError>::SELECTOR
14880 }
14881 Self::InvalidMaxStateHistory(_) => {
14882 <InvalidMaxStateHistory as alloy_sol_types::SolError>::SELECTOR
14883 }
14884 Self::InvalidProof(_) => {
14885 <InvalidProof as alloy_sol_types::SolError>::SELECTOR
14886 }
14887 Self::InvalidScalar(_) => {
14888 <InvalidScalar as alloy_sol_types::SolError>::SELECTOR
14889 }
14890 Self::MissingEpochRootUpdate(_) => {
14891 <MissingEpochRootUpdate as alloy_sol_types::SolError>::SELECTOR
14892 }
14893 Self::NoChangeRequired(_) => {
14894 <NoChangeRequired as alloy_sol_types::SolError>::SELECTOR
14895 }
14896 Self::NotInitializing(_) => {
14897 <NotInitializing as alloy_sol_types::SolError>::SELECTOR
14898 }
14899 Self::OutdatedState(_) => {
14900 <OutdatedState as alloy_sol_types::SolError>::SELECTOR
14901 }
14902 Self::OwnableInvalidOwner(_) => {
14903 <OwnableInvalidOwner as alloy_sol_types::SolError>::SELECTOR
14904 }
14905 Self::OwnableUnauthorizedAccount(_) => {
14906 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::SELECTOR
14907 }
14908 Self::ProverNotPermissioned(_) => {
14909 <ProverNotPermissioned as alloy_sol_types::SolError>::SELECTOR
14910 }
14911 Self::UUPSUnauthorizedCallContext(_) => {
14912 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::SELECTOR
14913 }
14914 Self::UUPSUnsupportedProxiableUUID(_) => {
14915 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::SELECTOR
14916 }
14917 Self::WrongStakeTableUsed(_) => {
14918 <WrongStakeTableUsed as alloy_sol_types::SolError>::SELECTOR
14919 }
14920 }
14921 }
14922 #[inline]
14923 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
14924 Self::SELECTORS.get(i).copied()
14925 }
14926 #[inline]
14927 fn valid_selector(selector: [u8; 4]) -> bool {
14928 Self::SELECTORS.binary_search(&selector).is_ok()
14929 }
14930 #[inline]
14931 #[allow(non_snake_case)]
14932 fn abi_decode_raw(
14933 selector: [u8; 4],
14934 data: &[u8],
14935 ) -> alloy_sol_types::Result<Self> {
14936 static DECODE_SHIMS: &[fn(
14937 &[u8],
14938 ) -> alloy_sol_types::Result<LightClientV2Errors>] = &[
14939 {
14940 fn OutdatedState(
14941 data: &[u8],
14942 ) -> alloy_sol_types::Result<LightClientV2Errors> {
14943 <OutdatedState as alloy_sol_types::SolError>::abi_decode_raw(
14944 data,
14945 )
14946 .map(LightClientV2Errors::OutdatedState)
14947 }
14948 OutdatedState
14949 },
14950 {
14951 fn InvalidScalar(
14952 data: &[u8],
14953 ) -> alloy_sol_types::Result<LightClientV2Errors> {
14954 <InvalidScalar as alloy_sol_types::SolError>::abi_decode_raw(
14955 data,
14956 )
14957 .map(LightClientV2Errors::InvalidScalar)
14958 }
14959 InvalidScalar
14960 },
14961 {
14962 fn MissingEpochRootUpdate(
14963 data: &[u8],
14964 ) -> alloy_sol_types::Result<LightClientV2Errors> {
14965 <MissingEpochRootUpdate as alloy_sol_types::SolError>::abi_decode_raw(
14966 data,
14967 )
14968 .map(LightClientV2Errors::MissingEpochRootUpdate)
14969 }
14970 MissingEpochRootUpdate
14971 },
14972 {
14973 fn InvalidProof(
14974 data: &[u8],
14975 ) -> alloy_sol_types::Result<LightClientV2Errors> {
14976 <InvalidProof as alloy_sol_types::SolError>::abi_decode_raw(data)
14977 .map(LightClientV2Errors::InvalidProof)
14978 }
14979 InvalidProof
14980 },
14981 {
14982 fn OwnableUnauthorizedAccount(
14983 data: &[u8],
14984 ) -> alloy_sol_types::Result<LightClientV2Errors> {
14985 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_decode_raw(
14986 data,
14987 )
14988 .map(LightClientV2Errors::OwnableUnauthorizedAccount)
14989 }
14990 OwnableUnauthorizedAccount
14991 },
14992 {
14993 fn FailedInnerCall(
14994 data: &[u8],
14995 ) -> alloy_sol_types::Result<LightClientV2Errors> {
14996 <FailedInnerCall as alloy_sol_types::SolError>::abi_decode_raw(
14997 data,
14998 )
14999 .map(LightClientV2Errors::FailedInnerCall)
15000 }
15001 FailedInnerCall
15002 },
15003 {
15004 fn OwnableInvalidOwner(
15005 data: &[u8],
15006 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15007 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_decode_raw(
15008 data,
15009 )
15010 .map(LightClientV2Errors::OwnableInvalidOwner)
15011 }
15012 OwnableInvalidOwner
15013 },
15014 {
15015 fn ERC1967InvalidImplementation(
15016 data: &[u8],
15017 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15018 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_decode_raw(
15019 data,
15020 )
15021 .map(LightClientV2Errors::ERC1967InvalidImplementation)
15022 }
15023 ERC1967InvalidImplementation
15024 },
15025 {
15026 fn DeprecatedApi(
15027 data: &[u8],
15028 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15029 <DeprecatedApi as alloy_sol_types::SolError>::abi_decode_raw(
15030 data,
15031 )
15032 .map(LightClientV2Errors::DeprecatedApi)
15033 }
15034 DeprecatedApi
15035 },
15036 {
15037 fn WrongStakeTableUsed(
15038 data: &[u8],
15039 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15040 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_decode_raw(
15041 data,
15042 )
15043 .map(LightClientV2Errors::WrongStakeTableUsed)
15044 }
15045 WrongStakeTableUsed
15046 },
15047 {
15048 fn InvalidHotShotBlockForCommitmentCheck(
15049 data: &[u8],
15050 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15051 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_decode_raw(
15052 data,
15053 )
15054 .map(
15055 LightClientV2Errors::InvalidHotShotBlockForCommitmentCheck,
15056 )
15057 }
15058 InvalidHotShotBlockForCommitmentCheck
15059 },
15060 {
15061 fn AddressEmptyCode(
15062 data: &[u8],
15063 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15064 <AddressEmptyCode as alloy_sol_types::SolError>::abi_decode_raw(
15065 data,
15066 )
15067 .map(LightClientV2Errors::AddressEmptyCode)
15068 }
15069 AddressEmptyCode
15070 },
15071 {
15072 fn InvalidArgs(
15073 data: &[u8],
15074 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15075 <InvalidArgs as alloy_sol_types::SolError>::abi_decode_raw(data)
15076 .map(LightClientV2Errors::InvalidArgs)
15077 }
15078 InvalidArgs
15079 },
15080 {
15081 fn ProverNotPermissioned(
15082 data: &[u8],
15083 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15084 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_decode_raw(
15085 data,
15086 )
15087 .map(LightClientV2Errors::ProverNotPermissioned)
15088 }
15089 ProverNotPermissioned
15090 },
15091 {
15092 fn NoChangeRequired(
15093 data: &[u8],
15094 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15095 <NoChangeRequired as alloy_sol_types::SolError>::abi_decode_raw(
15096 data,
15097 )
15098 .map(LightClientV2Errors::NoChangeRequired)
15099 }
15100 NoChangeRequired
15101 },
15102 {
15103 fn UUPSUnsupportedProxiableUUID(
15104 data: &[u8],
15105 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15106 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_decode_raw(
15107 data,
15108 )
15109 .map(LightClientV2Errors::UUPSUnsupportedProxiableUUID)
15110 }
15111 UUPSUnsupportedProxiableUUID
15112 },
15113 {
15114 fn InsufficientSnapshotHistory(
15115 data: &[u8],
15116 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15117 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_decode_raw(
15118 data,
15119 )
15120 .map(LightClientV2Errors::InsufficientSnapshotHistory)
15121 }
15122 InsufficientSnapshotHistory
15123 },
15124 {
15125 fn ERC1967NonPayable(
15126 data: &[u8],
15127 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15128 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_decode_raw(
15129 data,
15130 )
15131 .map(LightClientV2Errors::ERC1967NonPayable)
15132 }
15133 ERC1967NonPayable
15134 },
15135 {
15136 fn NotInitializing(
15137 data: &[u8],
15138 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15139 <NotInitializing as alloy_sol_types::SolError>::abi_decode_raw(
15140 data,
15141 )
15142 .map(LightClientV2Errors::NotInitializing)
15143 }
15144 NotInitializing
15145 },
15146 {
15147 fn UUPSUnauthorizedCallContext(
15148 data: &[u8],
15149 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15150 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_decode_raw(
15151 data,
15152 )
15153 .map(LightClientV2Errors::UUPSUnauthorizedCallContext)
15154 }
15155 UUPSUnauthorizedCallContext
15156 },
15157 {
15158 fn InvalidAddress(
15159 data: &[u8],
15160 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15161 <InvalidAddress as alloy_sol_types::SolError>::abi_decode_raw(
15162 data,
15163 )
15164 .map(LightClientV2Errors::InvalidAddress)
15165 }
15166 InvalidAddress
15167 },
15168 {
15169 fn InvalidMaxStateHistory(
15170 data: &[u8],
15171 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15172 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_decode_raw(
15173 data,
15174 )
15175 .map(LightClientV2Errors::InvalidMaxStateHistory)
15176 }
15177 InvalidMaxStateHistory
15178 },
15179 {
15180 fn InvalidInitialization(
15181 data: &[u8],
15182 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15183 <InvalidInitialization as alloy_sol_types::SolError>::abi_decode_raw(
15184 data,
15185 )
15186 .map(LightClientV2Errors::InvalidInitialization)
15187 }
15188 InvalidInitialization
15189 },
15190 ];
15191 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
15192 return Err(
15193 alloy_sol_types::Error::unknown_selector(
15194 <Self as alloy_sol_types::SolInterface>::NAME,
15195 selector,
15196 ),
15197 );
15198 };
15199 DECODE_SHIMS[idx](data)
15200 }
15201 #[inline]
15202 #[allow(non_snake_case)]
15203 fn abi_decode_raw_validate(
15204 selector: [u8; 4],
15205 data: &[u8],
15206 ) -> alloy_sol_types::Result<Self> {
15207 static DECODE_VALIDATE_SHIMS: &[fn(
15208 &[u8],
15209 ) -> alloy_sol_types::Result<LightClientV2Errors>] = &[
15210 {
15211 fn OutdatedState(
15212 data: &[u8],
15213 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15214 <OutdatedState as alloy_sol_types::SolError>::abi_decode_raw_validate(
15215 data,
15216 )
15217 .map(LightClientV2Errors::OutdatedState)
15218 }
15219 OutdatedState
15220 },
15221 {
15222 fn InvalidScalar(
15223 data: &[u8],
15224 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15225 <InvalidScalar as alloy_sol_types::SolError>::abi_decode_raw_validate(
15226 data,
15227 )
15228 .map(LightClientV2Errors::InvalidScalar)
15229 }
15230 InvalidScalar
15231 },
15232 {
15233 fn MissingEpochRootUpdate(
15234 data: &[u8],
15235 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15236 <MissingEpochRootUpdate as alloy_sol_types::SolError>::abi_decode_raw_validate(
15237 data,
15238 )
15239 .map(LightClientV2Errors::MissingEpochRootUpdate)
15240 }
15241 MissingEpochRootUpdate
15242 },
15243 {
15244 fn InvalidProof(
15245 data: &[u8],
15246 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15247 <InvalidProof as alloy_sol_types::SolError>::abi_decode_raw_validate(
15248 data,
15249 )
15250 .map(LightClientV2Errors::InvalidProof)
15251 }
15252 InvalidProof
15253 },
15254 {
15255 fn OwnableUnauthorizedAccount(
15256 data: &[u8],
15257 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15258 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_decode_raw_validate(
15259 data,
15260 )
15261 .map(LightClientV2Errors::OwnableUnauthorizedAccount)
15262 }
15263 OwnableUnauthorizedAccount
15264 },
15265 {
15266 fn FailedInnerCall(
15267 data: &[u8],
15268 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15269 <FailedInnerCall as alloy_sol_types::SolError>::abi_decode_raw_validate(
15270 data,
15271 )
15272 .map(LightClientV2Errors::FailedInnerCall)
15273 }
15274 FailedInnerCall
15275 },
15276 {
15277 fn OwnableInvalidOwner(
15278 data: &[u8],
15279 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15280 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_decode_raw_validate(
15281 data,
15282 )
15283 .map(LightClientV2Errors::OwnableInvalidOwner)
15284 }
15285 OwnableInvalidOwner
15286 },
15287 {
15288 fn ERC1967InvalidImplementation(
15289 data: &[u8],
15290 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15291 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_decode_raw_validate(
15292 data,
15293 )
15294 .map(LightClientV2Errors::ERC1967InvalidImplementation)
15295 }
15296 ERC1967InvalidImplementation
15297 },
15298 {
15299 fn DeprecatedApi(
15300 data: &[u8],
15301 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15302 <DeprecatedApi as alloy_sol_types::SolError>::abi_decode_raw_validate(
15303 data,
15304 )
15305 .map(LightClientV2Errors::DeprecatedApi)
15306 }
15307 DeprecatedApi
15308 },
15309 {
15310 fn WrongStakeTableUsed(
15311 data: &[u8],
15312 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15313 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_decode_raw_validate(
15314 data,
15315 )
15316 .map(LightClientV2Errors::WrongStakeTableUsed)
15317 }
15318 WrongStakeTableUsed
15319 },
15320 {
15321 fn InvalidHotShotBlockForCommitmentCheck(
15322 data: &[u8],
15323 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15324 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_decode_raw_validate(
15325 data,
15326 )
15327 .map(
15328 LightClientV2Errors::InvalidHotShotBlockForCommitmentCheck,
15329 )
15330 }
15331 InvalidHotShotBlockForCommitmentCheck
15332 },
15333 {
15334 fn AddressEmptyCode(
15335 data: &[u8],
15336 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15337 <AddressEmptyCode as alloy_sol_types::SolError>::abi_decode_raw_validate(
15338 data,
15339 )
15340 .map(LightClientV2Errors::AddressEmptyCode)
15341 }
15342 AddressEmptyCode
15343 },
15344 {
15345 fn InvalidArgs(
15346 data: &[u8],
15347 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15348 <InvalidArgs as alloy_sol_types::SolError>::abi_decode_raw_validate(
15349 data,
15350 )
15351 .map(LightClientV2Errors::InvalidArgs)
15352 }
15353 InvalidArgs
15354 },
15355 {
15356 fn ProverNotPermissioned(
15357 data: &[u8],
15358 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15359 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_decode_raw_validate(
15360 data,
15361 )
15362 .map(LightClientV2Errors::ProverNotPermissioned)
15363 }
15364 ProverNotPermissioned
15365 },
15366 {
15367 fn NoChangeRequired(
15368 data: &[u8],
15369 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15370 <NoChangeRequired as alloy_sol_types::SolError>::abi_decode_raw_validate(
15371 data,
15372 )
15373 .map(LightClientV2Errors::NoChangeRequired)
15374 }
15375 NoChangeRequired
15376 },
15377 {
15378 fn UUPSUnsupportedProxiableUUID(
15379 data: &[u8],
15380 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15381 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_decode_raw_validate(
15382 data,
15383 )
15384 .map(LightClientV2Errors::UUPSUnsupportedProxiableUUID)
15385 }
15386 UUPSUnsupportedProxiableUUID
15387 },
15388 {
15389 fn InsufficientSnapshotHistory(
15390 data: &[u8],
15391 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15392 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_decode_raw_validate(
15393 data,
15394 )
15395 .map(LightClientV2Errors::InsufficientSnapshotHistory)
15396 }
15397 InsufficientSnapshotHistory
15398 },
15399 {
15400 fn ERC1967NonPayable(
15401 data: &[u8],
15402 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15403 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_decode_raw_validate(
15404 data,
15405 )
15406 .map(LightClientV2Errors::ERC1967NonPayable)
15407 }
15408 ERC1967NonPayable
15409 },
15410 {
15411 fn NotInitializing(
15412 data: &[u8],
15413 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15414 <NotInitializing as alloy_sol_types::SolError>::abi_decode_raw_validate(
15415 data,
15416 )
15417 .map(LightClientV2Errors::NotInitializing)
15418 }
15419 NotInitializing
15420 },
15421 {
15422 fn UUPSUnauthorizedCallContext(
15423 data: &[u8],
15424 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15425 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_decode_raw_validate(
15426 data,
15427 )
15428 .map(LightClientV2Errors::UUPSUnauthorizedCallContext)
15429 }
15430 UUPSUnauthorizedCallContext
15431 },
15432 {
15433 fn InvalidAddress(
15434 data: &[u8],
15435 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15436 <InvalidAddress as alloy_sol_types::SolError>::abi_decode_raw_validate(
15437 data,
15438 )
15439 .map(LightClientV2Errors::InvalidAddress)
15440 }
15441 InvalidAddress
15442 },
15443 {
15444 fn InvalidMaxStateHistory(
15445 data: &[u8],
15446 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15447 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_decode_raw_validate(
15448 data,
15449 )
15450 .map(LightClientV2Errors::InvalidMaxStateHistory)
15451 }
15452 InvalidMaxStateHistory
15453 },
15454 {
15455 fn InvalidInitialization(
15456 data: &[u8],
15457 ) -> alloy_sol_types::Result<LightClientV2Errors> {
15458 <InvalidInitialization as alloy_sol_types::SolError>::abi_decode_raw_validate(
15459 data,
15460 )
15461 .map(LightClientV2Errors::InvalidInitialization)
15462 }
15463 InvalidInitialization
15464 },
15465 ];
15466 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
15467 return Err(
15468 alloy_sol_types::Error::unknown_selector(
15469 <Self as alloy_sol_types::SolInterface>::NAME,
15470 selector,
15471 ),
15472 );
15473 };
15474 DECODE_VALIDATE_SHIMS[idx](data)
15475 }
15476 #[inline]
15477 fn abi_encoded_size(&self) -> usize {
15478 match self {
15479 Self::AddressEmptyCode(inner) => {
15480 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encoded_size(
15481 inner,
15482 )
15483 }
15484 Self::DeprecatedApi(inner) => {
15485 <DeprecatedApi as alloy_sol_types::SolError>::abi_encoded_size(inner)
15486 }
15487 Self::ERC1967InvalidImplementation(inner) => {
15488 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encoded_size(
15489 inner,
15490 )
15491 }
15492 Self::ERC1967NonPayable(inner) => {
15493 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encoded_size(
15494 inner,
15495 )
15496 }
15497 Self::FailedInnerCall(inner) => {
15498 <FailedInnerCall as alloy_sol_types::SolError>::abi_encoded_size(
15499 inner,
15500 )
15501 }
15502 Self::InsufficientSnapshotHistory(inner) => {
15503 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_encoded_size(
15504 inner,
15505 )
15506 }
15507 Self::InvalidAddress(inner) => {
15508 <InvalidAddress as alloy_sol_types::SolError>::abi_encoded_size(
15509 inner,
15510 )
15511 }
15512 Self::InvalidArgs(inner) => {
15513 <InvalidArgs as alloy_sol_types::SolError>::abi_encoded_size(inner)
15514 }
15515 Self::InvalidHotShotBlockForCommitmentCheck(inner) => {
15516 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_encoded_size(
15517 inner,
15518 )
15519 }
15520 Self::InvalidInitialization(inner) => {
15521 <InvalidInitialization as alloy_sol_types::SolError>::abi_encoded_size(
15522 inner,
15523 )
15524 }
15525 Self::InvalidMaxStateHistory(inner) => {
15526 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_encoded_size(
15527 inner,
15528 )
15529 }
15530 Self::InvalidProof(inner) => {
15531 <InvalidProof as alloy_sol_types::SolError>::abi_encoded_size(inner)
15532 }
15533 Self::InvalidScalar(inner) => {
15534 <InvalidScalar as alloy_sol_types::SolError>::abi_encoded_size(inner)
15535 }
15536 Self::MissingEpochRootUpdate(inner) => {
15537 <MissingEpochRootUpdate as alloy_sol_types::SolError>::abi_encoded_size(
15538 inner,
15539 )
15540 }
15541 Self::NoChangeRequired(inner) => {
15542 <NoChangeRequired as alloy_sol_types::SolError>::abi_encoded_size(
15543 inner,
15544 )
15545 }
15546 Self::NotInitializing(inner) => {
15547 <NotInitializing as alloy_sol_types::SolError>::abi_encoded_size(
15548 inner,
15549 )
15550 }
15551 Self::OutdatedState(inner) => {
15552 <OutdatedState as alloy_sol_types::SolError>::abi_encoded_size(inner)
15553 }
15554 Self::OwnableInvalidOwner(inner) => {
15555 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encoded_size(
15556 inner,
15557 )
15558 }
15559 Self::OwnableUnauthorizedAccount(inner) => {
15560 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encoded_size(
15561 inner,
15562 )
15563 }
15564 Self::ProverNotPermissioned(inner) => {
15565 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_encoded_size(
15566 inner,
15567 )
15568 }
15569 Self::UUPSUnauthorizedCallContext(inner) => {
15570 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encoded_size(
15571 inner,
15572 )
15573 }
15574 Self::UUPSUnsupportedProxiableUUID(inner) => {
15575 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encoded_size(
15576 inner,
15577 )
15578 }
15579 Self::WrongStakeTableUsed(inner) => {
15580 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_encoded_size(
15581 inner,
15582 )
15583 }
15584 }
15585 }
15586 #[inline]
15587 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
15588 match self {
15589 Self::AddressEmptyCode(inner) => {
15590 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encode_raw(
15591 inner,
15592 out,
15593 )
15594 }
15595 Self::DeprecatedApi(inner) => {
15596 <DeprecatedApi as alloy_sol_types::SolError>::abi_encode_raw(
15597 inner,
15598 out,
15599 )
15600 }
15601 Self::ERC1967InvalidImplementation(inner) => {
15602 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encode_raw(
15603 inner,
15604 out,
15605 )
15606 }
15607 Self::ERC1967NonPayable(inner) => {
15608 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encode_raw(
15609 inner,
15610 out,
15611 )
15612 }
15613 Self::FailedInnerCall(inner) => {
15614 <FailedInnerCall as alloy_sol_types::SolError>::abi_encode_raw(
15615 inner,
15616 out,
15617 )
15618 }
15619 Self::InsufficientSnapshotHistory(inner) => {
15620 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_encode_raw(
15621 inner,
15622 out,
15623 )
15624 }
15625 Self::InvalidAddress(inner) => {
15626 <InvalidAddress as alloy_sol_types::SolError>::abi_encode_raw(
15627 inner,
15628 out,
15629 )
15630 }
15631 Self::InvalidArgs(inner) => {
15632 <InvalidArgs as alloy_sol_types::SolError>::abi_encode_raw(
15633 inner,
15634 out,
15635 )
15636 }
15637 Self::InvalidHotShotBlockForCommitmentCheck(inner) => {
15638 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_encode_raw(
15639 inner,
15640 out,
15641 )
15642 }
15643 Self::InvalidInitialization(inner) => {
15644 <InvalidInitialization as alloy_sol_types::SolError>::abi_encode_raw(
15645 inner,
15646 out,
15647 )
15648 }
15649 Self::InvalidMaxStateHistory(inner) => {
15650 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_encode_raw(
15651 inner,
15652 out,
15653 )
15654 }
15655 Self::InvalidProof(inner) => {
15656 <InvalidProof as alloy_sol_types::SolError>::abi_encode_raw(
15657 inner,
15658 out,
15659 )
15660 }
15661 Self::InvalidScalar(inner) => {
15662 <InvalidScalar as alloy_sol_types::SolError>::abi_encode_raw(
15663 inner,
15664 out,
15665 )
15666 }
15667 Self::MissingEpochRootUpdate(inner) => {
15668 <MissingEpochRootUpdate as alloy_sol_types::SolError>::abi_encode_raw(
15669 inner,
15670 out,
15671 )
15672 }
15673 Self::NoChangeRequired(inner) => {
15674 <NoChangeRequired as alloy_sol_types::SolError>::abi_encode_raw(
15675 inner,
15676 out,
15677 )
15678 }
15679 Self::NotInitializing(inner) => {
15680 <NotInitializing as alloy_sol_types::SolError>::abi_encode_raw(
15681 inner,
15682 out,
15683 )
15684 }
15685 Self::OutdatedState(inner) => {
15686 <OutdatedState as alloy_sol_types::SolError>::abi_encode_raw(
15687 inner,
15688 out,
15689 )
15690 }
15691 Self::OwnableInvalidOwner(inner) => {
15692 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encode_raw(
15693 inner,
15694 out,
15695 )
15696 }
15697 Self::OwnableUnauthorizedAccount(inner) => {
15698 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encode_raw(
15699 inner,
15700 out,
15701 )
15702 }
15703 Self::ProverNotPermissioned(inner) => {
15704 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_encode_raw(
15705 inner,
15706 out,
15707 )
15708 }
15709 Self::UUPSUnauthorizedCallContext(inner) => {
15710 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encode_raw(
15711 inner,
15712 out,
15713 )
15714 }
15715 Self::UUPSUnsupportedProxiableUUID(inner) => {
15716 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encode_raw(
15717 inner,
15718 out,
15719 )
15720 }
15721 Self::WrongStakeTableUsed(inner) => {
15722 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_encode_raw(
15723 inner,
15724 out,
15725 )
15726 }
15727 }
15728 }
15729 }
15730 #[derive(serde::Serialize, serde::Deserialize)]
15732 #[derive(Debug, PartialEq, Eq, Hash)]
15733 pub enum LightClientV2Events {
15734 #[allow(missing_docs)]
15735 Initialized(Initialized),
15736 #[allow(missing_docs)]
15737 NewEpoch(NewEpoch),
15738 #[allow(missing_docs)]
15739 NewState(NewState),
15740 #[allow(missing_docs)]
15741 OwnershipTransferred(OwnershipTransferred),
15742 #[allow(missing_docs)]
15743 PermissionedProverNotRequired(PermissionedProverNotRequired),
15744 #[allow(missing_docs)]
15745 PermissionedProverRequired(PermissionedProverRequired),
15746 #[allow(missing_docs)]
15747 Upgrade(Upgrade),
15748 #[allow(missing_docs)]
15749 Upgraded(Upgraded),
15750 }
15751 #[automatically_derived]
15752 impl LightClientV2Events {
15753 pub const SELECTORS: &'static [[u8; 32usize]] = &[
15760 [
15761 49u8, 234u8, 189u8, 144u8, 153u8, 253u8, 178u8, 93u8, 172u8, 221u8,
15762 210u8, 6u8, 171u8, 255u8, 135u8, 49u8, 30u8, 85u8, 52u8, 65u8, 252u8,
15763 157u8, 15u8, 205u8, 239u8, 32u8, 16u8, 98u8, 215u8, 231u8, 7u8, 27u8,
15764 ],
15765 [
15766 128u8, 23u8, 187u8, 136u8, 127u8, 223u8, 143u8, 202u8, 67u8, 20u8, 169u8,
15767 212u8, 15u8, 110u8, 115u8, 179u8, 184u8, 16u8, 2u8, 214u8, 126u8, 92u8,
15768 250u8, 133u8, 216u8, 129u8, 115u8, 175u8, 106u8, 164u8, 96u8, 114u8,
15769 ],
15770 [
15771 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8,
15772 31u8, 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8,
15773 218u8, 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
15774 ],
15775 [
15776 154u8, 95u8, 87u8, 222u8, 133u8, 109u8, 214u8, 104u8, 197u8, 77u8, 217u8,
15777 94u8, 92u8, 85u8, 223u8, 147u8, 67u8, 33u8, 113u8, 203u8, 202u8, 73u8,
15778 168u8, 119u8, 109u8, 86u8, 32u8, 234u8, 89u8, 192u8, 36u8, 80u8,
15779 ],
15780 [
15781 160u8, 74u8, 119u8, 57u8, 36u8, 80u8, 90u8, 65u8, 133u8, 100u8, 54u8,
15782 55u8, 37u8, 245u8, 104u8, 50u8, 245u8, 119u8, 46u8, 107u8, 141u8, 13u8,
15783 189u8, 110u8, 252u8, 231u8, 36u8, 223u8, 232u8, 3u8, 218u8, 230u8,
15784 ],
15785 [
15786 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
15787 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8,
15788 12u8, 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
15789 ],
15790 [
15791 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8,
15792 19u8, 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8,
15793 33u8, 238u8, 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
15794 ],
15795 [
15796 247u8, 135u8, 33u8, 34u8, 110u8, 254u8, 154u8, 27u8, 182u8, 120u8, 24u8,
15797 154u8, 22u8, 209u8, 85u8, 73u8, 40u8, 185u8, 242u8, 25u8, 46u8, 44u8,
15798 185u8, 62u8, 237u8, 168u8, 59u8, 121u8, 250u8, 64u8, 0u8, 125u8,
15799 ],
15800 ];
15801 }
15802 #[automatically_derived]
15803 impl alloy_sol_types::SolEventInterface for LightClientV2Events {
15804 const NAME: &'static str = "LightClientV2Events";
15805 const COUNT: usize = 8usize;
15806 fn decode_raw_log(
15807 topics: &[alloy_sol_types::Word],
15808 data: &[u8],
15809 ) -> alloy_sol_types::Result<Self> {
15810 match topics.first().copied() {
15811 Some(<Initialized as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
15812 <Initialized as alloy_sol_types::SolEvent>::decode_raw_log(
15813 topics,
15814 data,
15815 )
15816 .map(Self::Initialized)
15817 }
15818 Some(<NewEpoch as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
15819 <NewEpoch as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
15820 .map(Self::NewEpoch)
15821 }
15822 Some(<NewState as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
15823 <NewState as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
15824 .map(Self::NewState)
15825 }
15826 Some(
15827 <OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
15828 ) => {
15829 <OwnershipTransferred as alloy_sol_types::SolEvent>::decode_raw_log(
15830 topics,
15831 data,
15832 )
15833 .map(Self::OwnershipTransferred)
15834 }
15835 Some(
15836 <PermissionedProverNotRequired as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
15837 ) => {
15838 <PermissionedProverNotRequired as alloy_sol_types::SolEvent>::decode_raw_log(
15839 topics,
15840 data,
15841 )
15842 .map(Self::PermissionedProverNotRequired)
15843 }
15844 Some(
15845 <PermissionedProverRequired as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
15846 ) => {
15847 <PermissionedProverRequired as alloy_sol_types::SolEvent>::decode_raw_log(
15848 topics,
15849 data,
15850 )
15851 .map(Self::PermissionedProverRequired)
15852 }
15853 Some(<Upgrade as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
15854 <Upgrade as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
15855 .map(Self::Upgrade)
15856 }
15857 Some(<Upgraded as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
15858 <Upgraded as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
15859 .map(Self::Upgraded)
15860 }
15861 _ => {
15862 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
15863 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
15864 log: alloy_sol_types::private::Box::new(
15865 alloy_sol_types::private::LogData::new_unchecked(
15866 topics.to_vec(),
15867 data.to_vec().into(),
15868 ),
15869 ),
15870 })
15871 }
15872 }
15873 }
15874 }
15875 #[automatically_derived]
15876 impl alloy_sol_types::private::IntoLogData for LightClientV2Events {
15877 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
15878 match self {
15879 Self::Initialized(inner) => {
15880 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15881 }
15882 Self::NewEpoch(inner) => {
15883 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15884 }
15885 Self::NewState(inner) => {
15886 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15887 }
15888 Self::OwnershipTransferred(inner) => {
15889 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15890 }
15891 Self::PermissionedProverNotRequired(inner) => {
15892 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15893 }
15894 Self::PermissionedProverRequired(inner) => {
15895 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15896 }
15897 Self::Upgrade(inner) => {
15898 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15899 }
15900 Self::Upgraded(inner) => {
15901 alloy_sol_types::private::IntoLogData::to_log_data(inner)
15902 }
15903 }
15904 }
15905 fn into_log_data(self) -> alloy_sol_types::private::LogData {
15906 match self {
15907 Self::Initialized(inner) => {
15908 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15909 }
15910 Self::NewEpoch(inner) => {
15911 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15912 }
15913 Self::NewState(inner) => {
15914 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15915 }
15916 Self::OwnershipTransferred(inner) => {
15917 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15918 }
15919 Self::PermissionedProverNotRequired(inner) => {
15920 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15921 }
15922 Self::PermissionedProverRequired(inner) => {
15923 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15924 }
15925 Self::Upgrade(inner) => {
15926 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15927 }
15928 Self::Upgraded(inner) => {
15929 alloy_sol_types::private::IntoLogData::into_log_data(inner)
15930 }
15931 }
15932 }
15933 }
15934 use alloy::contract as alloy_contract;
15935 #[inline]
15939 pub const fn new<
15940 P: alloy_contract::private::Provider<N>,
15941 N: alloy_contract::private::Network,
15942 >(
15943 address: alloy_sol_types::private::Address,
15944 __provider: P,
15945 ) -> LightClientV2Instance<P, N> {
15946 LightClientV2Instance::<P, N>::new(address, __provider)
15947 }
15948 #[inline]
15954 pub fn deploy<
15955 P: alloy_contract::private::Provider<N>,
15956 N: alloy_contract::private::Network,
15957 >(
15958 __provider: P,
15959 ) -> impl ::core::future::Future<
15960 Output = alloy_contract::Result<LightClientV2Instance<P, N>>,
15961 > {
15962 LightClientV2Instance::<P, N>::deploy(__provider)
15963 }
15964 #[inline]
15970 pub fn deploy_builder<
15971 P: alloy_contract::private::Provider<N>,
15972 N: alloy_contract::private::Network,
15973 >(__provider: P) -> alloy_contract::RawCallBuilder<P, N> {
15974 LightClientV2Instance::<P, N>::deploy_builder(__provider)
15975 }
15976 #[derive(Clone)]
15988 pub struct LightClientV2Instance<P, N = alloy_contract::private::Ethereum> {
15989 address: alloy_sol_types::private::Address,
15990 provider: P,
15991 _network: ::core::marker::PhantomData<N>,
15992 }
15993 #[automatically_derived]
15994 impl<P, N> ::core::fmt::Debug for LightClientV2Instance<P, N> {
15995 #[inline]
15996 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
15997 f.debug_tuple("LightClientV2Instance").field(&self.address).finish()
15998 }
15999 }
16000 #[automatically_derived]
16002 impl<
16003 P: alloy_contract::private::Provider<N>,
16004 N: alloy_contract::private::Network,
16005 > LightClientV2Instance<P, N> {
16006 #[inline]
16010 pub const fn new(
16011 address: alloy_sol_types::private::Address,
16012 __provider: P,
16013 ) -> Self {
16014 Self {
16015 address,
16016 provider: __provider,
16017 _network: ::core::marker::PhantomData,
16018 }
16019 }
16020 #[inline]
16026 pub async fn deploy(
16027 __provider: P,
16028 ) -> alloy_contract::Result<LightClientV2Instance<P, N>> {
16029 let call_builder = Self::deploy_builder(__provider);
16030 let contract_address = call_builder.deploy().await?;
16031 Ok(Self::new(contract_address, call_builder.provider))
16032 }
16033 #[inline]
16039 pub fn deploy_builder(__provider: P) -> alloy_contract::RawCallBuilder<P, N> {
16040 alloy_contract::RawCallBuilder::new_raw_deploy(
16041 __provider,
16042 ::core::clone::Clone::clone(&BYTECODE),
16043 )
16044 }
16045 #[inline]
16047 pub const fn address(&self) -> &alloy_sol_types::private::Address {
16048 &self.address
16049 }
16050 #[inline]
16052 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
16053 self.address = address;
16054 }
16055 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
16057 self.set_address(address);
16058 self
16059 }
16060 #[inline]
16062 pub const fn provider(&self) -> &P {
16063 &self.provider
16064 }
16065 }
16066 impl<P: ::core::clone::Clone, N> LightClientV2Instance<&P, N> {
16067 #[inline]
16069 pub fn with_cloned_provider(self) -> LightClientV2Instance<P, N> {
16070 LightClientV2Instance {
16071 address: self.address,
16072 provider: ::core::clone::Clone::clone(&self.provider),
16073 _network: ::core::marker::PhantomData,
16074 }
16075 }
16076 }
16077 #[automatically_derived]
16079 impl<
16080 P: alloy_contract::private::Provider<N>,
16081 N: alloy_contract::private::Network,
16082 > LightClientV2Instance<P, N> {
16083 pub fn call_builder<C: alloy_sol_types::SolCall>(
16088 &self,
16089 call: &C,
16090 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
16091 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
16092 }
16093 pub fn UPGRADE_INTERFACE_VERSION(
16095 &self,
16096 ) -> alloy_contract::SolCallBuilder<&P, UPGRADE_INTERFACE_VERSIONCall, N> {
16097 self.call_builder(&UPGRADE_INTERFACE_VERSIONCall)
16098 }
16099 pub fn _getVk(&self) -> alloy_contract::SolCallBuilder<&P, _getVkCall, N> {
16101 self.call_builder(&_getVkCall)
16102 }
16103 pub fn blocksPerEpoch(
16105 &self,
16106 ) -> alloy_contract::SolCallBuilder<&P, blocksPerEpochCall, N> {
16107 self.call_builder(&blocksPerEpochCall)
16108 }
16109 pub fn currentBlockNumber(
16111 &self,
16112 ) -> alloy_contract::SolCallBuilder<&P, currentBlockNumberCall, N> {
16113 self.call_builder(¤tBlockNumberCall)
16114 }
16115 pub fn currentEpoch(
16117 &self,
16118 ) -> alloy_contract::SolCallBuilder<&P, currentEpochCall, N> {
16119 self.call_builder(¤tEpochCall)
16120 }
16121 pub fn disablePermissionedProverMode(
16123 &self,
16124 ) -> alloy_contract::SolCallBuilder<&P, disablePermissionedProverModeCall, N> {
16125 self.call_builder(&disablePermissionedProverModeCall)
16126 }
16127 pub fn epochFromBlockNumber(
16129 &self,
16130 _blockNum: u64,
16131 _blocksPerEpoch: u64,
16132 ) -> alloy_contract::SolCallBuilder<&P, epochFromBlockNumberCall, N> {
16133 self.call_builder(
16134 &epochFromBlockNumberCall {
16135 _blockNum,
16136 _blocksPerEpoch,
16137 },
16138 )
16139 }
16140 pub fn epochStartBlock(
16142 &self,
16143 ) -> alloy_contract::SolCallBuilder<&P, epochStartBlockCall, N> {
16144 self.call_builder(&epochStartBlockCall)
16145 }
16146 pub fn finalizedState(
16148 &self,
16149 ) -> alloy_contract::SolCallBuilder<&P, finalizedStateCall, N> {
16150 self.call_builder(&finalizedStateCall)
16151 }
16152 pub fn genesisStakeTableState(
16154 &self,
16155 ) -> alloy_contract::SolCallBuilder<&P, genesisStakeTableStateCall, N> {
16156 self.call_builder(&genesisStakeTableStateCall)
16157 }
16158 pub fn genesisState(
16160 &self,
16161 ) -> alloy_contract::SolCallBuilder<&P, genesisStateCall, N> {
16162 self.call_builder(&genesisStateCall)
16163 }
16164 pub fn getHotShotCommitment(
16166 &self,
16167 hotShotBlockHeight: alloy::sol_types::private::primitives::aliases::U256,
16168 ) -> alloy_contract::SolCallBuilder<&P, getHotShotCommitmentCall, N> {
16169 self.call_builder(
16170 &getHotShotCommitmentCall {
16171 hotShotBlockHeight,
16172 },
16173 )
16174 }
16175 pub fn getStateHistoryCount(
16177 &self,
16178 ) -> alloy_contract::SolCallBuilder<&P, getStateHistoryCountCall, N> {
16179 self.call_builder(&getStateHistoryCountCall)
16180 }
16181 pub fn getVersion(
16183 &self,
16184 ) -> alloy_contract::SolCallBuilder<&P, getVersionCall, N> {
16185 self.call_builder(&getVersionCall)
16186 }
16187 pub fn initialize(
16189 &self,
16190 _genesis: <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
16191 _genesisStakeTableState: <LightClient::StakeTableState as alloy::sol_types::SolType>::RustType,
16192 _stateHistoryRetentionPeriod: u32,
16193 owner: alloy::sol_types::private::Address,
16194 ) -> alloy_contract::SolCallBuilder<&P, initializeCall, N> {
16195 self.call_builder(
16196 &initializeCall {
16197 _genesis,
16198 _genesisStakeTableState,
16199 _stateHistoryRetentionPeriod,
16200 owner,
16201 },
16202 )
16203 }
16204 pub fn initializeV2(
16206 &self,
16207 _blocksPerEpoch: u64,
16208 _epochStartBlock: u64,
16209 ) -> alloy_contract::SolCallBuilder<&P, initializeV2Call, N> {
16210 self.call_builder(
16211 &initializeV2Call {
16212 _blocksPerEpoch,
16213 _epochStartBlock,
16214 },
16215 )
16216 }
16217 pub fn isEpochRoot(
16219 &self,
16220 blockHeight: u64,
16221 ) -> alloy_contract::SolCallBuilder<&P, isEpochRootCall, N> {
16222 self.call_builder(&isEpochRootCall { blockHeight })
16223 }
16224 pub fn isGtEpochRoot(
16226 &self,
16227 blockHeight: u64,
16228 ) -> alloy_contract::SolCallBuilder<&P, isGtEpochRootCall, N> {
16229 self.call_builder(&isGtEpochRootCall { blockHeight })
16230 }
16231 pub fn isPermissionedProverEnabled(
16233 &self,
16234 ) -> alloy_contract::SolCallBuilder<&P, isPermissionedProverEnabledCall, N> {
16235 self.call_builder(&isPermissionedProverEnabledCall)
16236 }
16237 pub fn lagOverEscapeHatchThreshold(
16239 &self,
16240 blockNumber: alloy::sol_types::private::primitives::aliases::U256,
16241 blockThreshold: alloy::sol_types::private::primitives::aliases::U256,
16242 ) -> alloy_contract::SolCallBuilder<&P, lagOverEscapeHatchThresholdCall, N> {
16243 self.call_builder(
16244 &lagOverEscapeHatchThresholdCall {
16245 blockNumber,
16246 blockThreshold,
16247 },
16248 )
16249 }
16250 pub fn newFinalizedState_0(
16252 &self,
16253 _0: <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
16254 _1: <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
16255 ) -> alloy_contract::SolCallBuilder<&P, newFinalizedState_0Call, N> {
16256 self.call_builder(&newFinalizedState_0Call { _0, _1 })
16257 }
16258 pub fn newFinalizedState_1(
16260 &self,
16261 newState: <LightClient::LightClientState as alloy::sol_types::SolType>::RustType,
16262 nextStakeTable: <LightClient::StakeTableState as alloy::sol_types::SolType>::RustType,
16263 proof: <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
16264 ) -> alloy_contract::SolCallBuilder<&P, newFinalizedState_1Call, N> {
16265 self.call_builder(
16266 &newFinalizedState_1Call {
16267 newState,
16268 nextStakeTable,
16269 proof,
16270 },
16271 )
16272 }
16273 pub fn owner(&self) -> alloy_contract::SolCallBuilder<&P, ownerCall, N> {
16275 self.call_builder(&ownerCall)
16276 }
16277 pub fn permissionedProver(
16279 &self,
16280 ) -> alloy_contract::SolCallBuilder<&P, permissionedProverCall, N> {
16281 self.call_builder(&permissionedProverCall)
16282 }
16283 pub fn proxiableUUID(
16285 &self,
16286 ) -> alloy_contract::SolCallBuilder<&P, proxiableUUIDCall, N> {
16287 self.call_builder(&proxiableUUIDCall)
16288 }
16289 pub fn renounceOwnership(
16291 &self,
16292 ) -> alloy_contract::SolCallBuilder<&P, renounceOwnershipCall, N> {
16293 self.call_builder(&renounceOwnershipCall)
16294 }
16295 pub fn setPermissionedProver(
16297 &self,
16298 prover: alloy::sol_types::private::Address,
16299 ) -> alloy_contract::SolCallBuilder<&P, setPermissionedProverCall, N> {
16300 self.call_builder(
16301 &setPermissionedProverCall {
16302 prover,
16303 },
16304 )
16305 }
16306 pub fn setStateHistoryRetentionPeriod(
16308 &self,
16309 historySeconds: u32,
16310 ) -> alloy_contract::SolCallBuilder<&P, setStateHistoryRetentionPeriodCall, N> {
16311 self.call_builder(
16312 &setStateHistoryRetentionPeriodCall {
16313 historySeconds,
16314 },
16315 )
16316 }
16317 pub fn setstateHistoryRetentionPeriod(
16319 &self,
16320 historySeconds: u32,
16321 ) -> alloy_contract::SolCallBuilder<&P, setstateHistoryRetentionPeriodCall, N> {
16322 self.call_builder(
16323 &setstateHistoryRetentionPeriodCall {
16324 historySeconds,
16325 },
16326 )
16327 }
16328 pub fn stateHistoryCommitments(
16330 &self,
16331 _0: alloy::sol_types::private::primitives::aliases::U256,
16332 ) -> alloy_contract::SolCallBuilder<&P, stateHistoryCommitmentsCall, N> {
16333 self.call_builder(&stateHistoryCommitmentsCall(_0))
16334 }
16335 pub fn stateHistoryFirstIndex(
16337 &self,
16338 ) -> alloy_contract::SolCallBuilder<&P, stateHistoryFirstIndexCall, N> {
16339 self.call_builder(&stateHistoryFirstIndexCall)
16340 }
16341 pub fn stateHistoryRetentionPeriod(
16343 &self,
16344 ) -> alloy_contract::SolCallBuilder<&P, stateHistoryRetentionPeriodCall, N> {
16345 self.call_builder(&stateHistoryRetentionPeriodCall)
16346 }
16347 pub fn transferOwnership(
16349 &self,
16350 newOwner: alloy::sol_types::private::Address,
16351 ) -> alloy_contract::SolCallBuilder<&P, transferOwnershipCall, N> {
16352 self.call_builder(&transferOwnershipCall { newOwner })
16353 }
16354 pub fn updateEpochStartBlock(
16356 &self,
16357 newEpochStartBlock: u64,
16358 ) -> alloy_contract::SolCallBuilder<&P, updateEpochStartBlockCall, N> {
16359 self.call_builder(
16360 &updateEpochStartBlockCall {
16361 newEpochStartBlock,
16362 },
16363 )
16364 }
16365 pub fn upgradeToAndCall(
16367 &self,
16368 newImplementation: alloy::sol_types::private::Address,
16369 data: alloy::sol_types::private::Bytes,
16370 ) -> alloy_contract::SolCallBuilder<&P, upgradeToAndCallCall, N> {
16371 self.call_builder(
16372 &upgradeToAndCallCall {
16373 newImplementation,
16374 data,
16375 },
16376 )
16377 }
16378 pub fn votingStakeTableState(
16380 &self,
16381 ) -> alloy_contract::SolCallBuilder<&P, votingStakeTableStateCall, N> {
16382 self.call_builder(&votingStakeTableStateCall)
16383 }
16384 }
16385 #[automatically_derived]
16387 impl<
16388 P: alloy_contract::private::Provider<N>,
16389 N: alloy_contract::private::Network,
16390 > LightClientV2Instance<P, N> {
16391 pub fn event_filter<E: alloy_sol_types::SolEvent>(
16396 &self,
16397 ) -> alloy_contract::Event<&P, E, N> {
16398 alloy_contract::Event::new_sol(&self.provider, &self.address)
16399 }
16400 pub fn Initialized_filter(&self) -> alloy_contract::Event<&P, Initialized, N> {
16402 self.event_filter::<Initialized>()
16403 }
16404 pub fn NewEpoch_filter(&self) -> alloy_contract::Event<&P, NewEpoch, N> {
16406 self.event_filter::<NewEpoch>()
16407 }
16408 pub fn NewState_filter(&self) -> alloy_contract::Event<&P, NewState, N> {
16410 self.event_filter::<NewState>()
16411 }
16412 pub fn OwnershipTransferred_filter(
16414 &self,
16415 ) -> alloy_contract::Event<&P, OwnershipTransferred, N> {
16416 self.event_filter::<OwnershipTransferred>()
16417 }
16418 pub fn PermissionedProverNotRequired_filter(
16420 &self,
16421 ) -> alloy_contract::Event<&P, PermissionedProverNotRequired, N> {
16422 self.event_filter::<PermissionedProverNotRequired>()
16423 }
16424 pub fn PermissionedProverRequired_filter(
16426 &self,
16427 ) -> alloy_contract::Event<&P, PermissionedProverRequired, N> {
16428 self.event_filter::<PermissionedProverRequired>()
16429 }
16430 pub fn Upgrade_filter(&self) -> alloy_contract::Event<&P, Upgrade, N> {
16432 self.event_filter::<Upgrade>()
16433 }
16434 pub fn Upgraded_filter(&self) -> alloy_contract::Event<&P, Upgraded, N> {
16436 self.event_filter::<Upgraded>()
16437 }
16438 }
16439}