1#[allow(
12 non_camel_case_types,
13 non_snake_case,
14 clippy::pub_underscore_fields,
15 clippy::style,
16 clippy::empty_structs_with_brackets
17)]
18pub mod BN254 {
19 use alloy::sol_types as alloy_sol_types;
20
21 use super::*;
22 #[derive(Default, Debug, PartialEq, Eq, Hash)]
23 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
24 #[derive(Clone)]
25 pub struct BaseField(alloy::sol_types::private::primitives::aliases::U256);
26 const _: () = {
27 use alloy::sol_types as alloy_sol_types;
28 #[automatically_derived]
29 impl alloy_sol_types::private::SolTypeValue<BaseField>
30 for alloy::sol_types::private::primitives::aliases::U256
31 {
32 #[inline]
33 fn stv_to_tokens(
34 &self,
35 ) -> <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::Token<'_>
36 {
37 alloy_sol_types::private::SolTypeValue::<
38 alloy::sol_types::sol_data::Uint<256>,
39 >::stv_to_tokens(self)
40 }
41 #[inline]
42 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
43 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(self)
44 .0
45 }
46 #[inline]
47 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
48 <alloy::sol_types::sol_data::Uint<
49 256,
50 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
51 }
52 #[inline]
53 fn stv_abi_packed_encoded_size(&self) -> usize {
54 <alloy::sol_types::sol_data::Uint<
55 256,
56 > as alloy_sol_types::SolType>::abi_encoded_size(self)
57 }
58 }
59 #[automatically_derived]
60 impl BaseField {
61 pub const NAME: &'static str = stringify!(@ name);
63 #[inline]
65 pub const fn from(value: alloy::sol_types::private::primitives::aliases::U256) -> Self {
66 Self(value)
67 }
68 #[inline]
70 pub const fn into(self) -> alloy::sol_types::private::primitives::aliases::U256 {
71 self.0
72 }
73 #[inline]
76 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
77 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
78 }
79 #[inline]
82 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
83 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
84 }
85 }
86 #[automatically_derived]
87 impl alloy_sol_types::SolType for BaseField {
88 type RustType = alloy::sol_types::private::primitives::aliases::U256;
89 type Token<'a> =
90 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::Token<'a>;
91 const SOL_NAME: &'static str = Self::NAME;
92 const ENCODED_SIZE: Option<usize> =
93 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::ENCODED_SIZE;
94 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
95 256,
96 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
97 #[inline]
98 fn valid_token(token: &Self::Token<'_>) -> bool {
99 Self::type_check(token).is_ok()
100 }
101 #[inline]
102 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
103 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::type_check(
104 token,
105 )
106 }
107 #[inline]
108 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
109 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::detokenize(
110 token,
111 )
112 }
113 }
114 #[automatically_derived]
115 impl alloy_sol_types::EventTopic for BaseField {
116 #[inline]
117 fn topic_preimage_length(rust: &Self::RustType) -> usize {
118 <alloy::sol_types::sol_data::Uint<
119 256,
120 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
121 }
122 #[inline]
123 fn encode_topic_preimage(
124 rust: &Self::RustType,
125 out: &mut alloy_sol_types::private::Vec<u8>,
126 ) {
127 <alloy::sol_types::sol_data::Uint<
128 256,
129 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
130 }
131 #[inline]
132 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
133 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::EventTopic>::encode_topic(
134 rust,
135 )
136 }
137 }
138 };
139 #[derive(Default, Debug, PartialEq, Eq, Hash)]
140 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
141 #[derive(Clone)]
142 pub struct ScalarField(alloy::sol_types::private::primitives::aliases::U256);
143 const _: () = {
144 use alloy::sol_types as alloy_sol_types;
145 #[automatically_derived]
146 impl alloy_sol_types::private::SolTypeValue<ScalarField>
147 for alloy::sol_types::private::primitives::aliases::U256
148 {
149 #[inline]
150 fn stv_to_tokens(
151 &self,
152 ) -> <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::Token<'_>
153 {
154 alloy_sol_types::private::SolTypeValue::<
155 alloy::sol_types::sol_data::Uint<256>,
156 >::stv_to_tokens(self)
157 }
158 #[inline]
159 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
160 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(self)
161 .0
162 }
163 #[inline]
164 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
165 <alloy::sol_types::sol_data::Uint<
166 256,
167 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
168 }
169 #[inline]
170 fn stv_abi_packed_encoded_size(&self) -> usize {
171 <alloy::sol_types::sol_data::Uint<
172 256,
173 > as alloy_sol_types::SolType>::abi_encoded_size(self)
174 }
175 }
176 #[automatically_derived]
177 impl ScalarField {
178 pub const NAME: &'static str = stringify!(@ name);
180 #[inline]
182 pub const fn from(value: alloy::sol_types::private::primitives::aliases::U256) -> Self {
183 Self(value)
184 }
185 #[inline]
187 pub const fn into(self) -> alloy::sol_types::private::primitives::aliases::U256 {
188 self.0
189 }
190 #[inline]
193 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
194 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
195 }
196 #[inline]
199 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
200 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
201 }
202 }
203 #[automatically_derived]
204 impl alloy_sol_types::SolType for ScalarField {
205 type RustType = alloy::sol_types::private::primitives::aliases::U256;
206 type Token<'a> =
207 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::Token<'a>;
208 const SOL_NAME: &'static str = Self::NAME;
209 const ENCODED_SIZE: Option<usize> =
210 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::ENCODED_SIZE;
211 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
212 256,
213 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
214 #[inline]
215 fn valid_token(token: &Self::Token<'_>) -> bool {
216 Self::type_check(token).is_ok()
217 }
218 #[inline]
219 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
220 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::type_check(
221 token,
222 )
223 }
224 #[inline]
225 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
226 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::detokenize(
227 token,
228 )
229 }
230 }
231 #[automatically_derived]
232 impl alloy_sol_types::EventTopic for ScalarField {
233 #[inline]
234 fn topic_preimage_length(rust: &Self::RustType) -> usize {
235 <alloy::sol_types::sol_data::Uint<
236 256,
237 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
238 }
239 #[inline]
240 fn encode_topic_preimage(
241 rust: &Self::RustType,
242 out: &mut alloy_sol_types::private::Vec<u8>,
243 ) {
244 <alloy::sol_types::sol_data::Uint<
245 256,
246 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
247 }
248 #[inline]
249 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
250 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::EventTopic>::encode_topic(
251 rust,
252 )
253 }
254 }
255 };
256 #[derive(Default, Debug, PartialEq, Eq, Hash)]
257 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
261 #[derive(Clone)]
262 pub struct G1Point {
263 #[allow(missing_docs)]
264 pub x: <BaseField as alloy::sol_types::SolType>::RustType,
265 #[allow(missing_docs)]
266 pub y: <BaseField as alloy::sol_types::SolType>::RustType,
267 }
268 #[allow(
269 non_camel_case_types,
270 non_snake_case,
271 clippy::pub_underscore_fields,
272 clippy::style
273 )]
274 const _: () = {
275 use alloy::sol_types as alloy_sol_types;
276 #[doc(hidden)]
277 type UnderlyingSolTuple<'a> = (BaseField, BaseField);
278 #[doc(hidden)]
279 type UnderlyingRustTuple<'a> = (
280 <BaseField as alloy::sol_types::SolType>::RustType,
281 <BaseField as alloy::sol_types::SolType>::RustType,
282 );
283 #[cfg(test)]
284 #[allow(dead_code, unreachable_patterns)]
285 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
286 match _t {
287 alloy_sol_types::private::AssertTypeEq::<
288 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
289 >(_) => {},
290 }
291 }
292 #[automatically_derived]
293 #[doc(hidden)]
294 impl ::core::convert::From<G1Point> for UnderlyingRustTuple<'_> {
295 fn from(value: G1Point) -> Self {
296 (value.x, value.y)
297 }
298 }
299 #[automatically_derived]
300 #[doc(hidden)]
301 impl ::core::convert::From<UnderlyingRustTuple<'_>> for G1Point {
302 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
303 Self {
304 x: tuple.0,
305 y: tuple.1,
306 }
307 }
308 }
309 #[automatically_derived]
310 impl alloy_sol_types::SolValue for G1Point {
311 type SolType = Self;
312 }
313 #[automatically_derived]
314 impl alloy_sol_types::private::SolTypeValue<Self> for G1Point {
315 #[inline]
316 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
317 (
318 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x),
319 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y),
320 )
321 }
322 #[inline]
323 fn stv_abi_encoded_size(&self) -> usize {
324 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
325 return size;
326 }
327 let tuple =
328 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
329 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
330 }
331 #[inline]
332 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
333 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
334 }
335 #[inline]
336 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
337 let tuple =
338 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
339 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
340 &tuple, out,
341 )
342 }
343 #[inline]
344 fn stv_abi_packed_encoded_size(&self) -> usize {
345 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
346 return size;
347 }
348 let tuple =
349 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
350 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
351 &tuple,
352 )
353 }
354 }
355 #[automatically_derived]
356 impl alloy_sol_types::SolType for G1Point {
357 type RustType = Self;
358 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
359 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
360 const ENCODED_SIZE: Option<usize> =
361 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
362 const PACKED_ENCODED_SIZE: Option<usize> =
363 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
364 #[inline]
365 fn valid_token(token: &Self::Token<'_>) -> bool {
366 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
367 }
368 #[inline]
369 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
370 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
371 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
372 }
373 }
374 #[automatically_derived]
375 impl alloy_sol_types::SolStruct for G1Point {
376 const NAME: &'static str = "G1Point";
377 #[inline]
378 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
379 alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 x,uint256 y)")
380 }
381 #[inline]
382 fn eip712_components(
383 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
384 {
385 alloy_sol_types::private::Vec::new()
386 }
387 #[inline]
388 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
389 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
390 }
391 #[inline]
392 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
393 [
394 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x).0,
395 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y).0,
396 ]
397 .concat()
398 }
399 }
400 #[automatically_derived]
401 impl alloy_sol_types::EventTopic for G1Point {
402 #[inline]
403 fn topic_preimage_length(rust: &Self::RustType) -> usize {
404 0usize
405 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.x)
406 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.y)
407 }
408 #[inline]
409 fn encode_topic_preimage(
410 rust: &Self::RustType,
411 out: &mut alloy_sol_types::private::Vec<u8>,
412 ) {
413 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
414 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.x, out);
415 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.y, out);
416 }
417 #[inline]
418 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
419 let mut out = alloy_sol_types::private::Vec::new();
420 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
421 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
422 }
423 }
424 };
425 use alloy::contract as alloy_contract;
426 #[inline]
430 pub const fn new<
431 T: alloy_contract::private::Transport + ::core::clone::Clone,
432 P: alloy_contract::private::Provider<T, N>,
433 N: alloy_contract::private::Network,
434 >(
435 address: alloy_sol_types::private::Address,
436 provider: P,
437 ) -> BN254Instance<T, P, N> {
438 BN254Instance::<T, P, N>::new(address, provider)
439 }
440 #[derive(Clone)]
452 pub struct BN254Instance<T, P, N = alloy_contract::private::Ethereum> {
453 address: alloy_sol_types::private::Address,
454 provider: P,
455 _network_transport: ::core::marker::PhantomData<(N, T)>,
456 }
457 #[automatically_derived]
458 impl<T, P, N> ::core::fmt::Debug for BN254Instance<T, P, N> {
459 #[inline]
460 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
461 f.debug_tuple("BN254Instance").field(&self.address).finish()
462 }
463 }
464 #[automatically_derived]
466 impl<
467 T: alloy_contract::private::Transport + ::core::clone::Clone,
468 P: alloy_contract::private::Provider<T, N>,
469 N: alloy_contract::private::Network,
470 > BN254Instance<T, P, N>
471 {
472 #[inline]
476 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
477 Self {
478 address,
479 provider,
480 _network_transport: ::core::marker::PhantomData,
481 }
482 }
483 #[inline]
485 pub const fn address(&self) -> &alloy_sol_types::private::Address {
486 &self.address
487 }
488 #[inline]
490 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
491 self.address = address;
492 }
493 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
495 self.set_address(address);
496 self
497 }
498 #[inline]
500 pub const fn provider(&self) -> &P {
501 &self.provider
502 }
503 }
504 impl<T, P: ::core::clone::Clone, N> BN254Instance<T, &P, N> {
505 #[inline]
507 pub fn with_cloned_provider(self) -> BN254Instance<T, P, N> {
508 BN254Instance {
509 address: self.address,
510 provider: ::core::clone::Clone::clone(&self.provider),
511 _network_transport: ::core::marker::PhantomData,
512 }
513 }
514 }
515 #[automatically_derived]
517 impl<
518 T: alloy_contract::private::Transport + ::core::clone::Clone,
519 P: alloy_contract::private::Provider<T, N>,
520 N: alloy_contract::private::Network,
521 > BN254Instance<T, P, N>
522 {
523 pub fn call_builder<C: alloy_sol_types::SolCall>(
528 &self,
529 call: &C,
530 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
531 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
532 }
533 }
534 #[automatically_derived]
536 impl<
537 T: alloy_contract::private::Transport + ::core::clone::Clone,
538 P: alloy_contract::private::Provider<T, N>,
539 N: alloy_contract::private::Network,
540 > BN254Instance<T, P, N>
541 {
542 pub fn event_filter<E: alloy_sol_types::SolEvent>(
547 &self,
548 ) -> alloy_contract::Event<T, &P, E, N> {
549 alloy_contract::Event::new_sol(&self.provider, &self.address)
550 }
551 }
552}
553#[allow(
563 non_camel_case_types,
564 non_snake_case,
565 clippy::pub_underscore_fields,
566 clippy::style,
567 clippy::empty_structs_with_brackets
568)]
569pub mod IPlonkVerifier {
570 use alloy::sol_types as alloy_sol_types;
571
572 use super::*;
573 #[derive()]
574 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
578 #[derive(Clone)]
579 pub struct PlonkProof {
580 #[allow(missing_docs)]
581 pub wire0: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
582 #[allow(missing_docs)]
583 pub wire1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
584 #[allow(missing_docs)]
585 pub wire2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
586 #[allow(missing_docs)]
587 pub wire3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
588 #[allow(missing_docs)]
589 pub wire4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
590 #[allow(missing_docs)]
591 pub prodPerm: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
592 #[allow(missing_docs)]
593 pub split0: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
594 #[allow(missing_docs)]
595 pub split1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
596 #[allow(missing_docs)]
597 pub split2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
598 #[allow(missing_docs)]
599 pub split3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
600 #[allow(missing_docs)]
601 pub split4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
602 #[allow(missing_docs)]
603 pub zeta: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
604 #[allow(missing_docs)]
605 pub zetaOmega: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
606 #[allow(missing_docs)]
607 pub wireEval0: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
608 #[allow(missing_docs)]
609 pub wireEval1: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
610 #[allow(missing_docs)]
611 pub wireEval2: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
612 #[allow(missing_docs)]
613 pub wireEval3: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
614 #[allow(missing_docs)]
615 pub wireEval4: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
616 #[allow(missing_docs)]
617 pub sigmaEval0: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
618 #[allow(missing_docs)]
619 pub sigmaEval1: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
620 #[allow(missing_docs)]
621 pub sigmaEval2: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
622 #[allow(missing_docs)]
623 pub sigmaEval3: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
624 #[allow(missing_docs)]
625 pub prodPermZetaOmegaEval: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
626 }
627 #[allow(
628 non_camel_case_types,
629 non_snake_case,
630 clippy::pub_underscore_fields,
631 clippy::style
632 )]
633 const _: () = {
634 use alloy::sol_types as alloy_sol_types;
635 #[doc(hidden)]
636 type UnderlyingSolTuple<'a> = (
637 BN254::G1Point,
638 BN254::G1Point,
639 BN254::G1Point,
640 BN254::G1Point,
641 BN254::G1Point,
642 BN254::G1Point,
643 BN254::G1Point,
644 BN254::G1Point,
645 BN254::G1Point,
646 BN254::G1Point,
647 BN254::G1Point,
648 BN254::G1Point,
649 BN254::G1Point,
650 BN254::ScalarField,
651 BN254::ScalarField,
652 BN254::ScalarField,
653 BN254::ScalarField,
654 BN254::ScalarField,
655 BN254::ScalarField,
656 BN254::ScalarField,
657 BN254::ScalarField,
658 BN254::ScalarField,
659 BN254::ScalarField,
660 );
661 #[doc(hidden)]
662 type UnderlyingRustTuple<'a> = (
663 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
664 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
665 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
666 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
667 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
668 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
669 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
670 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
671 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
672 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
673 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
674 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
675 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
676 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
677 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
678 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
679 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
680 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
681 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
682 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
683 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
684 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
685 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
686 );
687 #[cfg(test)]
688 #[allow(dead_code, unreachable_patterns)]
689 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
690 match _t {
691 alloy_sol_types::private::AssertTypeEq::<
692 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
693 >(_) => {},
694 }
695 }
696 #[automatically_derived]
697 #[doc(hidden)]
698 impl ::core::convert::From<PlonkProof> for UnderlyingRustTuple<'_> {
699 fn from(value: PlonkProof) -> Self {
700 (
701 value.wire0,
702 value.wire1,
703 value.wire2,
704 value.wire3,
705 value.wire4,
706 value.prodPerm,
707 value.split0,
708 value.split1,
709 value.split2,
710 value.split3,
711 value.split4,
712 value.zeta,
713 value.zetaOmega,
714 value.wireEval0,
715 value.wireEval1,
716 value.wireEval2,
717 value.wireEval3,
718 value.wireEval4,
719 value.sigmaEval0,
720 value.sigmaEval1,
721 value.sigmaEval2,
722 value.sigmaEval3,
723 value.prodPermZetaOmegaEval,
724 )
725 }
726 }
727 #[automatically_derived]
728 #[doc(hidden)]
729 impl ::core::convert::From<UnderlyingRustTuple<'_>> for PlonkProof {
730 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
731 Self {
732 wire0: tuple.0,
733 wire1: tuple.1,
734 wire2: tuple.2,
735 wire3: tuple.3,
736 wire4: tuple.4,
737 prodPerm: tuple.5,
738 split0: tuple.6,
739 split1: tuple.7,
740 split2: tuple.8,
741 split3: tuple.9,
742 split4: tuple.10,
743 zeta: tuple.11,
744 zetaOmega: tuple.12,
745 wireEval0: tuple.13,
746 wireEval1: tuple.14,
747 wireEval2: tuple.15,
748 wireEval3: tuple.16,
749 wireEval4: tuple.17,
750 sigmaEval0: tuple.18,
751 sigmaEval1: tuple.19,
752 sigmaEval2: tuple.20,
753 sigmaEval3: tuple.21,
754 prodPermZetaOmegaEval: tuple.22,
755 }
756 }
757 }
758 #[automatically_derived]
759 impl alloy_sol_types::SolValue for PlonkProof {
760 type SolType = Self;
761 }
762 #[automatically_derived]
763 impl alloy_sol_types::private::SolTypeValue<Self> for PlonkProof {
764 #[inline]
765 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
766 (
767 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire0),
768 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire1),
769 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire2),
770 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire3),
771 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.wire4),
772 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.prodPerm),
773 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split0),
774 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split1),
775 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split2),
776 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split3),
777 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.split4),
778 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.zeta),
779 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.zetaOmega),
780 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.wireEval0),
781 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.wireEval1),
782 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.wireEval2),
783 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.wireEval3),
784 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.wireEval4),
785 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.sigmaEval0),
786 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.sigmaEval1),
787 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.sigmaEval2),
788 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.sigmaEval3),
789 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
790 &self.prodPermZetaOmegaEval,
791 ),
792 )
793 }
794 #[inline]
795 fn stv_abi_encoded_size(&self) -> usize {
796 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
797 return size;
798 }
799 let tuple =
800 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
801 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
802 }
803 #[inline]
804 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
805 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
806 }
807 #[inline]
808 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
809 let tuple =
810 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
811 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
812 &tuple, out,
813 )
814 }
815 #[inline]
816 fn stv_abi_packed_encoded_size(&self) -> usize {
817 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
818 return size;
819 }
820 let tuple =
821 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
822 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
823 &tuple,
824 )
825 }
826 }
827 #[automatically_derived]
828 impl alloy_sol_types::SolType for PlonkProof {
829 type RustType = Self;
830 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
831 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
832 const ENCODED_SIZE: Option<usize> =
833 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
834 const PACKED_ENCODED_SIZE: Option<usize> =
835 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
836 #[inline]
837 fn valid_token(token: &Self::Token<'_>) -> bool {
838 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
839 }
840 #[inline]
841 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
842 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
843 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
844 }
845 }
846 #[automatically_derived]
847 impl alloy_sol_types::SolStruct for PlonkProof {
848 const NAME: &'static str = "PlonkProof";
849 #[inline]
850 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
851 alloy_sol_types::private::Cow::Borrowed(
852 "PlonkProof(BN254.G1Point wire0,BN254.G1Point wire1,BN254.G1Point wire2,BN254.G1Point wire3,BN254.G1Point wire4,BN254.G1Point prodPerm,BN254.G1Point split0,BN254.G1Point split1,BN254.G1Point split2,BN254.G1Point split3,BN254.G1Point split4,BN254.G1Point zeta,BN254.G1Point zetaOmega,uint256 wireEval0,uint256 wireEval1,uint256 wireEval2,uint256 wireEval3,uint256 wireEval4,uint256 sigmaEval0,uint256 sigmaEval1,uint256 sigmaEval2,uint256 sigmaEval3,uint256 prodPermZetaOmegaEval)",
853 )
854 }
855 #[inline]
856 fn eip712_components(
857 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
858 {
859 let mut components = alloy_sol_types::private::Vec::with_capacity(13);
860 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
861 components
862 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
863 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
864 components
865 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
866 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
867 components
868 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
869 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
870 components
871 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
872 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
873 components
874 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
875 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
876 components
877 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
878 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
879 components
880 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
881 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
882 components
883 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
884 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
885 components
886 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
887 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
888 components
889 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
890 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
891 components
892 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
893 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
894 components
895 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
896 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
897 components
898 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
899 components
900 }
901 #[inline]
902 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
903 [
904 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.wire0).0,
905 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.wire1).0,
906 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.wire2).0,
907 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.wire3).0,
908 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.wire4).0,
909 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.prodPerm)
910 .0,
911 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.split0).0,
912 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.split1).0,
913 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.split2).0,
914 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.split3).0,
915 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.split4).0,
916 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.zeta).0,
917 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(&self.zetaOmega)
918 .0,
919 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
920 &self.wireEval0,
921 )
922 .0,
923 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
924 &self.wireEval1,
925 )
926 .0,
927 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
928 &self.wireEval2,
929 )
930 .0,
931 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
932 &self.wireEval3,
933 )
934 .0,
935 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
936 &self.wireEval4,
937 )
938 .0,
939 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
940 &self.sigmaEval0,
941 )
942 .0,
943 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
944 &self.sigmaEval1,
945 )
946 .0,
947 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
948 &self.sigmaEval2,
949 )
950 .0,
951 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
952 &self.sigmaEval3,
953 )
954 .0,
955 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
956 &self.prodPermZetaOmegaEval,
957 )
958 .0,
959 ]
960 .concat()
961 }
962 }
963 #[automatically_derived]
964 impl alloy_sol_types::EventTopic for PlonkProof {
965 #[inline]
966 fn topic_preimage_length(rust: &Self::RustType) -> usize {
967 0usize
968 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
969 &rust.wire0,
970 )
971 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
972 &rust.wire1,
973 )
974 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
975 &rust.wire2,
976 )
977 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
978 &rust.wire3,
979 )
980 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
981 &rust.wire4,
982 )
983 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
984 &rust.prodPerm,
985 )
986 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
987 &rust.split0,
988 )
989 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
990 &rust.split1,
991 )
992 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
993 &rust.split2,
994 )
995 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
996 &rust.split3,
997 )
998 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
999 &rust.split4,
1000 )
1001 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1002 &rust.zeta,
1003 )
1004 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1005 &rust.zetaOmega,
1006 )
1007 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1008 &rust.wireEval0,
1009 )
1010 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1011 &rust.wireEval1,
1012 )
1013 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1014 &rust.wireEval2,
1015 )
1016 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1017 &rust.wireEval3,
1018 )
1019 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1020 &rust.wireEval4,
1021 )
1022 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1023 &rust.sigmaEval0,
1024 )
1025 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1026 &rust.sigmaEval1,
1027 )
1028 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1029 &rust.sigmaEval2,
1030 )
1031 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1032 &rust.sigmaEval3,
1033 )
1034 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
1035 &rust.prodPermZetaOmegaEval,
1036 )
1037 }
1038 #[inline]
1039 fn encode_topic_preimage(
1040 rust: &Self::RustType,
1041 out: &mut alloy_sol_types::private::Vec<u8>,
1042 ) {
1043 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
1044 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1045 &rust.wire0,
1046 out,
1047 );
1048 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1049 &rust.wire1,
1050 out,
1051 );
1052 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1053 &rust.wire2,
1054 out,
1055 );
1056 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1057 &rust.wire3,
1058 out,
1059 );
1060 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1061 &rust.wire4,
1062 out,
1063 );
1064 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1065 &rust.prodPerm,
1066 out,
1067 );
1068 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1069 &rust.split0,
1070 out,
1071 );
1072 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1073 &rust.split1,
1074 out,
1075 );
1076 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1077 &rust.split2,
1078 out,
1079 );
1080 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1081 &rust.split3,
1082 out,
1083 );
1084 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1085 &rust.split4,
1086 out,
1087 );
1088 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1089 &rust.zeta, out,
1090 );
1091 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1092 &rust.zetaOmega,
1093 out,
1094 );
1095 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1096 &rust.wireEval0,
1097 out,
1098 );
1099 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1100 &rust.wireEval1,
1101 out,
1102 );
1103 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1104 &rust.wireEval2,
1105 out,
1106 );
1107 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1108 &rust.wireEval3,
1109 out,
1110 );
1111 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1112 &rust.wireEval4,
1113 out,
1114 );
1115 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1116 &rust.sigmaEval0,
1117 out,
1118 );
1119 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1120 &rust.sigmaEval1,
1121 out,
1122 );
1123 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1124 &rust.sigmaEval2,
1125 out,
1126 );
1127 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1128 &rust.sigmaEval3,
1129 out,
1130 );
1131 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
1132 &rust.prodPermZetaOmegaEval,
1133 out,
1134 );
1135 }
1136 #[inline]
1137 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
1138 let mut out = alloy_sol_types::private::Vec::new();
1139 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
1140 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
1141 }
1142 }
1143 };
1144 #[derive()]
1145 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1149 #[derive(Clone)]
1150 pub struct VerifyingKey {
1151 #[allow(missing_docs)]
1152 pub domainSize: alloy::sol_types::private::primitives::aliases::U256,
1153 #[allow(missing_docs)]
1154 pub numInputs: alloy::sol_types::private::primitives::aliases::U256,
1155 #[allow(missing_docs)]
1156 pub sigma0: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1157 #[allow(missing_docs)]
1158 pub sigma1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1159 #[allow(missing_docs)]
1160 pub sigma2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1161 #[allow(missing_docs)]
1162 pub sigma3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1163 #[allow(missing_docs)]
1164 pub sigma4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1165 #[allow(missing_docs)]
1166 pub q1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1167 #[allow(missing_docs)]
1168 pub q2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1169 #[allow(missing_docs)]
1170 pub q3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1171 #[allow(missing_docs)]
1172 pub q4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1173 #[allow(missing_docs)]
1174 pub qM12: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1175 #[allow(missing_docs)]
1176 pub qM34: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1177 #[allow(missing_docs)]
1178 pub qO: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1179 #[allow(missing_docs)]
1180 pub qC: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1181 #[allow(missing_docs)]
1182 pub qH1: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1183 #[allow(missing_docs)]
1184 pub qH2: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1185 #[allow(missing_docs)]
1186 pub qH3: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1187 #[allow(missing_docs)]
1188 pub qH4: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1189 #[allow(missing_docs)]
1190 pub qEcc: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1191 #[allow(missing_docs)]
1192 pub g2LSB: alloy::sol_types::private::FixedBytes<32>,
1193 #[allow(missing_docs)]
1194 pub g2MSB: alloy::sol_types::private::FixedBytes<32>,
1195 }
1196 #[allow(
1197 non_camel_case_types,
1198 non_snake_case,
1199 clippy::pub_underscore_fields,
1200 clippy::style
1201 )]
1202 const _: () = {
1203 use alloy::sol_types as alloy_sol_types;
1204 #[doc(hidden)]
1205 type UnderlyingSolTuple<'a> = (
1206 alloy::sol_types::sol_data::Uint<256>,
1207 alloy::sol_types::sol_data::Uint<256>,
1208 BN254::G1Point,
1209 BN254::G1Point,
1210 BN254::G1Point,
1211 BN254::G1Point,
1212 BN254::G1Point,
1213 BN254::G1Point,
1214 BN254::G1Point,
1215 BN254::G1Point,
1216 BN254::G1Point,
1217 BN254::G1Point,
1218 BN254::G1Point,
1219 BN254::G1Point,
1220 BN254::G1Point,
1221 BN254::G1Point,
1222 BN254::G1Point,
1223 BN254::G1Point,
1224 BN254::G1Point,
1225 BN254::G1Point,
1226 alloy::sol_types::sol_data::FixedBytes<32>,
1227 alloy::sol_types::sol_data::FixedBytes<32>,
1228 );
1229 #[doc(hidden)]
1230 type UnderlyingRustTuple<'a> = (
1231 alloy::sol_types::private::primitives::aliases::U256,
1232 alloy::sol_types::private::primitives::aliases::U256,
1233 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1234 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1235 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1236 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1237 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1238 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1239 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1240 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1241 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1242 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1243 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1244 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1245 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1246 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1247 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1248 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1249 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1250 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
1251 alloy::sol_types::private::FixedBytes<32>,
1252 alloy::sol_types::private::FixedBytes<32>,
1253 );
1254 #[cfg(test)]
1255 #[allow(dead_code, unreachable_patterns)]
1256 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1257 match _t {
1258 alloy_sol_types::private::AssertTypeEq::<
1259 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1260 >(_) => {},
1261 }
1262 }
1263 #[automatically_derived]
1264 #[doc(hidden)]
1265 impl ::core::convert::From<VerifyingKey> for UnderlyingRustTuple<'_> {
1266 fn from(value: VerifyingKey) -> Self {
1267 (
1268 value.domainSize,
1269 value.numInputs,
1270 value.sigma0,
1271 value.sigma1,
1272 value.sigma2,
1273 value.sigma3,
1274 value.sigma4,
1275 value.q1,
1276 value.q2,
1277 value.q3,
1278 value.q4,
1279 value.qM12,
1280 value.qM34,
1281 value.qO,
1282 value.qC,
1283 value.qH1,
1284 value.qH2,
1285 value.qH3,
1286 value.qH4,
1287 value.qEcc,
1288 value.g2LSB,
1289 value.g2MSB,
1290 )
1291 }
1292 }
1293 #[automatically_derived]
1294 #[doc(hidden)]
1295 impl ::core::convert::From<UnderlyingRustTuple<'_>> for VerifyingKey {
1296 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1297 Self {
1298 domainSize: tuple.0,
1299 numInputs: tuple.1,
1300 sigma0: tuple.2,
1301 sigma1: tuple.3,
1302 sigma2: tuple.4,
1303 sigma3: tuple.5,
1304 sigma4: tuple.6,
1305 q1: tuple.7,
1306 q2: tuple.8,
1307 q3: tuple.9,
1308 q4: tuple.10,
1309 qM12: tuple.11,
1310 qM34: tuple.12,
1311 qO: tuple.13,
1312 qC: tuple.14,
1313 qH1: tuple.15,
1314 qH2: tuple.16,
1315 qH3: tuple.17,
1316 qH4: tuple.18,
1317 qEcc: tuple.19,
1318 g2LSB: tuple.20,
1319 g2MSB: tuple.21,
1320 }
1321 }
1322 }
1323 #[automatically_derived]
1324 impl alloy_sol_types::SolValue for VerifyingKey {
1325 type SolType = Self;
1326 }
1327 #[automatically_derived]
1328 impl alloy_sol_types::private::SolTypeValue<Self> for VerifyingKey {
1329 #[inline]
1330 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
1331 (
1332 <alloy::sol_types::sol_data::Uint<
1333 256,
1334 > as alloy_sol_types::SolType>::tokenize(&self.domainSize),
1335 <alloy::sol_types::sol_data::Uint<
1336 256,
1337 > as alloy_sol_types::SolType>::tokenize(&self.numInputs),
1338 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma0),
1339 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma1),
1340 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma2),
1341 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma3),
1342 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.sigma4),
1343 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q1),
1344 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q2),
1345 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q3),
1346 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.q4),
1347 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qM12),
1348 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qM34),
1349 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qO),
1350 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qC),
1351 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH1),
1352 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH2),
1353 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH3),
1354 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qH4),
1355 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.qEcc),
1356 <alloy::sol_types::sol_data::FixedBytes<
1357 32,
1358 > as alloy_sol_types::SolType>::tokenize(&self.g2LSB),
1359 <alloy::sol_types::sol_data::FixedBytes<
1360 32,
1361 > as alloy_sol_types::SolType>::tokenize(&self.g2MSB),
1362 )
1363 }
1364 #[inline]
1365 fn stv_abi_encoded_size(&self) -> usize {
1366 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
1367 return size;
1368 }
1369 let tuple =
1370 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
1371 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
1372 }
1373 #[inline]
1374 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
1375 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
1376 }
1377 #[inline]
1378 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
1379 let tuple =
1380 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
1381 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
1382 &tuple, out,
1383 )
1384 }
1385 #[inline]
1386 fn stv_abi_packed_encoded_size(&self) -> usize {
1387 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
1388 return size;
1389 }
1390 let tuple =
1391 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
1392 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
1393 &tuple,
1394 )
1395 }
1396 }
1397 #[automatically_derived]
1398 impl alloy_sol_types::SolType for VerifyingKey {
1399 type RustType = Self;
1400 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
1401 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
1402 const ENCODED_SIZE: Option<usize> =
1403 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
1404 const PACKED_ENCODED_SIZE: Option<usize> =
1405 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
1406 #[inline]
1407 fn valid_token(token: &Self::Token<'_>) -> bool {
1408 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
1409 }
1410 #[inline]
1411 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
1412 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
1413 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
1414 }
1415 }
1416 #[automatically_derived]
1417 impl alloy_sol_types::SolStruct for VerifyingKey {
1418 const NAME: &'static str = "VerifyingKey";
1419 #[inline]
1420 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
1421 alloy_sol_types::private::Cow::Borrowed(
1422 "VerifyingKey(uint256 domainSize,uint256 numInputs,BN254.G1Point sigma0,BN254.G1Point sigma1,BN254.G1Point sigma2,BN254.G1Point sigma3,BN254.G1Point sigma4,BN254.G1Point q1,BN254.G1Point q2,BN254.G1Point q3,BN254.G1Point q4,BN254.G1Point qM12,BN254.G1Point qM34,BN254.G1Point qO,BN254.G1Point qC,BN254.G1Point qH1,BN254.G1Point qH2,BN254.G1Point qH3,BN254.G1Point qH4,BN254.G1Point qEcc,bytes32 g2LSB,bytes32 g2MSB)",
1423 )
1424 }
1425 #[inline]
1426 fn eip712_components(
1427 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
1428 {
1429 let mut components = alloy_sol_types::private::Vec::with_capacity(18);
1430 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1431 components
1432 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1433 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1434 components
1435 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1436 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1437 components
1438 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1439 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1440 components
1441 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1442 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1443 components
1444 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1445 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1446 components
1447 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1448 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1449 components
1450 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1451 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1452 components
1453 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1454 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1455 components
1456 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1457 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1458 components
1459 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1460 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1461 components
1462 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1463 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1464 components
1465 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1466 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1467 components
1468 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1469 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1470 components
1471 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1472 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1473 components
1474 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1475 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1476 components
1477 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1478 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1479 components
1480 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1481 components.push(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_root_type());
1482 components
1483 .extend(<BN254::G1Point as alloy_sol_types::SolStruct>::eip712_components());
1484 components
1485 }
1486 #[inline]
1487 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
1488 [
1489 <alloy::sol_types::sol_data::Uint<
1490 256,
1491 > as alloy_sol_types::SolType>::eip712_data_word(&self.domainSize)
1492 .0,
1493 <alloy::sol_types::sol_data::Uint<
1494 256,
1495 > as alloy_sol_types::SolType>::eip712_data_word(&self.numInputs)
1496 .0,
1497 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1498 &self.sigma0,
1499 )
1500 .0,
1501 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1502 &self.sigma1,
1503 )
1504 .0,
1505 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1506 &self.sigma2,
1507 )
1508 .0,
1509 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1510 &self.sigma3,
1511 )
1512 .0,
1513 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1514 &self.sigma4,
1515 )
1516 .0,
1517 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1518 &self.q1,
1519 )
1520 .0,
1521 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1522 &self.q2,
1523 )
1524 .0,
1525 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1526 &self.q3,
1527 )
1528 .0,
1529 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1530 &self.q4,
1531 )
1532 .0,
1533 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1534 &self.qM12,
1535 )
1536 .0,
1537 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1538 &self.qM34,
1539 )
1540 .0,
1541 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1542 &self.qO,
1543 )
1544 .0,
1545 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1546 &self.qC,
1547 )
1548 .0,
1549 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1550 &self.qH1,
1551 )
1552 .0,
1553 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1554 &self.qH2,
1555 )
1556 .0,
1557 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1558 &self.qH3,
1559 )
1560 .0,
1561 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1562 &self.qH4,
1563 )
1564 .0,
1565 <BN254::G1Point as alloy_sol_types::SolType>::eip712_data_word(
1566 &self.qEcc,
1567 )
1568 .0,
1569 <alloy::sol_types::sol_data::FixedBytes<
1570 32,
1571 > as alloy_sol_types::SolType>::eip712_data_word(&self.g2LSB)
1572 .0,
1573 <alloy::sol_types::sol_data::FixedBytes<
1574 32,
1575 > as alloy_sol_types::SolType>::eip712_data_word(&self.g2MSB)
1576 .0,
1577 ]
1578 .concat()
1579 }
1580 }
1581 #[automatically_derived]
1582 impl alloy_sol_types::EventTopic for VerifyingKey {
1583 #[inline]
1584 fn topic_preimage_length(rust: &Self::RustType) -> usize {
1585 0usize
1586 + <alloy::sol_types::sol_data::Uint<
1587 256,
1588 > as alloy_sol_types::EventTopic>::topic_preimage_length(
1589 &rust.domainSize,
1590 )
1591 + <alloy::sol_types::sol_data::Uint<
1592 256,
1593 > as alloy_sol_types::EventTopic>::topic_preimage_length(
1594 &rust.numInputs,
1595 )
1596 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1597 &rust.sigma0,
1598 )
1599 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1600 &rust.sigma1,
1601 )
1602 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1603 &rust.sigma2,
1604 )
1605 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1606 &rust.sigma3,
1607 )
1608 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1609 &rust.sigma4,
1610 )
1611 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1612 &rust.q1,
1613 )
1614 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1615 &rust.q2,
1616 )
1617 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1618 &rust.q3,
1619 )
1620 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1621 &rust.q4,
1622 )
1623 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1624 &rust.qM12,
1625 )
1626 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1627 &rust.qM34,
1628 )
1629 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1630 &rust.qO,
1631 )
1632 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1633 &rust.qC,
1634 )
1635 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1636 &rust.qH1,
1637 )
1638 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1639 &rust.qH2,
1640 )
1641 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1642 &rust.qH3,
1643 )
1644 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1645 &rust.qH4,
1646 )
1647 + <BN254::G1Point as alloy_sol_types::EventTopic>::topic_preimage_length(
1648 &rust.qEcc,
1649 )
1650 + <alloy::sol_types::sol_data::FixedBytes<
1651 32,
1652 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.g2LSB)
1653 + <alloy::sol_types::sol_data::FixedBytes<
1654 32,
1655 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.g2MSB)
1656 }
1657 #[inline]
1658 fn encode_topic_preimage(
1659 rust: &Self::RustType,
1660 out: &mut alloy_sol_types::private::Vec<u8>,
1661 ) {
1662 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
1663 <alloy::sol_types::sol_data::Uint<
1664 256,
1665 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
1666 &rust.domainSize,
1667 out,
1668 );
1669 <alloy::sol_types::sol_data::Uint<
1670 256,
1671 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
1672 &rust.numInputs,
1673 out,
1674 );
1675 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1676 &rust.sigma0,
1677 out,
1678 );
1679 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1680 &rust.sigma1,
1681 out,
1682 );
1683 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1684 &rust.sigma2,
1685 out,
1686 );
1687 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1688 &rust.sigma3,
1689 out,
1690 );
1691 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1692 &rust.sigma4,
1693 out,
1694 );
1695 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1696 &rust.q1, out,
1697 );
1698 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1699 &rust.q2, out,
1700 );
1701 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1702 &rust.q3, out,
1703 );
1704 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1705 &rust.q4, out,
1706 );
1707 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1708 &rust.qM12, out,
1709 );
1710 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1711 &rust.qM34, out,
1712 );
1713 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1714 &rust.qO, out,
1715 );
1716 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1717 &rust.qC, out,
1718 );
1719 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1720 &rust.qH1, out,
1721 );
1722 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1723 &rust.qH2, out,
1724 );
1725 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1726 &rust.qH3, out,
1727 );
1728 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1729 &rust.qH4, out,
1730 );
1731 <BN254::G1Point as alloy_sol_types::EventTopic>::encode_topic_preimage(
1732 &rust.qEcc, out,
1733 );
1734 <alloy::sol_types::sol_data::FixedBytes<
1735 32,
1736 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
1737 &rust.g2LSB,
1738 out,
1739 );
1740 <alloy::sol_types::sol_data::FixedBytes<
1741 32,
1742 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
1743 &rust.g2MSB,
1744 out,
1745 );
1746 }
1747 #[inline]
1748 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
1749 let mut out = alloy_sol_types::private::Vec::new();
1750 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
1751 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
1752 }
1753 }
1754 };
1755 use alloy::contract as alloy_contract;
1756 #[inline]
1760 pub const fn new<
1761 T: alloy_contract::private::Transport + ::core::clone::Clone,
1762 P: alloy_contract::private::Provider<T, N>,
1763 N: alloy_contract::private::Network,
1764 >(
1765 address: alloy_sol_types::private::Address,
1766 provider: P,
1767 ) -> IPlonkVerifierInstance<T, P, N> {
1768 IPlonkVerifierInstance::<T, P, N>::new(address, provider)
1769 }
1770 #[derive(Clone)]
1782 pub struct IPlonkVerifierInstance<T, P, N = alloy_contract::private::Ethereum> {
1783 address: alloy_sol_types::private::Address,
1784 provider: P,
1785 _network_transport: ::core::marker::PhantomData<(N, T)>,
1786 }
1787 #[automatically_derived]
1788 impl<T, P, N> ::core::fmt::Debug for IPlonkVerifierInstance<T, P, N> {
1789 #[inline]
1790 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1791 f.debug_tuple("IPlonkVerifierInstance")
1792 .field(&self.address)
1793 .finish()
1794 }
1795 }
1796 #[automatically_derived]
1798 impl<
1799 T: alloy_contract::private::Transport + ::core::clone::Clone,
1800 P: alloy_contract::private::Provider<T, N>,
1801 N: alloy_contract::private::Network,
1802 > IPlonkVerifierInstance<T, P, N>
1803 {
1804 #[inline]
1808 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
1809 Self {
1810 address,
1811 provider,
1812 _network_transport: ::core::marker::PhantomData,
1813 }
1814 }
1815 #[inline]
1817 pub const fn address(&self) -> &alloy_sol_types::private::Address {
1818 &self.address
1819 }
1820 #[inline]
1822 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
1823 self.address = address;
1824 }
1825 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
1827 self.set_address(address);
1828 self
1829 }
1830 #[inline]
1832 pub const fn provider(&self) -> &P {
1833 &self.provider
1834 }
1835 }
1836 impl<T, P: ::core::clone::Clone, N> IPlonkVerifierInstance<T, &P, N> {
1837 #[inline]
1839 pub fn with_cloned_provider(self) -> IPlonkVerifierInstance<T, P, N> {
1840 IPlonkVerifierInstance {
1841 address: self.address,
1842 provider: ::core::clone::Clone::clone(&self.provider),
1843 _network_transport: ::core::marker::PhantomData,
1844 }
1845 }
1846 }
1847 #[automatically_derived]
1849 impl<
1850 T: alloy_contract::private::Transport + ::core::clone::Clone,
1851 P: alloy_contract::private::Provider<T, N>,
1852 N: alloy_contract::private::Network,
1853 > IPlonkVerifierInstance<T, P, N>
1854 {
1855 pub fn call_builder<C: alloy_sol_types::SolCall>(
1860 &self,
1861 call: &C,
1862 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
1863 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
1864 }
1865 }
1866 #[automatically_derived]
1868 impl<
1869 T: alloy_contract::private::Transport + ::core::clone::Clone,
1870 P: alloy_contract::private::Provider<T, N>,
1871 N: alloy_contract::private::Network,
1872 > IPlonkVerifierInstance<T, P, N>
1873 {
1874 pub fn event_filter<E: alloy_sol_types::SolEvent>(
1879 &self,
1880 ) -> alloy_contract::Event<T, &P, E, N> {
1881 alloy_contract::Event::new_sol(&self.provider, &self.address)
1882 }
1883 }
1884}
1885#[allow(
3348 non_camel_case_types,
3349 non_snake_case,
3350 clippy::pub_underscore_fields,
3351 clippy::style,
3352 clippy::empty_structs_with_brackets
3353)]
3354pub mod LightClient {
3355 use alloy::sol_types as alloy_sol_types;
3356
3357 use super::*;
3358 #[rustfmt::skip]
3364 #[allow(clippy::all)]
3365 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
3366 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[`\x80Qa+\\a\0\xF9_9_\x81\x81a\x17\x13\x01R\x81\x81a\x17<\x01Ra\x18\xB9\x01Ra+\\_\xF3\xFE`\x80`@R`\x046\x10a\x01aW_5`\xE0\x1C\x80cqP\x18\xA6\x11a\0\xCDW\x80c\x9F\xDBT\xA7\x11a\0\x87W\x80c\xD2M\x93=\x11a\0bW\x80c\xD2M\x93=\x14a\x05\x1AW\x80c\xE003\x01\x14a\x05IW\x80c\xF2\xFD\xE3\x8B\x14a\x05hW\x80c\xF9\xE5\r\x19\x14a\x05\x87W__\xFD[\x80c\x9F\xDBT\xA7\x14a\x04PW\x80c\xAD<\xB1\xCC\x14a\x04\xA5W\x80c\xC2;\x9E\x9E\x14a\x04\xE2W__\xFD[\x80cqP\x18\xA6\x14a\x03[W\x80c\x82nA\xFC\x14a\x03oW\x80c\x85\x84\xD2?\x14a\x03\x9AW\x80c\x8D\xA5\xCB[\x14a\x03\xD6W\x80c\x96\xC1\xCAa\x14a\x04\x12W\x80c\x9B\xAA<\xC9\x14a\x041W__\xFD[\x80c1=\xF7\xB1\x11a\x01\x1EW\x80c1=\xF7\xB1\x14a\x02\x8CW\x80c7\x8E\xC2;\x14a\x02\xC3W\x80cBm1\x94\x14a\x02\xDFW\x80cO\x1E\xF2\x86\x14a\x03 W\x80cR\xD1\x90-\x14a\x033W\x80ci\xCCj\x04\x14a\x03GW__\xFD[\x80c\x01?\xA5\xFC\x14a\x01eW\x80c\x02\xB5\x92\xF3\x14a\x01\x86W\x80c\r\x8En,\x14a\x01\xE3W\x80c\x12\x17<,\x14a\x02\x0EW\x80c c\xD4\xF7\x14a\x02/W\x80c/y\x88\x9D\x14a\x02NW[__\xFD[4\x80\x15a\x01pW__\xFD[Pa\x01\x84a\x01\x7F6`\x04a\x1FlV[a\x05\x9BV[\0[4\x80\x15a\x01\x91W__\xFD[Pa\x01\xA5a\x01\xA06`\x04a\x1F\x85V[a\x06NV[`@Qa\x01\xDA\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\x01\xEEW__\xFD[P`@\x80Q`\x01\x81R_` \x82\x01\x81\x90R\x91\x81\x01\x91\x90\x91R``\x01a\x01\xDAV[4\x80\x15a\x02\x19W__\xFD[Pa\x02\"a\x06\x97V[`@Qa\x01\xDA\x91\x90a\x1F\x9CV[4\x80\x15a\x02:W__\xFD[Pa\x01\x84a\x02I6`\x04a\"\xD1V[a\x06\xACV[4\x80\x15a\x02YW__\xFD[P`\x08Ta\x02t\x90`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81V[`@Q`\x01`\x01`@\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xDAV[4\x80\x15a\x02\x97W__\xFD[P`\x08Ta\x02\xAB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xDAV[4\x80\x15a\x02\xCEW__\xFD[PC[`@Q\x90\x81R` \x01a\x01\xDAV[4\x80\x15a\x02\xEAW__\xFD[P_T`\x01T`\x02T`\x03Ta\x03\0\x93\x92\x91\x90\x84V[`@\x80Q\x94\x85R` \x85\x01\x93\x90\x93R\x91\x83\x01R``\x82\x01R`\x80\x01a\x01\xDAV[a\x01\x84a\x03.6`\x04a$\x81V[a\x08\x06V[4\x80\x15a\x03>W__\xFD[Pa\x02\xD1a\x08%V[4\x80\x15a\x03RW__\xFD[Pa\x01\x84a\x08@V[4\x80\x15a\x03fW__\xFD[Pa\x01\x84a\x08\xAEV[4\x80\x15a\x03zW__\xFD[P`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15[`@Q\x90\x15\x15\x81R` \x01a\x01\xDAV[4\x80\x15a\x03\xA5W__\xFD[Pa\x03\xB9a\x03\xB46`\x04a\x1F\x85V[a\x08\xBFV[`@\x80Q\x92\x83R`\x01`\x01`@\x1B\x03\x90\x91\x16` \x83\x01R\x01a\x01\xDAV[4\x80\x15a\x03\xE1W__\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\x02\xABV[4\x80\x15a\x04\x1DW__\xFD[Pa\x01\x84a\x04,6`\x04a%7V[a\t\xEAV[4\x80\x15a\x04<W__\xFD[Pa\x01\x84a\x04K6`\x04a%PV[a\nsV[4\x80\x15a\x04[W__\xFD[P`\x06T`\x07Ta\x04\x7F\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\x01\xDAV[4\x80\x15a\x04\xB0W__\xFD[Pa\x04\xD5`@Q\x80`@\x01`@R\x80`\x05\x81R` \x01d\x03R\xE3\x02\xE3`\xDC\x1B\x81RP\x81V[`@Qa\x01\xDA\x91\x90a%\xF9V[4\x80\x15a\x04\xEDW__\xFD[P`\x08Ta\x05\x05\x90`\x01`\xA0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x81V[`@Qc\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\x01\xDAV[4\x80\x15a\x05%W__\xFD[P`\x04T`\x05Ta\x04\x7F\x91`\x01`\x01`@\x1B\x03\x80\x82\x16\x92`\x01`@\x1B\x90\x92\x04\x16\x90\x83V[4\x80\x15a\x05TW__\xFD[Pa\x03\x8Aa\x05c6`\x04a&.V[a\x0B\x95V[4\x80\x15a\x05sW__\xFD[Pa\x01\x84a\x05\x826`\x04a\x1FlV[a\x0C\xEFV[4\x80\x15a\x05\x92W__\xFD[P`\tTa\x02\xD1V[a\x05\xA3a\r1V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x05\xCAW`@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\x05\xF9W`@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\x06]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\x06\x9Fa\x1C\xCEV[a\x06\xA7a\r\x8CV[\x90P\x90V[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15\x80\x15a\x06\xD1WP`\x08T`\x01`\x01`\xA0\x1B\x03\x163\x14\x15[\x15a\x06\xEFW`@Qc\x01GL\x8F`\xE7\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x06T\x82Q`\x01`\x01`@\x1B\x03\x91\x82\x16\x91\x16\x11\x15\x80a\x07(WP`\x06T` \x83\x01Q`\x01`\x01`@\x1B\x03`\x01`@\x1B\x90\x92\x04\x82\x16\x91\x16\x11\x15[\x15a\x07FW`@Qc\x05\x1CF\xEF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x07S\x82`@\x01Qa\x13\xBBV[a\x07]\x82\x82a\x14+V[\x81Q`\x06\x80T` \x85\x01Q`\x01`\x01`@\x1B\x03\x90\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x92\x16\x93\x16\x92\x90\x92\x17\x91\x90\x91\x17\x90U`@\x82\x01Q`\x07Ua\x07\xAAa\x07\xA3C\x90V[B\x84a\x15\x1FV[\x81` \x01Q`\x01`\x01`@\x1B\x03\x16\x82_\x01Q`\x01`\x01`@\x1B\x03\x16\x7F\xA0Jw9$PZA\x85d67%\xF5h2\xF5w.k\x8D\r\xBDn\xFC\xE7$\xDF\xE8\x03\xDA\xE6\x84`@\x01Q`@Qa\x07\xFA\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPV[a\x08\x0Ea\x17\x08V[a\x08\x17\x82a\x17\xACV[a\x08!\x82\x82a\x17\xEDV[PPV[_a\x08.a\x18\xAEV[P_Q` a+0_9_Q\x90_R\x90V[a\x08Ha\r1V[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15a\x08\x93W`\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\x08\xB6a\r1V[a\x08\xAC_a\x18\xF7V[`\t\x80T_\x91\x82\x91\x90a\x08\xD3`\x01\x83a&bV[\x81T\x81\x10a\x08\xE3Wa\x08\xE3a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84\x10a\t\"W`@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\t\xE3W\x84`\t\x82\x81T\x81\x10a\tRWa\tRa&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x11\x15a\t\xDBW`\t\x81\x81T\x81\x10a\t\x8BWa\t\x8Ba&uV[\x90_R` _ \x90`\x02\x02\x01`\x01\x01T`\t\x82\x81T\x81\x10a\t\xAEWa\t\xAEa&uV[\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\t6V[PP\x91P\x91V[a\t\xF2a\r1V[a\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10\x80a\n\x11WPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x80a\n/WP`\x08Tc\xFF\xFF\xFF\xFF`\x01`\xA0\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x11\x15[\x15a\nMW`@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\n\xB7WP\x82[\x90P_\x82`\x01`\x01`@\x1B\x03\x16`\x01\x14\x80\x15a\n\xD2WP0;\x15[\x90P\x81\x15\x80\x15a\n\xE0WP\x80\x15[\x15a\n\xFEW`@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\x0B(W\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x0B1\x86a\x19gV[a\x0B9a\x19xV[a\x0BD\x89\x89\x89a\x19\x80V[\x83\x15a\x0B\x8AW\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[`\tT_\x90C\x84\x11\x80a\x0B\xA6WP\x80\x15[\x80a\x0B\xF0WP`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x0B\xD4Wa\x0B\xD4a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x84\x10[\x15a\x0C\x0EW`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x80\x80a\x0C\x1C`\x01\x85a&bV[\x90P[\x81a\x0C\xB8W`\x08T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81\x10a\x0C\xB8W\x86`\t\x82\x81T\x81\x10a\x0CQWa\x0CQa&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x11a\x0C\xA6W`\x01\x91P`\t\x81\x81T\x81\x10a\x0C\x86Wa\x0C\x86a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x92Pa\x0C\xB8V[\x80a\x0C\xB0\x81a&\x89V[\x91PPa\x0C\x1FV[\x81a\x0C\xD6W`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x85a\x0C\xE1\x84\x89a&bV[\x11\x94PPPPP[\x92\x91PPV[a\x0C\xF7a\r1V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\r%W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01[`@Q\x80\x91\x03\x90\xFD[a\r.\x81a\x18\xF7V[PV[3a\rc\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\x08\xACW`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\r\x1CV[a\r\x94a\x1C\xCEV[b\x10\0\0\x81R`\x07` \x82\x01R\x7F#x=\x0E\x97w\xB7\xAFe\xFB\xF8I\xDA~\xDBu\xE7K\x1E\xAFP>\x02]\x7F/\x7F\x80\x99\x1B\xEF\xA2`@\x82\x01QR\x7F*N/\xE8\xAD\xFAS\xF4hRU\x82\xD5\x18LLp\xBB\xDB\x94l!\xF2\x16A\x8A\x98yp^T\xA7` `@\x83\x01Q\x01R\x7F\x06$\xB2\xC1\xE7\x7F$\xAF\xCE\xAF9E\x17C\xB9\xFA\x80\xD5\x85?\xCA{\xA0\x03\x89\xC6ue\x07t\0\x9B``\x82\x01QR\x7F%\rw\x19\xE9L\xA2\xDF\0\xDF\xE3'\x93\x8FZ\x8DM\x83wy\xB9\x987\xCAwzS\xD3\x91'\xB1y` ``\x83\x01Q\x01R\x7F\r\xC0\x95\x15\x15.\xAE\xA6m\r\xB2\xF5q\xCC\x99^6\x9D&\xFEds\x94\xF1\r\xB59\x8C\x91u\x19\xDC`\x80\x82\x01QR\x7F\x12s\x14Ml\xEC,Jh\xB2J\x14\x93y\xC0\xF5Y+\xB7\xFB\xDD\xBE2\xFA\x17\x19\x19\x95\x0C\xA4\x04\xCB` `\x80\x83\x01Q\x01R\x7F\x11\x95!\xBBh\xCA\xEC!n/\x05\xEE\xB4f\xFB:\xBF\xE1\xF3\x9B\xAF\x7F\xE7\xCB9.\xA0W\xB6\xA2\xD9\xBF`\xA0\x82\x01QR\x7F-R\xAD\xEA\xBA\x80E\xE5:\xB5&\xFE\x99\x82\xD0\xEAE-\xEFk>\xA0%='\xA1\x9E\xF3\xB4n\x84(` `\xA0\x83\x01Q\x01R\x7F\x16\xC3\xB5\xB2\x17\xD3\x02\x97Z\x92\r\x137E$\xD7\xA5.JP\xFD\x7F\xB90\x84\"q\xEB\xF4\xA8N\xFD`\xC0\x82\x01QR\x7F \x07\x88\x91k\x90{\x19ir\xBD\xE3\x041\x8E\x88Z%!QK-\xB5\xE4\xA1\x18\x99\xC5\x12\x04\xF0\x89` `\xC0\x83\x01Q\x01R\x7F\x11'X\x1A\xFEu=\xEF\xCA\x9A\xEF\x12\xE73-\xB9\x97\x8A \x0B\x16\x99\xCE8\x88\xC0\xF3\xAE\xA6\x11\x1D\xC3`\xE0\x82\x01QR\x7F\x08\x81\xE1?\0r;\xE1\xA0Hr\xED\x02\xB2\xD0x\xC3\x1E\x80\xFE\xAF'rN&,\xE9|,\xB0\xBB\x1D` `\xE0\x83\x01Q\x01R\x7F\x14\x82\xA3\xA6\xBB\x91\xD6H=\x156\x83\xE2@O/UF\xE0\xE8\x95S\x0F\xDF\x13 \x91I\x84\x06\xE3\xDEa\x01\0\x82\x01QR~\xFAR\xDB=R\xD9\x05\xEA\xD1$\x81\x02\xF3\xA8\nC\xA9\r\x84\0\xC6\x8F`\xA6,T<A{/K` a\x01\0\x83\x01Q\x01R\x7F\nW\xDA\xDDJU\x19\x95%\xACj\xC6\xFA\xBC\x87\xA4\xCC\xCF\xDC\x98\x14+\xCE\xF9\xDB\xF4}\xE0\x0E\xCCQda\x01 \x82\x01QR\x7F\x18\xD9Z\xBD\x9B\x8E\x12\xC3i6\xAA!\x8C\xFF\xF5\x82T\x8Ak\xBF\xF2\\3\x8C \x06\xEA\xEB\x1F\xE5\xB6\x96` a\x01 \x83\x01Q\x01R\x7F+\xC4\x0E\x91\xDD\x16\x9B\x8B\xC1C\xA0)R\xA1\xB6\xC6\xE6'\xBF\xEBz+\xBEPx\xE1A#\xF3\xC5L\x1Ca\x01@\x82\x01QR\x7F\x10\x8De\xA2\x0CW\x9Bm\x98\x83'^\xB6\x88\x9F\xC3\xF5\xFCys\\\xA9\xF6\x11\xA1;g\xDA\xA2\xFB\xC8\xD0` a\x01@\x83\x01Q\x01R\x7F!\xBC\x1F\x86\xD0`\x8E_\x06&\xB4g\xEEo\x82\x82\xB6\x19\"?`\xA7\xAC\xB0\xFCc\xBA{\xDA\xF7\x83\xBEa\x01`\x82\x01QR\x7F\x05\xEF2\x82\xF8\xEE\xF0\x15\x15\xFB\x9A\x8A}l\xA0k\x8B\0}\x1DQ$\x03\xEF\xB2h\xFB\x03\xCE_\t\xE9` a\x01`\x83\x01Q\x01R\x7F,\xABf\xC1\xCBZ\x83\x86\x9Es\xAC4\xFB\xE4gHi\x99\xBA\xBDT\x1D\x90\x10\xEE\x9A\x80H\x06\xEE\xE4\xEFa\x01\x80\x82\x01QR\x7F-\xB1\x98$\x19\xC5\xA4\xA1u\x93\xAC\xFF\x955\xFA\x96v\x83\xD7\\\x8A\xEC\x011\x9Bd\xB8J\xAD\xA2\xAD\x84` a\x01\x80\x83\x01Q\x01R\x7F,8f|l~\xB8h\xBD\xD3\x0C4\xDD?K\x84\xD9\xB9\xB1\xA2}xg\xB3d\xC8\xB7\x83\x14#\xE9\x08a\x01\xA0\x82\x01QR\x7F+,\xB4\x04M\xD5\x11e\xC4\x818!\x9DQ\xCF\x8D\x16\x89\xF9\x1E\xD3\xEE\xEF\xEA\xD6\xE0U\xEBH\x8A,\xE2` a\x01\xA0\x83\x01Q\x01R\x7F-H\xE5G\x03\x01\x1D\xF2\xC7J\x14\xDA\xFD\xE3\xAFO\xD8>\xC7\x18u\xD8\xDD\xC3UFXd\x0C\xC9U\x01a\x01\xC0\x82\x01QR\x7F$:\x99\xD8\r2\xEBT\x08\xB5\x9D[\x080+\xED\xE0p\xD3\xFB\n\x8E\xFE/\"b\xF8e\xBF\xFBM\r` a\x01\xC0\x83\x01Q\x01R\x7F\x04U\xD22[\xF6&\x9Af\xF0}\x83\x8FU\xF3iG\xA3\xCD\x9B\x87\xED\xD8H\x0B\xCE\xD9\\\xBBE\xCC\x11a\x01\xE0\x82\x01QR\x7F\x0Ff\xD9\x08Zn\xD6\x0B\x83\x81y\x98~$\t\x92\xBF\xF4\xC0Ql\xCFl\xCD\xE4\xA1\xCA\x94\xCE\x8B\x98d` a\x01\xE0\x83\x01Q\x01R\x7F+\xAC\r#\xC8X]\x14\x87\xECa\x1B^\xFF\xC9~XR\xFE\xA4:|\xBA6\xCC\xDD, y1\xF3\x94a\x02\0\x82\x01QR\x7F\x18`\xB5N\x01\xA0j\xEAZ\xDBK\x13\xBF[\xAE\xBA\xB9+sh\x07\xA3\xA8\x9F\xF2\x04\t\x92\xB0n\xE6\xEC` a\x02\0\x83\x01Q\x01R\x7F\x0C\x0B\xFA\x1C/\xC6\xF8\xED\x01#=Qh\xDB\x1E\x1D\xFErU\x04\xF02\xF6i\xF5\n\x92\xAEw\xC7)\x06a\x02 \x82\x01QR\x7F\rt\x1E\x12L}\x10i\xB8\xA4\0\xCB\xCD\xCF\xD9\x01(\xA53\x90\x1A\xD4\xDE\x1E\x03\x7F\xE7)\x84\xDC4\xCF` a\x02 \x83\x01Q\x01R\x7F\x01\xCF\xED0\x08\\\x9E\xFC\xE0Fh W\x94\xAA9\xB1\xA8\xEEY\x124\xB4\xC7z\"\xF8\xC2m\x89\x9E\x05a\x02@\x82\x01QR\x7F*\xB6\x8A\xC8-6\xCE\xDBd}\x14\xA5\xB0\x03^\x8C\x9A\x0B\xE8G\x80\xB7\xBA\xE1\x13:'\xA8\x80\x96n\xD1` a\x02@\x83\x01Q\x01R\x7F\x07.\x1DP\xF8\xB5\xCF\x8DWK8G'dw\xD9[\xBDQ\x165\x10\0\x84\x1Fr\x8D\xA4O@C\xB5a\x02`\x82\x01QR\x7F#\xF8\xEAn\xAC\xD0\x87mW\"\x0FW\xEA\xBA\xCB\xE7j##A\x16cs\x1A%\x1D]\xCA6\xF1\xB5\x9F` 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[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x81\x10\x80a\x08!W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1B`$\x82\x01R\x7FBn254: invalid scalar field\0\0\0\0\0`D\x82\x01R`d\x01a\r\x1CV[_a\x144a\x06\x97V[\x90Pa\x14>a\x1F3V[\x83Q`\x01`\x01`@\x1B\x03\x90\x81\x16\x82R` \x85\x01Q\x16\x81`\x01` \x02\x01R`@\x84\x81\x01Q\x82\x82\x01R`\x01T``\x83\x01R`\x02T`\x80\x83\x01R`\x03T`\xA0\x83\x01R_T`\xC0\x83\x01RQc\xCESzw`\xE0\x1B\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90c\xCESzw\x90a\x14\xBD\x90\x85\x90\x85\x90\x88\x90`\x04\x01a(zV[` `@Q\x80\x83\x03\x81\x86Z\xF4\x15\x80\x15a\x14\xD8W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x14\xFC\x91\x90a*\x9AV[a\x15\x19W`@Qc\t\xBD\xE39`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPPPV[`\tT\x15\x80\x15\x90a\x15\x94WP`\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\x15_Wa\x15_a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01Ta\x15\x89\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84a*\xB9V[`\x01`\x01`@\x1B\x03\x16\x11[\x15a\x16'W`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x15\xC1Wa\x15\xC1a&uV[_\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\x16\x01\x83a*\xD8V[\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[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\x17\x8EWP\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\x17\x82_Q` a+0_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\x08\xACW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x17\xB4a\r1V[`@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\x06CV[\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\x18GWP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x18D\x91\x81\x01\x90a+\x02V[`\x01[a\x18oW`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\r\x1CV[_Q` a+0_9_Q\x90_R\x81\x14a\x18\x9FW`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\r\x1CV[a\x18\xA9\x83\x83a\x1A\xACV[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\x08\xACW`@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[a\x19oa\x1B\x01V[a\r.\x81a\x1BJV[a\x08\xACa\x1B\x01V[\x82Q`\x01`\x01`@\x1B\x03\x16\x15\x15\x80a\x19\xA4WP` \x83\x01Q`\x01`\x01`@\x1B\x03\x16\x15\x15[\x80a\x19\xB1WP` \x82\x01Q\x15[\x80a\x19\xBEWP`@\x82\x01Q\x15[\x80a\x19\xCBWP``\x82\x01Q\x15[\x80a\x19\xD5WP\x81Q\x15[\x80a\x19\xE7WPa\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10[\x80a\x19\xFBWPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x15a\x1A\x19W`@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\x1A\xB5\x82a\x1BRV[`@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\x1A\xF9Wa\x18\xA9\x82\x82a\x1B\xB5V[a\x08!a\x1C'V[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0T`\x01`@\x1B\x90\x04`\xFF\x16a\x08\xACW`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\xF7a\x1B\x01V[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a\x1B\x87W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\r\x1CV[_Q` a+0_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\x1B\xD1\x91\x90a+\x19V[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x1C\tW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x1C\x0EV[``\x91P[P\x91P\x91Pa\x1C\x1E\x85\x83\x83a\x1CFV[\x95\x94PPPPPV[4\x15a\x08\xACW`@Qc\xB3\x98\x97\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``\x82a\x1C[Wa\x1CV\x82a\x1C\xA5V[a\x1C\x9EV[\x81Q\x15\x80\x15a\x1CrWP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a\x1C\x9BW`@Qc\x99\x96\xB3\x15`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`$\x01a\r\x1CV[P\x80[\x93\x92PPPV[\x80Q\x15a\x1C\xB5W\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\x1D\x01`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D!`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1DA`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1Da`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\x81`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\xA1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\xC1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\xE1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\x01`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E!`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1EA`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1Ea`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\x81`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\xA1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\xC1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\xE1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1F\x01`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1F!`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01_\x81R` \x01_\x81RP\x90V[`@Q\x80`\xE0\x01`@R\x80`\x07\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x1FgW__\xFD[\x91\x90PV[_` \x82\x84\x03\x12\x15a\x1F|W__\xFD[a\x1C\x9E\x82a\x1FQV[_` \x82\x84\x03\x12\x15a\x1F\x95W__\xFD[P5\x91\x90PV[_a\x05\0\x82\x01\x90P\x82Q\x82R` \x83\x01Q` \x83\x01R`@\x83\x01Qa\x1F\xCE`@\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[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@Qa\x02\xE0\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a!\xD4Wa!\xD4a!\x9DV[`@R\x90V[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\"\x02Wa\"\x02a!\x9DV[`@R\x91\x90PV[\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x14a\x1FgW__\xFD[_``\x82\x84\x03\x12\x15a\"0W__\xFD[`@Q``\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\"RWa\"Ra!\x9DV[`@R\x90P\x80a\"a\x83a\"\nV[\x81Ra\"o` \x84\x01a\"\nV[` \x82\x01R`@\x92\x83\x015\x92\x01\x91\x90\x91R\x91\x90PV[_`@\x82\x84\x03\x12\x15a\"\x95W__\xFD[`@\x80Q\x90\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\"\xB7Wa\"\xB7a!\x9DV[`@R\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[__\x82\x84\x03a\x04\xE0\x81\x12\x15a\"\xE4W__\xFD[a\"\xEE\x85\x85a\" V[\x92Pa\x04\x80`_\x19\x82\x01\x12\x15a#\x02W__\xFD[Pa#\x0Ba!\xB1V[a#\x18\x85``\x86\x01a\"\x85V[\x81Ra#'\x85`\xA0\x86\x01a\"\x85V[` \x82\x01Ra#9\x85`\xE0\x86\x01a\"\x85V[`@\x82\x01Ra#L\x85a\x01 \x86\x01a\"\x85V[``\x82\x01Ra#_\x85a\x01`\x86\x01a\"\x85V[`\x80\x82\x01Ra#r\x85a\x01\xA0\x86\x01a\"\x85V[`\xA0\x82\x01Ra#\x85\x85a\x01\xE0\x86\x01a\"\x85V[`\xC0\x82\x01Ra#\x98\x85a\x02 \x86\x01a\"\x85V[`\xE0\x82\x01Ra#\xAB\x85a\x02`\x86\x01a\"\x85V[a\x01\0\x82\x01Ra#\xBF\x85a\x02\xA0\x86\x01a\"\x85V[a\x01 \x82\x01Ra#\xD3\x85a\x02\xE0\x86\x01a\"\x85V[a\x01@\x82\x01Ra#\xE7\x85a\x03 \x86\x01a\"\x85V[a\x01`\x82\x01Ra#\xFB\x85a\x03`\x86\x01a\"\x85V[a\x01\x80\x82\x01Ra\x03\xA0\x84\x015a\x01\xA0\x82\x01Ra\x03\xC0\x84\x015a\x01\xC0\x82\x01Ra\x03\xE0\x84\x015a\x01\xE0\x82\x01Ra\x04\0\x84\x015a\x02\0\x82\x01Ra\x04 \x84\x015a\x02 \x82\x01Ra\x04@\x84\x015a\x02@\x82\x01Ra\x04`\x84\x015a\x02`\x82\x01Ra\x04\x80\x84\x015a\x02\x80\x82\x01Ra\x04\xA0\x84\x015a\x02\xA0\x82\x01Ra\x04\xC0\x90\x93\x015a\x02\xC0\x84\x01RP\x92\x90\x91PV[__`@\x83\x85\x03\x12\x15a$\x92W__\xFD[a$\x9B\x83a\x1FQV[\x91P` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15a$\xB5W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a$\xC5W__\xFD[\x805`\x01`\x01`@\x1B\x03\x81\x11\x15a$\xDEWa$\xDEa!\x9DV[a$\xF1`\x1F\x82\x01`\x1F\x19\x16` \x01a!\xDAV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a%\x05W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[\x805c\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\x1FgW__\xFD[_` \x82\x84\x03\x12\x15a%GW__\xFD[a\x1C\x9E\x82a%$V[____\x84\x86\x03a\x01 \x81\x12\x15a%eW__\xFD[a%o\x87\x87a\" V[\x94P`\x80`_\x19\x82\x01\x12\x15a%\x82W__\xFD[P`@Q`\x80\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a%\xA5Wa%\xA5a!\x9DV[`@\x90\x81R``\x87\x81\x015\x83R`\x80\x88\x015` \x84\x01R`\xA0\x88\x015\x91\x83\x01\x91\x90\x91R`\xC0\x87\x015\x90\x82\x01R\x92Pa%\xDF`\xE0\x86\x01a%$V[\x91Pa%\xEEa\x01\0\x86\x01a\x1FQV[\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&?W__\xFD[PP\x805\x92` \x90\x91\x015\x91PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x81\x81\x03\x81\x81\x11\x15a\x0C\xE9Wa\x0C\xE9a&NV[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_\x81a&\x97Wa&\x97a&NV[P_\x19\x01\x90V[\x80_[`\x07\x81\x10\x15a\x15\x19W\x81Q\x84R` \x93\x84\x01\x93\x90\x91\x01\x90`\x01\x01a&\xA1V[a&\xD5\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`\x82\x01\x90P\x84Q\x82R` \x85\x01Q` \x83\x01R`@\x85\x01Qa(\xAC`@\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\x01Ra*\x84a\x05\0\x83\x01\x85a&\x9EV[a*\x92a\x05\xE0\x83\x01\x84a&\xC0V[\x94\x93PPPPV[_` \x82\x84\x03\x12\x15a*\xAAW__\xFD[\x81Q\x80\x15\x15\x81\x14a\x1C\x9EW__\xFD[`\x01`\x01`@\x1B\x03\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\x0C\xE9Wa\x0C\xE9a&NV[_`\x01`\x01`@\x1B\x03\x82\x16`\x01`\x01`@\x1B\x03\x81\x03a*\xF9Wa*\xF9a&NV[`\x01\x01\x92\x91PPV[_` \x82\x84\x03\x12\x15a+\x12W__\xFD[PQ\x91\x90PV[_\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",
3367 );
3368 #[rustfmt::skip]
3374 #[allow(clippy::all)]
3375 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
3376 b"`\x80`@R`\x046\x10a\x01aW_5`\xE0\x1C\x80cqP\x18\xA6\x11a\0\xCDW\x80c\x9F\xDBT\xA7\x11a\0\x87W\x80c\xD2M\x93=\x11a\0bW\x80c\xD2M\x93=\x14a\x05\x1AW\x80c\xE003\x01\x14a\x05IW\x80c\xF2\xFD\xE3\x8B\x14a\x05hW\x80c\xF9\xE5\r\x19\x14a\x05\x87W__\xFD[\x80c\x9F\xDBT\xA7\x14a\x04PW\x80c\xAD<\xB1\xCC\x14a\x04\xA5W\x80c\xC2;\x9E\x9E\x14a\x04\xE2W__\xFD[\x80cqP\x18\xA6\x14a\x03[W\x80c\x82nA\xFC\x14a\x03oW\x80c\x85\x84\xD2?\x14a\x03\x9AW\x80c\x8D\xA5\xCB[\x14a\x03\xD6W\x80c\x96\xC1\xCAa\x14a\x04\x12W\x80c\x9B\xAA<\xC9\x14a\x041W__\xFD[\x80c1=\xF7\xB1\x11a\x01\x1EW\x80c1=\xF7\xB1\x14a\x02\x8CW\x80c7\x8E\xC2;\x14a\x02\xC3W\x80cBm1\x94\x14a\x02\xDFW\x80cO\x1E\xF2\x86\x14a\x03 W\x80cR\xD1\x90-\x14a\x033W\x80ci\xCCj\x04\x14a\x03GW__\xFD[\x80c\x01?\xA5\xFC\x14a\x01eW\x80c\x02\xB5\x92\xF3\x14a\x01\x86W\x80c\r\x8En,\x14a\x01\xE3W\x80c\x12\x17<,\x14a\x02\x0EW\x80c c\xD4\xF7\x14a\x02/W\x80c/y\x88\x9D\x14a\x02NW[__\xFD[4\x80\x15a\x01pW__\xFD[Pa\x01\x84a\x01\x7F6`\x04a\x1FlV[a\x05\x9BV[\0[4\x80\x15a\x01\x91W__\xFD[Pa\x01\xA5a\x01\xA06`\x04a\x1F\x85V[a\x06NV[`@Qa\x01\xDA\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\x01\xEEW__\xFD[P`@\x80Q`\x01\x81R_` \x82\x01\x81\x90R\x91\x81\x01\x91\x90\x91R``\x01a\x01\xDAV[4\x80\x15a\x02\x19W__\xFD[Pa\x02\"a\x06\x97V[`@Qa\x01\xDA\x91\x90a\x1F\x9CV[4\x80\x15a\x02:W__\xFD[Pa\x01\x84a\x02I6`\x04a\"\xD1V[a\x06\xACV[4\x80\x15a\x02YW__\xFD[P`\x08Ta\x02t\x90`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81V[`@Q`\x01`\x01`@\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xDAV[4\x80\x15a\x02\x97W__\xFD[P`\x08Ta\x02\xAB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xDAV[4\x80\x15a\x02\xCEW__\xFD[PC[`@Q\x90\x81R` \x01a\x01\xDAV[4\x80\x15a\x02\xEAW__\xFD[P_T`\x01T`\x02T`\x03Ta\x03\0\x93\x92\x91\x90\x84V[`@\x80Q\x94\x85R` \x85\x01\x93\x90\x93R\x91\x83\x01R``\x82\x01R`\x80\x01a\x01\xDAV[a\x01\x84a\x03.6`\x04a$\x81V[a\x08\x06V[4\x80\x15a\x03>W__\xFD[Pa\x02\xD1a\x08%V[4\x80\x15a\x03RW__\xFD[Pa\x01\x84a\x08@V[4\x80\x15a\x03fW__\xFD[Pa\x01\x84a\x08\xAEV[4\x80\x15a\x03zW__\xFD[P`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15[`@Q\x90\x15\x15\x81R` \x01a\x01\xDAV[4\x80\x15a\x03\xA5W__\xFD[Pa\x03\xB9a\x03\xB46`\x04a\x1F\x85V[a\x08\xBFV[`@\x80Q\x92\x83R`\x01`\x01`@\x1B\x03\x90\x91\x16` \x83\x01R\x01a\x01\xDAV[4\x80\x15a\x03\xE1W__\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\x02\xABV[4\x80\x15a\x04\x1DW__\xFD[Pa\x01\x84a\x04,6`\x04a%7V[a\t\xEAV[4\x80\x15a\x04<W__\xFD[Pa\x01\x84a\x04K6`\x04a%PV[a\nsV[4\x80\x15a\x04[W__\xFD[P`\x06T`\x07Ta\x04\x7F\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\x01\xDAV[4\x80\x15a\x04\xB0W__\xFD[Pa\x04\xD5`@Q\x80`@\x01`@R\x80`\x05\x81R` \x01d\x03R\xE3\x02\xE3`\xDC\x1B\x81RP\x81V[`@Qa\x01\xDA\x91\x90a%\xF9V[4\x80\x15a\x04\xEDW__\xFD[P`\x08Ta\x05\x05\x90`\x01`\xA0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x81V[`@Qc\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\x01\xDAV[4\x80\x15a\x05%W__\xFD[P`\x04T`\x05Ta\x04\x7F\x91`\x01`\x01`@\x1B\x03\x80\x82\x16\x92`\x01`@\x1B\x90\x92\x04\x16\x90\x83V[4\x80\x15a\x05TW__\xFD[Pa\x03\x8Aa\x05c6`\x04a&.V[a\x0B\x95V[4\x80\x15a\x05sW__\xFD[Pa\x01\x84a\x05\x826`\x04a\x1FlV[a\x0C\xEFV[4\x80\x15a\x05\x92W__\xFD[P`\tTa\x02\xD1V[a\x05\xA3a\r1V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x05\xCAW`@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\x05\xF9W`@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\x06]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\x06\x9Fa\x1C\xCEV[a\x06\xA7a\r\x8CV[\x90P\x90V[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15\x15\x80\x15a\x06\xD1WP`\x08T`\x01`\x01`\xA0\x1B\x03\x163\x14\x15[\x15a\x06\xEFW`@Qc\x01GL\x8F`\xE7\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x06T\x82Q`\x01`\x01`@\x1B\x03\x91\x82\x16\x91\x16\x11\x15\x80a\x07(WP`\x06T` \x83\x01Q`\x01`\x01`@\x1B\x03`\x01`@\x1B\x90\x92\x04\x82\x16\x91\x16\x11\x15[\x15a\x07FW`@Qc\x05\x1CF\xEF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x07S\x82`@\x01Qa\x13\xBBV[a\x07]\x82\x82a\x14+V[\x81Q`\x06\x80T` \x85\x01Q`\x01`\x01`@\x1B\x03\x90\x81\x16`\x01`@\x1B\x02`\x01`\x01`\x80\x1B\x03\x19\x90\x92\x16\x93\x16\x92\x90\x92\x17\x91\x90\x91\x17\x90U`@\x82\x01Q`\x07Ua\x07\xAAa\x07\xA3C\x90V[B\x84a\x15\x1FV[\x81` \x01Q`\x01`\x01`@\x1B\x03\x16\x82_\x01Q`\x01`\x01`@\x1B\x03\x16\x7F\xA0Jw9$PZA\x85d67%\xF5h2\xF5w.k\x8D\r\xBDn\xFC\xE7$\xDF\xE8\x03\xDA\xE6\x84`@\x01Q`@Qa\x07\xFA\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPV[a\x08\x0Ea\x17\x08V[a\x08\x17\x82a\x17\xACV[a\x08!\x82\x82a\x17\xEDV[PPV[_a\x08.a\x18\xAEV[P_Q` a+0_9_Q\x90_R\x90V[a\x08Ha\r1V[`\x08T`\x01`\x01`\xA0\x1B\x03\x16\x15a\x08\x93W`\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\x08\xB6a\r1V[a\x08\xAC_a\x18\xF7V[`\t\x80T_\x91\x82\x91\x90a\x08\xD3`\x01\x83a&bV[\x81T\x81\x10a\x08\xE3Wa\x08\xE3a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84\x10a\t\"W`@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\t\xE3W\x84`\t\x82\x81T\x81\x10a\tRWa\tRa&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x80\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x11\x15a\t\xDBW`\t\x81\x81T\x81\x10a\t\x8BWa\t\x8Ba&uV[\x90_R` _ \x90`\x02\x02\x01`\x01\x01T`\t\x82\x81T\x81\x10a\t\xAEWa\t\xAEa&uV[\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\t6V[PP\x91P\x91V[a\t\xF2a\r1V[a\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10\x80a\n\x11WPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x80a\n/WP`\x08Tc\xFF\xFF\xFF\xFF`\x01`\xA0\x1B\x90\x91\x04\x81\x16\x90\x82\x16\x11\x15[\x15a\nMW`@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\n\xB7WP\x82[\x90P_\x82`\x01`\x01`@\x1B\x03\x16`\x01\x14\x80\x15a\n\xD2WP0;\x15[\x90P\x81\x15\x80\x15a\n\xE0WP\x80\x15[\x15a\n\xFEW`@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\x0B(W\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x0B1\x86a\x19gV[a\x0B9a\x19xV[a\x0BD\x89\x89\x89a\x19\x80V[\x83\x15a\x0B\x8AW\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[`\tT_\x90C\x84\x11\x80a\x0B\xA6WP\x80\x15[\x80a\x0B\xF0WP`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x0B\xD4Wa\x0B\xD4a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x84\x10[\x15a\x0C\x0EW`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x80\x80a\x0C\x1C`\x01\x85a&bV[\x90P[\x81a\x0C\xB8W`\x08T`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x81\x10a\x0C\xB8W\x86`\t\x82\x81T\x81\x10a\x0CQWa\x0CQa&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x11a\x0C\xA6W`\x01\x91P`\t\x81\x81T\x81\x10a\x0C\x86Wa\x0C\x86a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01T`\x01`\x01`@\x1B\x03\x16\x92Pa\x0C\xB8V[\x80a\x0C\xB0\x81a&\x89V[\x91PPa\x0C\x1FV[\x81a\x0C\xD6W`@Qc\xB0\xB48w`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x85a\x0C\xE1\x84\x89a&bV[\x11\x94PPPPP[\x92\x91PPV[a\x0C\xF7a\r1V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\r%W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01[`@Q\x80\x91\x03\x90\xFD[a\r.\x81a\x18\xF7V[PV[3a\rc\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\x08\xACW`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\r\x1CV[a\r\x94a\x1C\xCEV[b\x10\0\0\x81R`\x07` \x82\x01R\x7F#x=\x0E\x97w\xB7\xAFe\xFB\xF8I\xDA~\xDBu\xE7K\x1E\xAFP>\x02]\x7F/\x7F\x80\x99\x1B\xEF\xA2`@\x82\x01QR\x7F*N/\xE8\xAD\xFAS\xF4hRU\x82\xD5\x18LLp\xBB\xDB\x94l!\xF2\x16A\x8A\x98yp^T\xA7` `@\x83\x01Q\x01R\x7F\x06$\xB2\xC1\xE7\x7F$\xAF\xCE\xAF9E\x17C\xB9\xFA\x80\xD5\x85?\xCA{\xA0\x03\x89\xC6ue\x07t\0\x9B``\x82\x01QR\x7F%\rw\x19\xE9L\xA2\xDF\0\xDF\xE3'\x93\x8FZ\x8DM\x83wy\xB9\x987\xCAwzS\xD3\x91'\xB1y` ``\x83\x01Q\x01R\x7F\r\xC0\x95\x15\x15.\xAE\xA6m\r\xB2\xF5q\xCC\x99^6\x9D&\xFEds\x94\xF1\r\xB59\x8C\x91u\x19\xDC`\x80\x82\x01QR\x7F\x12s\x14Ml\xEC,Jh\xB2J\x14\x93y\xC0\xF5Y+\xB7\xFB\xDD\xBE2\xFA\x17\x19\x19\x95\x0C\xA4\x04\xCB` `\x80\x83\x01Q\x01R\x7F\x11\x95!\xBBh\xCA\xEC!n/\x05\xEE\xB4f\xFB:\xBF\xE1\xF3\x9B\xAF\x7F\xE7\xCB9.\xA0W\xB6\xA2\xD9\xBF`\xA0\x82\x01QR\x7F-R\xAD\xEA\xBA\x80E\xE5:\xB5&\xFE\x99\x82\xD0\xEAE-\xEFk>\xA0%='\xA1\x9E\xF3\xB4n\x84(` `\xA0\x83\x01Q\x01R\x7F\x16\xC3\xB5\xB2\x17\xD3\x02\x97Z\x92\r\x137E$\xD7\xA5.JP\xFD\x7F\xB90\x84\"q\xEB\xF4\xA8N\xFD`\xC0\x82\x01QR\x7F \x07\x88\x91k\x90{\x19ir\xBD\xE3\x041\x8E\x88Z%!QK-\xB5\xE4\xA1\x18\x99\xC5\x12\x04\xF0\x89` `\xC0\x83\x01Q\x01R\x7F\x11'X\x1A\xFEu=\xEF\xCA\x9A\xEF\x12\xE73-\xB9\x97\x8A \x0B\x16\x99\xCE8\x88\xC0\xF3\xAE\xA6\x11\x1D\xC3`\xE0\x82\x01QR\x7F\x08\x81\xE1?\0r;\xE1\xA0Hr\xED\x02\xB2\xD0x\xC3\x1E\x80\xFE\xAF'rN&,\xE9|,\xB0\xBB\x1D` `\xE0\x83\x01Q\x01R\x7F\x14\x82\xA3\xA6\xBB\x91\xD6H=\x156\x83\xE2@O/UF\xE0\xE8\x95S\x0F\xDF\x13 \x91I\x84\x06\xE3\xDEa\x01\0\x82\x01QR~\xFAR\xDB=R\xD9\x05\xEA\xD1$\x81\x02\xF3\xA8\nC\xA9\r\x84\0\xC6\x8F`\xA6,T<A{/K` a\x01\0\x83\x01Q\x01R\x7F\nW\xDA\xDDJU\x19\x95%\xACj\xC6\xFA\xBC\x87\xA4\xCC\xCF\xDC\x98\x14+\xCE\xF9\xDB\xF4}\xE0\x0E\xCCQda\x01 \x82\x01QR\x7F\x18\xD9Z\xBD\x9B\x8E\x12\xC3i6\xAA!\x8C\xFF\xF5\x82T\x8Ak\xBF\xF2\\3\x8C \x06\xEA\xEB\x1F\xE5\xB6\x96` a\x01 \x83\x01Q\x01R\x7F+\xC4\x0E\x91\xDD\x16\x9B\x8B\xC1C\xA0)R\xA1\xB6\xC6\xE6'\xBF\xEBz+\xBEPx\xE1A#\xF3\xC5L\x1Ca\x01@\x82\x01QR\x7F\x10\x8De\xA2\x0CW\x9Bm\x98\x83'^\xB6\x88\x9F\xC3\xF5\xFCys\\\xA9\xF6\x11\xA1;g\xDA\xA2\xFB\xC8\xD0` a\x01@\x83\x01Q\x01R\x7F!\xBC\x1F\x86\xD0`\x8E_\x06&\xB4g\xEEo\x82\x82\xB6\x19\"?`\xA7\xAC\xB0\xFCc\xBA{\xDA\xF7\x83\xBEa\x01`\x82\x01QR\x7F\x05\xEF2\x82\xF8\xEE\xF0\x15\x15\xFB\x9A\x8A}l\xA0k\x8B\0}\x1DQ$\x03\xEF\xB2h\xFB\x03\xCE_\t\xE9` a\x01`\x83\x01Q\x01R\x7F,\xABf\xC1\xCBZ\x83\x86\x9Es\xAC4\xFB\xE4gHi\x99\xBA\xBDT\x1D\x90\x10\xEE\x9A\x80H\x06\xEE\xE4\xEFa\x01\x80\x82\x01QR\x7F-\xB1\x98$\x19\xC5\xA4\xA1u\x93\xAC\xFF\x955\xFA\x96v\x83\xD7\\\x8A\xEC\x011\x9Bd\xB8J\xAD\xA2\xAD\x84` a\x01\x80\x83\x01Q\x01R\x7F,8f|l~\xB8h\xBD\xD3\x0C4\xDD?K\x84\xD9\xB9\xB1\xA2}xg\xB3d\xC8\xB7\x83\x14#\xE9\x08a\x01\xA0\x82\x01QR\x7F+,\xB4\x04M\xD5\x11e\xC4\x818!\x9DQ\xCF\x8D\x16\x89\xF9\x1E\xD3\xEE\xEF\xEA\xD6\xE0U\xEBH\x8A,\xE2` a\x01\xA0\x83\x01Q\x01R\x7F-H\xE5G\x03\x01\x1D\xF2\xC7J\x14\xDA\xFD\xE3\xAFO\xD8>\xC7\x18u\xD8\xDD\xC3UFXd\x0C\xC9U\x01a\x01\xC0\x82\x01QR\x7F$:\x99\xD8\r2\xEBT\x08\xB5\x9D[\x080+\xED\xE0p\xD3\xFB\n\x8E\xFE/\"b\xF8e\xBF\xFBM\r` a\x01\xC0\x83\x01Q\x01R\x7F\x04U\xD22[\xF6&\x9Af\xF0}\x83\x8FU\xF3iG\xA3\xCD\x9B\x87\xED\xD8H\x0B\xCE\xD9\\\xBBE\xCC\x11a\x01\xE0\x82\x01QR\x7F\x0Ff\xD9\x08Zn\xD6\x0B\x83\x81y\x98~$\t\x92\xBF\xF4\xC0Ql\xCFl\xCD\xE4\xA1\xCA\x94\xCE\x8B\x98d` a\x01\xE0\x83\x01Q\x01R\x7F+\xAC\r#\xC8X]\x14\x87\xECa\x1B^\xFF\xC9~XR\xFE\xA4:|\xBA6\xCC\xDD, y1\xF3\x94a\x02\0\x82\x01QR\x7F\x18`\xB5N\x01\xA0j\xEAZ\xDBK\x13\xBF[\xAE\xBA\xB9+sh\x07\xA3\xA8\x9F\xF2\x04\t\x92\xB0n\xE6\xEC` a\x02\0\x83\x01Q\x01R\x7F\x0C\x0B\xFA\x1C/\xC6\xF8\xED\x01#=Qh\xDB\x1E\x1D\xFErU\x04\xF02\xF6i\xF5\n\x92\xAEw\xC7)\x06a\x02 \x82\x01QR\x7F\rt\x1E\x12L}\x10i\xB8\xA4\0\xCB\xCD\xCF\xD9\x01(\xA53\x90\x1A\xD4\xDE\x1E\x03\x7F\xE7)\x84\xDC4\xCF` a\x02 \x83\x01Q\x01R\x7F\x01\xCF\xED0\x08\\\x9E\xFC\xE0Fh W\x94\xAA9\xB1\xA8\xEEY\x124\xB4\xC7z\"\xF8\xC2m\x89\x9E\x05a\x02@\x82\x01QR\x7F*\xB6\x8A\xC8-6\xCE\xDBd}\x14\xA5\xB0\x03^\x8C\x9A\x0B\xE8G\x80\xB7\xBA\xE1\x13:'\xA8\x80\x96n\xD1` a\x02@\x83\x01Q\x01R\x7F\x07.\x1DP\xF8\xB5\xCF\x8DWK8G'dw\xD9[\xBDQ\x165\x10\0\x84\x1Fr\x8D\xA4O@C\xB5a\x02`\x82\x01QR\x7F#\xF8\xEAn\xAC\xD0\x87mW\"\x0FW\xEA\xBA\xCB\xE7j##A\x16cs\x1A%\x1D]\xCA6\xF1\xB5\x9F` 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[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x81\x10\x80a\x08!W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1B`$\x82\x01R\x7FBn254: invalid scalar field\0\0\0\0\0`D\x82\x01R`d\x01a\r\x1CV[_a\x144a\x06\x97V[\x90Pa\x14>a\x1F3V[\x83Q`\x01`\x01`@\x1B\x03\x90\x81\x16\x82R` \x85\x01Q\x16\x81`\x01` \x02\x01R`@\x84\x81\x01Q\x82\x82\x01R`\x01T``\x83\x01R`\x02T`\x80\x83\x01R`\x03T`\xA0\x83\x01R_T`\xC0\x83\x01RQc\xCESzw`\xE0\x1B\x81Rs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90c\xCESzw\x90a\x14\xBD\x90\x85\x90\x85\x90\x88\x90`\x04\x01a(zV[` `@Q\x80\x83\x03\x81\x86Z\xF4\x15\x80\x15a\x14\xD8W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x14\xFC\x91\x90a*\x9AV[a\x15\x19W`@Qc\t\xBD\xE39`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPPPV[`\tT\x15\x80\x15\x90a\x15\x94WP`\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\x15_Wa\x15_a&uV[_\x91\x82R` \x90\x91 `\x02\x90\x91\x02\x01Ta\x15\x89\x90`\x01`@\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x84a*\xB9V[`\x01`\x01`@\x1B\x03\x16\x11[\x15a\x16'W`\x08T`\t\x80T\x90\x91`\x01`\xC0\x1B\x90\x04`\x01`\x01`@\x1B\x03\x16\x90\x81\x10a\x15\xC1Wa\x15\xC1a&uV[_\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\x16\x01\x83a*\xD8V[\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[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\x17\x8EWP\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\x17\x82_Q` a+0_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\x08\xACW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x17\xB4a\r1V[`@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\x06CV[\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\x18GWP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x18D\x91\x81\x01\x90a+\x02V[`\x01[a\x18oW`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\r\x1CV[_Q` a+0_9_Q\x90_R\x81\x14a\x18\x9FW`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\r\x1CV[a\x18\xA9\x83\x83a\x1A\xACV[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\x08\xACW`@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[a\x19oa\x1B\x01V[a\r.\x81a\x1BJV[a\x08\xACa\x1B\x01V[\x82Q`\x01`\x01`@\x1B\x03\x16\x15\x15\x80a\x19\xA4WP` \x83\x01Q`\x01`\x01`@\x1B\x03\x16\x15\x15[\x80a\x19\xB1WP` \x82\x01Q\x15[\x80a\x19\xBEWP`@\x82\x01Q\x15[\x80a\x19\xCBWP``\x82\x01Q\x15[\x80a\x19\xD5WP\x81Q\x15[\x80a\x19\xE7WPa\x0E\x10\x81c\xFF\xFF\xFF\xFF\x16\x10[\x80a\x19\xFBWPc\x01\xE13\x80\x81c\xFF\xFF\xFF\xFF\x16\x11[\x15a\x1A\x19W`@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\x1A\xB5\x82a\x1BRV[`@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\x1A\xF9Wa\x18\xA9\x82\x82a\x1B\xB5V[a\x08!a\x1C'V[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0T`\x01`@\x1B\x90\x04`\xFF\x16a\x08\xACW`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\xF7a\x1B\x01V[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a\x1B\x87W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\r\x1CV[_Q` a+0_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\x1B\xD1\x91\x90a+\x19V[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x1C\tW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x1C\x0EV[``\x91P[P\x91P\x91Pa\x1C\x1E\x85\x83\x83a\x1CFV[\x95\x94PPPPPV[4\x15a\x08\xACW`@Qc\xB3\x98\x97\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``\x82a\x1C[Wa\x1CV\x82a\x1C\xA5V[a\x1C\x9EV[\x81Q\x15\x80\x15a\x1CrWP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a\x1C\x9BW`@Qc\x99\x96\xB3\x15`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`$\x01a\r\x1CV[P\x80[\x93\x92PPPV[\x80Q\x15a\x1C\xB5W\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\x1D\x01`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D!`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1DA`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1Da`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\x81`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\xA1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\xC1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1D\xE1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\x01`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E!`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1EA`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1Ea`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\x81`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\xA1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\xC1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1E\xE1`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1F\x01`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01a\x1F!`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[\x81R` \x01_\x81R` \x01_\x81RP\x90V[`@Q\x80`\xE0\x01`@R\x80`\x07\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x1FgW__\xFD[\x91\x90PV[_` \x82\x84\x03\x12\x15a\x1F|W__\xFD[a\x1C\x9E\x82a\x1FQV[_` \x82\x84\x03\x12\x15a\x1F\x95W__\xFD[P5\x91\x90PV[_a\x05\0\x82\x01\x90P\x82Q\x82R` \x83\x01Q` \x83\x01R`@\x83\x01Qa\x1F\xCE`@\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[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@Qa\x02\xE0\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a!\xD4Wa!\xD4a!\x9DV[`@R\x90V[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\"\x02Wa\"\x02a!\x9DV[`@R\x91\x90PV[\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x14a\x1FgW__\xFD[_``\x82\x84\x03\x12\x15a\"0W__\xFD[`@Q``\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\"RWa\"Ra!\x9DV[`@R\x90P\x80a\"a\x83a\"\nV[\x81Ra\"o` \x84\x01a\"\nV[` \x82\x01R`@\x92\x83\x015\x92\x01\x91\x90\x91R\x91\x90PV[_`@\x82\x84\x03\x12\x15a\"\x95W__\xFD[`@\x80Q\x90\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\"\xB7Wa\"\xB7a!\x9DV[`@R\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[__\x82\x84\x03a\x04\xE0\x81\x12\x15a\"\xE4W__\xFD[a\"\xEE\x85\x85a\" V[\x92Pa\x04\x80`_\x19\x82\x01\x12\x15a#\x02W__\xFD[Pa#\x0Ba!\xB1V[a#\x18\x85``\x86\x01a\"\x85V[\x81Ra#'\x85`\xA0\x86\x01a\"\x85V[` \x82\x01Ra#9\x85`\xE0\x86\x01a\"\x85V[`@\x82\x01Ra#L\x85a\x01 \x86\x01a\"\x85V[``\x82\x01Ra#_\x85a\x01`\x86\x01a\"\x85V[`\x80\x82\x01Ra#r\x85a\x01\xA0\x86\x01a\"\x85V[`\xA0\x82\x01Ra#\x85\x85a\x01\xE0\x86\x01a\"\x85V[`\xC0\x82\x01Ra#\x98\x85a\x02 \x86\x01a\"\x85V[`\xE0\x82\x01Ra#\xAB\x85a\x02`\x86\x01a\"\x85V[a\x01\0\x82\x01Ra#\xBF\x85a\x02\xA0\x86\x01a\"\x85V[a\x01 \x82\x01Ra#\xD3\x85a\x02\xE0\x86\x01a\"\x85V[a\x01@\x82\x01Ra#\xE7\x85a\x03 \x86\x01a\"\x85V[a\x01`\x82\x01Ra#\xFB\x85a\x03`\x86\x01a\"\x85V[a\x01\x80\x82\x01Ra\x03\xA0\x84\x015a\x01\xA0\x82\x01Ra\x03\xC0\x84\x015a\x01\xC0\x82\x01Ra\x03\xE0\x84\x015a\x01\xE0\x82\x01Ra\x04\0\x84\x015a\x02\0\x82\x01Ra\x04 \x84\x015a\x02 \x82\x01Ra\x04@\x84\x015a\x02@\x82\x01Ra\x04`\x84\x015a\x02`\x82\x01Ra\x04\x80\x84\x015a\x02\x80\x82\x01Ra\x04\xA0\x84\x015a\x02\xA0\x82\x01Ra\x04\xC0\x90\x93\x015a\x02\xC0\x84\x01RP\x92\x90\x91PV[__`@\x83\x85\x03\x12\x15a$\x92W__\xFD[a$\x9B\x83a\x1FQV[\x91P` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15a$\xB5W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a$\xC5W__\xFD[\x805`\x01`\x01`@\x1B\x03\x81\x11\x15a$\xDEWa$\xDEa!\x9DV[a$\xF1`\x1F\x82\x01`\x1F\x19\x16` \x01a!\xDAV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a%\x05W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[\x805c\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\x1FgW__\xFD[_` \x82\x84\x03\x12\x15a%GW__\xFD[a\x1C\x9E\x82a%$V[____\x84\x86\x03a\x01 \x81\x12\x15a%eW__\xFD[a%o\x87\x87a\" V[\x94P`\x80`_\x19\x82\x01\x12\x15a%\x82W__\xFD[P`@Q`\x80\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a%\xA5Wa%\xA5a!\x9DV[`@\x90\x81R``\x87\x81\x015\x83R`\x80\x88\x015` \x84\x01R`\xA0\x88\x015\x91\x83\x01\x91\x90\x91R`\xC0\x87\x015\x90\x82\x01R\x92Pa%\xDF`\xE0\x86\x01a%$V[\x91Pa%\xEEa\x01\0\x86\x01a\x1FQV[\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&?W__\xFD[PP\x805\x92` \x90\x91\x015\x91PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x81\x81\x03\x81\x81\x11\x15a\x0C\xE9Wa\x0C\xE9a&NV[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_\x81a&\x97Wa&\x97a&NV[P_\x19\x01\x90V[\x80_[`\x07\x81\x10\x15a\x15\x19W\x81Q\x84R` \x93\x84\x01\x93\x90\x91\x01\x90`\x01\x01a&\xA1V[a&\xD5\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`\x82\x01\x90P\x84Q\x82R` \x85\x01Q` \x83\x01R`@\x85\x01Qa(\xAC`@\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\x01Ra*\x84a\x05\0\x83\x01\x85a&\x9EV[a*\x92a\x05\xE0\x83\x01\x84a&\xC0V[\x94\x93PPPPV[_` \x82\x84\x03\x12\x15a*\xAAW__\xFD[\x81Q\x80\x15\x15\x81\x14a\x1C\x9EW__\xFD[`\x01`\x01`@\x1B\x03\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\x0C\xE9Wa\x0C\xE9a&NV[_`\x01`\x01`@\x1B\x03\x82\x16`\x01`\x01`@\x1B\x03\x81\x03a*\xF9Wa*\xF9a&NV[`\x01\x01\x92\x91PPV[_` \x82\x84\x03\x12\x15a+\x12W__\xFD[PQ\x91\x90PV[_\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",
3377 );
3378 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3379 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3383 #[derive(Clone)]
3384 pub struct LightClientState {
3385 #[allow(missing_docs)]
3386 pub viewNum: u64,
3387 #[allow(missing_docs)]
3388 pub blockHeight: u64,
3389 #[allow(missing_docs)]
3390 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3391 }
3392 #[allow(
3393 non_camel_case_types,
3394 non_snake_case,
3395 clippy::pub_underscore_fields,
3396 clippy::style
3397 )]
3398 const _: () = {
3399 use alloy::sol_types as alloy_sol_types;
3400 #[doc(hidden)]
3401 type UnderlyingSolTuple<'a> = (
3402 alloy::sol_types::sol_data::Uint<64>,
3403 alloy::sol_types::sol_data::Uint<64>,
3404 BN254::ScalarField,
3405 );
3406 #[doc(hidden)]
3407 type UnderlyingRustTuple<'a> = (
3408 u64,
3409 u64,
3410 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3411 );
3412 #[cfg(test)]
3413 #[allow(dead_code, unreachable_patterns)]
3414 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3415 match _t {
3416 alloy_sol_types::private::AssertTypeEq::<
3417 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3418 >(_) => {},
3419 }
3420 }
3421 #[automatically_derived]
3422 #[doc(hidden)]
3423 impl ::core::convert::From<LightClientState> for UnderlyingRustTuple<'_> {
3424 fn from(value: LightClientState) -> Self {
3425 (value.viewNum, value.blockHeight, value.blockCommRoot)
3426 }
3427 }
3428 #[automatically_derived]
3429 #[doc(hidden)]
3430 impl ::core::convert::From<UnderlyingRustTuple<'_>> for LightClientState {
3431 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3432 Self {
3433 viewNum: tuple.0,
3434 blockHeight: tuple.1,
3435 blockCommRoot: tuple.2,
3436 }
3437 }
3438 }
3439 #[automatically_derived]
3440 impl alloy_sol_types::SolValue for LightClientState {
3441 type SolType = Self;
3442 }
3443 #[automatically_derived]
3444 impl alloy_sol_types::private::SolTypeValue<Self> for LightClientState {
3445 #[inline]
3446 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
3447 (
3448 <alloy::sol_types::sol_data::Uint<64> as alloy_sol_types::SolType>::tokenize(
3449 &self.viewNum,
3450 ),
3451 <alloy::sol_types::sol_data::Uint<64> as alloy_sol_types::SolType>::tokenize(
3452 &self.blockHeight,
3453 ),
3454 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.blockCommRoot),
3455 )
3456 }
3457 #[inline]
3458 fn stv_abi_encoded_size(&self) -> usize {
3459 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
3460 return size;
3461 }
3462 let tuple =
3463 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
3464 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
3465 }
3466 #[inline]
3467 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
3468 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
3469 }
3470 #[inline]
3471 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
3472 let tuple =
3473 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
3474 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
3475 &tuple, out,
3476 )
3477 }
3478 #[inline]
3479 fn stv_abi_packed_encoded_size(&self) -> usize {
3480 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
3481 return size;
3482 }
3483 let tuple =
3484 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
3485 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
3486 &tuple,
3487 )
3488 }
3489 }
3490 #[automatically_derived]
3491 impl alloy_sol_types::SolType for LightClientState {
3492 type RustType = Self;
3493 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3494 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
3495 const ENCODED_SIZE: Option<usize> =
3496 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
3497 const PACKED_ENCODED_SIZE: Option<usize> =
3498 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
3499 #[inline]
3500 fn valid_token(token: &Self::Token<'_>) -> bool {
3501 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
3502 }
3503 #[inline]
3504 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
3505 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
3506 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
3507 }
3508 }
3509 #[automatically_derived]
3510 impl alloy_sol_types::SolStruct for LightClientState {
3511 const NAME: &'static str = "LightClientState";
3512 #[inline]
3513 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
3514 alloy_sol_types::private::Cow::Borrowed(
3515 "LightClientState(uint64 viewNum,uint64 blockHeight,uint256 blockCommRoot)",
3516 )
3517 }
3518 #[inline]
3519 fn eip712_components(
3520 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
3521 {
3522 alloy_sol_types::private::Vec::new()
3523 }
3524 #[inline]
3525 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
3526 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
3527 }
3528 #[inline]
3529 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
3530 [
3531 <alloy::sol_types::sol_data::Uint<
3532 64,
3533 > as alloy_sol_types::SolType>::eip712_data_word(&self.viewNum)
3534 .0,
3535 <alloy::sol_types::sol_data::Uint<
3536 64,
3537 > as alloy_sol_types::SolType>::eip712_data_word(&self.blockHeight)
3538 .0,
3539 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
3540 &self.blockCommRoot,
3541 )
3542 .0,
3543 ]
3544 .concat()
3545 }
3546 }
3547 #[automatically_derived]
3548 impl alloy_sol_types::EventTopic for LightClientState {
3549 #[inline]
3550 fn topic_preimage_length(rust: &Self::RustType) -> usize {
3551 0usize
3552 + <alloy::sol_types::sol_data::Uint<
3553 64,
3554 > as alloy_sol_types::EventTopic>::topic_preimage_length(
3555 &rust.viewNum,
3556 )
3557 + <alloy::sol_types::sol_data::Uint<
3558 64,
3559 > as alloy_sol_types::EventTopic>::topic_preimage_length(
3560 &rust.blockHeight,
3561 )
3562 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
3563 &rust.blockCommRoot,
3564 )
3565 }
3566 #[inline]
3567 fn encode_topic_preimage(
3568 rust: &Self::RustType,
3569 out: &mut alloy_sol_types::private::Vec<u8>,
3570 ) {
3571 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
3572 <alloy::sol_types::sol_data::Uint<
3573 64,
3574 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
3575 &rust.viewNum,
3576 out,
3577 );
3578 <alloy::sol_types::sol_data::Uint<
3579 64,
3580 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
3581 &rust.blockHeight,
3582 out,
3583 );
3584 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
3585 &rust.blockCommRoot,
3586 out,
3587 );
3588 }
3589 #[inline]
3590 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
3591 let mut out = alloy_sol_types::private::Vec::new();
3592 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
3593 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
3594 }
3595 }
3596 };
3597 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3598 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3602 #[derive(Clone)]
3603 pub struct StakeTableState {
3604 #[allow(missing_docs)]
3605 pub threshold: alloy::sol_types::private::primitives::aliases::U256,
3606 #[allow(missing_docs)]
3607 pub blsKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3608 #[allow(missing_docs)]
3609 pub schnorrKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3610 #[allow(missing_docs)]
3611 pub amountComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3612 }
3613 #[allow(
3614 non_camel_case_types,
3615 non_snake_case,
3616 clippy::pub_underscore_fields,
3617 clippy::style
3618 )]
3619 const _: () = {
3620 use alloy::sol_types as alloy_sol_types;
3621 #[doc(hidden)]
3622 type UnderlyingSolTuple<'a> = (
3623 alloy::sol_types::sol_data::Uint<256>,
3624 BN254::ScalarField,
3625 BN254::ScalarField,
3626 BN254::ScalarField,
3627 );
3628 #[doc(hidden)]
3629 type UnderlyingRustTuple<'a> = (
3630 alloy::sol_types::private::primitives::aliases::U256,
3631 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3632 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3633 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
3634 );
3635 #[cfg(test)]
3636 #[allow(dead_code, unreachable_patterns)]
3637 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3638 match _t {
3639 alloy_sol_types::private::AssertTypeEq::<
3640 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3641 >(_) => {},
3642 }
3643 }
3644 #[automatically_derived]
3645 #[doc(hidden)]
3646 impl ::core::convert::From<StakeTableState> for UnderlyingRustTuple<'_> {
3647 fn from(value: StakeTableState) -> Self {
3648 (
3649 value.threshold,
3650 value.blsKeyComm,
3651 value.schnorrKeyComm,
3652 value.amountComm,
3653 )
3654 }
3655 }
3656 #[automatically_derived]
3657 #[doc(hidden)]
3658 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StakeTableState {
3659 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3660 Self {
3661 threshold: tuple.0,
3662 blsKeyComm: tuple.1,
3663 schnorrKeyComm: tuple.2,
3664 amountComm: tuple.3,
3665 }
3666 }
3667 }
3668 #[automatically_derived]
3669 impl alloy_sol_types::SolValue for StakeTableState {
3670 type SolType = Self;
3671 }
3672 #[automatically_derived]
3673 impl alloy_sol_types::private::SolTypeValue<Self> for StakeTableState {
3674 #[inline]
3675 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
3676 (
3677 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
3678 &self.threshold,
3679 ),
3680 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.blsKeyComm),
3681 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
3682 &self.schnorrKeyComm,
3683 ),
3684 <BN254::ScalarField as alloy_sol_types::SolType>::tokenize(&self.amountComm),
3685 )
3686 }
3687 #[inline]
3688 fn stv_abi_encoded_size(&self) -> usize {
3689 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
3690 return size;
3691 }
3692 let tuple =
3693 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
3694 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
3695 }
3696 #[inline]
3697 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
3698 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
3699 }
3700 #[inline]
3701 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
3702 let tuple =
3703 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
3704 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
3705 &tuple, out,
3706 )
3707 }
3708 #[inline]
3709 fn stv_abi_packed_encoded_size(&self) -> usize {
3710 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
3711 return size;
3712 }
3713 let tuple =
3714 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
3715 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
3716 &tuple,
3717 )
3718 }
3719 }
3720 #[automatically_derived]
3721 impl alloy_sol_types::SolType for StakeTableState {
3722 type RustType = Self;
3723 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3724 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
3725 const ENCODED_SIZE: Option<usize> =
3726 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
3727 const PACKED_ENCODED_SIZE: Option<usize> =
3728 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
3729 #[inline]
3730 fn valid_token(token: &Self::Token<'_>) -> bool {
3731 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
3732 }
3733 #[inline]
3734 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
3735 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
3736 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
3737 }
3738 }
3739 #[automatically_derived]
3740 impl alloy_sol_types::SolStruct for StakeTableState {
3741 const NAME: &'static str = "StakeTableState";
3742 #[inline]
3743 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
3744 alloy_sol_types::private::Cow::Borrowed(
3745 "StakeTableState(uint256 threshold,uint256 blsKeyComm,uint256 schnorrKeyComm,uint256 amountComm)",
3746 )
3747 }
3748 #[inline]
3749 fn eip712_components(
3750 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
3751 {
3752 alloy_sol_types::private::Vec::new()
3753 }
3754 #[inline]
3755 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
3756 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
3757 }
3758 #[inline]
3759 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
3760 [
3761 <alloy::sol_types::sol_data::Uint<
3762 256,
3763 > as alloy_sol_types::SolType>::eip712_data_word(&self.threshold)
3764 .0,
3765 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
3766 &self.blsKeyComm,
3767 )
3768 .0,
3769 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
3770 &self.schnorrKeyComm,
3771 )
3772 .0,
3773 <BN254::ScalarField as alloy_sol_types::SolType>::eip712_data_word(
3774 &self.amountComm,
3775 )
3776 .0,
3777 ]
3778 .concat()
3779 }
3780 }
3781 #[automatically_derived]
3782 impl alloy_sol_types::EventTopic for StakeTableState {
3783 #[inline]
3784 fn topic_preimage_length(rust: &Self::RustType) -> usize {
3785 0usize
3786 + <alloy::sol_types::sol_data::Uint<
3787 256,
3788 > as alloy_sol_types::EventTopic>::topic_preimage_length(
3789 &rust.threshold,
3790 )
3791 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
3792 &rust.blsKeyComm,
3793 )
3794 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
3795 &rust.schnorrKeyComm,
3796 )
3797 + <BN254::ScalarField as alloy_sol_types::EventTopic>::topic_preimage_length(
3798 &rust.amountComm,
3799 )
3800 }
3801 #[inline]
3802 fn encode_topic_preimage(
3803 rust: &Self::RustType,
3804 out: &mut alloy_sol_types::private::Vec<u8>,
3805 ) {
3806 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
3807 <alloy::sol_types::sol_data::Uint<
3808 256,
3809 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
3810 &rust.threshold,
3811 out,
3812 );
3813 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
3814 &rust.blsKeyComm,
3815 out,
3816 );
3817 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
3818 &rust.schnorrKeyComm,
3819 out,
3820 );
3821 <BN254::ScalarField as alloy_sol_types::EventTopic>::encode_topic_preimage(
3822 &rust.amountComm,
3823 out,
3824 );
3825 }
3826 #[inline]
3827 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
3828 let mut out = alloy_sol_types::private::Vec::new();
3829 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
3830 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
3831 }
3832 }
3833 };
3834 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3835 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3840 #[derive(Clone)]
3841 pub struct AddressEmptyCode {
3842 #[allow(missing_docs)]
3843 pub target: alloy::sol_types::private::Address,
3844 }
3845 #[allow(
3846 non_camel_case_types,
3847 non_snake_case,
3848 clippy::pub_underscore_fields,
3849 clippy::style
3850 )]
3851 const _: () = {
3852 use alloy::sol_types as alloy_sol_types;
3853 #[doc(hidden)]
3854 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3855 #[doc(hidden)]
3856 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3857 #[cfg(test)]
3858 #[allow(dead_code, unreachable_patterns)]
3859 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3860 match _t {
3861 alloy_sol_types::private::AssertTypeEq::<
3862 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3863 >(_) => {},
3864 }
3865 }
3866 #[automatically_derived]
3867 #[doc(hidden)]
3868 impl ::core::convert::From<AddressEmptyCode> for UnderlyingRustTuple<'_> {
3869 fn from(value: AddressEmptyCode) -> Self {
3870 (value.target,)
3871 }
3872 }
3873 #[automatically_derived]
3874 #[doc(hidden)]
3875 impl ::core::convert::From<UnderlyingRustTuple<'_>> for AddressEmptyCode {
3876 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3877 Self { target: tuple.0 }
3878 }
3879 }
3880 #[automatically_derived]
3881 impl alloy_sol_types::SolError for AddressEmptyCode {
3882 type Parameters<'a> = UnderlyingSolTuple<'a>;
3883 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3884 const SIGNATURE: &'static str = "AddressEmptyCode(address)";
3885 const SELECTOR: [u8; 4] = [153u8, 150u8, 179u8, 21u8];
3886 #[inline]
3887 fn new<'a>(
3888 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3889 ) -> Self {
3890 tuple.into()
3891 }
3892 #[inline]
3893 fn tokenize(&self) -> Self::Token<'_> {
3894 (
3895 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3896 &self.target,
3897 ),
3898 )
3899 }
3900 }
3901 };
3902 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3903 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3908 #[derive(Clone)]
3909 pub struct ERC1967InvalidImplementation {
3910 #[allow(missing_docs)]
3911 pub implementation: alloy::sol_types::private::Address,
3912 }
3913 #[allow(
3914 non_camel_case_types,
3915 non_snake_case,
3916 clippy::pub_underscore_fields,
3917 clippy::style
3918 )]
3919 const _: () = {
3920 use alloy::sol_types as alloy_sol_types;
3921 #[doc(hidden)]
3922 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3923 #[doc(hidden)]
3924 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3925 #[cfg(test)]
3926 #[allow(dead_code, unreachable_patterns)]
3927 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3928 match _t {
3929 alloy_sol_types::private::AssertTypeEq::<
3930 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3931 >(_) => {},
3932 }
3933 }
3934 #[automatically_derived]
3935 #[doc(hidden)]
3936 impl ::core::convert::From<ERC1967InvalidImplementation> for UnderlyingRustTuple<'_> {
3937 fn from(value: ERC1967InvalidImplementation) -> Self {
3938 (value.implementation,)
3939 }
3940 }
3941 #[automatically_derived]
3942 #[doc(hidden)]
3943 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ERC1967InvalidImplementation {
3944 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3945 Self {
3946 implementation: tuple.0,
3947 }
3948 }
3949 }
3950 #[automatically_derived]
3951 impl alloy_sol_types::SolError for ERC1967InvalidImplementation {
3952 type Parameters<'a> = UnderlyingSolTuple<'a>;
3953 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3954 const SIGNATURE: &'static str = "ERC1967InvalidImplementation(address)";
3955 const SELECTOR: [u8; 4] = [76u8, 156u8, 140u8, 227u8];
3956 #[inline]
3957 fn new<'a>(
3958 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3959 ) -> Self {
3960 tuple.into()
3961 }
3962 #[inline]
3963 fn tokenize(&self) -> Self::Token<'_> {
3964 (
3965 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3966 &self.implementation,
3967 ),
3968 )
3969 }
3970 }
3971 };
3972 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3973 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3978 #[derive(Clone)]
3979 pub struct ERC1967NonPayable {}
3980 #[allow(
3981 non_camel_case_types,
3982 non_snake_case,
3983 clippy::pub_underscore_fields,
3984 clippy::style
3985 )]
3986 const _: () = {
3987 use alloy::sol_types as alloy_sol_types;
3988 #[doc(hidden)]
3989 type UnderlyingSolTuple<'a> = ();
3990 #[doc(hidden)]
3991 type UnderlyingRustTuple<'a> = ();
3992 #[cfg(test)]
3993 #[allow(dead_code, unreachable_patterns)]
3994 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3995 match _t {
3996 alloy_sol_types::private::AssertTypeEq::<
3997 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3998 >(_) => {},
3999 }
4000 }
4001 #[automatically_derived]
4002 #[doc(hidden)]
4003 impl ::core::convert::From<ERC1967NonPayable> for UnderlyingRustTuple<'_> {
4004 fn from(value: ERC1967NonPayable) -> Self {
4005 ()
4006 }
4007 }
4008 #[automatically_derived]
4009 #[doc(hidden)]
4010 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ERC1967NonPayable {
4011 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4012 Self {}
4013 }
4014 }
4015 #[automatically_derived]
4016 impl alloy_sol_types::SolError for ERC1967NonPayable {
4017 type Parameters<'a> = UnderlyingSolTuple<'a>;
4018 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4019 const SIGNATURE: &'static str = "ERC1967NonPayable()";
4020 const SELECTOR: [u8; 4] = [179u8, 152u8, 151u8, 159u8];
4021 #[inline]
4022 fn new<'a>(
4023 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4024 ) -> Self {
4025 tuple.into()
4026 }
4027 #[inline]
4028 fn tokenize(&self) -> Self::Token<'_> {
4029 ()
4030 }
4031 }
4032 };
4033 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4034 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4039 #[derive(Clone)]
4040 pub struct FailedInnerCall {}
4041 #[allow(
4042 non_camel_case_types,
4043 non_snake_case,
4044 clippy::pub_underscore_fields,
4045 clippy::style
4046 )]
4047 const _: () = {
4048 use alloy::sol_types as alloy_sol_types;
4049 #[doc(hidden)]
4050 type UnderlyingSolTuple<'a> = ();
4051 #[doc(hidden)]
4052 type UnderlyingRustTuple<'a> = ();
4053 #[cfg(test)]
4054 #[allow(dead_code, unreachable_patterns)]
4055 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4056 match _t {
4057 alloy_sol_types::private::AssertTypeEq::<
4058 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4059 >(_) => {},
4060 }
4061 }
4062 #[automatically_derived]
4063 #[doc(hidden)]
4064 impl ::core::convert::From<FailedInnerCall> for UnderlyingRustTuple<'_> {
4065 fn from(value: FailedInnerCall) -> Self {
4066 ()
4067 }
4068 }
4069 #[automatically_derived]
4070 #[doc(hidden)]
4071 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FailedInnerCall {
4072 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4073 Self {}
4074 }
4075 }
4076 #[automatically_derived]
4077 impl alloy_sol_types::SolError for FailedInnerCall {
4078 type Parameters<'a> = UnderlyingSolTuple<'a>;
4079 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4080 const SIGNATURE: &'static str = "FailedInnerCall()";
4081 const SELECTOR: [u8; 4] = [20u8, 37u8, 234u8, 66u8];
4082 #[inline]
4083 fn new<'a>(
4084 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4085 ) -> Self {
4086 tuple.into()
4087 }
4088 #[inline]
4089 fn tokenize(&self) -> Self::Token<'_> {
4090 ()
4091 }
4092 }
4093 };
4094 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4095 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4100 #[derive(Clone)]
4101 pub struct InsufficientSnapshotHistory {}
4102 #[allow(
4103 non_camel_case_types,
4104 non_snake_case,
4105 clippy::pub_underscore_fields,
4106 clippy::style
4107 )]
4108 const _: () = {
4109 use alloy::sol_types as alloy_sol_types;
4110 #[doc(hidden)]
4111 type UnderlyingSolTuple<'a> = ();
4112 #[doc(hidden)]
4113 type UnderlyingRustTuple<'a> = ();
4114 #[cfg(test)]
4115 #[allow(dead_code, unreachable_patterns)]
4116 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4117 match _t {
4118 alloy_sol_types::private::AssertTypeEq::<
4119 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4120 >(_) => {},
4121 }
4122 }
4123 #[automatically_derived]
4124 #[doc(hidden)]
4125 impl ::core::convert::From<InsufficientSnapshotHistory> for UnderlyingRustTuple<'_> {
4126 fn from(value: InsufficientSnapshotHistory) -> Self {
4127 ()
4128 }
4129 }
4130 #[automatically_derived]
4131 #[doc(hidden)]
4132 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InsufficientSnapshotHistory {
4133 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4134 Self {}
4135 }
4136 }
4137 #[automatically_derived]
4138 impl alloy_sol_types::SolError for InsufficientSnapshotHistory {
4139 type Parameters<'a> = UnderlyingSolTuple<'a>;
4140 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4141 const SIGNATURE: &'static str = "InsufficientSnapshotHistory()";
4142 const SELECTOR: [u8; 4] = [176u8, 180u8, 56u8, 119u8];
4143 #[inline]
4144 fn new<'a>(
4145 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4146 ) -> Self {
4147 tuple.into()
4148 }
4149 #[inline]
4150 fn tokenize(&self) -> Self::Token<'_> {
4151 ()
4152 }
4153 }
4154 };
4155 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4156 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4161 #[derive(Clone)]
4162 pub struct InvalidAddress {}
4163 #[allow(
4164 non_camel_case_types,
4165 non_snake_case,
4166 clippy::pub_underscore_fields,
4167 clippy::style
4168 )]
4169 const _: () = {
4170 use alloy::sol_types as alloy_sol_types;
4171 #[doc(hidden)]
4172 type UnderlyingSolTuple<'a> = ();
4173 #[doc(hidden)]
4174 type UnderlyingRustTuple<'a> = ();
4175 #[cfg(test)]
4176 #[allow(dead_code, unreachable_patterns)]
4177 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4178 match _t {
4179 alloy_sol_types::private::AssertTypeEq::<
4180 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4181 >(_) => {},
4182 }
4183 }
4184 #[automatically_derived]
4185 #[doc(hidden)]
4186 impl ::core::convert::From<InvalidAddress> for UnderlyingRustTuple<'_> {
4187 fn from(value: InvalidAddress) -> Self {
4188 ()
4189 }
4190 }
4191 #[automatically_derived]
4192 #[doc(hidden)]
4193 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidAddress {
4194 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4195 Self {}
4196 }
4197 }
4198 #[automatically_derived]
4199 impl alloy_sol_types::SolError for InvalidAddress {
4200 type Parameters<'a> = UnderlyingSolTuple<'a>;
4201 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4202 const SIGNATURE: &'static str = "InvalidAddress()";
4203 const SELECTOR: [u8; 4] = [230u8, 196u8, 36u8, 123u8];
4204 #[inline]
4205 fn new<'a>(
4206 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4207 ) -> Self {
4208 tuple.into()
4209 }
4210 #[inline]
4211 fn tokenize(&self) -> Self::Token<'_> {
4212 ()
4213 }
4214 }
4215 };
4216 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4217 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4222 #[derive(Clone)]
4223 pub struct InvalidArgs {}
4224 #[allow(
4225 non_camel_case_types,
4226 non_snake_case,
4227 clippy::pub_underscore_fields,
4228 clippy::style
4229 )]
4230 const _: () = {
4231 use alloy::sol_types as alloy_sol_types;
4232 #[doc(hidden)]
4233 type UnderlyingSolTuple<'a> = ();
4234 #[doc(hidden)]
4235 type UnderlyingRustTuple<'a> = ();
4236 #[cfg(test)]
4237 #[allow(dead_code, unreachable_patterns)]
4238 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4239 match _t {
4240 alloy_sol_types::private::AssertTypeEq::<
4241 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4242 >(_) => {},
4243 }
4244 }
4245 #[automatically_derived]
4246 #[doc(hidden)]
4247 impl ::core::convert::From<InvalidArgs> for UnderlyingRustTuple<'_> {
4248 fn from(value: InvalidArgs) -> Self {
4249 ()
4250 }
4251 }
4252 #[automatically_derived]
4253 #[doc(hidden)]
4254 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidArgs {
4255 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4256 Self {}
4257 }
4258 }
4259 #[automatically_derived]
4260 impl alloy_sol_types::SolError for InvalidArgs {
4261 type Parameters<'a> = UnderlyingSolTuple<'a>;
4262 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4263 const SIGNATURE: &'static str = "InvalidArgs()";
4264 const SELECTOR: [u8; 4] = [161u8, 186u8, 7u8, 238u8];
4265 #[inline]
4266 fn new<'a>(
4267 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4268 ) -> Self {
4269 tuple.into()
4270 }
4271 #[inline]
4272 fn tokenize(&self) -> Self::Token<'_> {
4273 ()
4274 }
4275 }
4276 };
4277 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4278 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4283 #[derive(Clone)]
4284 pub struct InvalidHotShotBlockForCommitmentCheck {}
4285 #[allow(
4286 non_camel_case_types,
4287 non_snake_case,
4288 clippy::pub_underscore_fields,
4289 clippy::style
4290 )]
4291 const _: () = {
4292 use alloy::sol_types as alloy_sol_types;
4293 #[doc(hidden)]
4294 type UnderlyingSolTuple<'a> = ();
4295 #[doc(hidden)]
4296 type UnderlyingRustTuple<'a> = ();
4297 #[cfg(test)]
4298 #[allow(dead_code, unreachable_patterns)]
4299 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4300 match _t {
4301 alloy_sol_types::private::AssertTypeEq::<
4302 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4303 >(_) => {},
4304 }
4305 }
4306 #[automatically_derived]
4307 #[doc(hidden)]
4308 impl ::core::convert::From<InvalidHotShotBlockForCommitmentCheck> for UnderlyingRustTuple<'_> {
4309 fn from(value: InvalidHotShotBlockForCommitmentCheck) -> Self {
4310 ()
4311 }
4312 }
4313 #[automatically_derived]
4314 #[doc(hidden)]
4315 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidHotShotBlockForCommitmentCheck {
4316 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4317 Self {}
4318 }
4319 }
4320 #[automatically_derived]
4321 impl alloy_sol_types::SolError for InvalidHotShotBlockForCommitmentCheck {
4322 type Parameters<'a> = UnderlyingSolTuple<'a>;
4323 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4324 const SIGNATURE: &'static str = "InvalidHotShotBlockForCommitmentCheck()";
4325 const SELECTOR: [u8; 4] = [97u8, 90u8, 146u8, 100u8];
4326 #[inline]
4327 fn new<'a>(
4328 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4329 ) -> Self {
4330 tuple.into()
4331 }
4332 #[inline]
4333 fn tokenize(&self) -> Self::Token<'_> {
4334 ()
4335 }
4336 }
4337 };
4338 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4339 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4344 #[derive(Clone)]
4345 pub struct InvalidInitialization {}
4346 #[allow(
4347 non_camel_case_types,
4348 non_snake_case,
4349 clippy::pub_underscore_fields,
4350 clippy::style
4351 )]
4352 const _: () = {
4353 use alloy::sol_types as alloy_sol_types;
4354 #[doc(hidden)]
4355 type UnderlyingSolTuple<'a> = ();
4356 #[doc(hidden)]
4357 type UnderlyingRustTuple<'a> = ();
4358 #[cfg(test)]
4359 #[allow(dead_code, unreachable_patterns)]
4360 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4361 match _t {
4362 alloy_sol_types::private::AssertTypeEq::<
4363 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4364 >(_) => {},
4365 }
4366 }
4367 #[automatically_derived]
4368 #[doc(hidden)]
4369 impl ::core::convert::From<InvalidInitialization> for UnderlyingRustTuple<'_> {
4370 fn from(value: InvalidInitialization) -> Self {
4371 ()
4372 }
4373 }
4374 #[automatically_derived]
4375 #[doc(hidden)]
4376 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidInitialization {
4377 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4378 Self {}
4379 }
4380 }
4381 #[automatically_derived]
4382 impl alloy_sol_types::SolError for InvalidInitialization {
4383 type Parameters<'a> = UnderlyingSolTuple<'a>;
4384 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4385 const SIGNATURE: &'static str = "InvalidInitialization()";
4386 const SELECTOR: [u8; 4] = [249u8, 46u8, 232u8, 169u8];
4387 #[inline]
4388 fn new<'a>(
4389 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4390 ) -> Self {
4391 tuple.into()
4392 }
4393 #[inline]
4394 fn tokenize(&self) -> Self::Token<'_> {
4395 ()
4396 }
4397 }
4398 };
4399 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4400 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4405 #[derive(Clone)]
4406 pub struct InvalidMaxStateHistory {}
4407 #[allow(
4408 non_camel_case_types,
4409 non_snake_case,
4410 clippy::pub_underscore_fields,
4411 clippy::style
4412 )]
4413 const _: () = {
4414 use alloy::sol_types as alloy_sol_types;
4415 #[doc(hidden)]
4416 type UnderlyingSolTuple<'a> = ();
4417 #[doc(hidden)]
4418 type UnderlyingRustTuple<'a> = ();
4419 #[cfg(test)]
4420 #[allow(dead_code, unreachable_patterns)]
4421 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4422 match _t {
4423 alloy_sol_types::private::AssertTypeEq::<
4424 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4425 >(_) => {},
4426 }
4427 }
4428 #[automatically_derived]
4429 #[doc(hidden)]
4430 impl ::core::convert::From<InvalidMaxStateHistory> for UnderlyingRustTuple<'_> {
4431 fn from(value: InvalidMaxStateHistory) -> Self {
4432 ()
4433 }
4434 }
4435 #[automatically_derived]
4436 #[doc(hidden)]
4437 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidMaxStateHistory {
4438 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4439 Self {}
4440 }
4441 }
4442 #[automatically_derived]
4443 impl alloy_sol_types::SolError for InvalidMaxStateHistory {
4444 type Parameters<'a> = UnderlyingSolTuple<'a>;
4445 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4446 const SIGNATURE: &'static str = "InvalidMaxStateHistory()";
4447 const SELECTOR: [u8; 4] = [244u8, 160u8, 238u8, 224u8];
4448 #[inline]
4449 fn new<'a>(
4450 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4451 ) -> Self {
4452 tuple.into()
4453 }
4454 #[inline]
4455 fn tokenize(&self) -> Self::Token<'_> {
4456 ()
4457 }
4458 }
4459 };
4460 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4461 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4466 #[derive(Clone)]
4467 pub struct InvalidProof {}
4468 #[allow(
4469 non_camel_case_types,
4470 non_snake_case,
4471 clippy::pub_underscore_fields,
4472 clippy::style
4473 )]
4474 const _: () = {
4475 use alloy::sol_types as alloy_sol_types;
4476 #[doc(hidden)]
4477 type UnderlyingSolTuple<'a> = ();
4478 #[doc(hidden)]
4479 type UnderlyingRustTuple<'a> = ();
4480 #[cfg(test)]
4481 #[allow(dead_code, unreachable_patterns)]
4482 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4483 match _t {
4484 alloy_sol_types::private::AssertTypeEq::<
4485 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4486 >(_) => {},
4487 }
4488 }
4489 #[automatically_derived]
4490 #[doc(hidden)]
4491 impl ::core::convert::From<InvalidProof> for UnderlyingRustTuple<'_> {
4492 fn from(value: InvalidProof) -> Self {
4493 ()
4494 }
4495 }
4496 #[automatically_derived]
4497 #[doc(hidden)]
4498 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidProof {
4499 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4500 Self {}
4501 }
4502 }
4503 #[automatically_derived]
4504 impl alloy_sol_types::SolError for InvalidProof {
4505 type Parameters<'a> = UnderlyingSolTuple<'a>;
4506 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4507 const SIGNATURE: &'static str = "InvalidProof()";
4508 const SELECTOR: [u8; 4] = [9u8, 189u8, 227u8, 57u8];
4509 #[inline]
4510 fn new<'a>(
4511 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4512 ) -> Self {
4513 tuple.into()
4514 }
4515 #[inline]
4516 fn tokenize(&self) -> Self::Token<'_> {
4517 ()
4518 }
4519 }
4520 };
4521 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4522 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4527 #[derive(Clone)]
4528 pub struct NoChangeRequired {}
4529 #[allow(
4530 non_camel_case_types,
4531 non_snake_case,
4532 clippy::pub_underscore_fields,
4533 clippy::style
4534 )]
4535 const _: () = {
4536 use alloy::sol_types as alloy_sol_types;
4537 #[doc(hidden)]
4538 type UnderlyingSolTuple<'a> = ();
4539 #[doc(hidden)]
4540 type UnderlyingRustTuple<'a> = ();
4541 #[cfg(test)]
4542 #[allow(dead_code, unreachable_patterns)]
4543 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4544 match _t {
4545 alloy_sol_types::private::AssertTypeEq::<
4546 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4547 >(_) => {},
4548 }
4549 }
4550 #[automatically_derived]
4551 #[doc(hidden)]
4552 impl ::core::convert::From<NoChangeRequired> for UnderlyingRustTuple<'_> {
4553 fn from(value: NoChangeRequired) -> Self {
4554 ()
4555 }
4556 }
4557 #[automatically_derived]
4558 #[doc(hidden)]
4559 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NoChangeRequired {
4560 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4561 Self {}
4562 }
4563 }
4564 #[automatically_derived]
4565 impl alloy_sol_types::SolError for NoChangeRequired {
4566 type Parameters<'a> = UnderlyingSolTuple<'a>;
4567 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4568 const SIGNATURE: &'static str = "NoChangeRequired()";
4569 const SELECTOR: [u8; 4] = [168u8, 99u8, 174u8, 201u8];
4570 #[inline]
4571 fn new<'a>(
4572 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4573 ) -> Self {
4574 tuple.into()
4575 }
4576 #[inline]
4577 fn tokenize(&self) -> Self::Token<'_> {
4578 ()
4579 }
4580 }
4581 };
4582 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4583 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4588 #[derive(Clone)]
4589 pub struct NotInitializing {}
4590 #[allow(
4591 non_camel_case_types,
4592 non_snake_case,
4593 clippy::pub_underscore_fields,
4594 clippy::style
4595 )]
4596 const _: () = {
4597 use alloy::sol_types as alloy_sol_types;
4598 #[doc(hidden)]
4599 type UnderlyingSolTuple<'a> = ();
4600 #[doc(hidden)]
4601 type UnderlyingRustTuple<'a> = ();
4602 #[cfg(test)]
4603 #[allow(dead_code, unreachable_patterns)]
4604 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4605 match _t {
4606 alloy_sol_types::private::AssertTypeEq::<
4607 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4608 >(_) => {},
4609 }
4610 }
4611 #[automatically_derived]
4612 #[doc(hidden)]
4613 impl ::core::convert::From<NotInitializing> for UnderlyingRustTuple<'_> {
4614 fn from(value: NotInitializing) -> Self {
4615 ()
4616 }
4617 }
4618 #[automatically_derived]
4619 #[doc(hidden)]
4620 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NotInitializing {
4621 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4622 Self {}
4623 }
4624 }
4625 #[automatically_derived]
4626 impl alloy_sol_types::SolError for NotInitializing {
4627 type Parameters<'a> = UnderlyingSolTuple<'a>;
4628 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4629 const SIGNATURE: &'static str = "NotInitializing()";
4630 const SELECTOR: [u8; 4] = [215u8, 230u8, 188u8, 248u8];
4631 #[inline]
4632 fn new<'a>(
4633 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4634 ) -> Self {
4635 tuple.into()
4636 }
4637 #[inline]
4638 fn tokenize(&self) -> Self::Token<'_> {
4639 ()
4640 }
4641 }
4642 };
4643 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4644 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4649 #[derive(Clone)]
4650 pub struct OutdatedState {}
4651 #[allow(
4652 non_camel_case_types,
4653 non_snake_case,
4654 clippy::pub_underscore_fields,
4655 clippy::style
4656 )]
4657 const _: () = {
4658 use alloy::sol_types as alloy_sol_types;
4659 #[doc(hidden)]
4660 type UnderlyingSolTuple<'a> = ();
4661 #[doc(hidden)]
4662 type UnderlyingRustTuple<'a> = ();
4663 #[cfg(test)]
4664 #[allow(dead_code, unreachable_patterns)]
4665 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4666 match _t {
4667 alloy_sol_types::private::AssertTypeEq::<
4668 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4669 >(_) => {},
4670 }
4671 }
4672 #[automatically_derived]
4673 #[doc(hidden)]
4674 impl ::core::convert::From<OutdatedState> for UnderlyingRustTuple<'_> {
4675 fn from(value: OutdatedState) -> Self {
4676 ()
4677 }
4678 }
4679 #[automatically_derived]
4680 #[doc(hidden)]
4681 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OutdatedState {
4682 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4683 Self {}
4684 }
4685 }
4686 #[automatically_derived]
4687 impl alloy_sol_types::SolError for OutdatedState {
4688 type Parameters<'a> = UnderlyingSolTuple<'a>;
4689 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4690 const SIGNATURE: &'static str = "OutdatedState()";
4691 const SELECTOR: [u8; 4] = [5u8, 28u8, 70u8, 239u8];
4692 #[inline]
4693 fn new<'a>(
4694 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4695 ) -> Self {
4696 tuple.into()
4697 }
4698 #[inline]
4699 fn tokenize(&self) -> Self::Token<'_> {
4700 ()
4701 }
4702 }
4703 };
4704 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4705 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4710 #[derive(Clone)]
4711 pub struct OwnableInvalidOwner {
4712 #[allow(missing_docs)]
4713 pub owner: alloy::sol_types::private::Address,
4714 }
4715 #[allow(
4716 non_camel_case_types,
4717 non_snake_case,
4718 clippy::pub_underscore_fields,
4719 clippy::style
4720 )]
4721 const _: () = {
4722 use alloy::sol_types as alloy_sol_types;
4723 #[doc(hidden)]
4724 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
4725 #[doc(hidden)]
4726 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
4727 #[cfg(test)]
4728 #[allow(dead_code, unreachable_patterns)]
4729 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4730 match _t {
4731 alloy_sol_types::private::AssertTypeEq::<
4732 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4733 >(_) => {},
4734 }
4735 }
4736 #[automatically_derived]
4737 #[doc(hidden)]
4738 impl ::core::convert::From<OwnableInvalidOwner> for UnderlyingRustTuple<'_> {
4739 fn from(value: OwnableInvalidOwner) -> Self {
4740 (value.owner,)
4741 }
4742 }
4743 #[automatically_derived]
4744 #[doc(hidden)]
4745 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OwnableInvalidOwner {
4746 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4747 Self { owner: tuple.0 }
4748 }
4749 }
4750 #[automatically_derived]
4751 impl alloy_sol_types::SolError for OwnableInvalidOwner {
4752 type Parameters<'a> = UnderlyingSolTuple<'a>;
4753 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4754 const SIGNATURE: &'static str = "OwnableInvalidOwner(address)";
4755 const SELECTOR: [u8; 4] = [30u8, 79u8, 189u8, 247u8];
4756 #[inline]
4757 fn new<'a>(
4758 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4759 ) -> Self {
4760 tuple.into()
4761 }
4762 #[inline]
4763 fn tokenize(&self) -> Self::Token<'_> {
4764 (
4765 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4766 &self.owner,
4767 ),
4768 )
4769 }
4770 }
4771 };
4772 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4773 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4778 #[derive(Clone)]
4779 pub struct OwnableUnauthorizedAccount {
4780 #[allow(missing_docs)]
4781 pub account: alloy::sol_types::private::Address,
4782 }
4783 #[allow(
4784 non_camel_case_types,
4785 non_snake_case,
4786 clippy::pub_underscore_fields,
4787 clippy::style
4788 )]
4789 const _: () = {
4790 use alloy::sol_types as alloy_sol_types;
4791 #[doc(hidden)]
4792 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
4793 #[doc(hidden)]
4794 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
4795 #[cfg(test)]
4796 #[allow(dead_code, unreachable_patterns)]
4797 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4798 match _t {
4799 alloy_sol_types::private::AssertTypeEq::<
4800 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4801 >(_) => {},
4802 }
4803 }
4804 #[automatically_derived]
4805 #[doc(hidden)]
4806 impl ::core::convert::From<OwnableUnauthorizedAccount> for UnderlyingRustTuple<'_> {
4807 fn from(value: OwnableUnauthorizedAccount) -> Self {
4808 (value.account,)
4809 }
4810 }
4811 #[automatically_derived]
4812 #[doc(hidden)]
4813 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OwnableUnauthorizedAccount {
4814 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4815 Self { account: tuple.0 }
4816 }
4817 }
4818 #[automatically_derived]
4819 impl alloy_sol_types::SolError for OwnableUnauthorizedAccount {
4820 type Parameters<'a> = UnderlyingSolTuple<'a>;
4821 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4822 const SIGNATURE: &'static str = "OwnableUnauthorizedAccount(address)";
4823 const SELECTOR: [u8; 4] = [17u8, 140u8, 218u8, 167u8];
4824 #[inline]
4825 fn new<'a>(
4826 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4827 ) -> Self {
4828 tuple.into()
4829 }
4830 #[inline]
4831 fn tokenize(&self) -> Self::Token<'_> {
4832 (
4833 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4834 &self.account,
4835 ),
4836 )
4837 }
4838 }
4839 };
4840 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4841 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4846 #[derive(Clone)]
4847 pub struct ProverNotPermissioned {}
4848 #[allow(
4849 non_camel_case_types,
4850 non_snake_case,
4851 clippy::pub_underscore_fields,
4852 clippy::style
4853 )]
4854 const _: () = {
4855 use alloy::sol_types as alloy_sol_types;
4856 #[doc(hidden)]
4857 type UnderlyingSolTuple<'a> = ();
4858 #[doc(hidden)]
4859 type UnderlyingRustTuple<'a> = ();
4860 #[cfg(test)]
4861 #[allow(dead_code, unreachable_patterns)]
4862 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4863 match _t {
4864 alloy_sol_types::private::AssertTypeEq::<
4865 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4866 >(_) => {},
4867 }
4868 }
4869 #[automatically_derived]
4870 #[doc(hidden)]
4871 impl ::core::convert::From<ProverNotPermissioned> for UnderlyingRustTuple<'_> {
4872 fn from(value: ProverNotPermissioned) -> Self {
4873 ()
4874 }
4875 }
4876 #[automatically_derived]
4877 #[doc(hidden)]
4878 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ProverNotPermissioned {
4879 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4880 Self {}
4881 }
4882 }
4883 #[automatically_derived]
4884 impl alloy_sol_types::SolError for ProverNotPermissioned {
4885 type Parameters<'a> = UnderlyingSolTuple<'a>;
4886 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4887 const SIGNATURE: &'static str = "ProverNotPermissioned()";
4888 const SELECTOR: [u8; 4] = [163u8, 166u8, 71u8, 128u8];
4889 #[inline]
4890 fn new<'a>(
4891 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4892 ) -> Self {
4893 tuple.into()
4894 }
4895 #[inline]
4896 fn tokenize(&self) -> Self::Token<'_> {
4897 ()
4898 }
4899 }
4900 };
4901 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4902 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4907 #[derive(Clone)]
4908 pub struct UUPSUnauthorizedCallContext {}
4909 #[allow(
4910 non_camel_case_types,
4911 non_snake_case,
4912 clippy::pub_underscore_fields,
4913 clippy::style
4914 )]
4915 const _: () = {
4916 use alloy::sol_types as alloy_sol_types;
4917 #[doc(hidden)]
4918 type UnderlyingSolTuple<'a> = ();
4919 #[doc(hidden)]
4920 type UnderlyingRustTuple<'a> = ();
4921 #[cfg(test)]
4922 #[allow(dead_code, unreachable_patterns)]
4923 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4924 match _t {
4925 alloy_sol_types::private::AssertTypeEq::<
4926 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4927 >(_) => {},
4928 }
4929 }
4930 #[automatically_derived]
4931 #[doc(hidden)]
4932 impl ::core::convert::From<UUPSUnauthorizedCallContext> for UnderlyingRustTuple<'_> {
4933 fn from(value: UUPSUnauthorizedCallContext) -> Self {
4934 ()
4935 }
4936 }
4937 #[automatically_derived]
4938 #[doc(hidden)]
4939 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UUPSUnauthorizedCallContext {
4940 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4941 Self {}
4942 }
4943 }
4944 #[automatically_derived]
4945 impl alloy_sol_types::SolError for UUPSUnauthorizedCallContext {
4946 type Parameters<'a> = UnderlyingSolTuple<'a>;
4947 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4948 const SIGNATURE: &'static str = "UUPSUnauthorizedCallContext()";
4949 const SELECTOR: [u8; 4] = [224u8, 124u8, 141u8, 186u8];
4950 #[inline]
4951 fn new<'a>(
4952 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4953 ) -> Self {
4954 tuple.into()
4955 }
4956 #[inline]
4957 fn tokenize(&self) -> Self::Token<'_> {
4958 ()
4959 }
4960 }
4961 };
4962 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4963 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4968 #[derive(Clone)]
4969 pub struct UUPSUnsupportedProxiableUUID {
4970 #[allow(missing_docs)]
4971 pub slot: alloy::sol_types::private::FixedBytes<32>,
4972 }
4973 #[allow(
4974 non_camel_case_types,
4975 non_snake_case,
4976 clippy::pub_underscore_fields,
4977 clippy::style
4978 )]
4979 const _: () = {
4980 use alloy::sol_types as alloy_sol_types;
4981 #[doc(hidden)]
4982 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
4983 #[doc(hidden)]
4984 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
4985 #[cfg(test)]
4986 #[allow(dead_code, unreachable_patterns)]
4987 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4988 match _t {
4989 alloy_sol_types::private::AssertTypeEq::<
4990 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4991 >(_) => {},
4992 }
4993 }
4994 #[automatically_derived]
4995 #[doc(hidden)]
4996 impl ::core::convert::From<UUPSUnsupportedProxiableUUID> for UnderlyingRustTuple<'_> {
4997 fn from(value: UUPSUnsupportedProxiableUUID) -> Self {
4998 (value.slot,)
4999 }
5000 }
5001 #[automatically_derived]
5002 #[doc(hidden)]
5003 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UUPSUnsupportedProxiableUUID {
5004 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5005 Self { slot: tuple.0 }
5006 }
5007 }
5008 #[automatically_derived]
5009 impl alloy_sol_types::SolError for UUPSUnsupportedProxiableUUID {
5010 type Parameters<'a> = UnderlyingSolTuple<'a>;
5011 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5012 const SIGNATURE: &'static str = "UUPSUnsupportedProxiableUUID(bytes32)";
5013 const SELECTOR: [u8; 4] = [170u8, 29u8, 73u8, 164u8];
5014 #[inline]
5015 fn new<'a>(
5016 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5017 ) -> Self {
5018 tuple.into()
5019 }
5020 #[inline]
5021 fn tokenize(&self) -> Self::Token<'_> {
5022 (
5023 <alloy::sol_types::sol_data::FixedBytes<
5024 32,
5025 > as alloy_sol_types::SolType>::tokenize(&self.slot),
5026 )
5027 }
5028 }
5029 };
5030 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5031 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5036 #[derive(Clone)]
5037 pub struct WrongStakeTableUsed {}
5038 #[allow(
5039 non_camel_case_types,
5040 non_snake_case,
5041 clippy::pub_underscore_fields,
5042 clippy::style
5043 )]
5044 const _: () = {
5045 use alloy::sol_types as alloy_sol_types;
5046 #[doc(hidden)]
5047 type UnderlyingSolTuple<'a> = ();
5048 #[doc(hidden)]
5049 type UnderlyingRustTuple<'a> = ();
5050 #[cfg(test)]
5051 #[allow(dead_code, unreachable_patterns)]
5052 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5053 match _t {
5054 alloy_sol_types::private::AssertTypeEq::<
5055 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5056 >(_) => {},
5057 }
5058 }
5059 #[automatically_derived]
5060 #[doc(hidden)]
5061 impl ::core::convert::From<WrongStakeTableUsed> for UnderlyingRustTuple<'_> {
5062 fn from(value: WrongStakeTableUsed) -> Self {
5063 ()
5064 }
5065 }
5066 #[automatically_derived]
5067 #[doc(hidden)]
5068 impl ::core::convert::From<UnderlyingRustTuple<'_>> for WrongStakeTableUsed {
5069 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5070 Self {}
5071 }
5072 }
5073 #[automatically_derived]
5074 impl alloy_sol_types::SolError for WrongStakeTableUsed {
5075 type Parameters<'a> = UnderlyingSolTuple<'a>;
5076 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5077 const SIGNATURE: &'static str = "WrongStakeTableUsed()";
5078 const SELECTOR: [u8; 4] = [81u8, 97u8, 128u8, 137u8];
5079 #[inline]
5080 fn new<'a>(
5081 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5082 ) -> Self {
5083 tuple.into()
5084 }
5085 #[inline]
5086 fn tokenize(&self) -> Self::Token<'_> {
5087 ()
5088 }
5089 }
5090 };
5091 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5092 #[allow(
5097 non_camel_case_types,
5098 non_snake_case,
5099 clippy::pub_underscore_fields,
5100 clippy::style
5101 )]
5102 #[derive(Clone)]
5103 pub struct Initialized {
5104 #[allow(missing_docs)]
5105 pub version: u64,
5106 }
5107 #[allow(
5108 non_camel_case_types,
5109 non_snake_case,
5110 clippy::pub_underscore_fields,
5111 clippy::style
5112 )]
5113 const _: () = {
5114 use alloy::sol_types as alloy_sol_types;
5115 #[automatically_derived]
5116 impl alloy_sol_types::SolEvent for Initialized {
5117 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
5118 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5119 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5120 const SIGNATURE: &'static str = "Initialized(uint64)";
5121 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5122 alloy_sol_types::private::B256::new([
5123 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8, 19u8,
5124 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8, 33u8, 238u8,
5125 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
5126 ]);
5127 const ANONYMOUS: bool = false;
5128 #[allow(unused_variables)]
5129 #[inline]
5130 fn new(
5131 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5132 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5133 ) -> Self {
5134 Self { version: data.0 }
5135 }
5136 #[inline]
5137 fn check_signature(
5138 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5139 ) -> alloy_sol_types::Result<()> {
5140 if topics.0 != Self::SIGNATURE_HASH {
5141 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5142 Self::SIGNATURE,
5143 topics.0,
5144 Self::SIGNATURE_HASH,
5145 ));
5146 }
5147 Ok(())
5148 }
5149 #[inline]
5150 fn tokenize_body(&self) -> Self::DataToken<'_> {
5151 (
5152 <alloy::sol_types::sol_data::Uint<64> as alloy_sol_types::SolType>::tokenize(
5153 &self.version,
5154 ),
5155 )
5156 }
5157 #[inline]
5158 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5159 (Self::SIGNATURE_HASH.into(),)
5160 }
5161 #[inline]
5162 fn encode_topics_raw(
5163 &self,
5164 out: &mut [alloy_sol_types::abi::token::WordToken],
5165 ) -> alloy_sol_types::Result<()> {
5166 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5167 return Err(alloy_sol_types::Error::Overrun);
5168 }
5169 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5170 Ok(())
5171 }
5172 }
5173 #[automatically_derived]
5174 impl alloy_sol_types::private::IntoLogData for Initialized {
5175 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5176 From::from(self)
5177 }
5178 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5179 From::from(&self)
5180 }
5181 }
5182 #[automatically_derived]
5183 impl From<&Initialized> for alloy_sol_types::private::LogData {
5184 #[inline]
5185 fn from(this: &Initialized) -> alloy_sol_types::private::LogData {
5186 alloy_sol_types::SolEvent::encode_log_data(this)
5187 }
5188 }
5189 };
5190 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5191 #[allow(
5196 non_camel_case_types,
5197 non_snake_case,
5198 clippy::pub_underscore_fields,
5199 clippy::style
5200 )]
5201 #[derive(Clone)]
5202 pub struct NewState {
5203 #[allow(missing_docs)]
5204 pub viewNum: u64,
5205 #[allow(missing_docs)]
5206 pub blockHeight: u64,
5207 #[allow(missing_docs)]
5208 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
5209 }
5210 #[allow(
5211 non_camel_case_types,
5212 non_snake_case,
5213 clippy::pub_underscore_fields,
5214 clippy::style
5215 )]
5216 const _: () = {
5217 use alloy::sol_types as alloy_sol_types;
5218 #[automatically_derived]
5219 impl alloy_sol_types::SolEvent for NewState {
5220 type DataTuple<'a> = (BN254::ScalarField,);
5221 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5222 type TopicList = (
5223 alloy_sol_types::sol_data::FixedBytes<32>,
5224 alloy::sol_types::sol_data::Uint<64>,
5225 alloy::sol_types::sol_data::Uint<64>,
5226 );
5227 const SIGNATURE: &'static str = "NewState(uint64,uint64,uint256)";
5228 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5229 alloy_sol_types::private::B256::new([
5230 160u8, 74u8, 119u8, 57u8, 36u8, 80u8, 90u8, 65u8, 133u8, 100u8, 54u8, 55u8,
5231 37u8, 245u8, 104u8, 50u8, 245u8, 119u8, 46u8, 107u8, 141u8, 13u8, 189u8, 110u8,
5232 252u8, 231u8, 36u8, 223u8, 232u8, 3u8, 218u8, 230u8,
5233 ]);
5234 const ANONYMOUS: bool = false;
5235 #[allow(unused_variables)]
5236 #[inline]
5237 fn new(
5238 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5239 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5240 ) -> Self {
5241 Self {
5242 viewNum: topics.1,
5243 blockHeight: topics.2,
5244 blockCommRoot: data.0,
5245 }
5246 }
5247 #[inline]
5248 fn check_signature(
5249 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5250 ) -> alloy_sol_types::Result<()> {
5251 if topics.0 != Self::SIGNATURE_HASH {
5252 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5253 Self::SIGNATURE,
5254 topics.0,
5255 Self::SIGNATURE_HASH,
5256 ));
5257 }
5258 Ok(())
5259 }
5260 #[inline]
5261 fn tokenize_body(&self) -> Self::DataToken<'_> {
5262 (<BN254::ScalarField as alloy_sol_types::SolType>::tokenize(
5263 &self.blockCommRoot,
5264 ),)
5265 }
5266 #[inline]
5267 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5268 (
5269 Self::SIGNATURE_HASH.into(),
5270 self.viewNum.clone(),
5271 self.blockHeight.clone(),
5272 )
5273 }
5274 #[inline]
5275 fn encode_topics_raw(
5276 &self,
5277 out: &mut [alloy_sol_types::abi::token::WordToken],
5278 ) -> alloy_sol_types::Result<()> {
5279 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5280 return Err(alloy_sol_types::Error::Overrun);
5281 }
5282 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5283 out[1usize] = <alloy::sol_types::sol_data::Uint<
5284 64,
5285 > as alloy_sol_types::EventTopic>::encode_topic(&self.viewNum);
5286 out[2usize] = <alloy::sol_types::sol_data::Uint<
5287 64,
5288 > as alloy_sol_types::EventTopic>::encode_topic(&self.blockHeight);
5289 Ok(())
5290 }
5291 }
5292 #[automatically_derived]
5293 impl alloy_sol_types::private::IntoLogData for NewState {
5294 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5295 From::from(self)
5296 }
5297 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5298 From::from(&self)
5299 }
5300 }
5301 #[automatically_derived]
5302 impl From<&NewState> for alloy_sol_types::private::LogData {
5303 #[inline]
5304 fn from(this: &NewState) -> alloy_sol_types::private::LogData {
5305 alloy_sol_types::SolEvent::encode_log_data(this)
5306 }
5307 }
5308 };
5309 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5310 #[allow(
5315 non_camel_case_types,
5316 non_snake_case,
5317 clippy::pub_underscore_fields,
5318 clippy::style
5319 )]
5320 #[derive(Clone)]
5321 pub struct OwnershipTransferred {
5322 #[allow(missing_docs)]
5323 pub previousOwner: alloy::sol_types::private::Address,
5324 #[allow(missing_docs)]
5325 pub newOwner: alloy::sol_types::private::Address,
5326 }
5327 #[allow(
5328 non_camel_case_types,
5329 non_snake_case,
5330 clippy::pub_underscore_fields,
5331 clippy::style
5332 )]
5333 const _: () = {
5334 use alloy::sol_types as alloy_sol_types;
5335 #[automatically_derived]
5336 impl alloy_sol_types::SolEvent for OwnershipTransferred {
5337 type DataTuple<'a> = ();
5338 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5339 type TopicList = (
5340 alloy_sol_types::sol_data::FixedBytes<32>,
5341 alloy::sol_types::sol_data::Address,
5342 alloy::sol_types::sol_data::Address,
5343 );
5344 const SIGNATURE: &'static str = "OwnershipTransferred(address,address)";
5345 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5346 alloy_sol_types::private::B256::new([
5347 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8,
5348 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8,
5349 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
5350 ]);
5351 const ANONYMOUS: bool = false;
5352 #[allow(unused_variables)]
5353 #[inline]
5354 fn new(
5355 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5356 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5357 ) -> Self {
5358 Self {
5359 previousOwner: topics.1,
5360 newOwner: topics.2,
5361 }
5362 }
5363 #[inline]
5364 fn check_signature(
5365 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5366 ) -> alloy_sol_types::Result<()> {
5367 if topics.0 != Self::SIGNATURE_HASH {
5368 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5369 Self::SIGNATURE,
5370 topics.0,
5371 Self::SIGNATURE_HASH,
5372 ));
5373 }
5374 Ok(())
5375 }
5376 #[inline]
5377 fn tokenize_body(&self) -> Self::DataToken<'_> {
5378 ()
5379 }
5380 #[inline]
5381 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5382 (
5383 Self::SIGNATURE_HASH.into(),
5384 self.previousOwner.clone(),
5385 self.newOwner.clone(),
5386 )
5387 }
5388 #[inline]
5389 fn encode_topics_raw(
5390 &self,
5391 out: &mut [alloy_sol_types::abi::token::WordToken],
5392 ) -> alloy_sol_types::Result<()> {
5393 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5394 return Err(alloy_sol_types::Error::Overrun);
5395 }
5396 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5397 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5398 &self.previousOwner,
5399 );
5400 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5401 &self.newOwner,
5402 );
5403 Ok(())
5404 }
5405 }
5406 #[automatically_derived]
5407 impl alloy_sol_types::private::IntoLogData for OwnershipTransferred {
5408 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5409 From::from(self)
5410 }
5411 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5412 From::from(&self)
5413 }
5414 }
5415 #[automatically_derived]
5416 impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData {
5417 #[inline]
5418 fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData {
5419 alloy_sol_types::SolEvent::encode_log_data(this)
5420 }
5421 }
5422 };
5423 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5424 #[allow(
5429 non_camel_case_types,
5430 non_snake_case,
5431 clippy::pub_underscore_fields,
5432 clippy::style
5433 )]
5434 #[derive(Clone)]
5435 pub struct PermissionedProverNotRequired {}
5436 #[allow(
5437 non_camel_case_types,
5438 non_snake_case,
5439 clippy::pub_underscore_fields,
5440 clippy::style
5441 )]
5442 const _: () = {
5443 use alloy::sol_types as alloy_sol_types;
5444 #[automatically_derived]
5445 impl alloy_sol_types::SolEvent for PermissionedProverNotRequired {
5446 type DataTuple<'a> = ();
5447 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5448 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5449 const SIGNATURE: &'static str = "PermissionedProverNotRequired()";
5450 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5451 alloy_sol_types::private::B256::new([
5452 154u8, 95u8, 87u8, 222u8, 133u8, 109u8, 214u8, 104u8, 197u8, 77u8, 217u8, 94u8,
5453 92u8, 85u8, 223u8, 147u8, 67u8, 33u8, 113u8, 203u8, 202u8, 73u8, 168u8, 119u8,
5454 109u8, 86u8, 32u8, 234u8, 89u8, 192u8, 36u8, 80u8,
5455 ]);
5456 const ANONYMOUS: bool = false;
5457 #[allow(unused_variables)]
5458 #[inline]
5459 fn new(
5460 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5461 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5462 ) -> Self {
5463 Self {}
5464 }
5465 #[inline]
5466 fn check_signature(
5467 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5468 ) -> alloy_sol_types::Result<()> {
5469 if topics.0 != Self::SIGNATURE_HASH {
5470 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5471 Self::SIGNATURE,
5472 topics.0,
5473 Self::SIGNATURE_HASH,
5474 ));
5475 }
5476 Ok(())
5477 }
5478 #[inline]
5479 fn tokenize_body(&self) -> Self::DataToken<'_> {
5480 ()
5481 }
5482 #[inline]
5483 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5484 (Self::SIGNATURE_HASH.into(),)
5485 }
5486 #[inline]
5487 fn encode_topics_raw(
5488 &self,
5489 out: &mut [alloy_sol_types::abi::token::WordToken],
5490 ) -> alloy_sol_types::Result<()> {
5491 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5492 return Err(alloy_sol_types::Error::Overrun);
5493 }
5494 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5495 Ok(())
5496 }
5497 }
5498 #[automatically_derived]
5499 impl alloy_sol_types::private::IntoLogData for PermissionedProverNotRequired {
5500 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5501 From::from(self)
5502 }
5503 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5504 From::from(&self)
5505 }
5506 }
5507 #[automatically_derived]
5508 impl From<&PermissionedProverNotRequired> for alloy_sol_types::private::LogData {
5509 #[inline]
5510 fn from(this: &PermissionedProverNotRequired) -> alloy_sol_types::private::LogData {
5511 alloy_sol_types::SolEvent::encode_log_data(this)
5512 }
5513 }
5514 };
5515 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5516 #[allow(
5521 non_camel_case_types,
5522 non_snake_case,
5523 clippy::pub_underscore_fields,
5524 clippy::style
5525 )]
5526 #[derive(Clone)]
5527 pub struct PermissionedProverRequired {
5528 #[allow(missing_docs)]
5529 pub permissionedProver: alloy::sol_types::private::Address,
5530 }
5531 #[allow(
5532 non_camel_case_types,
5533 non_snake_case,
5534 clippy::pub_underscore_fields,
5535 clippy::style
5536 )]
5537 const _: () = {
5538 use alloy::sol_types as alloy_sol_types;
5539 #[automatically_derived]
5540 impl alloy_sol_types::SolEvent for PermissionedProverRequired {
5541 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
5542 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5543 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5544 const SIGNATURE: &'static str = "PermissionedProverRequired(address)";
5545 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5546 alloy_sol_types::private::B256::new([
5547 128u8, 23u8, 187u8, 136u8, 127u8, 223u8, 143u8, 202u8, 67u8, 20u8, 169u8,
5548 212u8, 15u8, 110u8, 115u8, 179u8, 184u8, 16u8, 2u8, 214u8, 126u8, 92u8, 250u8,
5549 133u8, 216u8, 129u8, 115u8, 175u8, 106u8, 164u8, 96u8, 114u8,
5550 ]);
5551 const ANONYMOUS: bool = false;
5552 #[allow(unused_variables)]
5553 #[inline]
5554 fn new(
5555 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5556 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5557 ) -> Self {
5558 Self {
5559 permissionedProver: data.0,
5560 }
5561 }
5562 #[inline]
5563 fn check_signature(
5564 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5565 ) -> alloy_sol_types::Result<()> {
5566 if topics.0 != Self::SIGNATURE_HASH {
5567 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5568 Self::SIGNATURE,
5569 topics.0,
5570 Self::SIGNATURE_HASH,
5571 ));
5572 }
5573 Ok(())
5574 }
5575 #[inline]
5576 fn tokenize_body(&self) -> Self::DataToken<'_> {
5577 (
5578 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5579 &self.permissionedProver,
5580 ),
5581 )
5582 }
5583 #[inline]
5584 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5585 (Self::SIGNATURE_HASH.into(),)
5586 }
5587 #[inline]
5588 fn encode_topics_raw(
5589 &self,
5590 out: &mut [alloy_sol_types::abi::token::WordToken],
5591 ) -> alloy_sol_types::Result<()> {
5592 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5593 return Err(alloy_sol_types::Error::Overrun);
5594 }
5595 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5596 Ok(())
5597 }
5598 }
5599 #[automatically_derived]
5600 impl alloy_sol_types::private::IntoLogData for PermissionedProverRequired {
5601 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5602 From::from(self)
5603 }
5604 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5605 From::from(&self)
5606 }
5607 }
5608 #[automatically_derived]
5609 impl From<&PermissionedProverRequired> for alloy_sol_types::private::LogData {
5610 #[inline]
5611 fn from(this: &PermissionedProverRequired) -> alloy_sol_types::private::LogData {
5612 alloy_sol_types::SolEvent::encode_log_data(this)
5613 }
5614 }
5615 };
5616 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5617 #[allow(
5622 non_camel_case_types,
5623 non_snake_case,
5624 clippy::pub_underscore_fields,
5625 clippy::style
5626 )]
5627 #[derive(Clone)]
5628 pub struct Upgrade {
5629 #[allow(missing_docs)]
5630 pub implementation: alloy::sol_types::private::Address,
5631 }
5632 #[allow(
5633 non_camel_case_types,
5634 non_snake_case,
5635 clippy::pub_underscore_fields,
5636 clippy::style
5637 )]
5638 const _: () = {
5639 use alloy::sol_types as alloy_sol_types;
5640 #[automatically_derived]
5641 impl alloy_sol_types::SolEvent for Upgrade {
5642 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
5643 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5644 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5645 const SIGNATURE: &'static str = "Upgrade(address)";
5646 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5647 alloy_sol_types::private::B256::new([
5648 247u8, 135u8, 33u8, 34u8, 110u8, 254u8, 154u8, 27u8, 182u8, 120u8, 24u8, 154u8,
5649 22u8, 209u8, 85u8, 73u8, 40u8, 185u8, 242u8, 25u8, 46u8, 44u8, 185u8, 62u8,
5650 237u8, 168u8, 59u8, 121u8, 250u8, 64u8, 0u8, 125u8,
5651 ]);
5652 const ANONYMOUS: bool = false;
5653 #[allow(unused_variables)]
5654 #[inline]
5655 fn new(
5656 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5657 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5658 ) -> Self {
5659 Self {
5660 implementation: data.0,
5661 }
5662 }
5663 #[inline]
5664 fn check_signature(
5665 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5666 ) -> alloy_sol_types::Result<()> {
5667 if topics.0 != Self::SIGNATURE_HASH {
5668 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5669 Self::SIGNATURE,
5670 topics.0,
5671 Self::SIGNATURE_HASH,
5672 ));
5673 }
5674 Ok(())
5675 }
5676 #[inline]
5677 fn tokenize_body(&self) -> Self::DataToken<'_> {
5678 (
5679 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5680 &self.implementation,
5681 ),
5682 )
5683 }
5684 #[inline]
5685 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5686 (Self::SIGNATURE_HASH.into(),)
5687 }
5688 #[inline]
5689 fn encode_topics_raw(
5690 &self,
5691 out: &mut [alloy_sol_types::abi::token::WordToken],
5692 ) -> alloy_sol_types::Result<()> {
5693 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5694 return Err(alloy_sol_types::Error::Overrun);
5695 }
5696 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5697 Ok(())
5698 }
5699 }
5700 #[automatically_derived]
5701 impl alloy_sol_types::private::IntoLogData for Upgrade {
5702 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5703 From::from(self)
5704 }
5705 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5706 From::from(&self)
5707 }
5708 }
5709 #[automatically_derived]
5710 impl From<&Upgrade> for alloy_sol_types::private::LogData {
5711 #[inline]
5712 fn from(this: &Upgrade) -> alloy_sol_types::private::LogData {
5713 alloy_sol_types::SolEvent::encode_log_data(this)
5714 }
5715 }
5716 };
5717 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5718 #[allow(
5723 non_camel_case_types,
5724 non_snake_case,
5725 clippy::pub_underscore_fields,
5726 clippy::style
5727 )]
5728 #[derive(Clone)]
5729 pub struct Upgraded {
5730 #[allow(missing_docs)]
5731 pub implementation: alloy::sol_types::private::Address,
5732 }
5733 #[allow(
5734 non_camel_case_types,
5735 non_snake_case,
5736 clippy::pub_underscore_fields,
5737 clippy::style
5738 )]
5739 const _: () = {
5740 use alloy::sol_types as alloy_sol_types;
5741 #[automatically_derived]
5742 impl alloy_sol_types::SolEvent for Upgraded {
5743 type DataTuple<'a> = ();
5744 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5745 type TopicList = (
5746 alloy_sol_types::sol_data::FixedBytes<32>,
5747 alloy::sol_types::sol_data::Address,
5748 );
5749 const SIGNATURE: &'static str = "Upgraded(address)";
5750 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
5751 alloy_sol_types::private::B256::new([
5752 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
5753 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8, 12u8,
5754 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
5755 ]);
5756 const ANONYMOUS: bool = false;
5757 #[allow(unused_variables)]
5758 #[inline]
5759 fn new(
5760 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5761 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5762 ) -> Self {
5763 Self {
5764 implementation: topics.1,
5765 }
5766 }
5767 #[inline]
5768 fn check_signature(
5769 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5770 ) -> alloy_sol_types::Result<()> {
5771 if topics.0 != Self::SIGNATURE_HASH {
5772 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
5773 Self::SIGNATURE,
5774 topics.0,
5775 Self::SIGNATURE_HASH,
5776 ));
5777 }
5778 Ok(())
5779 }
5780 #[inline]
5781 fn tokenize_body(&self) -> Self::DataToken<'_> {
5782 ()
5783 }
5784 #[inline]
5785 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5786 (Self::SIGNATURE_HASH.into(), self.implementation.clone())
5787 }
5788 #[inline]
5789 fn encode_topics_raw(
5790 &self,
5791 out: &mut [alloy_sol_types::abi::token::WordToken],
5792 ) -> alloy_sol_types::Result<()> {
5793 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5794 return Err(alloy_sol_types::Error::Overrun);
5795 }
5796 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
5797 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5798 &self.implementation,
5799 );
5800 Ok(())
5801 }
5802 }
5803 #[automatically_derived]
5804 impl alloy_sol_types::private::IntoLogData for Upgraded {
5805 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5806 From::from(self)
5807 }
5808 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5809 From::from(&self)
5810 }
5811 }
5812 #[automatically_derived]
5813 impl From<&Upgraded> for alloy_sol_types::private::LogData {
5814 #[inline]
5815 fn from(this: &Upgraded) -> alloy_sol_types::private::LogData {
5816 alloy_sol_types::SolEvent::encode_log_data(this)
5817 }
5818 }
5819 };
5820 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5825 #[derive(Clone)]
5826 pub struct constructorCall {}
5827 const _: () = {
5828 use alloy::sol_types as alloy_sol_types;
5829 {
5830 #[doc(hidden)]
5831 type UnderlyingSolTuple<'a> = ();
5832 #[doc(hidden)]
5833 type UnderlyingRustTuple<'a> = ();
5834 #[cfg(test)]
5835 #[allow(dead_code, unreachable_patterns)]
5836 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5837 match _t {
5838 alloy_sol_types::private::AssertTypeEq::<
5839 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5840 >(_) => {},
5841 }
5842 }
5843 #[automatically_derived]
5844 #[doc(hidden)]
5845 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
5846 fn from(value: constructorCall) -> Self {
5847 ()
5848 }
5849 }
5850 #[automatically_derived]
5851 #[doc(hidden)]
5852 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
5853 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5854 Self {}
5855 }
5856 }
5857 }
5858 #[automatically_derived]
5859 impl alloy_sol_types::SolConstructor for constructorCall {
5860 type Parameters<'a> = ();
5861 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5862 #[inline]
5863 fn new<'a>(
5864 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5865 ) -> Self {
5866 tuple.into()
5867 }
5868 #[inline]
5869 fn tokenize(&self) -> Self::Token<'_> {
5870 ()
5871 }
5872 }
5873 };
5874 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5875 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5880 #[derive(Clone)]
5881 pub struct UPGRADE_INTERFACE_VERSIONCall {}
5882 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5883 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5885 #[derive(Clone)]
5886 pub struct UPGRADE_INTERFACE_VERSIONReturn {
5887 #[allow(missing_docs)]
5888 pub _0: alloy::sol_types::private::String,
5889 }
5890 #[allow(
5891 non_camel_case_types,
5892 non_snake_case,
5893 clippy::pub_underscore_fields,
5894 clippy::style
5895 )]
5896 const _: () = {
5897 use alloy::sol_types as alloy_sol_types;
5898 {
5899 #[doc(hidden)]
5900 type UnderlyingSolTuple<'a> = ();
5901 #[doc(hidden)]
5902 type UnderlyingRustTuple<'a> = ();
5903 #[cfg(test)]
5904 #[allow(dead_code, unreachable_patterns)]
5905 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5906 match _t {
5907 alloy_sol_types::private::AssertTypeEq::<
5908 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5909 >(_) => {},
5910 }
5911 }
5912 #[automatically_derived]
5913 #[doc(hidden)]
5914 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONCall> for UnderlyingRustTuple<'_> {
5915 fn from(value: UPGRADE_INTERFACE_VERSIONCall) -> Self {
5916 ()
5917 }
5918 }
5919 #[automatically_derived]
5920 #[doc(hidden)]
5921 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UPGRADE_INTERFACE_VERSIONCall {
5922 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5923 Self {}
5924 }
5925 }
5926 }
5927 {
5928 #[doc(hidden)]
5929 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
5930 #[doc(hidden)]
5931 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
5932 #[cfg(test)]
5933 #[allow(dead_code, unreachable_patterns)]
5934 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5935 match _t {
5936 alloy_sol_types::private::AssertTypeEq::<
5937 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5938 >(_) => {},
5939 }
5940 }
5941 #[automatically_derived]
5942 #[doc(hidden)]
5943 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONReturn> for UnderlyingRustTuple<'_> {
5944 fn from(value: UPGRADE_INTERFACE_VERSIONReturn) -> Self {
5945 (value._0,)
5946 }
5947 }
5948 #[automatically_derived]
5949 #[doc(hidden)]
5950 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UPGRADE_INTERFACE_VERSIONReturn {
5951 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5952 Self { _0: tuple.0 }
5953 }
5954 }
5955 }
5956 #[automatically_derived]
5957 impl alloy_sol_types::SolCall for UPGRADE_INTERFACE_VERSIONCall {
5958 type Parameters<'a> = ();
5959 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5960 type Return = UPGRADE_INTERFACE_VERSIONReturn;
5961 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
5962 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5963 const SIGNATURE: &'static str = "UPGRADE_INTERFACE_VERSION()";
5964 const SELECTOR: [u8; 4] = [173u8, 60u8, 177u8, 204u8];
5965 #[inline]
5966 fn new<'a>(
5967 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5968 ) -> Self {
5969 tuple.into()
5970 }
5971 #[inline]
5972 fn tokenize(&self) -> Self::Token<'_> {
5973 ()
5974 }
5975 #[inline]
5976 fn abi_decode_returns(
5977 data: &[u8],
5978 validate: bool,
5979 ) -> alloy_sol_types::Result<Self::Return> {
5980 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5981 data, validate,
5982 )
5983 .map(Into::into)
5984 }
5985 }
5986 };
5987 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5988 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5993 #[derive(Clone)]
5994 pub struct _getVkCall {}
5995 #[derive()]
5996 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5998 #[derive(Clone)]
5999 pub struct _getVkReturn {
6000 #[allow(missing_docs)]
6001 pub vk: <IPlonkVerifier::VerifyingKey as alloy::sol_types::SolType>::RustType,
6002 }
6003 #[allow(
6004 non_camel_case_types,
6005 non_snake_case,
6006 clippy::pub_underscore_fields,
6007 clippy::style
6008 )]
6009 const _: () = {
6010 use alloy::sol_types as alloy_sol_types;
6011 {
6012 #[doc(hidden)]
6013 type UnderlyingSolTuple<'a> = ();
6014 #[doc(hidden)]
6015 type UnderlyingRustTuple<'a> = ();
6016 #[cfg(test)]
6017 #[allow(dead_code, unreachable_patterns)]
6018 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6019 match _t {
6020 alloy_sol_types::private::AssertTypeEq::<
6021 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6022 >(_) => {},
6023 }
6024 }
6025 #[automatically_derived]
6026 #[doc(hidden)]
6027 impl ::core::convert::From<_getVkCall> for UnderlyingRustTuple<'_> {
6028 fn from(value: _getVkCall) -> Self {
6029 ()
6030 }
6031 }
6032 #[automatically_derived]
6033 #[doc(hidden)]
6034 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _getVkCall {
6035 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6036 Self {}
6037 }
6038 }
6039 }
6040 {
6041 #[doc(hidden)]
6042 type UnderlyingSolTuple<'a> = (IPlonkVerifier::VerifyingKey,);
6043 #[doc(hidden)]
6044 type UnderlyingRustTuple<'a> =
6045 (<IPlonkVerifier::VerifyingKey as alloy::sol_types::SolType>::RustType,);
6046 #[cfg(test)]
6047 #[allow(dead_code, unreachable_patterns)]
6048 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6049 match _t {
6050 alloy_sol_types::private::AssertTypeEq::<
6051 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6052 >(_) => {},
6053 }
6054 }
6055 #[automatically_derived]
6056 #[doc(hidden)]
6057 impl ::core::convert::From<_getVkReturn> for UnderlyingRustTuple<'_> {
6058 fn from(value: _getVkReturn) -> Self {
6059 (value.vk,)
6060 }
6061 }
6062 #[automatically_derived]
6063 #[doc(hidden)]
6064 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _getVkReturn {
6065 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6066 Self { vk: tuple.0 }
6067 }
6068 }
6069 }
6070 #[automatically_derived]
6071 impl alloy_sol_types::SolCall for _getVkCall {
6072 type Parameters<'a> = ();
6073 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6074 type Return = _getVkReturn;
6075 type ReturnTuple<'a> = (IPlonkVerifier::VerifyingKey,);
6076 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6077 const SIGNATURE: &'static str = "_getVk()";
6078 const SELECTOR: [u8; 4] = [18u8, 23u8, 60u8, 44u8];
6079 #[inline]
6080 fn new<'a>(
6081 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6082 ) -> Self {
6083 tuple.into()
6084 }
6085 #[inline]
6086 fn tokenize(&self) -> Self::Token<'_> {
6087 ()
6088 }
6089 #[inline]
6090 fn abi_decode_returns(
6091 data: &[u8],
6092 validate: bool,
6093 ) -> alloy_sol_types::Result<Self::Return> {
6094 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6095 data, validate,
6096 )
6097 .map(Into::into)
6098 }
6099 }
6100 };
6101 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6102 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6107 #[derive(Clone)]
6108 pub struct currentBlockNumberCall {}
6109 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6110 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6112 #[derive(Clone)]
6113 pub struct currentBlockNumberReturn {
6114 #[allow(missing_docs)]
6115 pub _0: alloy::sol_types::private::primitives::aliases::U256,
6116 }
6117 #[allow(
6118 non_camel_case_types,
6119 non_snake_case,
6120 clippy::pub_underscore_fields,
6121 clippy::style
6122 )]
6123 const _: () = {
6124 use alloy::sol_types as alloy_sol_types;
6125 {
6126 #[doc(hidden)]
6127 type UnderlyingSolTuple<'a> = ();
6128 #[doc(hidden)]
6129 type UnderlyingRustTuple<'a> = ();
6130 #[cfg(test)]
6131 #[allow(dead_code, unreachable_patterns)]
6132 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6133 match _t {
6134 alloy_sol_types::private::AssertTypeEq::<
6135 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6136 >(_) => {},
6137 }
6138 }
6139 #[automatically_derived]
6140 #[doc(hidden)]
6141 impl ::core::convert::From<currentBlockNumberCall> for UnderlyingRustTuple<'_> {
6142 fn from(value: currentBlockNumberCall) -> Self {
6143 ()
6144 }
6145 }
6146 #[automatically_derived]
6147 #[doc(hidden)]
6148 impl ::core::convert::From<UnderlyingRustTuple<'_>> for currentBlockNumberCall {
6149 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6150 Self {}
6151 }
6152 }
6153 }
6154 {
6155 #[doc(hidden)]
6156 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6157 #[doc(hidden)]
6158 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6159 #[cfg(test)]
6160 #[allow(dead_code, unreachable_patterns)]
6161 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6162 match _t {
6163 alloy_sol_types::private::AssertTypeEq::<
6164 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6165 >(_) => {},
6166 }
6167 }
6168 #[automatically_derived]
6169 #[doc(hidden)]
6170 impl ::core::convert::From<currentBlockNumberReturn> for UnderlyingRustTuple<'_> {
6171 fn from(value: currentBlockNumberReturn) -> Self {
6172 (value._0,)
6173 }
6174 }
6175 #[automatically_derived]
6176 #[doc(hidden)]
6177 impl ::core::convert::From<UnderlyingRustTuple<'_>> for currentBlockNumberReturn {
6178 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6179 Self { _0: tuple.0 }
6180 }
6181 }
6182 }
6183 #[automatically_derived]
6184 impl alloy_sol_types::SolCall for currentBlockNumberCall {
6185 type Parameters<'a> = ();
6186 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6187 type Return = currentBlockNumberReturn;
6188 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6189 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6190 const SIGNATURE: &'static str = "currentBlockNumber()";
6191 const SELECTOR: [u8; 4] = [55u8, 142u8, 194u8, 59u8];
6192 #[inline]
6193 fn new<'a>(
6194 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6195 ) -> Self {
6196 tuple.into()
6197 }
6198 #[inline]
6199 fn tokenize(&self) -> Self::Token<'_> {
6200 ()
6201 }
6202 #[inline]
6203 fn abi_decode_returns(
6204 data: &[u8],
6205 validate: bool,
6206 ) -> alloy_sol_types::Result<Self::Return> {
6207 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6208 data, validate,
6209 )
6210 .map(Into::into)
6211 }
6212 }
6213 };
6214 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6215 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6220 #[derive(Clone)]
6221 pub struct disablePermissionedProverModeCall {}
6222 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6224 #[derive(Clone)]
6225 pub struct disablePermissionedProverModeReturn {}
6226 #[allow(
6227 non_camel_case_types,
6228 non_snake_case,
6229 clippy::pub_underscore_fields,
6230 clippy::style
6231 )]
6232 const _: () = {
6233 use alloy::sol_types as alloy_sol_types;
6234 {
6235 #[doc(hidden)]
6236 type UnderlyingSolTuple<'a> = ();
6237 #[doc(hidden)]
6238 type UnderlyingRustTuple<'a> = ();
6239 #[cfg(test)]
6240 #[allow(dead_code, unreachable_patterns)]
6241 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6242 match _t {
6243 alloy_sol_types::private::AssertTypeEq::<
6244 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6245 >(_) => {},
6246 }
6247 }
6248 #[automatically_derived]
6249 #[doc(hidden)]
6250 impl ::core::convert::From<disablePermissionedProverModeCall> for UnderlyingRustTuple<'_> {
6251 fn from(value: disablePermissionedProverModeCall) -> Self {
6252 ()
6253 }
6254 }
6255 #[automatically_derived]
6256 #[doc(hidden)]
6257 impl ::core::convert::From<UnderlyingRustTuple<'_>> for disablePermissionedProverModeCall {
6258 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6259 Self {}
6260 }
6261 }
6262 }
6263 {
6264 #[doc(hidden)]
6265 type UnderlyingSolTuple<'a> = ();
6266 #[doc(hidden)]
6267 type UnderlyingRustTuple<'a> = ();
6268 #[cfg(test)]
6269 #[allow(dead_code, unreachable_patterns)]
6270 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6271 match _t {
6272 alloy_sol_types::private::AssertTypeEq::<
6273 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6274 >(_) => {},
6275 }
6276 }
6277 #[automatically_derived]
6278 #[doc(hidden)]
6279 impl ::core::convert::From<disablePermissionedProverModeReturn> for UnderlyingRustTuple<'_> {
6280 fn from(value: disablePermissionedProverModeReturn) -> Self {
6281 ()
6282 }
6283 }
6284 #[automatically_derived]
6285 #[doc(hidden)]
6286 impl ::core::convert::From<UnderlyingRustTuple<'_>> for disablePermissionedProverModeReturn {
6287 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6288 Self {}
6289 }
6290 }
6291 }
6292 #[automatically_derived]
6293 impl alloy_sol_types::SolCall for disablePermissionedProverModeCall {
6294 type Parameters<'a> = ();
6295 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6296 type Return = disablePermissionedProverModeReturn;
6297 type ReturnTuple<'a> = ();
6298 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6299 const SIGNATURE: &'static str = "disablePermissionedProverMode()";
6300 const SELECTOR: [u8; 4] = [105u8, 204u8, 106u8, 4u8];
6301 #[inline]
6302 fn new<'a>(
6303 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6304 ) -> Self {
6305 tuple.into()
6306 }
6307 #[inline]
6308 fn tokenize(&self) -> Self::Token<'_> {
6309 ()
6310 }
6311 #[inline]
6312 fn abi_decode_returns(
6313 data: &[u8],
6314 validate: bool,
6315 ) -> alloy_sol_types::Result<Self::Return> {
6316 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6317 data, validate,
6318 )
6319 .map(Into::into)
6320 }
6321 }
6322 };
6323 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6324 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6329 #[derive(Clone)]
6330 pub struct finalizedStateCall {}
6331 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6332 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6334 #[derive(Clone)]
6335 pub struct finalizedStateReturn {
6336 #[allow(missing_docs)]
6337 pub viewNum: u64,
6338 #[allow(missing_docs)]
6339 pub blockHeight: u64,
6340 #[allow(missing_docs)]
6341 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6342 }
6343 #[allow(
6344 non_camel_case_types,
6345 non_snake_case,
6346 clippy::pub_underscore_fields,
6347 clippy::style
6348 )]
6349 const _: () = {
6350 use alloy::sol_types as alloy_sol_types;
6351 {
6352 #[doc(hidden)]
6353 type UnderlyingSolTuple<'a> = ();
6354 #[doc(hidden)]
6355 type UnderlyingRustTuple<'a> = ();
6356 #[cfg(test)]
6357 #[allow(dead_code, unreachable_patterns)]
6358 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6359 match _t {
6360 alloy_sol_types::private::AssertTypeEq::<
6361 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6362 >(_) => {},
6363 }
6364 }
6365 #[automatically_derived]
6366 #[doc(hidden)]
6367 impl ::core::convert::From<finalizedStateCall> for UnderlyingRustTuple<'_> {
6368 fn from(value: finalizedStateCall) -> Self {
6369 ()
6370 }
6371 }
6372 #[automatically_derived]
6373 #[doc(hidden)]
6374 impl ::core::convert::From<UnderlyingRustTuple<'_>> for finalizedStateCall {
6375 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6376 Self {}
6377 }
6378 }
6379 }
6380 {
6381 #[doc(hidden)]
6382 type UnderlyingSolTuple<'a> = (
6383 alloy::sol_types::sol_data::Uint<64>,
6384 alloy::sol_types::sol_data::Uint<64>,
6385 BN254::ScalarField,
6386 );
6387 #[doc(hidden)]
6388 type UnderlyingRustTuple<'a> = (
6389 u64,
6390 u64,
6391 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6392 );
6393 #[cfg(test)]
6394 #[allow(dead_code, unreachable_patterns)]
6395 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6396 match _t {
6397 alloy_sol_types::private::AssertTypeEq::<
6398 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6399 >(_) => {},
6400 }
6401 }
6402 #[automatically_derived]
6403 #[doc(hidden)]
6404 impl ::core::convert::From<finalizedStateReturn> for UnderlyingRustTuple<'_> {
6405 fn from(value: finalizedStateReturn) -> Self {
6406 (value.viewNum, value.blockHeight, value.blockCommRoot)
6407 }
6408 }
6409 #[automatically_derived]
6410 #[doc(hidden)]
6411 impl ::core::convert::From<UnderlyingRustTuple<'_>> for finalizedStateReturn {
6412 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6413 Self {
6414 viewNum: tuple.0,
6415 blockHeight: tuple.1,
6416 blockCommRoot: tuple.2,
6417 }
6418 }
6419 }
6420 }
6421 #[automatically_derived]
6422 impl alloy_sol_types::SolCall for finalizedStateCall {
6423 type Parameters<'a> = ();
6424 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6425 type Return = finalizedStateReturn;
6426 type ReturnTuple<'a> = (
6427 alloy::sol_types::sol_data::Uint<64>,
6428 alloy::sol_types::sol_data::Uint<64>,
6429 BN254::ScalarField,
6430 );
6431 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6432 const SIGNATURE: &'static str = "finalizedState()";
6433 const SELECTOR: [u8; 4] = [159u8, 219u8, 84u8, 167u8];
6434 #[inline]
6435 fn new<'a>(
6436 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6437 ) -> Self {
6438 tuple.into()
6439 }
6440 #[inline]
6441 fn tokenize(&self) -> Self::Token<'_> {
6442 ()
6443 }
6444 #[inline]
6445 fn abi_decode_returns(
6446 data: &[u8],
6447 validate: bool,
6448 ) -> alloy_sol_types::Result<Self::Return> {
6449 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6450 data, validate,
6451 )
6452 .map(Into::into)
6453 }
6454 }
6455 };
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 genesisStakeTableStateCall {}
6464 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6465 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6467 #[derive(Clone)]
6468 pub struct genesisStakeTableStateReturn {
6469 #[allow(missing_docs)]
6470 pub threshold: alloy::sol_types::private::primitives::aliases::U256,
6471 #[allow(missing_docs)]
6472 pub blsKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6473 #[allow(missing_docs)]
6474 pub schnorrKeyComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6475 #[allow(missing_docs)]
6476 pub amountComm: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6477 }
6478 #[allow(
6479 non_camel_case_types,
6480 non_snake_case,
6481 clippy::pub_underscore_fields,
6482 clippy::style
6483 )]
6484 const _: () = {
6485 use alloy::sol_types as alloy_sol_types;
6486 {
6487 #[doc(hidden)]
6488 type UnderlyingSolTuple<'a> = ();
6489 #[doc(hidden)]
6490 type UnderlyingRustTuple<'a> = ();
6491 #[cfg(test)]
6492 #[allow(dead_code, unreachable_patterns)]
6493 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6494 match _t {
6495 alloy_sol_types::private::AssertTypeEq::<
6496 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6497 >(_) => {},
6498 }
6499 }
6500 #[automatically_derived]
6501 #[doc(hidden)]
6502 impl ::core::convert::From<genesisStakeTableStateCall> for UnderlyingRustTuple<'_> {
6503 fn from(value: genesisStakeTableStateCall) -> Self {
6504 ()
6505 }
6506 }
6507 #[automatically_derived]
6508 #[doc(hidden)]
6509 impl ::core::convert::From<UnderlyingRustTuple<'_>> for genesisStakeTableStateCall {
6510 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6511 Self {}
6512 }
6513 }
6514 }
6515 {
6516 #[doc(hidden)]
6517 type UnderlyingSolTuple<'a> = (
6518 alloy::sol_types::sol_data::Uint<256>,
6519 BN254::ScalarField,
6520 BN254::ScalarField,
6521 BN254::ScalarField,
6522 );
6523 #[doc(hidden)]
6524 type UnderlyingRustTuple<'a> = (
6525 alloy::sol_types::private::primitives::aliases::U256,
6526 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6527 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6528 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6529 );
6530 #[cfg(test)]
6531 #[allow(dead_code, unreachable_patterns)]
6532 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6533 match _t {
6534 alloy_sol_types::private::AssertTypeEq::<
6535 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6536 >(_) => {},
6537 }
6538 }
6539 #[automatically_derived]
6540 #[doc(hidden)]
6541 impl ::core::convert::From<genesisStakeTableStateReturn> for UnderlyingRustTuple<'_> {
6542 fn from(value: genesisStakeTableStateReturn) -> Self {
6543 (
6544 value.threshold,
6545 value.blsKeyComm,
6546 value.schnorrKeyComm,
6547 value.amountComm,
6548 )
6549 }
6550 }
6551 #[automatically_derived]
6552 #[doc(hidden)]
6553 impl ::core::convert::From<UnderlyingRustTuple<'_>> for genesisStakeTableStateReturn {
6554 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6555 Self {
6556 threshold: tuple.0,
6557 blsKeyComm: tuple.1,
6558 schnorrKeyComm: tuple.2,
6559 amountComm: tuple.3,
6560 }
6561 }
6562 }
6563 }
6564 #[automatically_derived]
6565 impl alloy_sol_types::SolCall for genesisStakeTableStateCall {
6566 type Parameters<'a> = ();
6567 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6568 type Return = genesisStakeTableStateReturn;
6569 type ReturnTuple<'a> = (
6570 alloy::sol_types::sol_data::Uint<256>,
6571 BN254::ScalarField,
6572 BN254::ScalarField,
6573 BN254::ScalarField,
6574 );
6575 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6576 const SIGNATURE: &'static str = "genesisStakeTableState()";
6577 const SELECTOR: [u8; 4] = [66u8, 109u8, 49u8, 148u8];
6578 #[inline]
6579 fn new<'a>(
6580 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6581 ) -> Self {
6582 tuple.into()
6583 }
6584 #[inline]
6585 fn tokenize(&self) -> Self::Token<'_> {
6586 ()
6587 }
6588 #[inline]
6589 fn abi_decode_returns(
6590 data: &[u8],
6591 validate: bool,
6592 ) -> alloy_sol_types::Result<Self::Return> {
6593 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6594 data, validate,
6595 )
6596 .map(Into::into)
6597 }
6598 }
6599 };
6600 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6601 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6606 #[derive(Clone)]
6607 pub struct genesisStateCall {}
6608 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6609 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6611 #[derive(Clone)]
6612 pub struct genesisStateReturn {
6613 #[allow(missing_docs)]
6614 pub viewNum: u64,
6615 #[allow(missing_docs)]
6616 pub blockHeight: u64,
6617 #[allow(missing_docs)]
6618 pub blockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6619 }
6620 #[allow(
6621 non_camel_case_types,
6622 non_snake_case,
6623 clippy::pub_underscore_fields,
6624 clippy::style
6625 )]
6626 const _: () = {
6627 use alloy::sol_types as alloy_sol_types;
6628 {
6629 #[doc(hidden)]
6630 type UnderlyingSolTuple<'a> = ();
6631 #[doc(hidden)]
6632 type UnderlyingRustTuple<'a> = ();
6633 #[cfg(test)]
6634 #[allow(dead_code, unreachable_patterns)]
6635 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6636 match _t {
6637 alloy_sol_types::private::AssertTypeEq::<
6638 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6639 >(_) => {},
6640 }
6641 }
6642 #[automatically_derived]
6643 #[doc(hidden)]
6644 impl ::core::convert::From<genesisStateCall> for UnderlyingRustTuple<'_> {
6645 fn from(value: genesisStateCall) -> Self {
6646 ()
6647 }
6648 }
6649 #[automatically_derived]
6650 #[doc(hidden)]
6651 impl ::core::convert::From<UnderlyingRustTuple<'_>> for genesisStateCall {
6652 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6653 Self {}
6654 }
6655 }
6656 }
6657 {
6658 #[doc(hidden)]
6659 type UnderlyingSolTuple<'a> = (
6660 alloy::sol_types::sol_data::Uint<64>,
6661 alloy::sol_types::sol_data::Uint<64>,
6662 BN254::ScalarField,
6663 );
6664 #[doc(hidden)]
6665 type UnderlyingRustTuple<'a> = (
6666 u64,
6667 u64,
6668 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6669 );
6670 #[cfg(test)]
6671 #[allow(dead_code, unreachable_patterns)]
6672 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6673 match _t {
6674 alloy_sol_types::private::AssertTypeEq::<
6675 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6676 >(_) => {},
6677 }
6678 }
6679 #[automatically_derived]
6680 #[doc(hidden)]
6681 impl ::core::convert::From<genesisStateReturn> for UnderlyingRustTuple<'_> {
6682 fn from(value: genesisStateReturn) -> Self {
6683 (value.viewNum, value.blockHeight, value.blockCommRoot)
6684 }
6685 }
6686 #[automatically_derived]
6687 #[doc(hidden)]
6688 impl ::core::convert::From<UnderlyingRustTuple<'_>> for genesisStateReturn {
6689 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6690 Self {
6691 viewNum: tuple.0,
6692 blockHeight: tuple.1,
6693 blockCommRoot: tuple.2,
6694 }
6695 }
6696 }
6697 }
6698 #[automatically_derived]
6699 impl alloy_sol_types::SolCall for genesisStateCall {
6700 type Parameters<'a> = ();
6701 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6702 type Return = genesisStateReturn;
6703 type ReturnTuple<'a> = (
6704 alloy::sol_types::sol_data::Uint<64>,
6705 alloy::sol_types::sol_data::Uint<64>,
6706 BN254::ScalarField,
6707 );
6708 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6709 const SIGNATURE: &'static str = "genesisState()";
6710 const SELECTOR: [u8; 4] = [210u8, 77u8, 147u8, 61u8];
6711 #[inline]
6712 fn new<'a>(
6713 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6714 ) -> Self {
6715 tuple.into()
6716 }
6717 #[inline]
6718 fn tokenize(&self) -> Self::Token<'_> {
6719 ()
6720 }
6721 #[inline]
6722 fn abi_decode_returns(
6723 data: &[u8],
6724 validate: bool,
6725 ) -> alloy_sol_types::Result<Self::Return> {
6726 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6727 data, validate,
6728 )
6729 .map(Into::into)
6730 }
6731 }
6732 };
6733 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6734 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6739 #[derive(Clone)]
6740 pub struct getHotShotCommitmentCall {
6741 #[allow(missing_docs)]
6742 pub hotShotBlockHeight: alloy::sol_types::private::primitives::aliases::U256,
6743 }
6744 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6745 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6747 #[derive(Clone)]
6748 pub struct getHotShotCommitmentReturn {
6749 #[allow(missing_docs)]
6750 pub hotShotBlockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6751 #[allow(missing_docs)]
6752 pub hotshotBlockHeight: u64,
6753 }
6754 #[allow(
6755 non_camel_case_types,
6756 non_snake_case,
6757 clippy::pub_underscore_fields,
6758 clippy::style
6759 )]
6760 const _: () = {
6761 use alloy::sol_types as alloy_sol_types;
6762 {
6763 #[doc(hidden)]
6764 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6765 #[doc(hidden)]
6766 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6767 #[cfg(test)]
6768 #[allow(dead_code, unreachable_patterns)]
6769 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6770 match _t {
6771 alloy_sol_types::private::AssertTypeEq::<
6772 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6773 >(_) => {},
6774 }
6775 }
6776 #[automatically_derived]
6777 #[doc(hidden)]
6778 impl ::core::convert::From<getHotShotCommitmentCall> for UnderlyingRustTuple<'_> {
6779 fn from(value: getHotShotCommitmentCall) -> Self {
6780 (value.hotShotBlockHeight,)
6781 }
6782 }
6783 #[automatically_derived]
6784 #[doc(hidden)]
6785 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getHotShotCommitmentCall {
6786 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6787 Self {
6788 hotShotBlockHeight: tuple.0,
6789 }
6790 }
6791 }
6792 }
6793 {
6794 #[doc(hidden)]
6795 type UnderlyingSolTuple<'a> =
6796 (BN254::ScalarField, alloy::sol_types::sol_data::Uint<64>);
6797 #[doc(hidden)]
6798 type UnderlyingRustTuple<'a> = (
6799 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
6800 u64,
6801 );
6802 #[cfg(test)]
6803 #[allow(dead_code, unreachable_patterns)]
6804 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6805 match _t {
6806 alloy_sol_types::private::AssertTypeEq::<
6807 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6808 >(_) => {},
6809 }
6810 }
6811 #[automatically_derived]
6812 #[doc(hidden)]
6813 impl ::core::convert::From<getHotShotCommitmentReturn> for UnderlyingRustTuple<'_> {
6814 fn from(value: getHotShotCommitmentReturn) -> Self {
6815 (value.hotShotBlockCommRoot, value.hotshotBlockHeight)
6816 }
6817 }
6818 #[automatically_derived]
6819 #[doc(hidden)]
6820 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getHotShotCommitmentReturn {
6821 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6822 Self {
6823 hotShotBlockCommRoot: tuple.0,
6824 hotshotBlockHeight: tuple.1,
6825 }
6826 }
6827 }
6828 }
6829 #[automatically_derived]
6830 impl alloy_sol_types::SolCall for getHotShotCommitmentCall {
6831 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6832 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6833 type Return = getHotShotCommitmentReturn;
6834 type ReturnTuple<'a> = (BN254::ScalarField, alloy::sol_types::sol_data::Uint<64>);
6835 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6836 const SIGNATURE: &'static str = "getHotShotCommitment(uint256)";
6837 const SELECTOR: [u8; 4] = [133u8, 132u8, 210u8, 63u8];
6838 #[inline]
6839 fn new<'a>(
6840 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6841 ) -> Self {
6842 tuple.into()
6843 }
6844 #[inline]
6845 fn tokenize(&self) -> Self::Token<'_> {
6846 (
6847 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
6848 &self.hotShotBlockHeight,
6849 ),
6850 )
6851 }
6852 #[inline]
6853 fn abi_decode_returns(
6854 data: &[u8],
6855 validate: bool,
6856 ) -> alloy_sol_types::Result<Self::Return> {
6857 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6858 data, validate,
6859 )
6860 .map(Into::into)
6861 }
6862 }
6863 };
6864 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6865 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6870 #[derive(Clone)]
6871 pub struct getStateHistoryCountCall {}
6872 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6873 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6875 #[derive(Clone)]
6876 pub struct getStateHistoryCountReturn {
6877 #[allow(missing_docs)]
6878 pub _0: alloy::sol_types::private::primitives::aliases::U256,
6879 }
6880 #[allow(
6881 non_camel_case_types,
6882 non_snake_case,
6883 clippy::pub_underscore_fields,
6884 clippy::style
6885 )]
6886 const _: () = {
6887 use alloy::sol_types as alloy_sol_types;
6888 {
6889 #[doc(hidden)]
6890 type UnderlyingSolTuple<'a> = ();
6891 #[doc(hidden)]
6892 type UnderlyingRustTuple<'a> = ();
6893 #[cfg(test)]
6894 #[allow(dead_code, unreachable_patterns)]
6895 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6896 match _t {
6897 alloy_sol_types::private::AssertTypeEq::<
6898 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6899 >(_) => {},
6900 }
6901 }
6902 #[automatically_derived]
6903 #[doc(hidden)]
6904 impl ::core::convert::From<getStateHistoryCountCall> for UnderlyingRustTuple<'_> {
6905 fn from(value: getStateHistoryCountCall) -> Self {
6906 ()
6907 }
6908 }
6909 #[automatically_derived]
6910 #[doc(hidden)]
6911 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getStateHistoryCountCall {
6912 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6913 Self {}
6914 }
6915 }
6916 }
6917 {
6918 #[doc(hidden)]
6919 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6920 #[doc(hidden)]
6921 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6922 #[cfg(test)]
6923 #[allow(dead_code, unreachable_patterns)]
6924 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6925 match _t {
6926 alloy_sol_types::private::AssertTypeEq::<
6927 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6928 >(_) => {},
6929 }
6930 }
6931 #[automatically_derived]
6932 #[doc(hidden)]
6933 impl ::core::convert::From<getStateHistoryCountReturn> for UnderlyingRustTuple<'_> {
6934 fn from(value: getStateHistoryCountReturn) -> Self {
6935 (value._0,)
6936 }
6937 }
6938 #[automatically_derived]
6939 #[doc(hidden)]
6940 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getStateHistoryCountReturn {
6941 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6942 Self { _0: tuple.0 }
6943 }
6944 }
6945 }
6946 #[automatically_derived]
6947 impl alloy_sol_types::SolCall for getStateHistoryCountCall {
6948 type Parameters<'a> = ();
6949 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6950 type Return = getStateHistoryCountReturn;
6951 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6952 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6953 const SIGNATURE: &'static str = "getStateHistoryCount()";
6954 const SELECTOR: [u8; 4] = [249u8, 229u8, 13u8, 25u8];
6955 #[inline]
6956 fn new<'a>(
6957 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6958 ) -> Self {
6959 tuple.into()
6960 }
6961 #[inline]
6962 fn tokenize(&self) -> Self::Token<'_> {
6963 ()
6964 }
6965 #[inline]
6966 fn abi_decode_returns(
6967 data: &[u8],
6968 validate: bool,
6969 ) -> alloy_sol_types::Result<Self::Return> {
6970 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6971 data, validate,
6972 )
6973 .map(Into::into)
6974 }
6975 }
6976 };
6977 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6978 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6983 #[derive(Clone)]
6984 pub struct getVersionCall {}
6985 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6986 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6988 #[derive(Clone)]
6989 pub struct getVersionReturn {
6990 #[allow(missing_docs)]
6991 pub majorVersion: u8,
6992 #[allow(missing_docs)]
6993 pub minorVersion: u8,
6994 #[allow(missing_docs)]
6995 pub patchVersion: u8,
6996 }
6997 #[allow(
6998 non_camel_case_types,
6999 non_snake_case,
7000 clippy::pub_underscore_fields,
7001 clippy::style
7002 )]
7003 const _: () = {
7004 use alloy::sol_types as alloy_sol_types;
7005 {
7006 #[doc(hidden)]
7007 type UnderlyingSolTuple<'a> = ();
7008 #[doc(hidden)]
7009 type UnderlyingRustTuple<'a> = ();
7010 #[cfg(test)]
7011 #[allow(dead_code, unreachable_patterns)]
7012 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7013 match _t {
7014 alloy_sol_types::private::AssertTypeEq::<
7015 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7016 >(_) => {},
7017 }
7018 }
7019 #[automatically_derived]
7020 #[doc(hidden)]
7021 impl ::core::convert::From<getVersionCall> for UnderlyingRustTuple<'_> {
7022 fn from(value: getVersionCall) -> Self {
7023 ()
7024 }
7025 }
7026 #[automatically_derived]
7027 #[doc(hidden)]
7028 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionCall {
7029 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7030 Self {}
7031 }
7032 }
7033 }
7034 {
7035 #[doc(hidden)]
7036 type UnderlyingSolTuple<'a> = (
7037 alloy::sol_types::sol_data::Uint<8>,
7038 alloy::sol_types::sol_data::Uint<8>,
7039 alloy::sol_types::sol_data::Uint<8>,
7040 );
7041 #[doc(hidden)]
7042 type UnderlyingRustTuple<'a> = (u8, u8, u8);
7043 #[cfg(test)]
7044 #[allow(dead_code, unreachable_patterns)]
7045 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7046 match _t {
7047 alloy_sol_types::private::AssertTypeEq::<
7048 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7049 >(_) => {},
7050 }
7051 }
7052 #[automatically_derived]
7053 #[doc(hidden)]
7054 impl ::core::convert::From<getVersionReturn> for UnderlyingRustTuple<'_> {
7055 fn from(value: getVersionReturn) -> Self {
7056 (value.majorVersion, value.minorVersion, value.patchVersion)
7057 }
7058 }
7059 #[automatically_derived]
7060 #[doc(hidden)]
7061 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionReturn {
7062 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7063 Self {
7064 majorVersion: tuple.0,
7065 minorVersion: tuple.1,
7066 patchVersion: tuple.2,
7067 }
7068 }
7069 }
7070 }
7071 #[automatically_derived]
7072 impl alloy_sol_types::SolCall for getVersionCall {
7073 type Parameters<'a> = ();
7074 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7075 type Return = getVersionReturn;
7076 type ReturnTuple<'a> = (
7077 alloy::sol_types::sol_data::Uint<8>,
7078 alloy::sol_types::sol_data::Uint<8>,
7079 alloy::sol_types::sol_data::Uint<8>,
7080 );
7081 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7082 const SIGNATURE: &'static str = "getVersion()";
7083 const SELECTOR: [u8; 4] = [13u8, 142u8, 110u8, 44u8];
7084 #[inline]
7085 fn new<'a>(
7086 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7087 ) -> Self {
7088 tuple.into()
7089 }
7090 #[inline]
7091 fn tokenize(&self) -> Self::Token<'_> {
7092 ()
7093 }
7094 #[inline]
7095 fn abi_decode_returns(
7096 data: &[u8],
7097 validate: bool,
7098 ) -> alloy_sol_types::Result<Self::Return> {
7099 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7100 data, validate,
7101 )
7102 .map(Into::into)
7103 }
7104 }
7105 };
7106 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7107 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7112 #[derive(Clone)]
7113 pub struct initializeCall {
7114 #[allow(missing_docs)]
7115 pub _genesis: <LightClientState as alloy::sol_types::SolType>::RustType,
7116 #[allow(missing_docs)]
7117 pub _genesisStakeTableState: <StakeTableState as alloy::sol_types::SolType>::RustType,
7118 #[allow(missing_docs)]
7119 pub _stateHistoryRetentionPeriod: u32,
7120 #[allow(missing_docs)]
7121 pub owner: alloy::sol_types::private::Address,
7122 }
7123 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7125 #[derive(Clone)]
7126 pub struct initializeReturn {}
7127 #[allow(
7128 non_camel_case_types,
7129 non_snake_case,
7130 clippy::pub_underscore_fields,
7131 clippy::style
7132 )]
7133 const _: () = {
7134 use alloy::sol_types as alloy_sol_types;
7135 {
7136 #[doc(hidden)]
7137 type UnderlyingSolTuple<'a> = (
7138 LightClientState,
7139 StakeTableState,
7140 alloy::sol_types::sol_data::Uint<32>,
7141 alloy::sol_types::sol_data::Address,
7142 );
7143 #[doc(hidden)]
7144 type UnderlyingRustTuple<'a> = (
7145 <LightClientState as alloy::sol_types::SolType>::RustType,
7146 <StakeTableState as alloy::sol_types::SolType>::RustType,
7147 u32,
7148 alloy::sol_types::private::Address,
7149 );
7150 #[cfg(test)]
7151 #[allow(dead_code, unreachable_patterns)]
7152 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7153 match _t {
7154 alloy_sol_types::private::AssertTypeEq::<
7155 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7156 >(_) => {},
7157 }
7158 }
7159 #[automatically_derived]
7160 #[doc(hidden)]
7161 impl ::core::convert::From<initializeCall> for UnderlyingRustTuple<'_> {
7162 fn from(value: initializeCall) -> Self {
7163 (
7164 value._genesis,
7165 value._genesisStakeTableState,
7166 value._stateHistoryRetentionPeriod,
7167 value.owner,
7168 )
7169 }
7170 }
7171 #[automatically_derived]
7172 #[doc(hidden)]
7173 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeCall {
7174 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7175 Self {
7176 _genesis: tuple.0,
7177 _genesisStakeTableState: tuple.1,
7178 _stateHistoryRetentionPeriod: tuple.2,
7179 owner: tuple.3,
7180 }
7181 }
7182 }
7183 }
7184 {
7185 #[doc(hidden)]
7186 type UnderlyingSolTuple<'a> = ();
7187 #[doc(hidden)]
7188 type UnderlyingRustTuple<'a> = ();
7189 #[cfg(test)]
7190 #[allow(dead_code, unreachable_patterns)]
7191 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7192 match _t {
7193 alloy_sol_types::private::AssertTypeEq::<
7194 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7195 >(_) => {},
7196 }
7197 }
7198 #[automatically_derived]
7199 #[doc(hidden)]
7200 impl ::core::convert::From<initializeReturn> for UnderlyingRustTuple<'_> {
7201 fn from(value: initializeReturn) -> Self {
7202 ()
7203 }
7204 }
7205 #[automatically_derived]
7206 #[doc(hidden)]
7207 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeReturn {
7208 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7209 Self {}
7210 }
7211 }
7212 }
7213 #[automatically_derived]
7214 impl alloy_sol_types::SolCall for initializeCall {
7215 type Parameters<'a> = (
7216 LightClientState,
7217 StakeTableState,
7218 alloy::sol_types::sol_data::Uint<32>,
7219 alloy::sol_types::sol_data::Address,
7220 );
7221 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7222 type Return = initializeReturn;
7223 type ReturnTuple<'a> = ();
7224 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7225 const SIGNATURE: &'static str = "initialize((uint64,uint64,uint256),(uint256,uint256,uint256,uint256),uint32,address)";
7226 const SELECTOR: [u8; 4] = [155u8, 170u8, 60u8, 201u8];
7227 #[inline]
7228 fn new<'a>(
7229 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7230 ) -> Self {
7231 tuple.into()
7232 }
7233 #[inline]
7234 fn tokenize(&self) -> Self::Token<'_> {
7235 (
7236 <LightClientState as alloy_sol_types::SolType>::tokenize(&self._genesis),
7237 <StakeTableState as alloy_sol_types::SolType>::tokenize(
7238 &self._genesisStakeTableState,
7239 ),
7240 <alloy::sol_types::sol_data::Uint<32> as alloy_sol_types::SolType>::tokenize(
7241 &self._stateHistoryRetentionPeriod,
7242 ),
7243 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7244 &self.owner,
7245 ),
7246 )
7247 }
7248 #[inline]
7249 fn abi_decode_returns(
7250 data: &[u8],
7251 validate: bool,
7252 ) -> alloy_sol_types::Result<Self::Return> {
7253 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7254 data, validate,
7255 )
7256 .map(Into::into)
7257 }
7258 }
7259 };
7260 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7261 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7266 #[derive(Clone)]
7267 pub struct isPermissionedProverEnabledCall {}
7268 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7269 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7271 #[derive(Clone)]
7272 pub struct isPermissionedProverEnabledReturn {
7273 #[allow(missing_docs)]
7274 pub _0: bool,
7275 }
7276 #[allow(
7277 non_camel_case_types,
7278 non_snake_case,
7279 clippy::pub_underscore_fields,
7280 clippy::style
7281 )]
7282 const _: () = {
7283 use alloy::sol_types as alloy_sol_types;
7284 {
7285 #[doc(hidden)]
7286 type UnderlyingSolTuple<'a> = ();
7287 #[doc(hidden)]
7288 type UnderlyingRustTuple<'a> = ();
7289 #[cfg(test)]
7290 #[allow(dead_code, unreachable_patterns)]
7291 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7292 match _t {
7293 alloy_sol_types::private::AssertTypeEq::<
7294 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7295 >(_) => {},
7296 }
7297 }
7298 #[automatically_derived]
7299 #[doc(hidden)]
7300 impl ::core::convert::From<isPermissionedProverEnabledCall> for UnderlyingRustTuple<'_> {
7301 fn from(value: isPermissionedProverEnabledCall) -> Self {
7302 ()
7303 }
7304 }
7305 #[automatically_derived]
7306 #[doc(hidden)]
7307 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isPermissionedProverEnabledCall {
7308 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7309 Self {}
7310 }
7311 }
7312 }
7313 {
7314 #[doc(hidden)]
7315 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
7316 #[doc(hidden)]
7317 type UnderlyingRustTuple<'a> = (bool,);
7318 #[cfg(test)]
7319 #[allow(dead_code, unreachable_patterns)]
7320 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7321 match _t {
7322 alloy_sol_types::private::AssertTypeEq::<
7323 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7324 >(_) => {},
7325 }
7326 }
7327 #[automatically_derived]
7328 #[doc(hidden)]
7329 impl ::core::convert::From<isPermissionedProverEnabledReturn> for UnderlyingRustTuple<'_> {
7330 fn from(value: isPermissionedProverEnabledReturn) -> Self {
7331 (value._0,)
7332 }
7333 }
7334 #[automatically_derived]
7335 #[doc(hidden)]
7336 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isPermissionedProverEnabledReturn {
7337 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7338 Self { _0: tuple.0 }
7339 }
7340 }
7341 }
7342 #[automatically_derived]
7343 impl alloy_sol_types::SolCall for isPermissionedProverEnabledCall {
7344 type Parameters<'a> = ();
7345 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7346 type Return = isPermissionedProverEnabledReturn;
7347 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
7348 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7349 const SIGNATURE: &'static str = "isPermissionedProverEnabled()";
7350 const SELECTOR: [u8; 4] = [130u8, 110u8, 65u8, 252u8];
7351 #[inline]
7352 fn new<'a>(
7353 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7354 ) -> Self {
7355 tuple.into()
7356 }
7357 #[inline]
7358 fn tokenize(&self) -> Self::Token<'_> {
7359 ()
7360 }
7361 #[inline]
7362 fn abi_decode_returns(
7363 data: &[u8],
7364 validate: bool,
7365 ) -> alloy_sol_types::Result<Self::Return> {
7366 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7367 data, validate,
7368 )
7369 .map(Into::into)
7370 }
7371 }
7372 };
7373 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7374 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7379 #[derive(Clone)]
7380 pub struct lagOverEscapeHatchThresholdCall {
7381 #[allow(missing_docs)]
7382 pub blockNumber: alloy::sol_types::private::primitives::aliases::U256,
7383 #[allow(missing_docs)]
7384 pub blockThreshold: alloy::sol_types::private::primitives::aliases::U256,
7385 }
7386 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7387 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7389 #[derive(Clone)]
7390 pub struct lagOverEscapeHatchThresholdReturn {
7391 #[allow(missing_docs)]
7392 pub _0: bool,
7393 }
7394 #[allow(
7395 non_camel_case_types,
7396 non_snake_case,
7397 clippy::pub_underscore_fields,
7398 clippy::style
7399 )]
7400 const _: () = {
7401 use alloy::sol_types as alloy_sol_types;
7402 {
7403 #[doc(hidden)]
7404 type UnderlyingSolTuple<'a> = (
7405 alloy::sol_types::sol_data::Uint<256>,
7406 alloy::sol_types::sol_data::Uint<256>,
7407 );
7408 #[doc(hidden)]
7409 type UnderlyingRustTuple<'a> = (
7410 alloy::sol_types::private::primitives::aliases::U256,
7411 alloy::sol_types::private::primitives::aliases::U256,
7412 );
7413 #[cfg(test)]
7414 #[allow(dead_code, unreachable_patterns)]
7415 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7416 match _t {
7417 alloy_sol_types::private::AssertTypeEq::<
7418 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7419 >(_) => {},
7420 }
7421 }
7422 #[automatically_derived]
7423 #[doc(hidden)]
7424 impl ::core::convert::From<lagOverEscapeHatchThresholdCall> for UnderlyingRustTuple<'_> {
7425 fn from(value: lagOverEscapeHatchThresholdCall) -> Self {
7426 (value.blockNumber, value.blockThreshold)
7427 }
7428 }
7429 #[automatically_derived]
7430 #[doc(hidden)]
7431 impl ::core::convert::From<UnderlyingRustTuple<'_>> for lagOverEscapeHatchThresholdCall {
7432 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7433 Self {
7434 blockNumber: tuple.0,
7435 blockThreshold: tuple.1,
7436 }
7437 }
7438 }
7439 }
7440 {
7441 #[doc(hidden)]
7442 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
7443 #[doc(hidden)]
7444 type UnderlyingRustTuple<'a> = (bool,);
7445 #[cfg(test)]
7446 #[allow(dead_code, unreachable_patterns)]
7447 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7448 match _t {
7449 alloy_sol_types::private::AssertTypeEq::<
7450 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7451 >(_) => {},
7452 }
7453 }
7454 #[automatically_derived]
7455 #[doc(hidden)]
7456 impl ::core::convert::From<lagOverEscapeHatchThresholdReturn> for UnderlyingRustTuple<'_> {
7457 fn from(value: lagOverEscapeHatchThresholdReturn) -> Self {
7458 (value._0,)
7459 }
7460 }
7461 #[automatically_derived]
7462 #[doc(hidden)]
7463 impl ::core::convert::From<UnderlyingRustTuple<'_>> for lagOverEscapeHatchThresholdReturn {
7464 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7465 Self { _0: tuple.0 }
7466 }
7467 }
7468 }
7469 #[automatically_derived]
7470 impl alloy_sol_types::SolCall for lagOverEscapeHatchThresholdCall {
7471 type Parameters<'a> = (
7472 alloy::sol_types::sol_data::Uint<256>,
7473 alloy::sol_types::sol_data::Uint<256>,
7474 );
7475 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7476 type Return = lagOverEscapeHatchThresholdReturn;
7477 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
7478 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7479 const SIGNATURE: &'static str = "lagOverEscapeHatchThreshold(uint256,uint256)";
7480 const SELECTOR: [u8; 4] = [224u8, 48u8, 51u8, 1u8];
7481 #[inline]
7482 fn new<'a>(
7483 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7484 ) -> Self {
7485 tuple.into()
7486 }
7487 #[inline]
7488 fn tokenize(&self) -> Self::Token<'_> {
7489 (
7490 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
7491 &self.blockNumber,
7492 ),
7493 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
7494 &self.blockThreshold,
7495 ),
7496 )
7497 }
7498 #[inline]
7499 fn abi_decode_returns(
7500 data: &[u8],
7501 validate: bool,
7502 ) -> alloy_sol_types::Result<Self::Return> {
7503 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7504 data, validate,
7505 )
7506 .map(Into::into)
7507 }
7508 }
7509 };
7510 #[derive()]
7511 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7516 #[derive(Clone)]
7517 pub struct newFinalizedStateCall {
7518 #[allow(missing_docs)]
7519 pub newState: <LightClientState as alloy::sol_types::SolType>::RustType,
7520 #[allow(missing_docs)]
7521 pub proof: <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
7522 }
7523 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7525 #[derive(Clone)]
7526 pub struct newFinalizedStateReturn {}
7527 #[allow(
7528 non_camel_case_types,
7529 non_snake_case,
7530 clippy::pub_underscore_fields,
7531 clippy::style
7532 )]
7533 const _: () = {
7534 use alloy::sol_types as alloy_sol_types;
7535 {
7536 #[doc(hidden)]
7537 type UnderlyingSolTuple<'a> = (LightClientState, IPlonkVerifier::PlonkProof);
7538 #[doc(hidden)]
7539 type UnderlyingRustTuple<'a> = (
7540 <LightClientState as alloy::sol_types::SolType>::RustType,
7541 <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
7542 );
7543 #[cfg(test)]
7544 #[allow(dead_code, unreachable_patterns)]
7545 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7546 match _t {
7547 alloy_sol_types::private::AssertTypeEq::<
7548 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7549 >(_) => {},
7550 }
7551 }
7552 #[automatically_derived]
7553 #[doc(hidden)]
7554 impl ::core::convert::From<newFinalizedStateCall> for UnderlyingRustTuple<'_> {
7555 fn from(value: newFinalizedStateCall) -> Self {
7556 (value.newState, value.proof)
7557 }
7558 }
7559 #[automatically_derived]
7560 #[doc(hidden)]
7561 impl ::core::convert::From<UnderlyingRustTuple<'_>> for newFinalizedStateCall {
7562 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7563 Self {
7564 newState: tuple.0,
7565 proof: tuple.1,
7566 }
7567 }
7568 }
7569 }
7570 {
7571 #[doc(hidden)]
7572 type UnderlyingSolTuple<'a> = ();
7573 #[doc(hidden)]
7574 type UnderlyingRustTuple<'a> = ();
7575 #[cfg(test)]
7576 #[allow(dead_code, unreachable_patterns)]
7577 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7578 match _t {
7579 alloy_sol_types::private::AssertTypeEq::<
7580 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7581 >(_) => {},
7582 }
7583 }
7584 #[automatically_derived]
7585 #[doc(hidden)]
7586 impl ::core::convert::From<newFinalizedStateReturn> for UnderlyingRustTuple<'_> {
7587 fn from(value: newFinalizedStateReturn) -> Self {
7588 ()
7589 }
7590 }
7591 #[automatically_derived]
7592 #[doc(hidden)]
7593 impl ::core::convert::From<UnderlyingRustTuple<'_>> for newFinalizedStateReturn {
7594 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7595 Self {}
7596 }
7597 }
7598 }
7599 #[automatically_derived]
7600 impl alloy_sol_types::SolCall for newFinalizedStateCall {
7601 type Parameters<'a> = (LightClientState, IPlonkVerifier::PlonkProof);
7602 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7603 type Return = newFinalizedStateReturn;
7604 type ReturnTuple<'a> = ();
7605 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7606 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))";
7607 const SELECTOR: [u8; 4] = [32u8, 99u8, 212u8, 247u8];
7608 #[inline]
7609 fn new<'a>(
7610 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7611 ) -> Self {
7612 tuple.into()
7613 }
7614 #[inline]
7615 fn tokenize(&self) -> Self::Token<'_> {
7616 (
7617 <LightClientState as alloy_sol_types::SolType>::tokenize(&self.newState),
7618 <IPlonkVerifier::PlonkProof as alloy_sol_types::SolType>::tokenize(&self.proof),
7619 )
7620 }
7621 #[inline]
7622 fn abi_decode_returns(
7623 data: &[u8],
7624 validate: bool,
7625 ) -> alloy_sol_types::Result<Self::Return> {
7626 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7627 data, validate,
7628 )
7629 .map(Into::into)
7630 }
7631 }
7632 };
7633 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7634 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7639 #[derive(Clone)]
7640 pub struct ownerCall {}
7641 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7642 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7644 #[derive(Clone)]
7645 pub struct ownerReturn {
7646 #[allow(missing_docs)]
7647 pub _0: alloy::sol_types::private::Address,
7648 }
7649 #[allow(
7650 non_camel_case_types,
7651 non_snake_case,
7652 clippy::pub_underscore_fields,
7653 clippy::style
7654 )]
7655 const _: () = {
7656 use alloy::sol_types as alloy_sol_types;
7657 {
7658 #[doc(hidden)]
7659 type UnderlyingSolTuple<'a> = ();
7660 #[doc(hidden)]
7661 type UnderlyingRustTuple<'a> = ();
7662 #[cfg(test)]
7663 #[allow(dead_code, unreachable_patterns)]
7664 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7665 match _t {
7666 alloy_sol_types::private::AssertTypeEq::<
7667 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7668 >(_) => {},
7669 }
7670 }
7671 #[automatically_derived]
7672 #[doc(hidden)]
7673 impl ::core::convert::From<ownerCall> for UnderlyingRustTuple<'_> {
7674 fn from(value: ownerCall) -> Self {
7675 ()
7676 }
7677 }
7678 #[automatically_derived]
7679 #[doc(hidden)]
7680 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerCall {
7681 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7682 Self {}
7683 }
7684 }
7685 }
7686 {
7687 #[doc(hidden)]
7688 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7689 #[doc(hidden)]
7690 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7691 #[cfg(test)]
7692 #[allow(dead_code, unreachable_patterns)]
7693 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7694 match _t {
7695 alloy_sol_types::private::AssertTypeEq::<
7696 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7697 >(_) => {},
7698 }
7699 }
7700 #[automatically_derived]
7701 #[doc(hidden)]
7702 impl ::core::convert::From<ownerReturn> for UnderlyingRustTuple<'_> {
7703 fn from(value: ownerReturn) -> Self {
7704 (value._0,)
7705 }
7706 }
7707 #[automatically_derived]
7708 #[doc(hidden)]
7709 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerReturn {
7710 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7711 Self { _0: tuple.0 }
7712 }
7713 }
7714 }
7715 #[automatically_derived]
7716 impl alloy_sol_types::SolCall for ownerCall {
7717 type Parameters<'a> = ();
7718 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7719 type Return = ownerReturn;
7720 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7721 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7722 const SIGNATURE: &'static str = "owner()";
7723 const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8];
7724 #[inline]
7725 fn new<'a>(
7726 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7727 ) -> Self {
7728 tuple.into()
7729 }
7730 #[inline]
7731 fn tokenize(&self) -> Self::Token<'_> {
7732 ()
7733 }
7734 #[inline]
7735 fn abi_decode_returns(
7736 data: &[u8],
7737 validate: bool,
7738 ) -> alloy_sol_types::Result<Self::Return> {
7739 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7740 data, validate,
7741 )
7742 .map(Into::into)
7743 }
7744 }
7745 };
7746 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7747 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7752 #[derive(Clone)]
7753 pub struct permissionedProverCall {}
7754 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7755 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7757 #[derive(Clone)]
7758 pub struct permissionedProverReturn {
7759 #[allow(missing_docs)]
7760 pub _0: alloy::sol_types::private::Address,
7761 }
7762 #[allow(
7763 non_camel_case_types,
7764 non_snake_case,
7765 clippy::pub_underscore_fields,
7766 clippy::style
7767 )]
7768 const _: () = {
7769 use alloy::sol_types as alloy_sol_types;
7770 {
7771 #[doc(hidden)]
7772 type UnderlyingSolTuple<'a> = ();
7773 #[doc(hidden)]
7774 type UnderlyingRustTuple<'a> = ();
7775 #[cfg(test)]
7776 #[allow(dead_code, unreachable_patterns)]
7777 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7778 match _t {
7779 alloy_sol_types::private::AssertTypeEq::<
7780 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7781 >(_) => {},
7782 }
7783 }
7784 #[automatically_derived]
7785 #[doc(hidden)]
7786 impl ::core::convert::From<permissionedProverCall> for UnderlyingRustTuple<'_> {
7787 fn from(value: permissionedProverCall) -> Self {
7788 ()
7789 }
7790 }
7791 #[automatically_derived]
7792 #[doc(hidden)]
7793 impl ::core::convert::From<UnderlyingRustTuple<'_>> for permissionedProverCall {
7794 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7795 Self {}
7796 }
7797 }
7798 }
7799 {
7800 #[doc(hidden)]
7801 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7802 #[doc(hidden)]
7803 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7804 #[cfg(test)]
7805 #[allow(dead_code, unreachable_patterns)]
7806 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7807 match _t {
7808 alloy_sol_types::private::AssertTypeEq::<
7809 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7810 >(_) => {},
7811 }
7812 }
7813 #[automatically_derived]
7814 #[doc(hidden)]
7815 impl ::core::convert::From<permissionedProverReturn> for UnderlyingRustTuple<'_> {
7816 fn from(value: permissionedProverReturn) -> Self {
7817 (value._0,)
7818 }
7819 }
7820 #[automatically_derived]
7821 #[doc(hidden)]
7822 impl ::core::convert::From<UnderlyingRustTuple<'_>> for permissionedProverReturn {
7823 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7824 Self { _0: tuple.0 }
7825 }
7826 }
7827 }
7828 #[automatically_derived]
7829 impl alloy_sol_types::SolCall for permissionedProverCall {
7830 type Parameters<'a> = ();
7831 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7832 type Return = permissionedProverReturn;
7833 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7834 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7835 const SIGNATURE: &'static str = "permissionedProver()";
7836 const SELECTOR: [u8; 4] = [49u8, 61u8, 247u8, 177u8];
7837 #[inline]
7838 fn new<'a>(
7839 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7840 ) -> Self {
7841 tuple.into()
7842 }
7843 #[inline]
7844 fn tokenize(&self) -> Self::Token<'_> {
7845 ()
7846 }
7847 #[inline]
7848 fn abi_decode_returns(
7849 data: &[u8],
7850 validate: bool,
7851 ) -> alloy_sol_types::Result<Self::Return> {
7852 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7853 data, validate,
7854 )
7855 .map(Into::into)
7856 }
7857 }
7858 };
7859 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7860 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7865 #[derive(Clone)]
7866 pub struct proxiableUUIDCall {}
7867 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7868 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7870 #[derive(Clone)]
7871 pub struct proxiableUUIDReturn {
7872 #[allow(missing_docs)]
7873 pub _0: alloy::sol_types::private::FixedBytes<32>,
7874 }
7875 #[allow(
7876 non_camel_case_types,
7877 non_snake_case,
7878 clippy::pub_underscore_fields,
7879 clippy::style
7880 )]
7881 const _: () = {
7882 use alloy::sol_types as alloy_sol_types;
7883 {
7884 #[doc(hidden)]
7885 type UnderlyingSolTuple<'a> = ();
7886 #[doc(hidden)]
7887 type UnderlyingRustTuple<'a> = ();
7888 #[cfg(test)]
7889 #[allow(dead_code, unreachable_patterns)]
7890 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7891 match _t {
7892 alloy_sol_types::private::AssertTypeEq::<
7893 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7894 >(_) => {},
7895 }
7896 }
7897 #[automatically_derived]
7898 #[doc(hidden)]
7899 impl ::core::convert::From<proxiableUUIDCall> for UnderlyingRustTuple<'_> {
7900 fn from(value: proxiableUUIDCall) -> Self {
7901 ()
7902 }
7903 }
7904 #[automatically_derived]
7905 #[doc(hidden)]
7906 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDCall {
7907 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7908 Self {}
7909 }
7910 }
7911 }
7912 {
7913 #[doc(hidden)]
7914 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7915 #[doc(hidden)]
7916 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
7917 #[cfg(test)]
7918 #[allow(dead_code, unreachable_patterns)]
7919 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7920 match _t {
7921 alloy_sol_types::private::AssertTypeEq::<
7922 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7923 >(_) => {},
7924 }
7925 }
7926 #[automatically_derived]
7927 #[doc(hidden)]
7928 impl ::core::convert::From<proxiableUUIDReturn> for UnderlyingRustTuple<'_> {
7929 fn from(value: proxiableUUIDReturn) -> Self {
7930 (value._0,)
7931 }
7932 }
7933 #[automatically_derived]
7934 #[doc(hidden)]
7935 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDReturn {
7936 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7937 Self { _0: tuple.0 }
7938 }
7939 }
7940 }
7941 #[automatically_derived]
7942 impl alloy_sol_types::SolCall for proxiableUUIDCall {
7943 type Parameters<'a> = ();
7944 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7945 type Return = proxiableUUIDReturn;
7946 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7947 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7948 const SIGNATURE: &'static str = "proxiableUUID()";
7949 const SELECTOR: [u8; 4] = [82u8, 209u8, 144u8, 45u8];
7950 #[inline]
7951 fn new<'a>(
7952 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7953 ) -> Self {
7954 tuple.into()
7955 }
7956 #[inline]
7957 fn tokenize(&self) -> Self::Token<'_> {
7958 ()
7959 }
7960 #[inline]
7961 fn abi_decode_returns(
7962 data: &[u8],
7963 validate: bool,
7964 ) -> alloy_sol_types::Result<Self::Return> {
7965 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7966 data, validate,
7967 )
7968 .map(Into::into)
7969 }
7970 }
7971 };
7972 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7973 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7978 #[derive(Clone)]
7979 pub struct renounceOwnershipCall {}
7980 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7982 #[derive(Clone)]
7983 pub struct renounceOwnershipReturn {}
7984 #[allow(
7985 non_camel_case_types,
7986 non_snake_case,
7987 clippy::pub_underscore_fields,
7988 clippy::style
7989 )]
7990 const _: () = {
7991 use alloy::sol_types as alloy_sol_types;
7992 {
7993 #[doc(hidden)]
7994 type UnderlyingSolTuple<'a> = ();
7995 #[doc(hidden)]
7996 type UnderlyingRustTuple<'a> = ();
7997 #[cfg(test)]
7998 #[allow(dead_code, unreachable_patterns)]
7999 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8000 match _t {
8001 alloy_sol_types::private::AssertTypeEq::<
8002 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8003 >(_) => {},
8004 }
8005 }
8006 #[automatically_derived]
8007 #[doc(hidden)]
8008 impl ::core::convert::From<renounceOwnershipCall> for UnderlyingRustTuple<'_> {
8009 fn from(value: renounceOwnershipCall) -> Self {
8010 ()
8011 }
8012 }
8013 #[automatically_derived]
8014 #[doc(hidden)]
8015 impl ::core::convert::From<UnderlyingRustTuple<'_>> for renounceOwnershipCall {
8016 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8017 Self {}
8018 }
8019 }
8020 }
8021 {
8022 #[doc(hidden)]
8023 type UnderlyingSolTuple<'a> = ();
8024 #[doc(hidden)]
8025 type UnderlyingRustTuple<'a> = ();
8026 #[cfg(test)]
8027 #[allow(dead_code, unreachable_patterns)]
8028 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8029 match _t {
8030 alloy_sol_types::private::AssertTypeEq::<
8031 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8032 >(_) => {},
8033 }
8034 }
8035 #[automatically_derived]
8036 #[doc(hidden)]
8037 impl ::core::convert::From<renounceOwnershipReturn> for UnderlyingRustTuple<'_> {
8038 fn from(value: renounceOwnershipReturn) -> Self {
8039 ()
8040 }
8041 }
8042 #[automatically_derived]
8043 #[doc(hidden)]
8044 impl ::core::convert::From<UnderlyingRustTuple<'_>> for renounceOwnershipReturn {
8045 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8046 Self {}
8047 }
8048 }
8049 }
8050 #[automatically_derived]
8051 impl alloy_sol_types::SolCall for renounceOwnershipCall {
8052 type Parameters<'a> = ();
8053 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8054 type Return = renounceOwnershipReturn;
8055 type ReturnTuple<'a> = ();
8056 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8057 const SIGNATURE: &'static str = "renounceOwnership()";
8058 const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8];
8059 #[inline]
8060 fn new<'a>(
8061 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8062 ) -> Self {
8063 tuple.into()
8064 }
8065 #[inline]
8066 fn tokenize(&self) -> Self::Token<'_> {
8067 ()
8068 }
8069 #[inline]
8070 fn abi_decode_returns(
8071 data: &[u8],
8072 validate: bool,
8073 ) -> alloy_sol_types::Result<Self::Return> {
8074 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8075 data, validate,
8076 )
8077 .map(Into::into)
8078 }
8079 }
8080 };
8081 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8082 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8087 #[derive(Clone)]
8088 pub struct setPermissionedProverCall {
8089 #[allow(missing_docs)]
8090 pub prover: alloy::sol_types::private::Address,
8091 }
8092 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8094 #[derive(Clone)]
8095 pub struct setPermissionedProverReturn {}
8096 #[allow(
8097 non_camel_case_types,
8098 non_snake_case,
8099 clippy::pub_underscore_fields,
8100 clippy::style
8101 )]
8102 const _: () = {
8103 use alloy::sol_types as alloy_sol_types;
8104 {
8105 #[doc(hidden)]
8106 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8107 #[doc(hidden)]
8108 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8109 #[cfg(test)]
8110 #[allow(dead_code, unreachable_patterns)]
8111 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8112 match _t {
8113 alloy_sol_types::private::AssertTypeEq::<
8114 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8115 >(_) => {},
8116 }
8117 }
8118 #[automatically_derived]
8119 #[doc(hidden)]
8120 impl ::core::convert::From<setPermissionedProverCall> for UnderlyingRustTuple<'_> {
8121 fn from(value: setPermissionedProverCall) -> Self {
8122 (value.prover,)
8123 }
8124 }
8125 #[automatically_derived]
8126 #[doc(hidden)]
8127 impl ::core::convert::From<UnderlyingRustTuple<'_>> for setPermissionedProverCall {
8128 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8129 Self { prover: tuple.0 }
8130 }
8131 }
8132 }
8133 {
8134 #[doc(hidden)]
8135 type UnderlyingSolTuple<'a> = ();
8136 #[doc(hidden)]
8137 type UnderlyingRustTuple<'a> = ();
8138 #[cfg(test)]
8139 #[allow(dead_code, unreachable_patterns)]
8140 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8141 match _t {
8142 alloy_sol_types::private::AssertTypeEq::<
8143 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8144 >(_) => {},
8145 }
8146 }
8147 #[automatically_derived]
8148 #[doc(hidden)]
8149 impl ::core::convert::From<setPermissionedProverReturn> for UnderlyingRustTuple<'_> {
8150 fn from(value: setPermissionedProverReturn) -> Self {
8151 ()
8152 }
8153 }
8154 #[automatically_derived]
8155 #[doc(hidden)]
8156 impl ::core::convert::From<UnderlyingRustTuple<'_>> for setPermissionedProverReturn {
8157 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8158 Self {}
8159 }
8160 }
8161 }
8162 #[automatically_derived]
8163 impl alloy_sol_types::SolCall for setPermissionedProverCall {
8164 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
8165 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8166 type Return = setPermissionedProverReturn;
8167 type ReturnTuple<'a> = ();
8168 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8169 const SIGNATURE: &'static str = "setPermissionedProver(address)";
8170 const SELECTOR: [u8; 4] = [1u8, 63u8, 165u8, 252u8];
8171 #[inline]
8172 fn new<'a>(
8173 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8174 ) -> Self {
8175 tuple.into()
8176 }
8177 #[inline]
8178 fn tokenize(&self) -> Self::Token<'_> {
8179 (
8180 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8181 &self.prover,
8182 ),
8183 )
8184 }
8185 #[inline]
8186 fn abi_decode_returns(
8187 data: &[u8],
8188 validate: bool,
8189 ) -> alloy_sol_types::Result<Self::Return> {
8190 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8191 data, validate,
8192 )
8193 .map(Into::into)
8194 }
8195 }
8196 };
8197 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8198 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8203 #[derive(Clone)]
8204 pub struct setstateHistoryRetentionPeriodCall {
8205 #[allow(missing_docs)]
8206 pub historySeconds: u32,
8207 }
8208 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8210 #[derive(Clone)]
8211 pub struct setstateHistoryRetentionPeriodReturn {}
8212 #[allow(
8213 non_camel_case_types,
8214 non_snake_case,
8215 clippy::pub_underscore_fields,
8216 clippy::style
8217 )]
8218 const _: () = {
8219 use alloy::sol_types as alloy_sol_types;
8220 {
8221 #[doc(hidden)]
8222 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
8223 #[doc(hidden)]
8224 type UnderlyingRustTuple<'a> = (u32,);
8225 #[cfg(test)]
8226 #[allow(dead_code, unreachable_patterns)]
8227 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8228 match _t {
8229 alloy_sol_types::private::AssertTypeEq::<
8230 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8231 >(_) => {},
8232 }
8233 }
8234 #[automatically_derived]
8235 #[doc(hidden)]
8236 impl ::core::convert::From<setstateHistoryRetentionPeriodCall> for UnderlyingRustTuple<'_> {
8237 fn from(value: setstateHistoryRetentionPeriodCall) -> Self {
8238 (value.historySeconds,)
8239 }
8240 }
8241 #[automatically_derived]
8242 #[doc(hidden)]
8243 impl ::core::convert::From<UnderlyingRustTuple<'_>> for setstateHistoryRetentionPeriodCall {
8244 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8245 Self {
8246 historySeconds: tuple.0,
8247 }
8248 }
8249 }
8250 }
8251 {
8252 #[doc(hidden)]
8253 type UnderlyingSolTuple<'a> = ();
8254 #[doc(hidden)]
8255 type UnderlyingRustTuple<'a> = ();
8256 #[cfg(test)]
8257 #[allow(dead_code, unreachable_patterns)]
8258 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8259 match _t {
8260 alloy_sol_types::private::AssertTypeEq::<
8261 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8262 >(_) => {},
8263 }
8264 }
8265 #[automatically_derived]
8266 #[doc(hidden)]
8267 impl ::core::convert::From<setstateHistoryRetentionPeriodReturn> for UnderlyingRustTuple<'_> {
8268 fn from(value: setstateHistoryRetentionPeriodReturn) -> Self {
8269 ()
8270 }
8271 }
8272 #[automatically_derived]
8273 #[doc(hidden)]
8274 impl ::core::convert::From<UnderlyingRustTuple<'_>> for setstateHistoryRetentionPeriodReturn {
8275 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8276 Self {}
8277 }
8278 }
8279 }
8280 #[automatically_derived]
8281 impl alloy_sol_types::SolCall for setstateHistoryRetentionPeriodCall {
8282 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,);
8283 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8284 type Return = setstateHistoryRetentionPeriodReturn;
8285 type ReturnTuple<'a> = ();
8286 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8287 const SIGNATURE: &'static str = "setstateHistoryRetentionPeriod(uint32)";
8288 const SELECTOR: [u8; 4] = [150u8, 193u8, 202u8, 97u8];
8289 #[inline]
8290 fn new<'a>(
8291 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8292 ) -> Self {
8293 tuple.into()
8294 }
8295 #[inline]
8296 fn tokenize(&self) -> Self::Token<'_> {
8297 (
8298 <alloy::sol_types::sol_data::Uint<32> as alloy_sol_types::SolType>::tokenize(
8299 &self.historySeconds,
8300 ),
8301 )
8302 }
8303 #[inline]
8304 fn abi_decode_returns(
8305 data: &[u8],
8306 validate: bool,
8307 ) -> alloy_sol_types::Result<Self::Return> {
8308 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8309 data, validate,
8310 )
8311 .map(Into::into)
8312 }
8313 }
8314 };
8315 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8316 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8321 #[derive(Clone)]
8322 pub struct stateHistoryCommitmentsCall {
8323 #[allow(missing_docs)]
8324 pub _0: alloy::sol_types::private::primitives::aliases::U256,
8325 }
8326 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8327 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8329 #[derive(Clone)]
8330 pub struct stateHistoryCommitmentsReturn {
8331 #[allow(missing_docs)]
8332 pub l1BlockHeight: u64,
8333 #[allow(missing_docs)]
8334 pub l1BlockTimestamp: u64,
8335 #[allow(missing_docs)]
8336 pub hotShotBlockHeight: u64,
8337 #[allow(missing_docs)]
8338 pub hotShotBlockCommRoot: <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8339 }
8340 #[allow(
8341 non_camel_case_types,
8342 non_snake_case,
8343 clippy::pub_underscore_fields,
8344 clippy::style
8345 )]
8346 const _: () = {
8347 use alloy::sol_types as alloy_sol_types;
8348 {
8349 #[doc(hidden)]
8350 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8351 #[doc(hidden)]
8352 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
8353 #[cfg(test)]
8354 #[allow(dead_code, unreachable_patterns)]
8355 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8356 match _t {
8357 alloy_sol_types::private::AssertTypeEq::<
8358 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8359 >(_) => {},
8360 }
8361 }
8362 #[automatically_derived]
8363 #[doc(hidden)]
8364 impl ::core::convert::From<stateHistoryCommitmentsCall> for UnderlyingRustTuple<'_> {
8365 fn from(value: stateHistoryCommitmentsCall) -> Self {
8366 (value._0,)
8367 }
8368 }
8369 #[automatically_derived]
8370 #[doc(hidden)]
8371 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stateHistoryCommitmentsCall {
8372 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8373 Self { _0: tuple.0 }
8374 }
8375 }
8376 }
8377 {
8378 #[doc(hidden)]
8379 type UnderlyingSolTuple<'a> = (
8380 alloy::sol_types::sol_data::Uint<64>,
8381 alloy::sol_types::sol_data::Uint<64>,
8382 alloy::sol_types::sol_data::Uint<64>,
8383 BN254::ScalarField,
8384 );
8385 #[doc(hidden)]
8386 type UnderlyingRustTuple<'a> = (
8387 u64,
8388 u64,
8389 u64,
8390 <BN254::ScalarField as alloy::sol_types::SolType>::RustType,
8391 );
8392 #[cfg(test)]
8393 #[allow(dead_code, unreachable_patterns)]
8394 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8395 match _t {
8396 alloy_sol_types::private::AssertTypeEq::<
8397 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8398 >(_) => {},
8399 }
8400 }
8401 #[automatically_derived]
8402 #[doc(hidden)]
8403 impl ::core::convert::From<stateHistoryCommitmentsReturn> for UnderlyingRustTuple<'_> {
8404 fn from(value: stateHistoryCommitmentsReturn) -> Self {
8405 (
8406 value.l1BlockHeight,
8407 value.l1BlockTimestamp,
8408 value.hotShotBlockHeight,
8409 value.hotShotBlockCommRoot,
8410 )
8411 }
8412 }
8413 #[automatically_derived]
8414 #[doc(hidden)]
8415 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stateHistoryCommitmentsReturn {
8416 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8417 Self {
8418 l1BlockHeight: tuple.0,
8419 l1BlockTimestamp: tuple.1,
8420 hotShotBlockHeight: tuple.2,
8421 hotShotBlockCommRoot: tuple.3,
8422 }
8423 }
8424 }
8425 }
8426 #[automatically_derived]
8427 impl alloy_sol_types::SolCall for stateHistoryCommitmentsCall {
8428 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8429 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8430 type Return = stateHistoryCommitmentsReturn;
8431 type ReturnTuple<'a> = (
8432 alloy::sol_types::sol_data::Uint<64>,
8433 alloy::sol_types::sol_data::Uint<64>,
8434 alloy::sol_types::sol_data::Uint<64>,
8435 BN254::ScalarField,
8436 );
8437 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8438 const SIGNATURE: &'static str = "stateHistoryCommitments(uint256)";
8439 const SELECTOR: [u8; 4] = [2u8, 181u8, 146u8, 243u8];
8440 #[inline]
8441 fn new<'a>(
8442 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8443 ) -> Self {
8444 tuple.into()
8445 }
8446 #[inline]
8447 fn tokenize(&self) -> Self::Token<'_> {
8448 (
8449 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
8450 &self._0,
8451 ),
8452 )
8453 }
8454 #[inline]
8455 fn abi_decode_returns(
8456 data: &[u8],
8457 validate: bool,
8458 ) -> alloy_sol_types::Result<Self::Return> {
8459 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8460 data, validate,
8461 )
8462 .map(Into::into)
8463 }
8464 }
8465 };
8466 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8467 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8472 #[derive(Clone)]
8473 pub struct stateHistoryFirstIndexCall {}
8474 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8475 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8477 #[derive(Clone)]
8478 pub struct stateHistoryFirstIndexReturn {
8479 #[allow(missing_docs)]
8480 pub _0: u64,
8481 }
8482 #[allow(
8483 non_camel_case_types,
8484 non_snake_case,
8485 clippy::pub_underscore_fields,
8486 clippy::style
8487 )]
8488 const _: () = {
8489 use alloy::sol_types as alloy_sol_types;
8490 {
8491 #[doc(hidden)]
8492 type UnderlyingSolTuple<'a> = ();
8493 #[doc(hidden)]
8494 type UnderlyingRustTuple<'a> = ();
8495 #[cfg(test)]
8496 #[allow(dead_code, unreachable_patterns)]
8497 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8498 match _t {
8499 alloy_sol_types::private::AssertTypeEq::<
8500 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8501 >(_) => {},
8502 }
8503 }
8504 #[automatically_derived]
8505 #[doc(hidden)]
8506 impl ::core::convert::From<stateHistoryFirstIndexCall> for UnderlyingRustTuple<'_> {
8507 fn from(value: stateHistoryFirstIndexCall) -> Self {
8508 ()
8509 }
8510 }
8511 #[automatically_derived]
8512 #[doc(hidden)]
8513 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stateHistoryFirstIndexCall {
8514 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8515 Self {}
8516 }
8517 }
8518 }
8519 {
8520 #[doc(hidden)]
8521 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8522 #[doc(hidden)]
8523 type UnderlyingRustTuple<'a> = (u64,);
8524 #[cfg(test)]
8525 #[allow(dead_code, unreachable_patterns)]
8526 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8527 match _t {
8528 alloy_sol_types::private::AssertTypeEq::<
8529 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8530 >(_) => {},
8531 }
8532 }
8533 #[automatically_derived]
8534 #[doc(hidden)]
8535 impl ::core::convert::From<stateHistoryFirstIndexReturn> for UnderlyingRustTuple<'_> {
8536 fn from(value: stateHistoryFirstIndexReturn) -> Self {
8537 (value._0,)
8538 }
8539 }
8540 #[automatically_derived]
8541 #[doc(hidden)]
8542 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stateHistoryFirstIndexReturn {
8543 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8544 Self { _0: tuple.0 }
8545 }
8546 }
8547 }
8548 #[automatically_derived]
8549 impl alloy_sol_types::SolCall for stateHistoryFirstIndexCall {
8550 type Parameters<'a> = ();
8551 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8552 type Return = stateHistoryFirstIndexReturn;
8553 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
8554 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8555 const SIGNATURE: &'static str = "stateHistoryFirstIndex()";
8556 const SELECTOR: [u8; 4] = [47u8, 121u8, 136u8, 157u8];
8557 #[inline]
8558 fn new<'a>(
8559 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8560 ) -> Self {
8561 tuple.into()
8562 }
8563 #[inline]
8564 fn tokenize(&self) -> Self::Token<'_> {
8565 ()
8566 }
8567 #[inline]
8568 fn abi_decode_returns(
8569 data: &[u8],
8570 validate: bool,
8571 ) -> alloy_sol_types::Result<Self::Return> {
8572 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8573 data, validate,
8574 )
8575 .map(Into::into)
8576 }
8577 }
8578 };
8579 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8580 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8585 #[derive(Clone)]
8586 pub struct stateHistoryRetentionPeriodCall {}
8587 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8588 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8590 #[derive(Clone)]
8591 pub struct stateHistoryRetentionPeriodReturn {
8592 #[allow(missing_docs)]
8593 pub _0: u32,
8594 }
8595 #[allow(
8596 non_camel_case_types,
8597 non_snake_case,
8598 clippy::pub_underscore_fields,
8599 clippy::style
8600 )]
8601 const _: () = {
8602 use alloy::sol_types as alloy_sol_types;
8603 {
8604 #[doc(hidden)]
8605 type UnderlyingSolTuple<'a> = ();
8606 #[doc(hidden)]
8607 type UnderlyingRustTuple<'a> = ();
8608 #[cfg(test)]
8609 #[allow(dead_code, unreachable_patterns)]
8610 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8611 match _t {
8612 alloy_sol_types::private::AssertTypeEq::<
8613 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8614 >(_) => {},
8615 }
8616 }
8617 #[automatically_derived]
8618 #[doc(hidden)]
8619 impl ::core::convert::From<stateHistoryRetentionPeriodCall> for UnderlyingRustTuple<'_> {
8620 fn from(value: stateHistoryRetentionPeriodCall) -> Self {
8621 ()
8622 }
8623 }
8624 #[automatically_derived]
8625 #[doc(hidden)]
8626 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stateHistoryRetentionPeriodCall {
8627 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8628 Self {}
8629 }
8630 }
8631 }
8632 {
8633 #[doc(hidden)]
8634 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
8635 #[doc(hidden)]
8636 type UnderlyingRustTuple<'a> = (u32,);
8637 #[cfg(test)]
8638 #[allow(dead_code, unreachable_patterns)]
8639 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8640 match _t {
8641 alloy_sol_types::private::AssertTypeEq::<
8642 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8643 >(_) => {},
8644 }
8645 }
8646 #[automatically_derived]
8647 #[doc(hidden)]
8648 impl ::core::convert::From<stateHistoryRetentionPeriodReturn> for UnderlyingRustTuple<'_> {
8649 fn from(value: stateHistoryRetentionPeriodReturn) -> Self {
8650 (value._0,)
8651 }
8652 }
8653 #[automatically_derived]
8654 #[doc(hidden)]
8655 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stateHistoryRetentionPeriodReturn {
8656 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8657 Self { _0: tuple.0 }
8658 }
8659 }
8660 }
8661 #[automatically_derived]
8662 impl alloy_sol_types::SolCall for stateHistoryRetentionPeriodCall {
8663 type Parameters<'a> = ();
8664 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8665 type Return = stateHistoryRetentionPeriodReturn;
8666 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
8667 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8668 const SIGNATURE: &'static str = "stateHistoryRetentionPeriod()";
8669 const SELECTOR: [u8; 4] = [194u8, 59u8, 158u8, 158u8];
8670 #[inline]
8671 fn new<'a>(
8672 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8673 ) -> Self {
8674 tuple.into()
8675 }
8676 #[inline]
8677 fn tokenize(&self) -> Self::Token<'_> {
8678 ()
8679 }
8680 #[inline]
8681 fn abi_decode_returns(
8682 data: &[u8],
8683 validate: bool,
8684 ) -> alloy_sol_types::Result<Self::Return> {
8685 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8686 data, validate,
8687 )
8688 .map(Into::into)
8689 }
8690 }
8691 };
8692 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8693 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8698 #[derive(Clone)]
8699 pub struct transferOwnershipCall {
8700 #[allow(missing_docs)]
8701 pub newOwner: alloy::sol_types::private::Address,
8702 }
8703 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8705 #[derive(Clone)]
8706 pub struct transferOwnershipReturn {}
8707 #[allow(
8708 non_camel_case_types,
8709 non_snake_case,
8710 clippy::pub_underscore_fields,
8711 clippy::style
8712 )]
8713 const _: () = {
8714 use alloy::sol_types as alloy_sol_types;
8715 {
8716 #[doc(hidden)]
8717 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8718 #[doc(hidden)]
8719 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8720 #[cfg(test)]
8721 #[allow(dead_code, unreachable_patterns)]
8722 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8723 match _t {
8724 alloy_sol_types::private::AssertTypeEq::<
8725 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8726 >(_) => {},
8727 }
8728 }
8729 #[automatically_derived]
8730 #[doc(hidden)]
8731 impl ::core::convert::From<transferOwnershipCall> for UnderlyingRustTuple<'_> {
8732 fn from(value: transferOwnershipCall) -> Self {
8733 (value.newOwner,)
8734 }
8735 }
8736 #[automatically_derived]
8737 #[doc(hidden)]
8738 impl ::core::convert::From<UnderlyingRustTuple<'_>> for transferOwnershipCall {
8739 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8740 Self { newOwner: tuple.0 }
8741 }
8742 }
8743 }
8744 {
8745 #[doc(hidden)]
8746 type UnderlyingSolTuple<'a> = ();
8747 #[doc(hidden)]
8748 type UnderlyingRustTuple<'a> = ();
8749 #[cfg(test)]
8750 #[allow(dead_code, unreachable_patterns)]
8751 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8752 match _t {
8753 alloy_sol_types::private::AssertTypeEq::<
8754 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8755 >(_) => {},
8756 }
8757 }
8758 #[automatically_derived]
8759 #[doc(hidden)]
8760 impl ::core::convert::From<transferOwnershipReturn> for UnderlyingRustTuple<'_> {
8761 fn from(value: transferOwnershipReturn) -> Self {
8762 ()
8763 }
8764 }
8765 #[automatically_derived]
8766 #[doc(hidden)]
8767 impl ::core::convert::From<UnderlyingRustTuple<'_>> for transferOwnershipReturn {
8768 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8769 Self {}
8770 }
8771 }
8772 }
8773 #[automatically_derived]
8774 impl alloy_sol_types::SolCall for transferOwnershipCall {
8775 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
8776 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8777 type Return = transferOwnershipReturn;
8778 type ReturnTuple<'a> = ();
8779 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8780 const SIGNATURE: &'static str = "transferOwnership(address)";
8781 const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8];
8782 #[inline]
8783 fn new<'a>(
8784 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8785 ) -> Self {
8786 tuple.into()
8787 }
8788 #[inline]
8789 fn tokenize(&self) -> Self::Token<'_> {
8790 (
8791 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8792 &self.newOwner,
8793 ),
8794 )
8795 }
8796 #[inline]
8797 fn abi_decode_returns(
8798 data: &[u8],
8799 validate: bool,
8800 ) -> alloy_sol_types::Result<Self::Return> {
8801 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8802 data, validate,
8803 )
8804 .map(Into::into)
8805 }
8806 }
8807 };
8808 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8809 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8814 #[derive(Clone)]
8815 pub struct upgradeToAndCallCall {
8816 #[allow(missing_docs)]
8817 pub newImplementation: alloy::sol_types::private::Address,
8818 #[allow(missing_docs)]
8819 pub data: alloy::sol_types::private::Bytes,
8820 }
8821 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8823 #[derive(Clone)]
8824 pub struct upgradeToAndCallReturn {}
8825 #[allow(
8826 non_camel_case_types,
8827 non_snake_case,
8828 clippy::pub_underscore_fields,
8829 clippy::style
8830 )]
8831 const _: () = {
8832 use alloy::sol_types as alloy_sol_types;
8833 {
8834 #[doc(hidden)]
8835 type UnderlyingSolTuple<'a> = (
8836 alloy::sol_types::sol_data::Address,
8837 alloy::sol_types::sol_data::Bytes,
8838 );
8839 #[doc(hidden)]
8840 type UnderlyingRustTuple<'a> = (
8841 alloy::sol_types::private::Address,
8842 alloy::sol_types::private::Bytes,
8843 );
8844 #[cfg(test)]
8845 #[allow(dead_code, unreachable_patterns)]
8846 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8847 match _t {
8848 alloy_sol_types::private::AssertTypeEq::<
8849 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8850 >(_) => {},
8851 }
8852 }
8853 #[automatically_derived]
8854 #[doc(hidden)]
8855 impl ::core::convert::From<upgradeToAndCallCall> for UnderlyingRustTuple<'_> {
8856 fn from(value: upgradeToAndCallCall) -> Self {
8857 (value.newImplementation, value.data)
8858 }
8859 }
8860 #[automatically_derived]
8861 #[doc(hidden)]
8862 impl ::core::convert::From<UnderlyingRustTuple<'_>> for upgradeToAndCallCall {
8863 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8864 Self {
8865 newImplementation: tuple.0,
8866 data: tuple.1,
8867 }
8868 }
8869 }
8870 }
8871 {
8872 #[doc(hidden)]
8873 type UnderlyingSolTuple<'a> = ();
8874 #[doc(hidden)]
8875 type UnderlyingRustTuple<'a> = ();
8876 #[cfg(test)]
8877 #[allow(dead_code, unreachable_patterns)]
8878 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8879 match _t {
8880 alloy_sol_types::private::AssertTypeEq::<
8881 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8882 >(_) => {},
8883 }
8884 }
8885 #[automatically_derived]
8886 #[doc(hidden)]
8887 impl ::core::convert::From<upgradeToAndCallReturn> for UnderlyingRustTuple<'_> {
8888 fn from(value: upgradeToAndCallReturn) -> Self {
8889 ()
8890 }
8891 }
8892 #[automatically_derived]
8893 #[doc(hidden)]
8894 impl ::core::convert::From<UnderlyingRustTuple<'_>> for upgradeToAndCallReturn {
8895 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8896 Self {}
8897 }
8898 }
8899 }
8900 #[automatically_derived]
8901 impl alloy_sol_types::SolCall for upgradeToAndCallCall {
8902 type Parameters<'a> = (
8903 alloy::sol_types::sol_data::Address,
8904 alloy::sol_types::sol_data::Bytes,
8905 );
8906 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8907 type Return = upgradeToAndCallReturn;
8908 type ReturnTuple<'a> = ();
8909 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8910 const SIGNATURE: &'static str = "upgradeToAndCall(address,bytes)";
8911 const SELECTOR: [u8; 4] = [79u8, 30u8, 242u8, 134u8];
8912 #[inline]
8913 fn new<'a>(
8914 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8915 ) -> Self {
8916 tuple.into()
8917 }
8918 #[inline]
8919 fn tokenize(&self) -> Self::Token<'_> {
8920 (
8921 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8922 &self.newImplementation,
8923 ),
8924 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
8925 &self.data,
8926 ),
8927 )
8928 }
8929 #[inline]
8930 fn abi_decode_returns(
8931 data: &[u8],
8932 validate: bool,
8933 ) -> alloy_sol_types::Result<Self::Return> {
8934 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8935 data, validate,
8936 )
8937 .map(Into::into)
8938 }
8939 }
8940 };
8941 #[derive()]
8943 pub enum LightClientCalls {
8944 #[allow(missing_docs)]
8945 UPGRADE_INTERFACE_VERSION(UPGRADE_INTERFACE_VERSIONCall),
8946 #[allow(missing_docs)]
8947 _getVk(_getVkCall),
8948 #[allow(missing_docs)]
8949 currentBlockNumber(currentBlockNumberCall),
8950 #[allow(missing_docs)]
8951 disablePermissionedProverMode(disablePermissionedProverModeCall),
8952 #[allow(missing_docs)]
8953 finalizedState(finalizedStateCall),
8954 #[allow(missing_docs)]
8955 genesisStakeTableState(genesisStakeTableStateCall),
8956 #[allow(missing_docs)]
8957 genesisState(genesisStateCall),
8958 #[allow(missing_docs)]
8959 getHotShotCommitment(getHotShotCommitmentCall),
8960 #[allow(missing_docs)]
8961 getStateHistoryCount(getStateHistoryCountCall),
8962 #[allow(missing_docs)]
8963 getVersion(getVersionCall),
8964 #[allow(missing_docs)]
8965 initialize(initializeCall),
8966 #[allow(missing_docs)]
8967 isPermissionedProverEnabled(isPermissionedProverEnabledCall),
8968 #[allow(missing_docs)]
8969 lagOverEscapeHatchThreshold(lagOverEscapeHatchThresholdCall),
8970 #[allow(missing_docs)]
8971 newFinalizedState(newFinalizedStateCall),
8972 #[allow(missing_docs)]
8973 owner(ownerCall),
8974 #[allow(missing_docs)]
8975 permissionedProver(permissionedProverCall),
8976 #[allow(missing_docs)]
8977 proxiableUUID(proxiableUUIDCall),
8978 #[allow(missing_docs)]
8979 renounceOwnership(renounceOwnershipCall),
8980 #[allow(missing_docs)]
8981 setPermissionedProver(setPermissionedProverCall),
8982 #[allow(missing_docs)]
8983 setstateHistoryRetentionPeriod(setstateHistoryRetentionPeriodCall),
8984 #[allow(missing_docs)]
8985 stateHistoryCommitments(stateHistoryCommitmentsCall),
8986 #[allow(missing_docs)]
8987 stateHistoryFirstIndex(stateHistoryFirstIndexCall),
8988 #[allow(missing_docs)]
8989 stateHistoryRetentionPeriod(stateHistoryRetentionPeriodCall),
8990 #[allow(missing_docs)]
8991 transferOwnership(transferOwnershipCall),
8992 #[allow(missing_docs)]
8993 upgradeToAndCall(upgradeToAndCallCall),
8994 }
8995 #[automatically_derived]
8996 impl LightClientCalls {
8997 pub const SELECTORS: &'static [[u8; 4usize]] = &[
9004 [1u8, 63u8, 165u8, 252u8],
9005 [2u8, 181u8, 146u8, 243u8],
9006 [13u8, 142u8, 110u8, 44u8],
9007 [18u8, 23u8, 60u8, 44u8],
9008 [32u8, 99u8, 212u8, 247u8],
9009 [47u8, 121u8, 136u8, 157u8],
9010 [49u8, 61u8, 247u8, 177u8],
9011 [55u8, 142u8, 194u8, 59u8],
9012 [66u8, 109u8, 49u8, 148u8],
9013 [79u8, 30u8, 242u8, 134u8],
9014 [82u8, 209u8, 144u8, 45u8],
9015 [105u8, 204u8, 106u8, 4u8],
9016 [113u8, 80u8, 24u8, 166u8],
9017 [130u8, 110u8, 65u8, 252u8],
9018 [133u8, 132u8, 210u8, 63u8],
9019 [141u8, 165u8, 203u8, 91u8],
9020 [150u8, 193u8, 202u8, 97u8],
9021 [155u8, 170u8, 60u8, 201u8],
9022 [159u8, 219u8, 84u8, 167u8],
9023 [173u8, 60u8, 177u8, 204u8],
9024 [194u8, 59u8, 158u8, 158u8],
9025 [210u8, 77u8, 147u8, 61u8],
9026 [224u8, 48u8, 51u8, 1u8],
9027 [242u8, 253u8, 227u8, 139u8],
9028 [249u8, 229u8, 13u8, 25u8],
9029 ];
9030 }
9031 #[automatically_derived]
9032 impl alloy_sol_types::SolInterface for LightClientCalls {
9033 const NAME: &'static str = "LightClientCalls";
9034 const MIN_DATA_LENGTH: usize = 0usize;
9035 const COUNT: usize = 25usize;
9036 #[inline]
9037 fn selector(&self) -> [u8; 4] {
9038 match self {
9039 Self::UPGRADE_INTERFACE_VERSION(_) => {
9040 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::SELECTOR
9041 },
9042 Self::_getVk(_) => <_getVkCall as alloy_sol_types::SolCall>::SELECTOR,
9043 Self::currentBlockNumber(_) => {
9044 <currentBlockNumberCall as alloy_sol_types::SolCall>::SELECTOR
9045 },
9046 Self::disablePermissionedProverMode(_) => {
9047 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::SELECTOR
9048 },
9049 Self::finalizedState(_) => {
9050 <finalizedStateCall as alloy_sol_types::SolCall>::SELECTOR
9051 },
9052 Self::genesisStakeTableState(_) => {
9053 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::SELECTOR
9054 },
9055 Self::genesisState(_) => <genesisStateCall as alloy_sol_types::SolCall>::SELECTOR,
9056 Self::getHotShotCommitment(_) => {
9057 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::SELECTOR
9058 },
9059 Self::getStateHistoryCount(_) => {
9060 <getStateHistoryCountCall as alloy_sol_types::SolCall>::SELECTOR
9061 },
9062 Self::getVersion(_) => <getVersionCall as alloy_sol_types::SolCall>::SELECTOR,
9063 Self::initialize(_) => <initializeCall as alloy_sol_types::SolCall>::SELECTOR,
9064 Self::isPermissionedProverEnabled(_) => {
9065 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::SELECTOR
9066 },
9067 Self::lagOverEscapeHatchThreshold(_) => {
9068 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::SELECTOR
9069 },
9070 Self::newFinalizedState(_) => {
9071 <newFinalizedStateCall as alloy_sol_types::SolCall>::SELECTOR
9072 },
9073 Self::owner(_) => <ownerCall as alloy_sol_types::SolCall>::SELECTOR,
9074 Self::permissionedProver(_) => {
9075 <permissionedProverCall as alloy_sol_types::SolCall>::SELECTOR
9076 },
9077 Self::proxiableUUID(_) => <proxiableUUIDCall as alloy_sol_types::SolCall>::SELECTOR,
9078 Self::renounceOwnership(_) => {
9079 <renounceOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
9080 },
9081 Self::setPermissionedProver(_) => {
9082 <setPermissionedProverCall as alloy_sol_types::SolCall>::SELECTOR
9083 },
9084 Self::setstateHistoryRetentionPeriod(_) => {
9085 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::SELECTOR
9086 },
9087 Self::stateHistoryCommitments(_) => {
9088 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::SELECTOR
9089 },
9090 Self::stateHistoryFirstIndex(_) => {
9091 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::SELECTOR
9092 },
9093 Self::stateHistoryRetentionPeriod(_) => {
9094 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::SELECTOR
9095 },
9096 Self::transferOwnership(_) => {
9097 <transferOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
9098 },
9099 Self::upgradeToAndCall(_) => {
9100 <upgradeToAndCallCall as alloy_sol_types::SolCall>::SELECTOR
9101 },
9102 }
9103 }
9104 #[inline]
9105 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
9106 Self::SELECTORS.get(i).copied()
9107 }
9108 #[inline]
9109 fn valid_selector(selector: [u8; 4]) -> bool {
9110 Self::SELECTORS.binary_search(&selector).is_ok()
9111 }
9112 #[inline]
9113 #[allow(non_snake_case)]
9114 fn abi_decode_raw(
9115 selector: [u8; 4],
9116 data: &[u8],
9117 validate: bool,
9118 ) -> alloy_sol_types::Result<Self> {
9119 static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result<LightClientCalls>] =
9120 &[
9121 {
9122 fn setPermissionedProver(
9123 data: &[u8],
9124 validate: bool,
9125 ) -> alloy_sol_types::Result<LightClientCalls> {
9126 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_decode_raw(
9127 data, validate,
9128 )
9129 .map(LightClientCalls::setPermissionedProver)
9130 }
9131 setPermissionedProver
9132 },
9133 {
9134 fn stateHistoryCommitments(
9135 data: &[u8],
9136 validate: bool,
9137 ) -> alloy_sol_types::Result<LightClientCalls> {
9138 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_decode_raw(
9139 data,
9140 validate,
9141 )
9142 .map(LightClientCalls::stateHistoryCommitments)
9143 }
9144 stateHistoryCommitments
9145 },
9146 {
9147 fn getVersion(
9148 data: &[u8],
9149 validate: bool,
9150 ) -> alloy_sol_types::Result<LightClientCalls> {
9151 <getVersionCall as alloy_sol_types::SolCall>::abi_decode_raw(
9152 data, validate,
9153 )
9154 .map(LightClientCalls::getVersion)
9155 }
9156 getVersion
9157 },
9158 {
9159 fn _getVk(
9160 data: &[u8],
9161 validate: bool,
9162 ) -> alloy_sol_types::Result<LightClientCalls> {
9163 <_getVkCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
9164 .map(LightClientCalls::_getVk)
9165 }
9166 _getVk
9167 },
9168 {
9169 fn newFinalizedState(
9170 data: &[u8],
9171 validate: bool,
9172 ) -> alloy_sol_types::Result<LightClientCalls> {
9173 <newFinalizedStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
9174 data, validate,
9175 )
9176 .map(LightClientCalls::newFinalizedState)
9177 }
9178 newFinalizedState
9179 },
9180 {
9181 fn stateHistoryFirstIndex(
9182 data: &[u8],
9183 validate: bool,
9184 ) -> alloy_sol_types::Result<LightClientCalls> {
9185 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_decode_raw(
9186 data,
9187 validate,
9188 )
9189 .map(LightClientCalls::stateHistoryFirstIndex)
9190 }
9191 stateHistoryFirstIndex
9192 },
9193 {
9194 fn permissionedProver(
9195 data: &[u8],
9196 validate: bool,
9197 ) -> alloy_sol_types::Result<LightClientCalls> {
9198 <permissionedProverCall as alloy_sol_types::SolCall>::abi_decode_raw(
9199 data, validate,
9200 )
9201 .map(LightClientCalls::permissionedProver)
9202 }
9203 permissionedProver
9204 },
9205 {
9206 fn currentBlockNumber(
9207 data: &[u8],
9208 validate: bool,
9209 ) -> alloy_sol_types::Result<LightClientCalls> {
9210 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_decode_raw(
9211 data, validate,
9212 )
9213 .map(LightClientCalls::currentBlockNumber)
9214 }
9215 currentBlockNumber
9216 },
9217 {
9218 fn genesisStakeTableState(
9219 data: &[u8],
9220 validate: bool,
9221 ) -> alloy_sol_types::Result<LightClientCalls> {
9222 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
9223 data,
9224 validate,
9225 )
9226 .map(LightClientCalls::genesisStakeTableState)
9227 }
9228 genesisStakeTableState
9229 },
9230 {
9231 fn upgradeToAndCall(
9232 data: &[u8],
9233 validate: bool,
9234 ) -> alloy_sol_types::Result<LightClientCalls> {
9235 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_decode_raw(
9236 data, validate,
9237 )
9238 .map(LightClientCalls::upgradeToAndCall)
9239 }
9240 upgradeToAndCall
9241 },
9242 {
9243 fn proxiableUUID(
9244 data: &[u8],
9245 validate: bool,
9246 ) -> alloy_sol_types::Result<LightClientCalls> {
9247 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_decode_raw(
9248 data, validate,
9249 )
9250 .map(LightClientCalls::proxiableUUID)
9251 }
9252 proxiableUUID
9253 },
9254 {
9255 fn disablePermissionedProverMode(
9256 data: &[u8],
9257 validate: bool,
9258 ) -> alloy_sol_types::Result<LightClientCalls> {
9259 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_decode_raw(
9260 data,
9261 validate,
9262 )
9263 .map(LightClientCalls::disablePermissionedProverMode)
9264 }
9265 disablePermissionedProverMode
9266 },
9267 {
9268 fn renounceOwnership(
9269 data: &[u8],
9270 validate: bool,
9271 ) -> alloy_sol_types::Result<LightClientCalls> {
9272 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
9273 data, validate,
9274 )
9275 .map(LightClientCalls::renounceOwnership)
9276 }
9277 renounceOwnership
9278 },
9279 {
9280 fn isPermissionedProverEnabled(
9281 data: &[u8],
9282 validate: bool,
9283 ) -> alloy_sol_types::Result<LightClientCalls> {
9284 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_decode_raw(
9285 data,
9286 validate,
9287 )
9288 .map(LightClientCalls::isPermissionedProverEnabled)
9289 }
9290 isPermissionedProverEnabled
9291 },
9292 {
9293 fn getHotShotCommitment(
9294 data: &[u8],
9295 validate: bool,
9296 ) -> alloy_sol_types::Result<LightClientCalls> {
9297 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_decode_raw(
9298 data, validate,
9299 )
9300 .map(LightClientCalls::getHotShotCommitment)
9301 }
9302 getHotShotCommitment
9303 },
9304 {
9305 fn owner(
9306 data: &[u8],
9307 validate: bool,
9308 ) -> alloy_sol_types::Result<LightClientCalls> {
9309 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
9310 .map(LightClientCalls::owner)
9311 }
9312 owner
9313 },
9314 {
9315 fn setstateHistoryRetentionPeriod(
9316 data: &[u8],
9317 validate: bool,
9318 ) -> alloy_sol_types::Result<LightClientCalls> {
9319 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
9320 data,
9321 validate,
9322 )
9323 .map(LightClientCalls::setstateHistoryRetentionPeriod)
9324 }
9325 setstateHistoryRetentionPeriod
9326 },
9327 {
9328 fn initialize(
9329 data: &[u8],
9330 validate: bool,
9331 ) -> alloy_sol_types::Result<LightClientCalls> {
9332 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw(
9333 data, validate,
9334 )
9335 .map(LightClientCalls::initialize)
9336 }
9337 initialize
9338 },
9339 {
9340 fn finalizedState(
9341 data: &[u8],
9342 validate: bool,
9343 ) -> alloy_sol_types::Result<LightClientCalls> {
9344 <finalizedStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
9345 data, validate,
9346 )
9347 .map(LightClientCalls::finalizedState)
9348 }
9349 finalizedState
9350 },
9351 {
9352 fn UPGRADE_INTERFACE_VERSION(
9353 data: &[u8],
9354 validate: bool,
9355 ) -> alloy_sol_types::Result<LightClientCalls> {
9356 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_decode_raw(
9357 data,
9358 validate,
9359 )
9360 .map(LightClientCalls::UPGRADE_INTERFACE_VERSION)
9361 }
9362 UPGRADE_INTERFACE_VERSION
9363 },
9364 {
9365 fn stateHistoryRetentionPeriod(
9366 data: &[u8],
9367 validate: bool,
9368 ) -> alloy_sol_types::Result<LightClientCalls> {
9369 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
9370 data,
9371 validate,
9372 )
9373 .map(LightClientCalls::stateHistoryRetentionPeriod)
9374 }
9375 stateHistoryRetentionPeriod
9376 },
9377 {
9378 fn genesisState(
9379 data: &[u8],
9380 validate: bool,
9381 ) -> alloy_sol_types::Result<LightClientCalls> {
9382 <genesisStateCall as alloy_sol_types::SolCall>::abi_decode_raw(
9383 data, validate,
9384 )
9385 .map(LightClientCalls::genesisState)
9386 }
9387 genesisState
9388 },
9389 {
9390 fn lagOverEscapeHatchThreshold(
9391 data: &[u8],
9392 validate: bool,
9393 ) -> alloy_sol_types::Result<LightClientCalls> {
9394 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_decode_raw(
9395 data,
9396 validate,
9397 )
9398 .map(LightClientCalls::lagOverEscapeHatchThreshold)
9399 }
9400 lagOverEscapeHatchThreshold
9401 },
9402 {
9403 fn transferOwnership(
9404 data: &[u8],
9405 validate: bool,
9406 ) -> alloy_sol_types::Result<LightClientCalls> {
9407 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
9408 data, validate,
9409 )
9410 .map(LightClientCalls::transferOwnership)
9411 }
9412 transferOwnership
9413 },
9414 {
9415 fn getStateHistoryCount(
9416 data: &[u8],
9417 validate: bool,
9418 ) -> alloy_sol_types::Result<LightClientCalls> {
9419 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_decode_raw(
9420 data, validate,
9421 )
9422 .map(LightClientCalls::getStateHistoryCount)
9423 }
9424 getStateHistoryCount
9425 },
9426 ];
9427 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
9428 return Err(alloy_sol_types::Error::unknown_selector(
9429 <Self as alloy_sol_types::SolInterface>::NAME,
9430 selector,
9431 ));
9432 };
9433 DECODE_SHIMS[idx](data, validate)
9434 }
9435 #[inline]
9436 fn abi_encoded_size(&self) -> usize {
9437 match self {
9438 Self::UPGRADE_INTERFACE_VERSION(inner) => {
9439 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encoded_size(
9440 inner,
9441 )
9442 }
9443 Self::_getVk(inner) => {
9444 <_getVkCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9445 }
9446 Self::currentBlockNumber(inner) => {
9447 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_encoded_size(
9448 inner,
9449 )
9450 }
9451 Self::disablePermissionedProverMode(inner) => {
9452 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_encoded_size(
9453 inner,
9454 )
9455 }
9456 Self::finalizedState(inner) => {
9457 <finalizedStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
9458 inner,
9459 )
9460 }
9461 Self::genesisStakeTableState(inner) => {
9462 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
9463 inner,
9464 )
9465 }
9466 Self::genesisState(inner) => {
9467 <genesisStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
9468 inner,
9469 )
9470 }
9471 Self::getHotShotCommitment(inner) => {
9472 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_encoded_size(
9473 inner,
9474 )
9475 }
9476 Self::getStateHistoryCount(inner) => {
9477 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_encoded_size(
9478 inner,
9479 )
9480 }
9481 Self::getVersion(inner) => {
9482 <getVersionCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9483 }
9484 Self::initialize(inner) => {
9485 <initializeCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9486 }
9487 Self::isPermissionedProverEnabled(inner) => {
9488 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_encoded_size(
9489 inner,
9490 )
9491 }
9492 Self::lagOverEscapeHatchThreshold(inner) => {
9493 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_encoded_size(
9494 inner,
9495 )
9496 }
9497 Self::newFinalizedState(inner) => {
9498 <newFinalizedStateCall as alloy_sol_types::SolCall>::abi_encoded_size(
9499 inner,
9500 )
9501 }
9502 Self::owner(inner) => {
9503 <ownerCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9504 }
9505 Self::permissionedProver(inner) => {
9506 <permissionedProverCall as alloy_sol_types::SolCall>::abi_encoded_size(
9507 inner,
9508 )
9509 }
9510 Self::proxiableUUID(inner) => {
9511 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encoded_size(
9512 inner,
9513 )
9514 }
9515 Self::renounceOwnership(inner) => {
9516 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
9517 inner,
9518 )
9519 }
9520 Self::setPermissionedProver(inner) => {
9521 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_encoded_size(
9522 inner,
9523 )
9524 }
9525 Self::setstateHistoryRetentionPeriod(inner) => {
9526 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(
9527 inner,
9528 )
9529 }
9530 Self::stateHistoryCommitments(inner) => {
9531 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_encoded_size(
9532 inner,
9533 )
9534 }
9535 Self::stateHistoryFirstIndex(inner) => {
9536 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_encoded_size(
9537 inner,
9538 )
9539 }
9540 Self::stateHistoryRetentionPeriod(inner) => {
9541 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(
9542 inner,
9543 )
9544 }
9545 Self::transferOwnership(inner) => {
9546 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
9547 inner,
9548 )
9549 }
9550 Self::upgradeToAndCall(inner) => {
9551 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encoded_size(
9552 inner,
9553 )
9554 }
9555 }
9556 }
9557 #[inline]
9558 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
9559 match self {
9560 Self::UPGRADE_INTERFACE_VERSION(inner) => {
9561 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encode_raw(
9562 inner, out,
9563 )
9564 },
9565 Self::_getVk(inner) => {
9566 <_getVkCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9567 },
9568 Self::currentBlockNumber(inner) => {
9569 <currentBlockNumberCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9570 },
9571 Self::disablePermissionedProverMode(inner) => {
9572 <disablePermissionedProverModeCall as alloy_sol_types::SolCall>::abi_encode_raw(
9573 inner, out,
9574 )
9575 },
9576 Self::finalizedState(inner) => {
9577 <finalizedStateCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9578 },
9579 Self::genesisStakeTableState(inner) => {
9580 <genesisStakeTableStateCall as alloy_sol_types::SolCall>::abi_encode_raw(
9581 inner, out,
9582 )
9583 },
9584 Self::genesisState(inner) => {
9585 <genesisStateCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9586 },
9587 Self::getHotShotCommitment(inner) => {
9588 <getHotShotCommitmentCall as alloy_sol_types::SolCall>::abi_encode_raw(
9589 inner, out,
9590 )
9591 },
9592 Self::getStateHistoryCount(inner) => {
9593 <getStateHistoryCountCall as alloy_sol_types::SolCall>::abi_encode_raw(
9594 inner, out,
9595 )
9596 },
9597 Self::getVersion(inner) => {
9598 <getVersionCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9599 },
9600 Self::initialize(inner) => {
9601 <initializeCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9602 },
9603 Self::isPermissionedProverEnabled(inner) => {
9604 <isPermissionedProverEnabledCall as alloy_sol_types::SolCall>::abi_encode_raw(
9605 inner, out,
9606 )
9607 },
9608 Self::lagOverEscapeHatchThreshold(inner) => {
9609 <lagOverEscapeHatchThresholdCall as alloy_sol_types::SolCall>::abi_encode_raw(
9610 inner, out,
9611 )
9612 },
9613 Self::newFinalizedState(inner) => {
9614 <newFinalizedStateCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9615 },
9616 Self::owner(inner) => {
9617 <ownerCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9618 },
9619 Self::permissionedProver(inner) => {
9620 <permissionedProverCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9621 },
9622 Self::proxiableUUID(inner) => {
9623 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9624 },
9625 Self::renounceOwnership(inner) => {
9626 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9627 },
9628 Self::setPermissionedProver(inner) => {
9629 <setPermissionedProverCall as alloy_sol_types::SolCall>::abi_encode_raw(
9630 inner, out,
9631 )
9632 },
9633 Self::setstateHistoryRetentionPeriod(inner) => {
9634 <setstateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(
9635 inner, out,
9636 )
9637 },
9638 Self::stateHistoryCommitments(inner) => {
9639 <stateHistoryCommitmentsCall as alloy_sol_types::SolCall>::abi_encode_raw(
9640 inner, out,
9641 )
9642 },
9643 Self::stateHistoryFirstIndex(inner) => {
9644 <stateHistoryFirstIndexCall as alloy_sol_types::SolCall>::abi_encode_raw(
9645 inner, out,
9646 )
9647 },
9648 Self::stateHistoryRetentionPeriod(inner) => {
9649 <stateHistoryRetentionPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(
9650 inner, out,
9651 )
9652 },
9653 Self::transferOwnership(inner) => {
9654 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9655 },
9656 Self::upgradeToAndCall(inner) => {
9657 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9658 },
9659 }
9660 }
9661 }
9662 #[derive(Debug, PartialEq, Eq, Hash)]
9664 pub enum LightClientErrors {
9665 #[allow(missing_docs)]
9666 AddressEmptyCode(AddressEmptyCode),
9667 #[allow(missing_docs)]
9668 ERC1967InvalidImplementation(ERC1967InvalidImplementation),
9669 #[allow(missing_docs)]
9670 ERC1967NonPayable(ERC1967NonPayable),
9671 #[allow(missing_docs)]
9672 FailedInnerCall(FailedInnerCall),
9673 #[allow(missing_docs)]
9674 InsufficientSnapshotHistory(InsufficientSnapshotHistory),
9675 #[allow(missing_docs)]
9676 InvalidAddress(InvalidAddress),
9677 #[allow(missing_docs)]
9678 InvalidArgs(InvalidArgs),
9679 #[allow(missing_docs)]
9680 InvalidHotShotBlockForCommitmentCheck(InvalidHotShotBlockForCommitmentCheck),
9681 #[allow(missing_docs)]
9682 InvalidInitialization(InvalidInitialization),
9683 #[allow(missing_docs)]
9684 InvalidMaxStateHistory(InvalidMaxStateHistory),
9685 #[allow(missing_docs)]
9686 InvalidProof(InvalidProof),
9687 #[allow(missing_docs)]
9688 NoChangeRequired(NoChangeRequired),
9689 #[allow(missing_docs)]
9690 NotInitializing(NotInitializing),
9691 #[allow(missing_docs)]
9692 OutdatedState(OutdatedState),
9693 #[allow(missing_docs)]
9694 OwnableInvalidOwner(OwnableInvalidOwner),
9695 #[allow(missing_docs)]
9696 OwnableUnauthorizedAccount(OwnableUnauthorizedAccount),
9697 #[allow(missing_docs)]
9698 ProverNotPermissioned(ProverNotPermissioned),
9699 #[allow(missing_docs)]
9700 UUPSUnauthorizedCallContext(UUPSUnauthorizedCallContext),
9701 #[allow(missing_docs)]
9702 UUPSUnsupportedProxiableUUID(UUPSUnsupportedProxiableUUID),
9703 #[allow(missing_docs)]
9704 WrongStakeTableUsed(WrongStakeTableUsed),
9705 }
9706 #[automatically_derived]
9707 impl LightClientErrors {
9708 pub const SELECTORS: &'static [[u8; 4usize]] = &[
9715 [5u8, 28u8, 70u8, 239u8],
9716 [9u8, 189u8, 227u8, 57u8],
9717 [17u8, 140u8, 218u8, 167u8],
9718 [20u8, 37u8, 234u8, 66u8],
9719 [30u8, 79u8, 189u8, 247u8],
9720 [76u8, 156u8, 140u8, 227u8],
9721 [81u8, 97u8, 128u8, 137u8],
9722 [97u8, 90u8, 146u8, 100u8],
9723 [153u8, 150u8, 179u8, 21u8],
9724 [161u8, 186u8, 7u8, 238u8],
9725 [163u8, 166u8, 71u8, 128u8],
9726 [168u8, 99u8, 174u8, 201u8],
9727 [170u8, 29u8, 73u8, 164u8],
9728 [176u8, 180u8, 56u8, 119u8],
9729 [179u8, 152u8, 151u8, 159u8],
9730 [215u8, 230u8, 188u8, 248u8],
9731 [224u8, 124u8, 141u8, 186u8],
9732 [230u8, 196u8, 36u8, 123u8],
9733 [244u8, 160u8, 238u8, 224u8],
9734 [249u8, 46u8, 232u8, 169u8],
9735 ];
9736 }
9737 #[automatically_derived]
9738 impl alloy_sol_types::SolInterface for LightClientErrors {
9739 const NAME: &'static str = "LightClientErrors";
9740 const MIN_DATA_LENGTH: usize = 0usize;
9741 const COUNT: usize = 20usize;
9742 #[inline]
9743 fn selector(&self) -> [u8; 4] {
9744 match self {
9745 Self::AddressEmptyCode(_) => {
9746 <AddressEmptyCode as alloy_sol_types::SolError>::SELECTOR
9747 },
9748 Self::ERC1967InvalidImplementation(_) => {
9749 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::SELECTOR
9750 },
9751 Self::ERC1967NonPayable(_) => {
9752 <ERC1967NonPayable as alloy_sol_types::SolError>::SELECTOR
9753 },
9754 Self::FailedInnerCall(_) => {
9755 <FailedInnerCall as alloy_sol_types::SolError>::SELECTOR
9756 },
9757 Self::InsufficientSnapshotHistory(_) => {
9758 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::SELECTOR
9759 },
9760 Self::InvalidAddress(_) => <InvalidAddress as alloy_sol_types::SolError>::SELECTOR,
9761 Self::InvalidArgs(_) => <InvalidArgs as alloy_sol_types::SolError>::SELECTOR,
9762 Self::InvalidHotShotBlockForCommitmentCheck(_) => {
9763 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::SELECTOR
9764 },
9765 Self::InvalidInitialization(_) => {
9766 <InvalidInitialization as alloy_sol_types::SolError>::SELECTOR
9767 },
9768 Self::InvalidMaxStateHistory(_) => {
9769 <InvalidMaxStateHistory as alloy_sol_types::SolError>::SELECTOR
9770 },
9771 Self::InvalidProof(_) => <InvalidProof as alloy_sol_types::SolError>::SELECTOR,
9772 Self::NoChangeRequired(_) => {
9773 <NoChangeRequired as alloy_sol_types::SolError>::SELECTOR
9774 },
9775 Self::NotInitializing(_) => {
9776 <NotInitializing as alloy_sol_types::SolError>::SELECTOR
9777 },
9778 Self::OutdatedState(_) => <OutdatedState as alloy_sol_types::SolError>::SELECTOR,
9779 Self::OwnableInvalidOwner(_) => {
9780 <OwnableInvalidOwner as alloy_sol_types::SolError>::SELECTOR
9781 },
9782 Self::OwnableUnauthorizedAccount(_) => {
9783 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::SELECTOR
9784 },
9785 Self::ProverNotPermissioned(_) => {
9786 <ProverNotPermissioned as alloy_sol_types::SolError>::SELECTOR
9787 },
9788 Self::UUPSUnauthorizedCallContext(_) => {
9789 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::SELECTOR
9790 },
9791 Self::UUPSUnsupportedProxiableUUID(_) => {
9792 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::SELECTOR
9793 },
9794 Self::WrongStakeTableUsed(_) => {
9795 <WrongStakeTableUsed as alloy_sol_types::SolError>::SELECTOR
9796 },
9797 }
9798 }
9799 #[inline]
9800 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
9801 Self::SELECTORS.get(i).copied()
9802 }
9803 #[inline]
9804 fn valid_selector(selector: [u8; 4]) -> bool {
9805 Self::SELECTORS.binary_search(&selector).is_ok()
9806 }
9807 #[inline]
9808 #[allow(non_snake_case)]
9809 fn abi_decode_raw(
9810 selector: [u8; 4],
9811 data: &[u8],
9812 validate: bool,
9813 ) -> alloy_sol_types::Result<Self> {
9814 static DECODE_SHIMS: &[fn(
9815 &[u8],
9816 bool,
9817 )
9818 -> alloy_sol_types::Result<LightClientErrors>] = &[
9819 {
9820 fn OutdatedState(
9821 data: &[u8],
9822 validate: bool,
9823 ) -> alloy_sol_types::Result<LightClientErrors> {
9824 <OutdatedState as alloy_sol_types::SolError>::abi_decode_raw(data, validate)
9825 .map(LightClientErrors::OutdatedState)
9826 }
9827 OutdatedState
9828 },
9829 {
9830 fn InvalidProof(
9831 data: &[u8],
9832 validate: bool,
9833 ) -> alloy_sol_types::Result<LightClientErrors> {
9834 <InvalidProof as alloy_sol_types::SolError>::abi_decode_raw(data, validate)
9835 .map(LightClientErrors::InvalidProof)
9836 }
9837 InvalidProof
9838 },
9839 {
9840 fn OwnableUnauthorizedAccount(
9841 data: &[u8],
9842 validate: bool,
9843 ) -> alloy_sol_types::Result<LightClientErrors> {
9844 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_decode_raw(
9845 data, validate,
9846 )
9847 .map(LightClientErrors::OwnableUnauthorizedAccount)
9848 }
9849 OwnableUnauthorizedAccount
9850 },
9851 {
9852 fn FailedInnerCall(
9853 data: &[u8],
9854 validate: bool,
9855 ) -> alloy_sol_types::Result<LightClientErrors> {
9856 <FailedInnerCall as alloy_sol_types::SolError>::abi_decode_raw(
9857 data, validate,
9858 )
9859 .map(LightClientErrors::FailedInnerCall)
9860 }
9861 FailedInnerCall
9862 },
9863 {
9864 fn OwnableInvalidOwner(
9865 data: &[u8],
9866 validate: bool,
9867 ) -> alloy_sol_types::Result<LightClientErrors> {
9868 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_decode_raw(
9869 data, validate,
9870 )
9871 .map(LightClientErrors::OwnableInvalidOwner)
9872 }
9873 OwnableInvalidOwner
9874 },
9875 {
9876 fn ERC1967InvalidImplementation(
9877 data: &[u8],
9878 validate: bool,
9879 ) -> alloy_sol_types::Result<LightClientErrors> {
9880 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_decode_raw(
9881 data, validate,
9882 )
9883 .map(LightClientErrors::ERC1967InvalidImplementation)
9884 }
9885 ERC1967InvalidImplementation
9886 },
9887 {
9888 fn WrongStakeTableUsed(
9889 data: &[u8],
9890 validate: bool,
9891 ) -> alloy_sol_types::Result<LightClientErrors> {
9892 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_decode_raw(
9893 data, validate,
9894 )
9895 .map(LightClientErrors::WrongStakeTableUsed)
9896 }
9897 WrongStakeTableUsed
9898 },
9899 {
9900 fn InvalidHotShotBlockForCommitmentCheck(
9901 data: &[u8],
9902 validate: bool,
9903 ) -> alloy_sol_types::Result<LightClientErrors> {
9904 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_decode_raw(
9905 data,
9906 validate,
9907 )
9908 .map(
9909 LightClientErrors::InvalidHotShotBlockForCommitmentCheck,
9910 )
9911 }
9912 InvalidHotShotBlockForCommitmentCheck
9913 },
9914 {
9915 fn AddressEmptyCode(
9916 data: &[u8],
9917 validate: bool,
9918 ) -> alloy_sol_types::Result<LightClientErrors> {
9919 <AddressEmptyCode as alloy_sol_types::SolError>::abi_decode_raw(
9920 data, validate,
9921 )
9922 .map(LightClientErrors::AddressEmptyCode)
9923 }
9924 AddressEmptyCode
9925 },
9926 {
9927 fn InvalidArgs(
9928 data: &[u8],
9929 validate: bool,
9930 ) -> alloy_sol_types::Result<LightClientErrors> {
9931 <InvalidArgs as alloy_sol_types::SolError>::abi_decode_raw(data, validate)
9932 .map(LightClientErrors::InvalidArgs)
9933 }
9934 InvalidArgs
9935 },
9936 {
9937 fn ProverNotPermissioned(
9938 data: &[u8],
9939 validate: bool,
9940 ) -> alloy_sol_types::Result<LightClientErrors> {
9941 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_decode_raw(
9942 data, validate,
9943 )
9944 .map(LightClientErrors::ProverNotPermissioned)
9945 }
9946 ProverNotPermissioned
9947 },
9948 {
9949 fn NoChangeRequired(
9950 data: &[u8],
9951 validate: bool,
9952 ) -> alloy_sol_types::Result<LightClientErrors> {
9953 <NoChangeRequired as alloy_sol_types::SolError>::abi_decode_raw(
9954 data, validate,
9955 )
9956 .map(LightClientErrors::NoChangeRequired)
9957 }
9958 NoChangeRequired
9959 },
9960 {
9961 fn UUPSUnsupportedProxiableUUID(
9962 data: &[u8],
9963 validate: bool,
9964 ) -> alloy_sol_types::Result<LightClientErrors> {
9965 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_decode_raw(
9966 data, validate,
9967 )
9968 .map(LightClientErrors::UUPSUnsupportedProxiableUUID)
9969 }
9970 UUPSUnsupportedProxiableUUID
9971 },
9972 {
9973 fn InsufficientSnapshotHistory(
9974 data: &[u8],
9975 validate: bool,
9976 ) -> alloy_sol_types::Result<LightClientErrors> {
9977 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_decode_raw(
9978 data, validate,
9979 )
9980 .map(LightClientErrors::InsufficientSnapshotHistory)
9981 }
9982 InsufficientSnapshotHistory
9983 },
9984 {
9985 fn ERC1967NonPayable(
9986 data: &[u8],
9987 validate: bool,
9988 ) -> alloy_sol_types::Result<LightClientErrors> {
9989 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_decode_raw(
9990 data, validate,
9991 )
9992 .map(LightClientErrors::ERC1967NonPayable)
9993 }
9994 ERC1967NonPayable
9995 },
9996 {
9997 fn NotInitializing(
9998 data: &[u8],
9999 validate: bool,
10000 ) -> alloy_sol_types::Result<LightClientErrors> {
10001 <NotInitializing as alloy_sol_types::SolError>::abi_decode_raw(
10002 data, validate,
10003 )
10004 .map(LightClientErrors::NotInitializing)
10005 }
10006 NotInitializing
10007 },
10008 {
10009 fn UUPSUnauthorizedCallContext(
10010 data: &[u8],
10011 validate: bool,
10012 ) -> alloy_sol_types::Result<LightClientErrors> {
10013 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_decode_raw(
10014 data, validate,
10015 )
10016 .map(LightClientErrors::UUPSUnauthorizedCallContext)
10017 }
10018 UUPSUnauthorizedCallContext
10019 },
10020 {
10021 fn InvalidAddress(
10022 data: &[u8],
10023 validate: bool,
10024 ) -> alloy_sol_types::Result<LightClientErrors> {
10025 <InvalidAddress as alloy_sol_types::SolError>::abi_decode_raw(
10026 data, validate,
10027 )
10028 .map(LightClientErrors::InvalidAddress)
10029 }
10030 InvalidAddress
10031 },
10032 {
10033 fn InvalidMaxStateHistory(
10034 data: &[u8],
10035 validate: bool,
10036 ) -> alloy_sol_types::Result<LightClientErrors> {
10037 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_decode_raw(
10038 data, validate,
10039 )
10040 .map(LightClientErrors::InvalidMaxStateHistory)
10041 }
10042 InvalidMaxStateHistory
10043 },
10044 {
10045 fn InvalidInitialization(
10046 data: &[u8],
10047 validate: bool,
10048 ) -> alloy_sol_types::Result<LightClientErrors> {
10049 <InvalidInitialization as alloy_sol_types::SolError>::abi_decode_raw(
10050 data, validate,
10051 )
10052 .map(LightClientErrors::InvalidInitialization)
10053 }
10054 InvalidInitialization
10055 },
10056 ];
10057 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
10058 return Err(alloy_sol_types::Error::unknown_selector(
10059 <Self as alloy_sol_types::SolInterface>::NAME,
10060 selector,
10061 ));
10062 };
10063 DECODE_SHIMS[idx](data, validate)
10064 }
10065 #[inline]
10066 fn abi_encoded_size(&self) -> usize {
10067 match self {
10068 Self::AddressEmptyCode(inner) => {
10069 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encoded_size(
10070 inner,
10071 )
10072 }
10073 Self::ERC1967InvalidImplementation(inner) => {
10074 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encoded_size(
10075 inner,
10076 )
10077 }
10078 Self::ERC1967NonPayable(inner) => {
10079 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encoded_size(
10080 inner,
10081 )
10082 }
10083 Self::FailedInnerCall(inner) => {
10084 <FailedInnerCall as alloy_sol_types::SolError>::abi_encoded_size(
10085 inner,
10086 )
10087 }
10088 Self::InsufficientSnapshotHistory(inner) => {
10089 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_encoded_size(
10090 inner,
10091 )
10092 }
10093 Self::InvalidAddress(inner) => {
10094 <InvalidAddress as alloy_sol_types::SolError>::abi_encoded_size(
10095 inner,
10096 )
10097 }
10098 Self::InvalidArgs(inner) => {
10099 <InvalidArgs as alloy_sol_types::SolError>::abi_encoded_size(inner)
10100 }
10101 Self::InvalidHotShotBlockForCommitmentCheck(inner) => {
10102 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_encoded_size(
10103 inner,
10104 )
10105 }
10106 Self::InvalidInitialization(inner) => {
10107 <InvalidInitialization as alloy_sol_types::SolError>::abi_encoded_size(
10108 inner,
10109 )
10110 }
10111 Self::InvalidMaxStateHistory(inner) => {
10112 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_encoded_size(
10113 inner,
10114 )
10115 }
10116 Self::InvalidProof(inner) => {
10117 <InvalidProof as alloy_sol_types::SolError>::abi_encoded_size(inner)
10118 }
10119 Self::NoChangeRequired(inner) => {
10120 <NoChangeRequired as alloy_sol_types::SolError>::abi_encoded_size(
10121 inner,
10122 )
10123 }
10124 Self::NotInitializing(inner) => {
10125 <NotInitializing as alloy_sol_types::SolError>::abi_encoded_size(
10126 inner,
10127 )
10128 }
10129 Self::OutdatedState(inner) => {
10130 <OutdatedState as alloy_sol_types::SolError>::abi_encoded_size(inner)
10131 }
10132 Self::OwnableInvalidOwner(inner) => {
10133 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encoded_size(
10134 inner,
10135 )
10136 }
10137 Self::OwnableUnauthorizedAccount(inner) => {
10138 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encoded_size(
10139 inner,
10140 )
10141 }
10142 Self::ProverNotPermissioned(inner) => {
10143 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_encoded_size(
10144 inner,
10145 )
10146 }
10147 Self::UUPSUnauthorizedCallContext(inner) => {
10148 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encoded_size(
10149 inner,
10150 )
10151 }
10152 Self::UUPSUnsupportedProxiableUUID(inner) => {
10153 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encoded_size(
10154 inner,
10155 )
10156 }
10157 Self::WrongStakeTableUsed(inner) => {
10158 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_encoded_size(
10159 inner,
10160 )
10161 }
10162 }
10163 }
10164 #[inline]
10165 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
10166 match self {
10167 Self::AddressEmptyCode(inner) => {
10168 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encode_raw(
10169 inner,
10170 out,
10171 )
10172 }
10173 Self::ERC1967InvalidImplementation(inner) => {
10174 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encode_raw(
10175 inner,
10176 out,
10177 )
10178 }
10179 Self::ERC1967NonPayable(inner) => {
10180 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encode_raw(
10181 inner,
10182 out,
10183 )
10184 }
10185 Self::FailedInnerCall(inner) => {
10186 <FailedInnerCall as alloy_sol_types::SolError>::abi_encode_raw(
10187 inner,
10188 out,
10189 )
10190 }
10191 Self::InsufficientSnapshotHistory(inner) => {
10192 <InsufficientSnapshotHistory as alloy_sol_types::SolError>::abi_encode_raw(
10193 inner,
10194 out,
10195 )
10196 }
10197 Self::InvalidAddress(inner) => {
10198 <InvalidAddress as alloy_sol_types::SolError>::abi_encode_raw(
10199 inner,
10200 out,
10201 )
10202 }
10203 Self::InvalidArgs(inner) => {
10204 <InvalidArgs as alloy_sol_types::SolError>::abi_encode_raw(
10205 inner,
10206 out,
10207 )
10208 }
10209 Self::InvalidHotShotBlockForCommitmentCheck(inner) => {
10210 <InvalidHotShotBlockForCommitmentCheck as alloy_sol_types::SolError>::abi_encode_raw(
10211 inner,
10212 out,
10213 )
10214 }
10215 Self::InvalidInitialization(inner) => {
10216 <InvalidInitialization as alloy_sol_types::SolError>::abi_encode_raw(
10217 inner,
10218 out,
10219 )
10220 }
10221 Self::InvalidMaxStateHistory(inner) => {
10222 <InvalidMaxStateHistory as alloy_sol_types::SolError>::abi_encode_raw(
10223 inner,
10224 out,
10225 )
10226 }
10227 Self::InvalidProof(inner) => {
10228 <InvalidProof as alloy_sol_types::SolError>::abi_encode_raw(
10229 inner,
10230 out,
10231 )
10232 }
10233 Self::NoChangeRequired(inner) => {
10234 <NoChangeRequired as alloy_sol_types::SolError>::abi_encode_raw(
10235 inner,
10236 out,
10237 )
10238 }
10239 Self::NotInitializing(inner) => {
10240 <NotInitializing as alloy_sol_types::SolError>::abi_encode_raw(
10241 inner,
10242 out,
10243 )
10244 }
10245 Self::OutdatedState(inner) => {
10246 <OutdatedState as alloy_sol_types::SolError>::abi_encode_raw(
10247 inner,
10248 out,
10249 )
10250 }
10251 Self::OwnableInvalidOwner(inner) => {
10252 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encode_raw(
10253 inner,
10254 out,
10255 )
10256 }
10257 Self::OwnableUnauthorizedAccount(inner) => {
10258 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encode_raw(
10259 inner,
10260 out,
10261 )
10262 }
10263 Self::ProverNotPermissioned(inner) => {
10264 <ProverNotPermissioned as alloy_sol_types::SolError>::abi_encode_raw(
10265 inner,
10266 out,
10267 )
10268 }
10269 Self::UUPSUnauthorizedCallContext(inner) => {
10270 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encode_raw(
10271 inner,
10272 out,
10273 )
10274 }
10275 Self::UUPSUnsupportedProxiableUUID(inner) => {
10276 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encode_raw(
10277 inner,
10278 out,
10279 )
10280 }
10281 Self::WrongStakeTableUsed(inner) => {
10282 <WrongStakeTableUsed as alloy_sol_types::SolError>::abi_encode_raw(
10283 inner,
10284 out,
10285 )
10286 }
10287 }
10288 }
10289 }
10290 #[derive(Debug, PartialEq, Eq, Hash)]
10292 pub enum LightClientEvents {
10293 #[allow(missing_docs)]
10294 Initialized(Initialized),
10295 #[allow(missing_docs)]
10296 NewState(NewState),
10297 #[allow(missing_docs)]
10298 OwnershipTransferred(OwnershipTransferred),
10299 #[allow(missing_docs)]
10300 PermissionedProverNotRequired(PermissionedProverNotRequired),
10301 #[allow(missing_docs)]
10302 PermissionedProverRequired(PermissionedProverRequired),
10303 #[allow(missing_docs)]
10304 Upgrade(Upgrade),
10305 #[allow(missing_docs)]
10306 Upgraded(Upgraded),
10307 }
10308 #[automatically_derived]
10309 impl LightClientEvents {
10310 pub const SELECTORS: &'static [[u8; 32usize]] = &[
10317 [
10318 128u8, 23u8, 187u8, 136u8, 127u8, 223u8, 143u8, 202u8, 67u8, 20u8, 169u8, 212u8,
10319 15u8, 110u8, 115u8, 179u8, 184u8, 16u8, 2u8, 214u8, 126u8, 92u8, 250u8, 133u8,
10320 216u8, 129u8, 115u8, 175u8, 106u8, 164u8, 96u8, 114u8,
10321 ],
10322 [
10323 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, 208u8,
10324 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, 175u8, 227u8,
10325 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
10326 ],
10327 [
10328 154u8, 95u8, 87u8, 222u8, 133u8, 109u8, 214u8, 104u8, 197u8, 77u8, 217u8, 94u8,
10329 92u8, 85u8, 223u8, 147u8, 67u8, 33u8, 113u8, 203u8, 202u8, 73u8, 168u8, 119u8,
10330 109u8, 86u8, 32u8, 234u8, 89u8, 192u8, 36u8, 80u8,
10331 ],
10332 [
10333 160u8, 74u8, 119u8, 57u8, 36u8, 80u8, 90u8, 65u8, 133u8, 100u8, 54u8, 55u8, 37u8,
10334 245u8, 104u8, 50u8, 245u8, 119u8, 46u8, 107u8, 141u8, 13u8, 189u8, 110u8, 252u8,
10335 231u8, 36u8, 223u8, 232u8, 3u8, 218u8, 230u8,
10336 ],
10337 [
10338 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8, 179u8,
10339 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8, 12u8, 192u8, 34u8,
10340 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
10341 ],
10342 [
10343 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8, 19u8,
10344 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8, 33u8, 238u8,
10345 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
10346 ],
10347 [
10348 247u8, 135u8, 33u8, 34u8, 110u8, 254u8, 154u8, 27u8, 182u8, 120u8, 24u8, 154u8,
10349 22u8, 209u8, 85u8, 73u8, 40u8, 185u8, 242u8, 25u8, 46u8, 44u8, 185u8, 62u8, 237u8,
10350 168u8, 59u8, 121u8, 250u8, 64u8, 0u8, 125u8,
10351 ],
10352 ];
10353 }
10354 #[automatically_derived]
10355 impl alloy_sol_types::SolEventInterface for LightClientEvents {
10356 const NAME: &'static str = "LightClientEvents";
10357 const COUNT: usize = 7usize;
10358 fn decode_raw_log(
10359 topics: &[alloy_sol_types::Word],
10360 data: &[u8],
10361 validate: bool,
10362 ) -> alloy_sol_types::Result<Self> {
10363 match topics.first().copied() {
10364 Some(<Initialized as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10365 <Initialized as alloy_sol_types::SolEvent>::decode_raw_log(
10366 topics, data, validate,
10367 )
10368 .map(Self::Initialized)
10369 },
10370 Some(<NewState as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10371 <NewState as alloy_sol_types::SolEvent>::decode_raw_log(topics, data, validate)
10372 .map(Self::NewState)
10373 },
10374 Some(<OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10375 <OwnershipTransferred as alloy_sol_types::SolEvent>::decode_raw_log(
10376 topics, data, validate,
10377 )
10378 .map(Self::OwnershipTransferred)
10379 },
10380 Some(
10381 <PermissionedProverNotRequired as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10382 ) => <PermissionedProverNotRequired as alloy_sol_types::SolEvent>::decode_raw_log(
10383 topics, data, validate,
10384 )
10385 .map(Self::PermissionedProverNotRequired),
10386 Some(<PermissionedProverRequired as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10387 <PermissionedProverRequired as alloy_sol_types::SolEvent>::decode_raw_log(
10388 topics, data, validate,
10389 )
10390 .map(Self::PermissionedProverRequired)
10391 },
10392 Some(<Upgrade as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10393 <Upgrade as alloy_sol_types::SolEvent>::decode_raw_log(topics, data, validate)
10394 .map(Self::Upgrade)
10395 },
10396 Some(<Upgraded as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10397 <Upgraded as alloy_sol_types::SolEvent>::decode_raw_log(topics, data, validate)
10398 .map(Self::Upgraded)
10399 },
10400 _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
10401 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
10402 log: alloy_sol_types::private::Box::new(
10403 alloy_sol_types::private::LogData::new_unchecked(
10404 topics.to_vec(),
10405 data.to_vec().into(),
10406 ),
10407 ),
10408 }),
10409 }
10410 }
10411 }
10412 #[automatically_derived]
10413 impl alloy_sol_types::private::IntoLogData for LightClientEvents {
10414 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
10415 match self {
10416 Self::Initialized(inner) => {
10417 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10418 },
10419 Self::NewState(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
10420 Self::OwnershipTransferred(inner) => {
10421 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10422 },
10423 Self::PermissionedProverNotRequired(inner) => {
10424 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10425 },
10426 Self::PermissionedProverRequired(inner) => {
10427 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10428 },
10429 Self::Upgrade(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
10430 Self::Upgraded(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
10431 }
10432 }
10433 fn into_log_data(self) -> alloy_sol_types::private::LogData {
10434 match self {
10435 Self::Initialized(inner) => {
10436 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10437 },
10438 Self::NewState(inner) => {
10439 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10440 },
10441 Self::OwnershipTransferred(inner) => {
10442 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10443 },
10444 Self::PermissionedProverNotRequired(inner) => {
10445 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10446 },
10447 Self::PermissionedProverRequired(inner) => {
10448 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10449 },
10450 Self::Upgrade(inner) => alloy_sol_types::private::IntoLogData::into_log_data(inner),
10451 Self::Upgraded(inner) => {
10452 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10453 },
10454 }
10455 }
10456 }
10457 use alloy::contract as alloy_contract;
10458 #[inline]
10462 pub const fn new<
10463 T: alloy_contract::private::Transport + ::core::clone::Clone,
10464 P: alloy_contract::private::Provider<T, N>,
10465 N: alloy_contract::private::Network,
10466 >(
10467 address: alloy_sol_types::private::Address,
10468 provider: P,
10469 ) -> LightClientInstance<T, P, N> {
10470 LightClientInstance::<T, P, N>::new(address, provider)
10471 }
10472 #[inline]
10478 pub fn deploy<
10479 T: alloy_contract::private::Transport + ::core::clone::Clone,
10480 P: alloy_contract::private::Provider<T, N>,
10481 N: alloy_contract::private::Network,
10482 >(
10483 provider: P,
10484 ) -> impl ::core::future::Future<Output = alloy_contract::Result<LightClientInstance<T, P, N>>>
10485 {
10486 LightClientInstance::<T, P, N>::deploy(provider)
10487 }
10488 #[inline]
10494 pub fn deploy_builder<
10495 T: alloy_contract::private::Transport + ::core::clone::Clone,
10496 P: alloy_contract::private::Provider<T, N>,
10497 N: alloy_contract::private::Network,
10498 >(
10499 provider: P,
10500 ) -> alloy_contract::RawCallBuilder<T, P, N> {
10501 LightClientInstance::<T, P, N>::deploy_builder(provider)
10502 }
10503 #[derive(Clone)]
10515 pub struct LightClientInstance<T, P, N = alloy_contract::private::Ethereum> {
10516 address: alloy_sol_types::private::Address,
10517 provider: P,
10518 _network_transport: ::core::marker::PhantomData<(N, T)>,
10519 }
10520 #[automatically_derived]
10521 impl<T, P, N> ::core::fmt::Debug for LightClientInstance<T, P, N> {
10522 #[inline]
10523 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10524 f.debug_tuple("LightClientInstance")
10525 .field(&self.address)
10526 .finish()
10527 }
10528 }
10529 #[automatically_derived]
10531 impl<
10532 T: alloy_contract::private::Transport + ::core::clone::Clone,
10533 P: alloy_contract::private::Provider<T, N>,
10534 N: alloy_contract::private::Network,
10535 > LightClientInstance<T, P, N>
10536 {
10537 #[inline]
10541 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
10542 Self {
10543 address,
10544 provider,
10545 _network_transport: ::core::marker::PhantomData,
10546 }
10547 }
10548 #[inline]
10554 pub async fn deploy(provider: P) -> alloy_contract::Result<LightClientInstance<T, P, N>> {
10555 let call_builder = Self::deploy_builder(provider);
10556 let contract_address = call_builder.deploy().await?;
10557 Ok(Self::new(contract_address, call_builder.provider))
10558 }
10559 #[inline]
10565 pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder<T, P, N> {
10566 alloy_contract::RawCallBuilder::new_raw_deploy(
10567 provider,
10568 ::core::clone::Clone::clone(&BYTECODE),
10569 )
10570 }
10571 #[inline]
10573 pub const fn address(&self) -> &alloy_sol_types::private::Address {
10574 &self.address
10575 }
10576 #[inline]
10578 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
10579 self.address = address;
10580 }
10581 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
10583 self.set_address(address);
10584 self
10585 }
10586 #[inline]
10588 pub const fn provider(&self) -> &P {
10589 &self.provider
10590 }
10591 }
10592 impl<T, P: ::core::clone::Clone, N> LightClientInstance<T, &P, N> {
10593 #[inline]
10595 pub fn with_cloned_provider(self) -> LightClientInstance<T, P, N> {
10596 LightClientInstance {
10597 address: self.address,
10598 provider: ::core::clone::Clone::clone(&self.provider),
10599 _network_transport: ::core::marker::PhantomData,
10600 }
10601 }
10602 }
10603 #[automatically_derived]
10605 impl<
10606 T: alloy_contract::private::Transport + ::core::clone::Clone,
10607 P: alloy_contract::private::Provider<T, N>,
10608 N: alloy_contract::private::Network,
10609 > LightClientInstance<T, P, N>
10610 {
10611 pub fn call_builder<C: alloy_sol_types::SolCall>(
10616 &self,
10617 call: &C,
10618 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
10619 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
10620 }
10621 pub fn UPGRADE_INTERFACE_VERSION(
10623 &self,
10624 ) -> alloy_contract::SolCallBuilder<T, &P, UPGRADE_INTERFACE_VERSIONCall, N> {
10625 self.call_builder(&UPGRADE_INTERFACE_VERSIONCall {})
10626 }
10627 pub fn _getVk(&self) -> alloy_contract::SolCallBuilder<T, &P, _getVkCall, N> {
10629 self.call_builder(&_getVkCall {})
10630 }
10631 pub fn currentBlockNumber(
10633 &self,
10634 ) -> alloy_contract::SolCallBuilder<T, &P, currentBlockNumberCall, N> {
10635 self.call_builder(¤tBlockNumberCall {})
10636 }
10637 pub fn disablePermissionedProverMode(
10639 &self,
10640 ) -> alloy_contract::SolCallBuilder<T, &P, disablePermissionedProverModeCall, N> {
10641 self.call_builder(&disablePermissionedProverModeCall {})
10642 }
10643 pub fn finalizedState(
10645 &self,
10646 ) -> alloy_contract::SolCallBuilder<T, &P, finalizedStateCall, N> {
10647 self.call_builder(&finalizedStateCall {})
10648 }
10649 pub fn genesisStakeTableState(
10651 &self,
10652 ) -> alloy_contract::SolCallBuilder<T, &P, genesisStakeTableStateCall, N> {
10653 self.call_builder(&genesisStakeTableStateCall {})
10654 }
10655 pub fn genesisState(&self) -> alloy_contract::SolCallBuilder<T, &P, genesisStateCall, N> {
10657 self.call_builder(&genesisStateCall {})
10658 }
10659 pub fn getHotShotCommitment(
10661 &self,
10662 hotShotBlockHeight: alloy::sol_types::private::primitives::aliases::U256,
10663 ) -> alloy_contract::SolCallBuilder<T, &P, getHotShotCommitmentCall, N> {
10664 self.call_builder(&getHotShotCommitmentCall { hotShotBlockHeight })
10665 }
10666 pub fn getStateHistoryCount(
10668 &self,
10669 ) -> alloy_contract::SolCallBuilder<T, &P, getStateHistoryCountCall, N> {
10670 self.call_builder(&getStateHistoryCountCall {})
10671 }
10672 pub fn getVersion(&self) -> alloy_contract::SolCallBuilder<T, &P, getVersionCall, N> {
10674 self.call_builder(&getVersionCall {})
10675 }
10676 pub fn initialize(
10678 &self,
10679 _genesis: <LightClientState as alloy::sol_types::SolType>::RustType,
10680 _genesisStakeTableState: <StakeTableState as alloy::sol_types::SolType>::RustType,
10681 _stateHistoryRetentionPeriod: u32,
10682 owner: alloy::sol_types::private::Address,
10683 ) -> alloy_contract::SolCallBuilder<T, &P, initializeCall, N> {
10684 self.call_builder(&initializeCall {
10685 _genesis,
10686 _genesisStakeTableState,
10687 _stateHistoryRetentionPeriod,
10688 owner,
10689 })
10690 }
10691 pub fn isPermissionedProverEnabled(
10693 &self,
10694 ) -> alloy_contract::SolCallBuilder<T, &P, isPermissionedProverEnabledCall, N> {
10695 self.call_builder(&isPermissionedProverEnabledCall {})
10696 }
10697 pub fn lagOverEscapeHatchThreshold(
10699 &self,
10700 blockNumber: alloy::sol_types::private::primitives::aliases::U256,
10701 blockThreshold: alloy::sol_types::private::primitives::aliases::U256,
10702 ) -> alloy_contract::SolCallBuilder<T, &P, lagOverEscapeHatchThresholdCall, N> {
10703 self.call_builder(&lagOverEscapeHatchThresholdCall {
10704 blockNumber,
10705 blockThreshold,
10706 })
10707 }
10708 pub fn newFinalizedState(
10710 &self,
10711 newState: <LightClientState as alloy::sol_types::SolType>::RustType,
10712 proof: <IPlonkVerifier::PlonkProof as alloy::sol_types::SolType>::RustType,
10713 ) -> alloy_contract::SolCallBuilder<T, &P, newFinalizedStateCall, N> {
10714 self.call_builder(&newFinalizedStateCall { newState, proof })
10715 }
10716 pub fn owner(&self) -> alloy_contract::SolCallBuilder<T, &P, ownerCall, N> {
10718 self.call_builder(&ownerCall {})
10719 }
10720 pub fn permissionedProver(
10722 &self,
10723 ) -> alloy_contract::SolCallBuilder<T, &P, permissionedProverCall, N> {
10724 self.call_builder(&permissionedProverCall {})
10725 }
10726 pub fn proxiableUUID(&self) -> alloy_contract::SolCallBuilder<T, &P, proxiableUUIDCall, N> {
10728 self.call_builder(&proxiableUUIDCall {})
10729 }
10730 pub fn renounceOwnership(
10732 &self,
10733 ) -> alloy_contract::SolCallBuilder<T, &P, renounceOwnershipCall, N> {
10734 self.call_builder(&renounceOwnershipCall {})
10735 }
10736 pub fn setPermissionedProver(
10738 &self,
10739 prover: alloy::sol_types::private::Address,
10740 ) -> alloy_contract::SolCallBuilder<T, &P, setPermissionedProverCall, N> {
10741 self.call_builder(&setPermissionedProverCall { prover })
10742 }
10743 pub fn setstateHistoryRetentionPeriod(
10745 &self,
10746 historySeconds: u32,
10747 ) -> alloy_contract::SolCallBuilder<T, &P, setstateHistoryRetentionPeriodCall, N> {
10748 self.call_builder(&setstateHistoryRetentionPeriodCall { historySeconds })
10749 }
10750 pub fn stateHistoryCommitments(
10752 &self,
10753 _0: alloy::sol_types::private::primitives::aliases::U256,
10754 ) -> alloy_contract::SolCallBuilder<T, &P, stateHistoryCommitmentsCall, N> {
10755 self.call_builder(&stateHistoryCommitmentsCall { _0 })
10756 }
10757 pub fn stateHistoryFirstIndex(
10759 &self,
10760 ) -> alloy_contract::SolCallBuilder<T, &P, stateHistoryFirstIndexCall, N> {
10761 self.call_builder(&stateHistoryFirstIndexCall {})
10762 }
10763 pub fn stateHistoryRetentionPeriod(
10765 &self,
10766 ) -> alloy_contract::SolCallBuilder<T, &P, stateHistoryRetentionPeriodCall, N> {
10767 self.call_builder(&stateHistoryRetentionPeriodCall {})
10768 }
10769 pub fn transferOwnership(
10771 &self,
10772 newOwner: alloy::sol_types::private::Address,
10773 ) -> alloy_contract::SolCallBuilder<T, &P, transferOwnershipCall, N> {
10774 self.call_builder(&transferOwnershipCall { newOwner })
10775 }
10776 pub fn upgradeToAndCall(
10778 &self,
10779 newImplementation: alloy::sol_types::private::Address,
10780 data: alloy::sol_types::private::Bytes,
10781 ) -> alloy_contract::SolCallBuilder<T, &P, upgradeToAndCallCall, N> {
10782 self.call_builder(&upgradeToAndCallCall {
10783 newImplementation,
10784 data,
10785 })
10786 }
10787 }
10788 #[automatically_derived]
10790 impl<
10791 T: alloy_contract::private::Transport + ::core::clone::Clone,
10792 P: alloy_contract::private::Provider<T, N>,
10793 N: alloy_contract::private::Network,
10794 > LightClientInstance<T, P, N>
10795 {
10796 pub fn event_filter<E: alloy_sol_types::SolEvent>(
10801 &self,
10802 ) -> alloy_contract::Event<T, &P, E, N> {
10803 alloy_contract::Event::new_sol(&self.provider, &self.address)
10804 }
10805 pub fn Initialized_filter(&self) -> alloy_contract::Event<T, &P, Initialized, N> {
10807 self.event_filter::<Initialized>()
10808 }
10809 pub fn NewState_filter(&self) -> alloy_contract::Event<T, &P, NewState, N> {
10811 self.event_filter::<NewState>()
10812 }
10813 pub fn OwnershipTransferred_filter(
10815 &self,
10816 ) -> alloy_contract::Event<T, &P, OwnershipTransferred, N> {
10817 self.event_filter::<OwnershipTransferred>()
10818 }
10819 pub fn PermissionedProverNotRequired_filter(
10821 &self,
10822 ) -> alloy_contract::Event<T, &P, PermissionedProverNotRequired, N> {
10823 self.event_filter::<PermissionedProverNotRequired>()
10824 }
10825 pub fn PermissionedProverRequired_filter(
10827 &self,
10828 ) -> alloy_contract::Event<T, &P, PermissionedProverRequired, N> {
10829 self.event_filter::<PermissionedProverRequired>()
10830 }
10831 pub fn Upgrade_filter(&self) -> alloy_contract::Event<T, &P, Upgrade, N> {
10833 self.event_filter::<Upgrade>()
10834 }
10835 pub fn Upgraded_filter(&self) -> alloy_contract::Event<T, &P, Upgraded, N> {
10837 self.event_filter::<Upgraded>()
10838 }
10839 }
10840}