1#![allow(clippy::all, clippy::pedantic, clippy::nursery, warnings, unknown_lints, rustdoc::all, elided_lifetimes_in_paths)]
2use DelegationManager::*;
3
4#[allow(
14 non_camel_case_types,
15 non_snake_case,
16 clippy::pub_underscore_fields,
17 clippy::style,
18 clippy::empty_structs_with_brackets
19)]
20pub mod IDelegationManagerTypes {
21 use super::*;
22 use alloy::sol_types as alloy_sol_types;
23 #[derive(serde::Serialize, serde::Deserialize)]
24 #[derive(Default, Debug, PartialEq, Eq, Hash)]
25 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
29 #[derive(Clone)]
30 pub struct QueuedWithdrawalParams {
31 #[allow(missing_docs)]
32 pub strategies: alloy::sol_types::private::Vec<
33 alloy::sol_types::private::Address,
34 >,
35 #[allow(missing_docs)]
36 pub depositShares: alloy::sol_types::private::Vec<
37 alloy::sol_types::private::primitives::aliases::U256,
38 >,
39 #[allow(missing_docs)]
40 pub __deprecated_withdrawer: alloy::sol_types::private::Address,
41 }
42 #[allow(
43 non_camel_case_types,
44 non_snake_case,
45 clippy::pub_underscore_fields,
46 clippy::style
47 )]
48 const _: () = {
49 use alloy::sol_types as alloy_sol_types;
50 #[doc(hidden)]
51 type UnderlyingSolTuple<'a> = (
52 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
53 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
54 alloy::sol_types::sol_data::Address,
55 );
56 #[doc(hidden)]
57 type UnderlyingRustTuple<'a> = (
58 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
59 alloy::sol_types::private::Vec<
60 alloy::sol_types::private::primitives::aliases::U256,
61 >,
62 alloy::sol_types::private::Address,
63 );
64 #[cfg(test)]
65 #[allow(dead_code, unreachable_patterns)]
66 fn _type_assertion(
67 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
68 ) {
69 match _t {
70 alloy_sol_types::private::AssertTypeEq::<
71 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
72 >(_) => {}
73 }
74 }
75 #[automatically_derived]
76 #[doc(hidden)]
77 impl ::core::convert::From<QueuedWithdrawalParams> for UnderlyingRustTuple<'_> {
78 fn from(value: QueuedWithdrawalParams) -> Self {
79 (value.strategies, value.depositShares, value.__deprecated_withdrawer)
80 }
81 }
82 #[automatically_derived]
83 #[doc(hidden)]
84 impl ::core::convert::From<UnderlyingRustTuple<'_>> for QueuedWithdrawalParams {
85 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
86 Self {
87 strategies: tuple.0,
88 depositShares: tuple.1,
89 __deprecated_withdrawer: tuple.2,
90 }
91 }
92 }
93 #[automatically_derived]
94 impl alloy_sol_types::SolValue for QueuedWithdrawalParams {
95 type SolType = Self;
96 }
97 #[automatically_derived]
98 impl alloy_sol_types::private::SolTypeValue<Self> for QueuedWithdrawalParams {
99 #[inline]
100 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
101 (
102 <alloy::sol_types::sol_data::Array<
103 alloy::sol_types::sol_data::Address,
104 > as alloy_sol_types::SolType>::tokenize(&self.strategies),
105 <alloy::sol_types::sol_data::Array<
106 alloy::sol_types::sol_data::Uint<256>,
107 > as alloy_sol_types::SolType>::tokenize(&self.depositShares),
108 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
109 &self.__deprecated_withdrawer,
110 ),
111 )
112 }
113 #[inline]
114 fn stv_abi_encoded_size(&self) -> usize {
115 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
116 return size;
117 }
118 let tuple = <UnderlyingRustTuple<
119 '_,
120 > as ::core::convert::From<Self>>::from(self.clone());
121 <UnderlyingSolTuple<
122 '_,
123 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
124 }
125 #[inline]
126 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
127 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
128 }
129 #[inline]
130 fn stv_abi_encode_packed_to(
131 &self,
132 out: &mut alloy_sol_types::private::Vec<u8>,
133 ) {
134 let tuple = <UnderlyingRustTuple<
135 '_,
136 > as ::core::convert::From<Self>>::from(self.clone());
137 <UnderlyingSolTuple<
138 '_,
139 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
140 }
141 #[inline]
142 fn stv_abi_packed_encoded_size(&self) -> usize {
143 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
144 return size;
145 }
146 let tuple = <UnderlyingRustTuple<
147 '_,
148 > as ::core::convert::From<Self>>::from(self.clone());
149 <UnderlyingSolTuple<
150 '_,
151 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
152 }
153 }
154 #[automatically_derived]
155 impl alloy_sol_types::SolType for QueuedWithdrawalParams {
156 type RustType = Self;
157 type Token<'a> = <UnderlyingSolTuple<
158 'a,
159 > as alloy_sol_types::SolType>::Token<'a>;
160 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
161 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
162 '_,
163 > as alloy_sol_types::SolType>::ENCODED_SIZE;
164 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
165 '_,
166 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
167 #[inline]
168 fn valid_token(token: &Self::Token<'_>) -> bool {
169 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
170 }
171 #[inline]
172 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
173 let tuple = <UnderlyingSolTuple<
174 '_,
175 > as alloy_sol_types::SolType>::detokenize(token);
176 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
177 }
178 }
179 #[automatically_derived]
180 impl alloy_sol_types::SolStruct for QueuedWithdrawalParams {
181 const NAME: &'static str = "QueuedWithdrawalParams";
182 #[inline]
183 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
184 alloy_sol_types::private::Cow::Borrowed(
185 "QueuedWithdrawalParams(address[] strategies,uint256[] depositShares,address __deprecated_withdrawer)",
186 )
187 }
188 #[inline]
189 fn eip712_components() -> alloy_sol_types::private::Vec<
190 alloy_sol_types::private::Cow<'static, str>,
191 > {
192 alloy_sol_types::private::Vec::new()
193 }
194 #[inline]
195 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
196 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
197 }
198 #[inline]
199 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
200 [
201 <alloy::sol_types::sol_data::Array<
202 alloy::sol_types::sol_data::Address,
203 > as alloy_sol_types::SolType>::eip712_data_word(&self.strategies)
204 .0,
205 <alloy::sol_types::sol_data::Array<
206 alloy::sol_types::sol_data::Uint<256>,
207 > as alloy_sol_types::SolType>::eip712_data_word(&self.depositShares)
208 .0,
209 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::eip712_data_word(
210 &self.__deprecated_withdrawer,
211 )
212 .0,
213 ]
214 .concat()
215 }
216 }
217 #[automatically_derived]
218 impl alloy_sol_types::EventTopic for QueuedWithdrawalParams {
219 #[inline]
220 fn topic_preimage_length(rust: &Self::RustType) -> usize {
221 0usize
222 + <alloy::sol_types::sol_data::Array<
223 alloy::sol_types::sol_data::Address,
224 > as alloy_sol_types::EventTopic>::topic_preimage_length(
225 &rust.strategies,
226 )
227 + <alloy::sol_types::sol_data::Array<
228 alloy::sol_types::sol_data::Uint<256>,
229 > as alloy_sol_types::EventTopic>::topic_preimage_length(
230 &rust.depositShares,
231 )
232 + <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::topic_preimage_length(
233 &rust.__deprecated_withdrawer,
234 )
235 }
236 #[inline]
237 fn encode_topic_preimage(
238 rust: &Self::RustType,
239 out: &mut alloy_sol_types::private::Vec<u8>,
240 ) {
241 out.reserve(
242 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
243 );
244 <alloy::sol_types::sol_data::Array<
245 alloy::sol_types::sol_data::Address,
246 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
247 &rust.strategies,
248 out,
249 );
250 <alloy::sol_types::sol_data::Array<
251 alloy::sol_types::sol_data::Uint<256>,
252 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
253 &rust.depositShares,
254 out,
255 );
256 <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic_preimage(
257 &rust.__deprecated_withdrawer,
258 out,
259 );
260 }
261 #[inline]
262 fn encode_topic(
263 rust: &Self::RustType,
264 ) -> alloy_sol_types::abi::token::WordToken {
265 let mut out = alloy_sol_types::private::Vec::new();
266 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
267 rust,
268 &mut out,
269 );
270 alloy_sol_types::abi::token::WordToken(
271 alloy_sol_types::private::keccak256(out),
272 )
273 }
274 }
275 };
276 #[derive(serde::Serialize, serde::Deserialize)]
277 #[derive(Default, Debug, PartialEq, Eq, Hash)]
278 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
282 #[derive(Clone)]
283 pub struct Withdrawal {
284 #[allow(missing_docs)]
285 pub staker: alloy::sol_types::private::Address,
286 #[allow(missing_docs)]
287 pub delegatedTo: alloy::sol_types::private::Address,
288 #[allow(missing_docs)]
289 pub withdrawer: alloy::sol_types::private::Address,
290 #[allow(missing_docs)]
291 pub nonce: alloy::sol_types::private::primitives::aliases::U256,
292 #[allow(missing_docs)]
293 pub startBlock: u32,
294 #[allow(missing_docs)]
295 pub strategies: alloy::sol_types::private::Vec<
296 alloy::sol_types::private::Address,
297 >,
298 #[allow(missing_docs)]
299 pub scaledShares: alloy::sol_types::private::Vec<
300 alloy::sol_types::private::primitives::aliases::U256,
301 >,
302 }
303 #[allow(
304 non_camel_case_types,
305 non_snake_case,
306 clippy::pub_underscore_fields,
307 clippy::style
308 )]
309 const _: () = {
310 use alloy::sol_types as alloy_sol_types;
311 #[doc(hidden)]
312 type UnderlyingSolTuple<'a> = (
313 alloy::sol_types::sol_data::Address,
314 alloy::sol_types::sol_data::Address,
315 alloy::sol_types::sol_data::Address,
316 alloy::sol_types::sol_data::Uint<256>,
317 alloy::sol_types::sol_data::Uint<32>,
318 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
319 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
320 );
321 #[doc(hidden)]
322 type UnderlyingRustTuple<'a> = (
323 alloy::sol_types::private::Address,
324 alloy::sol_types::private::Address,
325 alloy::sol_types::private::Address,
326 alloy::sol_types::private::primitives::aliases::U256,
327 u32,
328 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
329 alloy::sol_types::private::Vec<
330 alloy::sol_types::private::primitives::aliases::U256,
331 >,
332 );
333 #[cfg(test)]
334 #[allow(dead_code, unreachable_patterns)]
335 fn _type_assertion(
336 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
337 ) {
338 match _t {
339 alloy_sol_types::private::AssertTypeEq::<
340 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
341 >(_) => {}
342 }
343 }
344 #[automatically_derived]
345 #[doc(hidden)]
346 impl ::core::convert::From<Withdrawal> for UnderlyingRustTuple<'_> {
347 fn from(value: Withdrawal) -> Self {
348 (
349 value.staker,
350 value.delegatedTo,
351 value.withdrawer,
352 value.nonce,
353 value.startBlock,
354 value.strategies,
355 value.scaledShares,
356 )
357 }
358 }
359 #[automatically_derived]
360 #[doc(hidden)]
361 impl ::core::convert::From<UnderlyingRustTuple<'_>> for Withdrawal {
362 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
363 Self {
364 staker: tuple.0,
365 delegatedTo: tuple.1,
366 withdrawer: tuple.2,
367 nonce: tuple.3,
368 startBlock: tuple.4,
369 strategies: tuple.5,
370 scaledShares: tuple.6,
371 }
372 }
373 }
374 #[automatically_derived]
375 impl alloy_sol_types::SolValue for Withdrawal {
376 type SolType = Self;
377 }
378 #[automatically_derived]
379 impl alloy_sol_types::private::SolTypeValue<Self> for Withdrawal {
380 #[inline]
381 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
382 (
383 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
384 &self.staker,
385 ),
386 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
387 &self.delegatedTo,
388 ),
389 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
390 &self.withdrawer,
391 ),
392 <alloy::sol_types::sol_data::Uint<
393 256,
394 > as alloy_sol_types::SolType>::tokenize(&self.nonce),
395 <alloy::sol_types::sol_data::Uint<
396 32,
397 > as alloy_sol_types::SolType>::tokenize(&self.startBlock),
398 <alloy::sol_types::sol_data::Array<
399 alloy::sol_types::sol_data::Address,
400 > as alloy_sol_types::SolType>::tokenize(&self.strategies),
401 <alloy::sol_types::sol_data::Array<
402 alloy::sol_types::sol_data::Uint<256>,
403 > as alloy_sol_types::SolType>::tokenize(&self.scaledShares),
404 )
405 }
406 #[inline]
407 fn stv_abi_encoded_size(&self) -> usize {
408 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
409 return size;
410 }
411 let tuple = <UnderlyingRustTuple<
412 '_,
413 > as ::core::convert::From<Self>>::from(self.clone());
414 <UnderlyingSolTuple<
415 '_,
416 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
417 }
418 #[inline]
419 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
420 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
421 }
422 #[inline]
423 fn stv_abi_encode_packed_to(
424 &self,
425 out: &mut alloy_sol_types::private::Vec<u8>,
426 ) {
427 let tuple = <UnderlyingRustTuple<
428 '_,
429 > as ::core::convert::From<Self>>::from(self.clone());
430 <UnderlyingSolTuple<
431 '_,
432 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
433 }
434 #[inline]
435 fn stv_abi_packed_encoded_size(&self) -> usize {
436 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
437 return size;
438 }
439 let tuple = <UnderlyingRustTuple<
440 '_,
441 > as ::core::convert::From<Self>>::from(self.clone());
442 <UnderlyingSolTuple<
443 '_,
444 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
445 }
446 }
447 #[automatically_derived]
448 impl alloy_sol_types::SolType for Withdrawal {
449 type RustType = Self;
450 type Token<'a> = <UnderlyingSolTuple<
451 'a,
452 > as alloy_sol_types::SolType>::Token<'a>;
453 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
454 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
455 '_,
456 > as alloy_sol_types::SolType>::ENCODED_SIZE;
457 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
458 '_,
459 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
460 #[inline]
461 fn valid_token(token: &Self::Token<'_>) -> bool {
462 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
463 }
464 #[inline]
465 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
466 let tuple = <UnderlyingSolTuple<
467 '_,
468 > as alloy_sol_types::SolType>::detokenize(token);
469 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
470 }
471 }
472 #[automatically_derived]
473 impl alloy_sol_types::SolStruct for Withdrawal {
474 const NAME: &'static str = "Withdrawal";
475 #[inline]
476 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
477 alloy_sol_types::private::Cow::Borrowed(
478 "Withdrawal(address staker,address delegatedTo,address withdrawer,uint256 nonce,uint32 startBlock,address[] strategies,uint256[] scaledShares)",
479 )
480 }
481 #[inline]
482 fn eip712_components() -> alloy_sol_types::private::Vec<
483 alloy_sol_types::private::Cow<'static, str>,
484 > {
485 alloy_sol_types::private::Vec::new()
486 }
487 #[inline]
488 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
489 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
490 }
491 #[inline]
492 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
493 [
494 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::eip712_data_word(
495 &self.staker,
496 )
497 .0,
498 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::eip712_data_word(
499 &self.delegatedTo,
500 )
501 .0,
502 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::eip712_data_word(
503 &self.withdrawer,
504 )
505 .0,
506 <alloy::sol_types::sol_data::Uint<
507 256,
508 > as alloy_sol_types::SolType>::eip712_data_word(&self.nonce)
509 .0,
510 <alloy::sol_types::sol_data::Uint<
511 32,
512 > as alloy_sol_types::SolType>::eip712_data_word(&self.startBlock)
513 .0,
514 <alloy::sol_types::sol_data::Array<
515 alloy::sol_types::sol_data::Address,
516 > as alloy_sol_types::SolType>::eip712_data_word(&self.strategies)
517 .0,
518 <alloy::sol_types::sol_data::Array<
519 alloy::sol_types::sol_data::Uint<256>,
520 > as alloy_sol_types::SolType>::eip712_data_word(&self.scaledShares)
521 .0,
522 ]
523 .concat()
524 }
525 }
526 #[automatically_derived]
527 impl alloy_sol_types::EventTopic for Withdrawal {
528 #[inline]
529 fn topic_preimage_length(rust: &Self::RustType) -> usize {
530 0usize
531 + <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::topic_preimage_length(
532 &rust.staker,
533 )
534 + <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::topic_preimage_length(
535 &rust.delegatedTo,
536 )
537 + <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::topic_preimage_length(
538 &rust.withdrawer,
539 )
540 + <alloy::sol_types::sol_data::Uint<
541 256,
542 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.nonce)
543 + <alloy::sol_types::sol_data::Uint<
544 32,
545 > as alloy_sol_types::EventTopic>::topic_preimage_length(
546 &rust.startBlock,
547 )
548 + <alloy::sol_types::sol_data::Array<
549 alloy::sol_types::sol_data::Address,
550 > as alloy_sol_types::EventTopic>::topic_preimage_length(
551 &rust.strategies,
552 )
553 + <alloy::sol_types::sol_data::Array<
554 alloy::sol_types::sol_data::Uint<256>,
555 > as alloy_sol_types::EventTopic>::topic_preimage_length(
556 &rust.scaledShares,
557 )
558 }
559 #[inline]
560 fn encode_topic_preimage(
561 rust: &Self::RustType,
562 out: &mut alloy_sol_types::private::Vec<u8>,
563 ) {
564 out.reserve(
565 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
566 );
567 <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic_preimage(
568 &rust.staker,
569 out,
570 );
571 <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic_preimage(
572 &rust.delegatedTo,
573 out,
574 );
575 <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic_preimage(
576 &rust.withdrawer,
577 out,
578 );
579 <alloy::sol_types::sol_data::Uint<
580 256,
581 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
582 &rust.nonce,
583 out,
584 );
585 <alloy::sol_types::sol_data::Uint<
586 32,
587 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
588 &rust.startBlock,
589 out,
590 );
591 <alloy::sol_types::sol_data::Array<
592 alloy::sol_types::sol_data::Address,
593 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
594 &rust.strategies,
595 out,
596 );
597 <alloy::sol_types::sol_data::Array<
598 alloy::sol_types::sol_data::Uint<256>,
599 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
600 &rust.scaledShares,
601 out,
602 );
603 }
604 #[inline]
605 fn encode_topic(
606 rust: &Self::RustType,
607 ) -> alloy_sol_types::abi::token::WordToken {
608 let mut out = alloy_sol_types::private::Vec::new();
609 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
610 rust,
611 &mut out,
612 );
613 alloy_sol_types::abi::token::WordToken(
614 alloy_sol_types::private::keccak256(out),
615 )
616 }
617 }
618 };
619 use alloy::contract as alloy_contract;
620 #[inline]
624 pub const fn new<
625 P: alloy_contract::private::Provider<N>,
626 N: alloy_contract::private::Network,
627 >(
628 address: alloy_sol_types::private::Address,
629 provider: P,
630 ) -> IDelegationManagerTypesInstance<P, N> {
631 IDelegationManagerTypesInstance::<P, N>::new(address, provider)
632 }
633 #[derive(Clone)]
645 pub struct IDelegationManagerTypesInstance<
646 P,
647 N = alloy_contract::private::Ethereum,
648 > {
649 address: alloy_sol_types::private::Address,
650 provider: P,
651 _network: ::core::marker::PhantomData<N>,
652 }
653 #[automatically_derived]
654 impl<P, N> ::core::fmt::Debug for IDelegationManagerTypesInstance<P, N> {
655 #[inline]
656 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
657 f.debug_tuple("IDelegationManagerTypesInstance")
658 .field(&self.address)
659 .finish()
660 }
661 }
662 #[automatically_derived]
664 impl<
665 P: alloy_contract::private::Provider<N>,
666 N: alloy_contract::private::Network,
667 > IDelegationManagerTypesInstance<P, N> {
668 #[inline]
672 pub const fn new(
673 address: alloy_sol_types::private::Address,
674 provider: P,
675 ) -> Self {
676 Self {
677 address,
678 provider,
679 _network: ::core::marker::PhantomData,
680 }
681 }
682 #[inline]
684 pub const fn address(&self) -> &alloy_sol_types::private::Address {
685 &self.address
686 }
687 #[inline]
689 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
690 self.address = address;
691 }
692 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
694 self.set_address(address);
695 self
696 }
697 #[inline]
699 pub const fn provider(&self) -> &P {
700 &self.provider
701 }
702 }
703 impl<P: ::core::clone::Clone, N> IDelegationManagerTypesInstance<&P, N> {
704 #[inline]
706 pub fn with_cloned_provider(self) -> IDelegationManagerTypesInstance<P, N> {
707 IDelegationManagerTypesInstance {
708 address: self.address,
709 provider: ::core::clone::Clone::clone(&self.provider),
710 _network: ::core::marker::PhantomData,
711 }
712 }
713 }
714 #[automatically_derived]
716 impl<
717 P: alloy_contract::private::Provider<N>,
718 N: alloy_contract::private::Network,
719 > IDelegationManagerTypesInstance<P, N> {
720 pub fn call_builder<C: alloy_sol_types::SolCall>(
725 &self,
726 call: &C,
727 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
728 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
729 }
730 }
731 #[automatically_derived]
733 impl<
734 P: alloy_contract::private::Provider<N>,
735 N: alloy_contract::private::Network,
736 > IDelegationManagerTypesInstance<P, N> {
737 pub fn event_filter<E: alloy_sol_types::SolEvent>(
742 &self,
743 ) -> alloy_contract::Event<&P, E, N> {
744 alloy_contract::Event::new_sol(&self.provider, &self.address)
745 }
746 }
747}
748#[allow(
757 non_camel_case_types,
758 non_snake_case,
759 clippy::pub_underscore_fields,
760 clippy::style,
761 clippy::empty_structs_with_brackets
762)]
763pub mod ISignatureUtilsMixinTypes {
764 use super::*;
765 use alloy::sol_types as alloy_sol_types;
766 #[derive(serde::Serialize, serde::Deserialize)]
767 #[derive(Default, Debug, PartialEq, Eq, Hash)]
768 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
772 #[derive(Clone)]
773 pub struct SignatureWithExpiry {
774 #[allow(missing_docs)]
775 pub signature: alloy::sol_types::private::Bytes,
776 #[allow(missing_docs)]
777 pub expiry: alloy::sol_types::private::primitives::aliases::U256,
778 }
779 #[allow(
780 non_camel_case_types,
781 non_snake_case,
782 clippy::pub_underscore_fields,
783 clippy::style
784 )]
785 const _: () = {
786 use alloy::sol_types as alloy_sol_types;
787 #[doc(hidden)]
788 type UnderlyingSolTuple<'a> = (
789 alloy::sol_types::sol_data::Bytes,
790 alloy::sol_types::sol_data::Uint<256>,
791 );
792 #[doc(hidden)]
793 type UnderlyingRustTuple<'a> = (
794 alloy::sol_types::private::Bytes,
795 alloy::sol_types::private::primitives::aliases::U256,
796 );
797 #[cfg(test)]
798 #[allow(dead_code, unreachable_patterns)]
799 fn _type_assertion(
800 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
801 ) {
802 match _t {
803 alloy_sol_types::private::AssertTypeEq::<
804 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
805 >(_) => {}
806 }
807 }
808 #[automatically_derived]
809 #[doc(hidden)]
810 impl ::core::convert::From<SignatureWithExpiry> for UnderlyingRustTuple<'_> {
811 fn from(value: SignatureWithExpiry) -> Self {
812 (value.signature, value.expiry)
813 }
814 }
815 #[automatically_derived]
816 #[doc(hidden)]
817 impl ::core::convert::From<UnderlyingRustTuple<'_>> for SignatureWithExpiry {
818 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
819 Self {
820 signature: tuple.0,
821 expiry: tuple.1,
822 }
823 }
824 }
825 #[automatically_derived]
826 impl alloy_sol_types::SolValue for SignatureWithExpiry {
827 type SolType = Self;
828 }
829 #[automatically_derived]
830 impl alloy_sol_types::private::SolTypeValue<Self> for SignatureWithExpiry {
831 #[inline]
832 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
833 (
834 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
835 &self.signature,
836 ),
837 <alloy::sol_types::sol_data::Uint<
838 256,
839 > as alloy_sol_types::SolType>::tokenize(&self.expiry),
840 )
841 }
842 #[inline]
843 fn stv_abi_encoded_size(&self) -> usize {
844 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
845 return size;
846 }
847 let tuple = <UnderlyingRustTuple<
848 '_,
849 > as ::core::convert::From<Self>>::from(self.clone());
850 <UnderlyingSolTuple<
851 '_,
852 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
853 }
854 #[inline]
855 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
856 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
857 }
858 #[inline]
859 fn stv_abi_encode_packed_to(
860 &self,
861 out: &mut alloy_sol_types::private::Vec<u8>,
862 ) {
863 let tuple = <UnderlyingRustTuple<
864 '_,
865 > as ::core::convert::From<Self>>::from(self.clone());
866 <UnderlyingSolTuple<
867 '_,
868 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
869 }
870 #[inline]
871 fn stv_abi_packed_encoded_size(&self) -> usize {
872 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
873 return size;
874 }
875 let tuple = <UnderlyingRustTuple<
876 '_,
877 > as ::core::convert::From<Self>>::from(self.clone());
878 <UnderlyingSolTuple<
879 '_,
880 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
881 }
882 }
883 #[automatically_derived]
884 impl alloy_sol_types::SolType for SignatureWithExpiry {
885 type RustType = Self;
886 type Token<'a> = <UnderlyingSolTuple<
887 'a,
888 > as alloy_sol_types::SolType>::Token<'a>;
889 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
890 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
891 '_,
892 > as alloy_sol_types::SolType>::ENCODED_SIZE;
893 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
894 '_,
895 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
896 #[inline]
897 fn valid_token(token: &Self::Token<'_>) -> bool {
898 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
899 }
900 #[inline]
901 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
902 let tuple = <UnderlyingSolTuple<
903 '_,
904 > as alloy_sol_types::SolType>::detokenize(token);
905 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
906 }
907 }
908 #[automatically_derived]
909 impl alloy_sol_types::SolStruct for SignatureWithExpiry {
910 const NAME: &'static str = "SignatureWithExpiry";
911 #[inline]
912 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
913 alloy_sol_types::private::Cow::Borrowed(
914 "SignatureWithExpiry(bytes signature,uint256 expiry)",
915 )
916 }
917 #[inline]
918 fn eip712_components() -> alloy_sol_types::private::Vec<
919 alloy_sol_types::private::Cow<'static, str>,
920 > {
921 alloy_sol_types::private::Vec::new()
922 }
923 #[inline]
924 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
925 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
926 }
927 #[inline]
928 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
929 [
930 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::eip712_data_word(
931 &self.signature,
932 )
933 .0,
934 <alloy::sol_types::sol_data::Uint<
935 256,
936 > as alloy_sol_types::SolType>::eip712_data_word(&self.expiry)
937 .0,
938 ]
939 .concat()
940 }
941 }
942 #[automatically_derived]
943 impl alloy_sol_types::EventTopic for SignatureWithExpiry {
944 #[inline]
945 fn topic_preimage_length(rust: &Self::RustType) -> usize {
946 0usize
947 + <alloy::sol_types::sol_data::Bytes as alloy_sol_types::EventTopic>::topic_preimage_length(
948 &rust.signature,
949 )
950 + <alloy::sol_types::sol_data::Uint<
951 256,
952 > as alloy_sol_types::EventTopic>::topic_preimage_length(
953 &rust.expiry,
954 )
955 }
956 #[inline]
957 fn encode_topic_preimage(
958 rust: &Self::RustType,
959 out: &mut alloy_sol_types::private::Vec<u8>,
960 ) {
961 out.reserve(
962 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
963 );
964 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::EventTopic>::encode_topic_preimage(
965 &rust.signature,
966 out,
967 );
968 <alloy::sol_types::sol_data::Uint<
969 256,
970 > as alloy_sol_types::EventTopic>::encode_topic_preimage(
971 &rust.expiry,
972 out,
973 );
974 }
975 #[inline]
976 fn encode_topic(
977 rust: &Self::RustType,
978 ) -> alloy_sol_types::abi::token::WordToken {
979 let mut out = alloy_sol_types::private::Vec::new();
980 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
981 rust,
982 &mut out,
983 );
984 alloy_sol_types::abi::token::WordToken(
985 alloy_sol_types::private::keccak256(out),
986 )
987 }
988 }
989 };
990 use alloy::contract as alloy_contract;
991 #[inline]
995 pub const fn new<
996 P: alloy_contract::private::Provider<N>,
997 N: alloy_contract::private::Network,
998 >(
999 address: alloy_sol_types::private::Address,
1000 provider: P,
1001 ) -> ISignatureUtilsMixinTypesInstance<P, N> {
1002 ISignatureUtilsMixinTypesInstance::<P, N>::new(address, provider)
1003 }
1004 #[derive(Clone)]
1016 pub struct ISignatureUtilsMixinTypesInstance<
1017 P,
1018 N = alloy_contract::private::Ethereum,
1019 > {
1020 address: alloy_sol_types::private::Address,
1021 provider: P,
1022 _network: ::core::marker::PhantomData<N>,
1023 }
1024 #[automatically_derived]
1025 impl<P, N> ::core::fmt::Debug for ISignatureUtilsMixinTypesInstance<P, N> {
1026 #[inline]
1027 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1028 f.debug_tuple("ISignatureUtilsMixinTypesInstance")
1029 .field(&self.address)
1030 .finish()
1031 }
1032 }
1033 #[automatically_derived]
1035 impl<
1036 P: alloy_contract::private::Provider<N>,
1037 N: alloy_contract::private::Network,
1038 > ISignatureUtilsMixinTypesInstance<P, N> {
1039 #[inline]
1043 pub const fn new(
1044 address: alloy_sol_types::private::Address,
1045 provider: P,
1046 ) -> Self {
1047 Self {
1048 address,
1049 provider,
1050 _network: ::core::marker::PhantomData,
1051 }
1052 }
1053 #[inline]
1055 pub const fn address(&self) -> &alloy_sol_types::private::Address {
1056 &self.address
1057 }
1058 #[inline]
1060 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
1061 self.address = address;
1062 }
1063 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
1065 self.set_address(address);
1066 self
1067 }
1068 #[inline]
1070 pub const fn provider(&self) -> &P {
1071 &self.provider
1072 }
1073 }
1074 impl<P: ::core::clone::Clone, N> ISignatureUtilsMixinTypesInstance<&P, N> {
1075 #[inline]
1077 pub fn with_cloned_provider(self) -> ISignatureUtilsMixinTypesInstance<P, N> {
1078 ISignatureUtilsMixinTypesInstance {
1079 address: self.address,
1080 provider: ::core::clone::Clone::clone(&self.provider),
1081 _network: ::core::marker::PhantomData,
1082 }
1083 }
1084 }
1085 #[automatically_derived]
1087 impl<
1088 P: alloy_contract::private::Provider<N>,
1089 N: alloy_contract::private::Network,
1090 > ISignatureUtilsMixinTypesInstance<P, N> {
1091 pub fn call_builder<C: alloy_sol_types::SolCall>(
1096 &self,
1097 call: &C,
1098 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
1099 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
1100 }
1101 }
1102 #[automatically_derived]
1104 impl<
1105 P: alloy_contract::private::Provider<N>,
1106 N: alloy_contract::private::Network,
1107 > ISignatureUtilsMixinTypesInstance<P, N> {
1108 pub fn event_filter<E: alloy_sol_types::SolEvent>(
1113 &self,
1114 ) -> alloy_contract::Event<&P, E, N> {
1115 alloy_contract::Event::new_sol(&self.provider, &self.address)
1116 }
1117 }
1118}
1119#[allow(
3070 non_camel_case_types,
3071 non_snake_case,
3072 clippy::pub_underscore_fields,
3073 clippy::style,
3074 clippy::empty_structs_with_brackets
3075)]
3076pub mod DelegationManager {
3077 use super::*;
3078 use alloy::sol_types as alloy_sol_types;
3079 #[rustfmt::skip]
3085 #[allow(clippy::all)]
3086 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
3087 b"a\x01``@R4\x80\x15a\0\x10W__\xFD[P`@Qab\xE58\x03\x80ab\xE5\x839\x81\x01`@\x81\x90Ra\0/\x91a\x01\xFBV[\x80\x80\x84\x89\x89\x89\x87\x8A`\x01`\x01`\xA0\x1B\x03\x81\x16a\0^W`@Qc9\xB1\x90\xBB`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16`\x80R\x93\x84\x16`\xA0R\x91\x83\x16`\xC0R\x82\x16`\xE0Rc\xFF\xFF\xFF\xFF\x16a\x01\0R\x16a\x01 Ra\0\x95\x81a\0\xB0V[a\x01@RPa\0\xA4\x90Pa\0\xF6V[PPPPPPPa\x03\x82V[__\x82\x90P`\x1F\x81Q\x11\x15a\0\xE3W\x82`@Qc0Z'\xA9`\xE0\x1B\x81R`\x04\x01a\0\xDA\x91\x90a\x03*V[`@Q\x80\x91\x03\x90\xFD[\x80Qa\0\xEE\x82a\x03\\V[\x17\x93\x92PPPV[_Ta\x01\0\x90\x04`\xFF\x16\x15a\x01]W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`'`$\x82\x01R\x7FInitializable: contract is initi`D\x82\x01Rfalizing`\xC8\x1B`d\x82\x01R`\x84\x01a\0\xDAV[_T`\xFF\x90\x81\x16\x14a\x01\xACW_\x80T`\xFF\x19\x16`\xFF\x90\x81\x17\x90\x91U`@Q\x90\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1[V[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x01\xC2W__\xFD[PV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[_[\x83\x81\x10\x15a\x01\xF3W\x81\x81\x01Q\x83\x82\x01R` \x01a\x01\xDBV[PP_\x91\x01RV[_______`\xE0\x88\x8A\x03\x12\x15a\x02\x11W__\xFD[\x87Qa\x02\x1C\x81a\x01\xAEV[` \x89\x01Q\x90\x97Pa\x02-\x81a\x01\xAEV[`@\x89\x01Q\x90\x96Pa\x02>\x81a\x01\xAEV[``\x89\x01Q\x90\x95Pa\x02O\x81a\x01\xAEV[`\x80\x89\x01Q\x90\x94Pa\x02`\x81a\x01\xAEV[`\xA0\x89\x01Q\x90\x93Pc\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\x02yW__\xFD[`\xC0\x89\x01Q\x90\x92P`\x01`\x01`@\x1B\x03\x81\x11\x15a\x02\x94W__\xFD[\x88\x01_`\x1F\x82\x01\x8B\x13a\x02\xA5W__\xFD[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x02\xBEWa\x02\xBEa\x01\xC5V[`@Q`\x1F\x82\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\x02\xECWa\x02\xECa\x01\xC5V[`@R\x81\x81R\x83\x82\x01` \x01\x8D\x10\x15a\x03\x03W__\xFD[a\x03\x14\x82` \x83\x01` \x87\x01a\x01\xD9V[\x80\x92P\x80\x94PPPPP\x92\x95\x98\x91\x94\x97P\x92\x95PV[` \x81R_\x82Q\x80` \x84\x01Ra\x03H\x81`@\x85\x01` \x87\x01a\x01\xD9V[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV[\x80Q` \x80\x83\x01Q\x91\x90\x81\x10\x15a\x03|W_\x19\x81` \x03`\x03\x1B\x1B\x82\x16\x91P[P\x91\x90PV[`\x80Q`\xA0Q`\xC0Q`\xE0Qa\x01\0Qa\x01 Qa\x01@Qa^ja\x04{_9_\x81\x81a\x11\x12\x01RaA,\x01R_\x81\x81a\x04`\x01Ra4\x0B\x01R_\x81\x81a\x07j\x01R\x81\x81a6\x1B\x01R\x81\x81a7]\x01Ra:@\x01R_\x81\x81a\x07\xBA\x01R\x81\x81a\x0E'\x01R\x81\x81a\x0F\xEA\x01R\x81\x81a\x13k\x01R\x81\x81a\x15\x84\x01R\x81\x81a\x19\xE6\x01R\x81\x81a'\xA0\x01RaCV\x01R_\x81\x81a\x04\x87\x01R\x81\x81a\x0Fh\x01R\x81\x81a\x14\xE3\x01R\x81\x81a\x17W\x01R\x81\x81a0\x0C\x01R\x81\x81a1\xED\x01Ra8\xA3\x01R_\x81\x81a\x03\xBD\x01R\x81\x81a\x0F6\x01R\x81\x81a\x16\xAB\x01Ra8}\x01R_\x81\x81a\x068\x01R\x81\x81a\x0B\xB7\x01R\x81\x81a\x11P\x01Ra%\x96\x01Ra^j_\xF3\xFE`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\x02\xFFW_5`\xE0\x1C\x80cqP\x18\xA6\x11a\x01\x95W\x80c\xBF\xAE?\xD2\x11a\0\xE4W\x80c\xE4\xCC?\x90\x11a\0\x9EW\x80c\xF2\xFD\xE3\x8B\x11a\0yW\x80c\xF2\xFD\xE3\x8B\x14a\x08HW\x80c\xF6\x98\xDA%\x14a\x08[W\x80c\xFA\xBC\x1C\xBC\x14a\x08cW\x80c\xFD\x8A\xA8\x8D\x14a\x08vW__\xFD[\x80c\xE4\xCC?\x90\x14a\x08\x02W\x80c\xEE\xA9\x06K\x14a\x08\x15W\x80c\xF0\xE0\xE6v\x14a\x08(W__\xFD[\x80c\xBF\xAE?\xD2\x14a\x07MW\x80c\xC4H\xFE\xB8\x14a\x07`W\x80c\xC9x\xF7\xAC\x14a\x07\x94W\x80c\xCA\x8A\xA7\xC7\x14a\x07\xB5W\x80c\xCDm\xC6\x87\x14a\x07\xDCW\x80c\xDA\x8B\xE8d\x14a\x07\xEFW__\xFD[\x80c\x91\x04\xC3\x19\x11a\x01OW\x80c\xA1x\x84\x84\x11a\x01*W\x80c\xA1x\x84\x84\x14a\x06\xCCW\x80c\xA3:43\x14a\x06\xEBW\x80c\xB7\xF0n\xBE\x14a\x06\xFEW\x80c\xBBE\xFE\xF2\x14a\x07 W__\xFD[\x80c\x91\x04\xC3\x19\x14a\x06~W\x80c\x945\xBBC\x14a\x06\x99W\x80c\x99\xF57\x1B\x14a\x06\xACW__\xFD[\x80cqP\x18\xA6\x14a\x05\xEEW\x80cw\x8EU\xF3\x14a\x05\xF6W\x80cx)n\xC5\x14a\x06 W\x80c\x88o\x11\x95\x14a\x063W\x80c\x8D\xA5\xCB[\x14a\x06ZW\x80c\x90\x04\x13G\x14a\x06kW__\xFD[\x80cT\xFDMP\x11a\x02QW\x80c]\xD6\x85y\x11a\x02\x0BW\x80ce\xDA\x12d\x11a\x01\xE6W\x80ce\xDA\x12d\x14a\x05\x7FW\x80cf\xD5\xBA\x93\x14a\x05\xA7W\x80cmp\xF7\xAE\x14a\x05\xC8W\x80cn\x17DH\x14a\x05\xDBW__\xFD[\x80c]\xD6\x85y\x14a\x058W\x80c`\x1B\xB3o\x14a\x05YW\x80c`\xA0\xD1\xCE\x14a\x05lW__\xFD[\x80cT\xFDMP\x14a\x04\xBCW\x80cY\\jg\x14a\x04\xD1W\x80cY{6\xDA\x14a\x04\xD9W\x80cZ\xC8j\xB7\x14a\x04\xECW\x80c\\\x97Z\xBB\x14a\x05\x0FW\x80c]\x97^\x88\x14a\x05\x17W__\xFD[\x80c9\xB7\x0E8\x11a\x02\xBCW\x80c>(9\x1D\x11a\x02\x97W\x80c>(9\x1D\x14a\x048W\x80cFW\xE2j\x14a\x04[W\x80cFe\xBC\xDA\x14a\x04\x82W\x80cT\xB7\xC9l\x14a\x04\xA9W__\xFD[\x80c9\xB7\x0E8\x14a\x03\xB8W\x80c<e\x1C\xF2\x14a\x03\xF7W\x80c<\xDE\xB5\xE0\x14a\x04\nW__\xFD[\x80c\x04\xA4\xF9y\x14a\x03\x03W\x80c\x0B\x9FHz\x14a\x03=W\x80c\r\xD8\xDD\x02\x14a\x03PW\x80c\x13d9\xDD\x14a\x03pW\x80c%\xDF\x92.\x14a\x03\x85W\x80c*\xA6\xD8\x88\x14a\x03\xA5W[__\xFD[a\x03*\x7F\x14\xBD\xE6t\xC9\xF6K*\xD0\x0E\xAA\xEEJ\x8B\xED\x1F\xAB\xEF5\xC7P~<[\x9C\xFC\x946\x90\x9A-\xAD\x81V[`@Q\x90\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x03*a\x03K6`\x04aM?V[a\x08\x89V[a\x03ca\x03^6`\x04aM\xD6V[a\t\x11V[`@Qa\x034\x91\x90aN\x14V[a\x03\x83a\x03~6`\x04aNKV[a\x0B\xA2V[\0[a\x03\x98a\x03\x936`\x04aO\xE0V[a\x0CwV[`@Qa\x034\x91\x90aP\x8EV[a\x03\x83a\x03\xB36`\x04aP\xF0V[a\r\xD7V[a\x03\xDF\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\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x034V[a\x03\x83a\x04\x056`\x04aQNV[a\x0F+V[a\x03\xDFa\x04\x186`\x04aQ\x91V[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x90\x81R`\x99` R`@\x90 `\x01\x01T\x16\x90V[a\x04Ka\x04F6`\x04aQ\x91V[a\x10~V[`@Q\x90\x15\x15\x81R` \x01a\x034V[a\x03\xDF\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\x81V[a\x03\xDF\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\x81V[a\x03\x83a\x04\xB76`\x04aQ\xACV[a\x10\x9DV[a\x04\xC4a\x11\x0BV[`@Qa\x034\x91\x90aR0V[a\x03\x83a\x11;V[a\x03*a\x04\xE76`\x04aR\xFEV[a\x11\xEAV[a\x04Ka\x04\xFA6`\x04aS/V[`fT`\x01`\xFF\x90\x92\x16\x91\x90\x91\x1B\x90\x81\x16\x14\x90V[`fTa\x03*V[a\x05*a\x05%6`\x04aNKV[a\x12\x19V[`@Qa\x034\x92\x91\x90aT\x06V[a\x05Ka\x05F6`\x04aQ\x91V[a\x126V[`@Qa\x034\x92\x91\x90aTxV[a\x03\x83a\x05g6`\x04aT\xF9V[a\x13`V[a\x03\x83a\x05z6`\x04aURV[a\x14\xD8V[a\x03\xDFa\x05\x8D6`\x04aQ\x91V[`\x9A` R_\x90\x81R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x05\xBAa\x05\xB56`\x04aQ\x91V[a\x16\x83V[`@Qa\x034\x92\x91\x90aU\x91V[a\x04Ka\x05\xD66`\x04aQ\x91V[a\x19\x83V[a\x03*a\x05\xE96`\x04aQ\xACV[a\x19\xBBV[a\x03\x83a\x1AeV[a\x03*a\x06\x046`\x04aQ\xACV[`\x98` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[a\x03\x83a\x06.6`\x04aU\xA3V[a\x1AvV[a\x03\xDF\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\x81V[`3T`\x01`\x01`\xA0\x1B\x03\x16a\x03\xDFV[a\x03\x98a\x06y6`\x04aU\xF3V[a\x1B\x0CV[a\x03\xDFs\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x81V[a\x03\x83a\x06\xA76`\x04aV?V[a\x1B\xE2V[a\x06\xBFa\x06\xBA6`\x04aNKV[a\x1C\xBBV[`@Qa\x034\x91\x90aV\xDBV[a\x03*a\x06\xDA6`\x04aQ\x91V[`\x9F` R_\x90\x81R`@\x90 T\x81V[a\x03ca\x06\xF96`\x04aV\xEDV[a\x1D\xD7V[a\x04Ka\x07\x0C6`\x04aNKV[`\x9E` R_\x90\x81R`@\x90 T`\xFF\x16\x81V[a\x04Ka\x07.6`\x04aW\xD4V[`\x9C` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T`\xFF\x16\x81V[a\x03*a\x07[6`\x04aQ\xACV[a\x1D\xEFV[`@Qc\xFF\xFF\xFF\xFF\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\x81R` \x01a\x034V[a\x07\xA7a\x07\xA26`\x04aU\xF3V[a\x1E+V[`@Qa\x034\x92\x91\x90aW\xFEV[a\x03\xDF\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\x81V[a\x03\x83a\x07\xEA6`\x04aW\xD4V[a \xB8V[a\x03ca\x07\xFD6`\x04aQ\x91V[a!\xD3V[a\x03\x83a\x08\x106`\x04aX\x1DV[a\"\xFCV[a\x03\x83a\x08#6`\x04aV\xEDV[a#RV[a\x08;a\x0866`\x04aX\x90V[a#\xBDV[`@Qa\x034\x91\x90aY=V[a\x03\x83a\x08V6`\x04aQ\x91V[a$bV[a\x03*a$\xDBV[a\x03\x83a\x08q6`\x04aNKV[a%\x94V[a\x03ca\x08\x846`\x04aQ\x91V[a&\xABV[`@\x80Q\x7F\x14\xBD\xE6t\xC9\xF6K*\xD0\x0E\xAA\xEEJ\x8B\xED\x1F\xAB\xEF5\xC7P~<[\x9C\xFC\x946\x90\x9A-\xAD` \x82\x01R`\x01`\x01`\xA0\x1B\x03\x80\x86\x16\x92\x82\x01\x92\x90\x92R\x81\x87\x16``\x82\x01R\x90\x85\x16`\x80\x82\x01R`\xA0\x81\x01\x83\x90R`\xC0\x81\x01\x82\x90R_\x90a\t\x07\x90`\xE0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 a&\xCEV[\x96\x95PPPPPPV[`fT``\x90`\x01\x90`\x02\x90\x81\x16\x03a\t=W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\tEa&\xFCV[_\x83`\x01`\x01`@\x1B\x03\x81\x11\x15a\t^Wa\t^aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\t\x87W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P3_\x90\x81R`\x9A` R`@\x81 T\x91\x92P`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x90[\x85\x81\x10\x15a\x0B\x93W\x86\x86\x82\x81\x81\x10a\t\xC1Wa\t\xC1aYOV[\x90P` \x02\x81\x01\x90a\t\xD3\x91\x90aYcV[a\t\xE1\x90` \x81\x01\x90aY\x81V[\x90P\x87\x87\x83\x81\x81\x10a\t\xF5Wa\t\xF5aYOV[\x90P` \x02\x81\x01\x90a\n\x07\x91\x90aYcV[a\n\x11\x90\x80aY\x81V[\x90P\x14a\n1W`@QcCqJ\xFD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a\n\x9B3\x84\x8A\x8A\x86\x81\x81\x10a\nIWa\nIaYOV[\x90P` \x02\x81\x01\x90a\n[\x91\x90aYcV[a\ne\x90\x80aY\x81V[\x80\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83` \x02\x80\x82\x847_\x92\x01\x91\x90\x91RPa'U\x92PPPV[\x90Pa\x0Bm3\x84\x8A\x8A\x86\x81\x81\x10a\n\xB4Wa\n\xB4aYOV[\x90P` \x02\x81\x01\x90a\n\xC6\x91\x90aYcV[a\n\xD0\x90\x80aY\x81V[\x80\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83` \x02\x80\x82\x847_\x92\x01\x91\x90\x91RP\x8E\x92P\x8D\x91P\x88\x90P\x81\x81\x10a\x0B\x15Wa\x0B\x15aYOV[\x90P` \x02\x81\x01\x90a\x0B'\x91\x90aYcV[a\x0B5\x90` \x81\x01\x90aY\x81V[\x80\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83` \x02\x80\x82\x847_\x92\x01\x91\x90\x91RP\x88\x92Pa(\xA7\x91PPV[\x84\x83\x81Q\x81\x10a\x0B\x7FWa\x0B\x7FaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RP`\x01\x01a\t\xA7V[PP`\x01`\xC9U\x94\x93PPPPV[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\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\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x0C\x04W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x0C(\x91\x90aY\xC6V[a\x0CEW`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`fT\x81\x81\x16\x81\x14a\x0CjW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0Cs\x82a.BV[PPV[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x9A` R`@\x81 T``\x92\x16\x90a\x0C\xA0\x86\x83\x87a'UV[\x90P_\x85Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x0C\xBCWa\x0C\xBCaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x0C\xE5W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x86Q\x81\x10\x15a\r\xCAW`\x01`\x01`\xA0\x1B\x03\x88\x16_\x90\x81R`\xA2` R`@\x81 \x88Q\x82\x90\x8A\x90\x85\x90\x81\x10a\r Wa\r aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ `@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPP\x90Pa\r\xA4\x87\x83\x81Q\x81\x10a\rrWa\rraYOV[` \x02` \x01\x01Q\x85\x84\x81Q\x81\x10a\r\x8CWa\r\x8CaYOV[` \x02` \x01\x01Q\x83a.\x7F\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x83\x83\x81Q\x81\x10a\r\xB6Wa\r\xB6aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RP`\x01\x01a\x0C\xEAV[P\x92PPP[\x93\x92PPPV[a\r\xDFa&\xFCV[a\r\xE83a\x10~V[\x15a\x0E\x06W`@Qc;\xF2\xB5\x03`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@Qc+bA\xF3`\xE1\x1B\x81R3`\x04\x82\x01Rc\xFF\xFF\xFF\xFF\x84\x16`$\x82\x01R\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\x16\x90cV\xC4\x83\xE6\x90`D\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x0EpW__\xFD[PZ\xF1\x15\x80\x15a\x0E\x82W=__>=_\xFD[PPPPa\x0E\x903\x85a.\x9DV[a\x0E\x9A33a.\xFFV[`@Q`\x01`\x01`\xA0\x1B\x03\x85\x16\x81R3\x90\x7F\xA4S\xDBa*\xF5\x9EU!\xD6\xAB\x92\x84\xDC>-\x06\xAF(n\xB1\xB1\xB7\xB7q\xFC\xE4ql\x19\xF2\xC1\x90` \x01`@Q\x80\x91\x03\x90\xA23`\x01`\x01`\xA0\x1B\x03\x16\x7F\x02\xA9\x19\xED\x0E*\xCA\xD1\xDD\x90\xF1~\xF2\xFAJ\xE5F.\xE13\x91p\x03J\x851\xCC\xA4\xB6p\x80\x90\x83\x83`@Qa\x0F\x13\x92\x91\x90aY\xE1V[`@Q\x80\x91\x03\x90\xA2a\x0F%`\x01`\xC9UV[PPPPV[3`\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\x0F\x8AWP3`\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[a\x0F\xA7W`@Qc\x04R\x06\xA5`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0F\xAFa&\xFCV[`\x01`\x01`\xA0\x1B\x03\x84\x81\x16_\x90\x81R`\x9A` R`@\x80\x82 T\x90Qc\x15&g\xD9`\xE3\x1B\x81R\x90\x83\x16`\x04\x82\x01\x81\x90R\x86\x84\x16`$\x83\x01R\x92\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\x90c\xA93>\xC8\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x10/W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x10S\x91\x90aZ\x0FV[\x90P_a\x10a\x87\x87\x84a1\xA6V[\x90Pa\x10q\x83\x88\x88\x88\x88\x86a2\x88V[PPPa\x0F%`\x01`\xC9UV[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x90\x81R`\x9A` R`@\x90 T\x16\x15\x15\x90V[\x81a\x10\xA7\x81a3\xCDV[a\x10\xC4W`@Qc\x93-\x94\xF7`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x10\xCCa&\xFCV[a\x10\xD5\x83a\x19\x83V[a\x10\xF2W`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x10\xFC\x83\x83a.\x9DV[a\x11\x06`\x01`\xC9UV[PPPV[``a\x116\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\0a4wV[\x90P\x90V[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\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\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x11\x9DW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x11\xC1\x91\x90aY\xC6V[a\x11\xDEW`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x11\xE8_\x19a.BV[V[_\x81`@Q` \x01a\x11\xFC\x91\x90aV\xDBV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[a\x12!aL\0V[``a\x12,\x83a4\xB4V[\x90\x94\x90\x93P\x91PPV[``\x80_a\x12C\x84a&\xABV[\x80Q\x90\x91P\x80`\x01`\x01`@\x1B\x03\x81\x11\x15a\x12`Wa\x12`aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x12\x99W\x81` \x01[a\x12\x86aL\0V[\x81R` \x01\x90`\x01\x90\x03\x90\x81a\x12~W\x90P[P\x93P\x80`\x01`\x01`@\x1B\x03\x81\x11\x15a\x12\xB4Wa\x12\xB4aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x12\xE7W\x81` \x01[``\x81R` \x01\x90`\x01\x90\x03\x90\x81a\x12\xD2W\x90P[P\x92P_[\x81\x81\x10\x15a\x13XWa\x13\x16\x83\x82\x81Q\x81\x10a\x13\tWa\x13\taYOV[` \x02` \x01\x01Qa4\xB4V[\x86\x83\x81Q\x81\x10a\x13(Wa\x13(aYOV[` \x02` \x01\x01\x86\x84\x81Q\x81\x10a\x13AWa\x13AaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01\x91\x90\x91RR`\x01\x01a\x12\xECV[PPP\x91P\x91V[3`\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\x13\xA9W`@Qc#\xD8q\xA5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x13\xB1a&\xFCV[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x98` \x90\x81R`@\x80\x83 \x93\x87\x16\x83R\x92\x90R\x90\x81 Ta\x13\xEF\x90`\x01`\x01`@\x1B\x03\x80\x86\x16\x90\x85\x16a7\x07V[\x90P_a\x13\xFE\x86\x86\x86\x86a7\x1FV[\x90P_a\x14\x0B\x82\x84aZ>V[\x90Pa\x14\x19\x87_\x88\x86a7\xDCV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x88\x81\x16\x82R` \x82\x01\x84\x90R\x89\x16\x91\x7F\xDDa\x1FN\xF6?C\x85\xF1ul\x86\xCE\x1F\x1F8\x9A\x90\x13\xBAo\xA0}\xAB\xA8R\x82\x91\xBC-<0\x91\x01`@Q\x80\x91\x03\x90\xA2_a\x14i\x87a8VV[`@Qc\xDE\xBE\x1E\xAB`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x89\x81\x16`\x04\x83\x01R`$\x82\x01\x85\x90R\x91\x92P\x90\x82\x16\x90c\xDE\xBE\x1E\xAB\x90`D\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x14\xB4W__\xFD[PZ\xF1\x15\x80\x15a\x14\xC6W=__>=_\xFD[PPPPPPPPa\x0F%`\x01`\xC9UV[3`\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\x15!W`@Qc2\x13\xA6a`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x15)a&\xFCV[a\x152\x83a\x10~V[\x15a\x10\xFCW`\x01`\x01`\xA0\x1B\x03\x83\x81\x16_\x90\x81R`\x9A` R`@\x80\x82 T\x90Qc\x15&g\xD9`\xE3\x1B\x81R\x90\x83\x16`\x04\x82\x01\x81\x90Rs\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0`$\x83\x01R\x92\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\x90c\xA93>\xC8\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x15\xC9W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x15\xED\x91\x90aZ\x0FV[`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xA2` \x90\x81R`@\x80\x83 s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x84R\x82R\x80\x83 \x81Q\x92\x83\x01\x90\x91RT\x81R\x91\x92Pa\x16S\x86a\x16K`\x01`\x01`@\x1B\x03\x80\x87\x16\x90\x89\x16a8\xC8V[\x84\x91\x90a8\xDCV[\x90Pa\x16u\x84\x88s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x84a7\xDCV[PPPPa\x11\x06`\x01`\xC9UV[`@Qc\x94\xF6I\xDD`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x81\x16`\x04\x83\x01R``\x91\x82\x91_\x91\x82\x91\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\x90c\x94\xF6I\xDD\x90`$\x01_`@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x16\xEFW=__>=_\xFD[PPPP`@Q=_\x82>`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01`@Ra\x17\x16\x91\x90\x81\x01\x90aZ\xACV[`@Qc\xFE$:\x17`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x88\x81\x16`\x04\x83\x01Rs\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0`$\x83\x01R\x92\x94P\x90\x92P_\x91\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\x90c\xFE$:\x17\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x17\x9CW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x17\xC0\x91\x90a[gV[\x90P\x80_\x03a\x17\xD4WP\x90\x94\x90\x93P\x91PPV[_\x83Q`\x01a\x17\xE3\x91\x90aZ>V[`\x01`\x01`@\x1B\x03\x81\x11\x15a\x17\xFAWa\x17\xFAaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x18#W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\x84Q`\x01a\x185\x91\x90aZ>V[`\x01`\x01`@\x1B\x03\x81\x11\x15a\x18LWa\x18LaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x18uW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90Ps\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x82\x86Q\x81Q\x81\x10a\x18\xA0Wa\x18\xA0aYOV[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x82\x81\x86Q\x81Q\x81\x10a\x18\xD4Wa\x18\xD4aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R_[\x85Q\x81\x10\x15a\x19uW\x85\x81\x81Q\x81\x10a\x18\xFCWa\x18\xFCaYOV[` \x02` \x01\x01Q\x83\x82\x81Q\x81\x10a\x19\x16Wa\x19\x16aYOV[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x84\x81\x81Q\x81\x10a\x19HWa\x19HaYOV[` \x02` \x01\x01Q\x82\x82\x81Q\x81\x10a\x19bWa\x19baYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a\x18\xE1V[P\x90\x97\x90\x96P\x94PPPPPV[_`\x01`\x01`\xA0\x1B\x03\x82\x16\x15\x80\x15\x90a\x19\xB5WP`\x01`\x01`\xA0\x1B\x03\x80\x83\x16_\x81\x81R`\x9A` R`@\x90 T\x90\x91\x16\x14[\x92\x91PPV[`@Qc\x15&g\xD9`\xE3\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x04\x83\x01R\x82\x81\x16`$\x83\x01R_\x91\x82\x91\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\x90c\xA93>\xC8\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x1A+W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x1AO\x91\x90aZ\x0FV[\x90Pa\x1A]\x84\x84\x83_a7\x1FV[\x94\x93PPPPV[a\x1Ama8\xFAV[a\x11\xE8_a9TV[\x82a\x1A\x80\x81a3\xCDV[a\x1A\x9DW`@Qc\x93-\x94\xF7`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1A\xA6\x84a\x19\x83V[a\x1A\xC3W`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x83`\x01`\x01`\xA0\x1B\x03\x16\x7F\x02\xA9\x19\xED\x0E*\xCA\xD1\xDD\x90\xF1~\xF2\xFAJ\xE5F.\xE13\x91p\x03J\x851\xCC\xA4\xB6p\x80\x90\x84\x84`@Qa\x1A\xFE\x92\x91\x90aY\xE1V[`@Q\x80\x91\x03\x90\xA2PPPPV[``_\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x1B(Wa\x1B(aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x1BQW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x83Q\x81\x10\x15a\x1B\xDAW`\x01`\x01`\xA0\x1B\x03\x85\x16_\x90\x81R`\x98` R`@\x81 \x85Q\x90\x91\x90\x86\x90\x84\x90\x81\x10a\x1B\x8DWa\x1B\x8DaYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ T\x82\x82\x81Q\x81\x10a\x1B\xC7Wa\x1B\xC7aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a\x1BVV[P\x93\x92PPPV[`fT`\x02\x90`\x04\x90\x81\x16\x03a\x1C\x0BW`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1C\x13a&\xFCV[\x85_[\x81\x81\x10\x15a\x1C\xA6Wa\x1C\x9E\x89\x89\x83\x81\x81\x10a\x1C3Wa\x1C3aYOV[\x90P` \x02\x81\x01\x90a\x1CE\x91\x90a[~V[a\x1CN\x90a[\x92V[\x88\x88\x84\x81\x81\x10a\x1C`Wa\x1C`aYOV[\x90P` \x02\x81\x01\x90a\x1Cr\x91\x90aY\x81V[\x88\x88\x86\x81\x81\x10a\x1C\x84Wa\x1C\x84aYOV[\x90P` \x02\x01` \x81\x01\x90a\x1C\x99\x91\x90a[\x9DV[a9\xA5V[`\x01\x01a\x1C\x16V[PPa\x1C\xB2`\x01`\xC9UV[PPPPPPPV[a\x1C\xC3aL\0V[_\x82\x81R`\xA4` \x90\x81R`@\x91\x82\x90 \x82Q`\xE0\x81\x01\x84R\x81T`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x82R`\x01\x83\x01T\x81\x16\x82\x85\x01R`\x02\x83\x01T\x16\x81\x85\x01R`\x03\x82\x01T``\x82\x01R`\x04\x82\x01Tc\xFF\xFF\xFF\xFF\x16`\x80\x82\x01R`\x05\x82\x01\x80T\x85Q\x81\x86\x02\x81\x01\x86\x01\x90\x96R\x80\x86R\x91\x94\x92\x93`\xA0\x86\x01\x93\x92\x90\x83\x01\x82\x82\x80\x15a\x1DqW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a\x1DSW[PPPPP\x81R` \x01`\x06\x82\x01\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15a\x1D\xC7W` \x02\x82\x01\x91\x90_R` _ \x90[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a\x1D\xB3W[PPPPP\x81RPP\x90P\x91\x90PV[``a\x1D\xE23a!\xD3V[\x90Pa\r\xD0\x84\x84\x84a#RV[`\x01`\x01`\xA0\x1B\x03\x80\x83\x16_\x90\x81R`\xA2` \x90\x81R`@\x80\x83 \x93\x85\x16\x83R\x92\x81R\x82\x82 \x83Q\x91\x82\x01\x90\x93R\x91T\x82R\x90a\r\xD0\x90a=\xE7V[``\x80\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x1EGWa\x1EGaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x1EpW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x91P\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x1E\x8CWa\x1E\x8CaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x1E\xB5W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\x9A` R`@\x81 T\x92\x93P\x91\x16\x90a\x1E\xE0\x86\x83\x87a'UV[\x90P_[\x85Q\x81\x10\x15a \xADW_a\x1F\x10\x87\x83\x81Q\x81\x10a\x1F\x03Wa\x1F\x03aYOV[` \x02` \x01\x01Qa8VV[\x90P\x80`\x01`\x01`\xA0\x1B\x03\x16c\xFE$:\x17\x89\x89\x85\x81Q\x81\x10a\x1F4Wa\x1F4aYOV[` \x02` \x01\x01Q`@Q\x83c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x1Fn\x92\x91\x90`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x16` \x82\x01R`@\x01\x90V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x1F\x89W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x1F\xAD\x91\x90a[gV[\x85\x83\x81Q\x81\x10a\x1F\xBFWa\x1F\xBFaYOV[` \x02` \x01\x01\x81\x81RPP_`\xA2_\x8A`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ _\x89\x85\x81Q\x81\x10a \x02Wa \x02aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ `@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPP\x90Pa \x86\x86\x84\x81Q\x81\x10a TWa TaYOV[` \x02` \x01\x01Q\x85\x85\x81Q\x81\x10a nWa naYOV[` \x02` \x01\x01Q\x83a8\xDC\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x87\x84\x81Q\x81\x10a \x98Wa \x98aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RPP`\x01\x01a\x1E\xE4V[PPP[\x92P\x92\x90PV[_Ta\x01\0\x90\x04`\xFF\x16\x15\x80\x80\x15a \xD6WP_T`\x01`\xFF\x90\x91\x16\x10[\x80a \xEFWP0;\x15\x80\x15a \xEFWP_T`\xFF\x16`\x01\x14[a!WW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`.`$\x82\x01R\x7FInitializable: contract is alrea`D\x82\x01Rm\x19\x1EH\x1A[\x9A]\x1AX[\x1A^\x99Y`\x92\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[_\x80T`\xFF\x19\x16`\x01\x17\x90U\x80\x15a!xW_\x80Ta\xFF\0\x19\x16a\x01\0\x17\x90U[a!\x81\x82a.BV[a!\x8A\x83a9TV[\x80\x15a\x11\x06W_\x80Ta\xFF\0\x19\x16\x90U`@Q`\x01\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1PPPV[``a!\xDDa&\xFCV[a!\xE6\x82a\x10~V[a\"\x03W`@Qc\xA5\xC7\xC4E`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\"\x0C\x82a\x19\x83V[\x15a\"*W`@Qc\x11\xCA35`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[3`\x01`\x01`\xA0\x1B\x03\x83\x16\x14a\"\xE2W`\x01`\x01`\xA0\x1B\x03\x80\x83\x16_\x90\x81R`\x9A` R`@\x90 T\x16a\"]\x81a3\xCDV[\x80a\"\x83WP`\x01`\x01`\xA0\x1B\x03\x81\x81\x16_\x90\x81R`\x99` R`@\x90 `\x01\x01T\x163\x14[a\"\xA0W`@Qc\x1EI\x9A#`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80`\x01`\x01`\xA0\x1B\x03\x16\x83`\x01`\x01`\xA0\x1B\x03\x16\x7F\xF0\xED\xDF\x07\xE6\xEA\x14\xF3\x88\xB4~\x1E\x94\xA0\xF4d\xEC\xBD\x9E\xEDAq\x13\x0E\x0F\xC0\xE9\x9F\xB4\x03\n\x8A`@Q`@Q\x80\x91\x03\x90\xA3P[a\"\xEB\x82a>\x06V[\x90Pa\"\xF7`\x01`\xC9UV[\x91\x90PV[`fT`\x02\x90`\x04\x90\x81\x16\x03a#%W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a#-a&\xFCV[a#Aa#9\x86a[\x92V[\x85\x85\x85a9\xA5V[a#K`\x01`\xC9UV[PPPPPV[a#Za&\xFCV[a#c3a\x10~V[\x15a#\x81W`@Qc;\xF2\xB5\x03`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a#\x8A\x83a\x19\x83V[a#\xA7W`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a#\xB33\x84\x84\x84a@eV[a\x10\xFC3\x84a.\xFFV[``_\x83Q`\x01`\x01`@\x1B\x03\x81\x11\x15a#\xD9Wa#\xD9aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a$\x0CW\x81` \x01[``\x81R` \x01\x90`\x01\x90\x03\x90\x81a#\xF7W\x90P[P\x90P_[\x84Q\x81\x10\x15a\x1B\xDAWa$=\x85\x82\x81Q\x81\x10a$/Wa$/aYOV[` \x02` \x01\x01Q\x85a\x1B\x0CV[\x82\x82\x81Q\x81\x10a$OWa$OaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a$\x11V[a$ja8\xFAV[`\x01`\x01`\xA0\x1B\x03\x81\x16a$\xCFW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOwnable: new owner is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01a!NV[a$\xD8\x81a9TV[PV[`@\x80Q\x80\x82\x01\x90\x91R`\n\x81Ri\"\xB4\xB3\xB2\xB7&0\xBC\xB2\xB9`\xB1\x1B` \x90\x91\x01R_\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F\x7Fq\xB6%\xCF\xADD\xBA\xC6;\x13\xDB\xA0\x7F.\x1D`\x84\xEE\x04\xB6\xF8u!\x01\xEC\xE6\x12mXN\xE6\xEAa%HaA$V[\x80Q` \x91\x82\x01 `@\x80Q\x92\x83\x01\x94\x90\x94R\x92\x81\x01\x91\x90\x91R``\x81\x01\x91\x90\x91RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[\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\x16c\xEA\xB6mz`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a%\xF0W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a&\x14\x91\x90a[\xB8V[`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a&EW`@QcyH!\xFF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`fT\x80\x19\x82\x19\x81\x16\x14a&lW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`f\x82\x90U`@Q\x82\x81R3\x90\x7F5\x82\xD1\x82\x8E&\xBFV\xBD\x80\x15\x02\xBC\x02\x1A\xC0\xBC\x8A\xFBW\xC8&\xE4\x98kEY<\x8F\xAD8\x9C\x90` \x01[`@Q\x80\x91\x03\x90\xA2PPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\xA3` R`@\x90 ``\x90a\x19\xB5\x90aA\xC0V[_a&\xD7a$\xDBV[`@Qa\x19\x01`\xF0\x1B` \x82\x01R`\"\x81\x01\x91\x90\x91R`B\x81\x01\x83\x90R`b\x01a\x11\xFCV[`\x02`\xC9T\x03a'NW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FReentrancyGuard: reentrant call\0`D\x82\x01R`d\x01a!NV[`\x02`\xC9UV[``_\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a'qWa'qaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a'\x9AW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\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\x16cTz\xFB\x87\x86\x86`@Q\x83c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a'\xEC\x92\x91\x90a[\xD3V[_`@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a(\x06W=__>=_\xFD[PPPP`@Q=_\x82>`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01`@Ra(-\x91\x90\x81\x01\x90a[\xF6V[\x90P_[\x84Q\x81\x10\x15a(\x9CWa(w\x87\x86\x83\x81Q\x81\x10a(PWa(PaYOV[` \x02` \x01\x01Q\x84\x84\x81Q\x81\x10a(jWa(jaYOV[` \x02` \x01\x01Qa1\xA6V[\x83\x82\x81Q\x81\x10a(\x89Wa(\x89aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a(1V[P\x90\x95\x94PPPPPV[_`\x01`\x01`\xA0\x1B\x03\x86\x16a(\xCFW`@Qc9\xB1\x90\xBB`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x83Q_\x03a(\xF0W`@Qcyl\xC5%`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x84Q`\x01`\x01`@\x1B\x03\x81\x11\x15a)\nWa)\naNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a)3W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\x85Q`\x01`\x01`@\x1B\x03\x81\x11\x15a)PWa)PaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a)yW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x86Q\x81\x10\x15a,uW_a)\x9D\x88\x83\x81Q\x81\x10a\x1F\x03Wa\x1F\x03aYOV[\x90P_`\xA2_\x8C`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ _\x8A\x85\x81Q\x81\x10a)\xD6Wa)\xD6aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ \x90Pa*O\x88\x84\x81Q\x81\x10a*\x14Wa*\x14aYOV[` \x02` \x01\x01Q\x88\x85\x81Q\x81\x10a*.Wa*.aYOV[` \x90\x81\x02\x91\x90\x91\x01\x81\x01Q`@\x80Q\x92\x83\x01\x90R\x84T\x82R\x90\x91\x90a8\xDCV[\x84\x84\x81Q\x81\x10a*aWa*aaYOV[` \x02` \x01\x01\x81\x81RPPa*\xA0\x88\x84\x81Q\x81\x10a*\x82Wa*\x82aYOV[` \x90\x81\x02\x91\x90\x91\x01\x81\x01Q`@\x80Q\x92\x83\x01\x90R\x83T\x82RaA\xCCV[\x85\x84\x81Q\x81\x10a*\xB2Wa*\xB2aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01`\x01`\xA0\x1B\x03\x8A\x16\x15a+GWa+\t\x8A\x8A\x85\x81Q\x81\x10a*\xE2Wa*\xE2aYOV[` \x02` \x01\x01Q\x87\x86\x81Q\x81\x10a*\xFCWa*\xFCaYOV[` \x02` \x01\x01QaA\xE0V[a+G\x8A\x8C\x8B\x86\x81Q\x81\x10a+ Wa+ aYOV[` \x02` \x01\x01Q\x87\x87\x81Q\x81\x10a+:Wa+:aYOV[` \x02` \x01\x01Qa7\xDCV[_\x82`\x01`\x01`\xA0\x1B\x03\x16crJ\xF4#\x8D\x8C\x87\x81Q\x81\x10a+jWa+jaYOV[` \x02` \x01\x01Q\x8C\x88\x81Q\x81\x10a+\x84Wa+\x84aYOV[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a+\xAA\x93\x92\x91\x90a\\\x85V[` `@Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a+\xC6W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a+\xEA\x91\x90a[gV[\x90P\x80_\x03a,gW_\x82U\x7F\x8B\xE92\xBA\xC5Ea\xF2r`\xF9Tc\xD9\xB8\xAB7\xE0k(B\xE5\xEE$\x04\x15|\xC1=\xF6\xEB\x8F\x8C\x8B\x86\x81Q\x81\x10a,*Wa,*aYOV[` \x02` \x01\x01Qa,O\x85`@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPPa=\xE7V[`@Qa,^\x93\x92\x91\x90a\\\x85V[`@Q\x80\x91\x03\x90\xA1[PPP\x80`\x01\x01\x90Pa)~V[P`\x01`\x01`\xA0\x1B\x03\x88\x16_\x90\x81R`\x9F` R`@\x81 \x80T\x91\x82\x91\x90a,\x9C\x83a\\\xA9V[\x91\x90PUP_`@Q\x80`\xE0\x01`@R\x80\x8B`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x8A`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x8B`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x83\x81R` \x01Cc\xFF\xFF\xFF\xFF\x16\x81R` \x01\x89\x81R` \x01\x85\x81RP\x90P_a-\x02\x82a\x11\xEAV[_\x81\x81R`\x9E` \x90\x81R`@\x80\x83 \x80T`\x01`\xFF\x19\x90\x91\x16\x81\x17\x90\x91U`\xA4\x83R\x92\x81\x90 \x86Q\x81T`\x01`\x01`\xA0\x1B\x03\x19\x90\x81\x16`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x17\x83U\x88\x85\x01Q\x95\x83\x01\x80T\x82\x16\x96\x83\x16\x96\x90\x96\x17\x90\x95U\x91\x87\x01Q`\x02\x82\x01\x80T\x90\x95\x16\x92\x16\x91\x90\x91\x17\x90\x92U``\x85\x01Q`\x03\x83\x01U`\x80\x85\x01Q`\x04\x83\x01\x80Tc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x90\x92\x16\x91\x90\x91\x17\x90U`\xA0\x85\x01Q\x80Q\x93\x94P\x85\x93a-\xB8\x92`\x05\x85\x01\x92\x01\x90aLYV[P`\xC0\x82\x01Q\x80Qa-\xD4\x91`\x06\x84\x01\x91` \x90\x91\x01\x90aL\xBCV[PPP`\x01`\x01`\xA0\x1B\x03\x8B\x16_\x90\x81R`\xA3` R`@\x90 a-\xF8\x90\x82aBJV[P\x7F&\xB2\xAA\xE2e\x16\xE8q\x9E\xF5\x0E\xA2\xF6\x83\x1A.\xFB\xD4\xE3}\xCC\xDF\x0Fi6\xB2{\xC0\x8Ey>0\x81\x83\x86`@Qa.,\x93\x92\x91\x90a\\\xC1V[`@Q\x80\x91\x03\x90\xA1\x9A\x99PPPPPPPPPPV[`f\x81\x90U`@Q\x81\x81R3\x90\x7F\xAB@\xA3t\xBCQ\xDE7\"\0\xA8\xBC\x98\x1A\xF8\xC9\xEC\xDC\x08\xDF\xDA\xEF\x0B\xB6\xE0\x9F\x88\xF3\xC6\x16\xEF=\x90` \x01`@Q\x80\x91\x03\x90\xA2PV[_a\x1A]\x82a.\x97a.\x90\x87a=\xE7V[\x86\x90aBUV[\x90aBUV[`\x01`\x01`\xA0\x1B\x03\x82\x81\x16_\x81\x81R`\x99` \x90\x81R`@\x91\x82\x90 `\x01\x01\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x94\x86\x16\x94\x85\x17\x90U\x90Q\x92\x83R\x90\x91\x7Fw;T\xC0Muo\xCC^g\x81\x11\xF7\xD70\xDE;\xE9\x81\x92\0\x07\x99\xEE\xE3\xD67\x16\x05Z\x87\xC6\x91\x01a&\x9FV[`fT_\x90`\x01\x90\x81\x16\x03a/'W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[__a/2\x85a\x16\x83V[\x91P\x91P_a/B_\x86\x85a'UV[`\x01`\x01`\xA0\x1B\x03\x87\x81\x16_\x81\x81R`\x9A` R`@\x80\x82 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x94\x8B\x16\x94\x85\x17\x90UQ\x93\x94P\x91\x92\x90\x91\x7F\xC3\xEE\x9F._\xDA\x98\xE8\x06j\x1Ft[-\xF9(_Ao\xE9\x8C\xF2U\x9C\xD2\x14\x84\xB3\xD8t3\x04\x91\xA3_[\x83Q\x81\x10\x15a\x1C\xB2Ws\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0`\x01`\x01`\xA0\x1B\x03\x16\x84\x82\x81Q\x81\x10a/\xD5Wa/\xD5aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16\x03a1EW`@Qc\xA3\xD7^\t`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x88\x81\x16`\x04\x83\x01R_\x91\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\x90\x91\x16\x90c\xA3\xD7^\t\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a0SW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a0w\x91\x90aZ\x0FV[\x90P_`\xA2_\x8A`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ _\x87\x85\x81Q\x81\x10a0\xB0Wa0\xB0aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ `@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPP\x90Pa1$\x85\x84\x81Q\x81\x10a1\x02Wa1\x02aYOV[` \x02` \x01\x01Q\x83`\x01`\x01`@\x1B\x03\x16\x83a8\xDC\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x85\x84\x81Q\x81\x10a16Wa16aYOV[` \x02` \x01\x01\x81\x81RPPPP[a1\x9E\x86\x88\x86\x84\x81Q\x81\x10a1\\Wa1\\aYOV[` \x02` \x01\x01Q_\x87\x86\x81Q\x81\x10a1wWa1waYOV[` \x02` \x01\x01Q\x87\x87\x81Q\x81\x10a1\x91Wa1\x91aYOV[` \x02` \x01\x01Qa2\x88V[`\x01\x01a/\x9CV[_s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xBF\x19`\x01`\x01`\xA0\x1B\x03\x84\x16\x01a2xW`@Qc\xA3\xD7^\t`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x81\x16`\x04\x83\x01R_\x91\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\x90\x91\x16\x90c\xA3\xD7^\t\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a24W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a2X\x91\x90aZ\x0FV[\x90Pa2p`\x01`\x01`@\x1B\x03\x84\x81\x16\x90\x83\x16a8\xC8V[\x91PPa\r\xD0V[P`\x01`\x01`@\x1B\x03\x16\x92\x91PPV[\x80_\x03a2\xA8W`@Qc\n3\xBCi`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81\x15a3\xC5W`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\xA2` \x90\x81R`@\x80\x83 \x93\x88\x16\x83R\x92\x90R a2\xDE\x81\x85\x85\x85aBiV[`@\x80Q` \x81\x01\x90\x91R\x81T\x81R\x7F\x8B\xE92\xBA\xC5Ea\xF2r`\xF9Tc\xD9\xB8\xAB7\xE0k(B\xE5\xEE$\x04\x15|\xC1=\xF6\xEB\x8F\x90\x87\x90\x87\x90a3\x1C\x90a=\xE7V[`@Qa3+\x93\x92\x91\x90a\\\x85V[`@Q\x80\x91\x03\x90\xA1a3<\x86a\x10~V[\x15a\x1C\xB2W`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\x98` \x90\x81R`@\x80\x83 \x93\x89\x16\x83R\x92\x90R\x90\x81 \x80T\x85\x92\x90a3w\x90\x84\x90aZ>V[\x92PP\x81\x90UP\x86`\x01`\x01`\xA0\x1B\x03\x16\x7F\x1E\xC0B\xC9e\xE2\xED\xD7\x10{Q\x18\x8E\xE0\xF3\x83\xE2.v\x17\x90A\xAB:\x9D\x18\xFF\x15\x14\x05\x16l\x87\x87\x86`@Qa3\xBB\x93\x92\x91\x90a\\\x85V[`@Q\x80\x91\x03\x90\xA2P[PPPPPPV[`@Qc\x1B\xEB+\x97`\xE3\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x81\x16`\x04\x83\x01R3`$\x83\x01R0`D\x83\x01R_\x805`\x01`\x01`\xE0\x1B\x03\x19\x16`d\x84\x01R\x91\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\x90\x91\x16\x90c\xDFY\\\xB8\x90`\x84\x01` `@Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a4SW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x19\xB5\x91\x90aY\xC6V[``_a4\x83\x83aB\xE4V[`@\x80Q` \x80\x82R\x81\x83\x01\x90\x92R\x91\x92P_\x91\x90` \x82\x01\x81\x806\x837PPP\x91\x82RP` \x81\x01\x92\x90\x92RP\x90V[a4\xBCaL\0V[_\x82\x81R`\xA4` \x90\x81R`@\x91\x82\x90 \x82Q`\xE0\x81\x01\x84R\x81T`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x82R`\x01\x83\x01T\x81\x16\x82\x85\x01R`\x02\x83\x01T\x16\x81\x85\x01R`\x03\x82\x01T``\x82\x81\x01\x91\x90\x91R`\x04\x83\x01Tc\xFF\xFF\xFF\xFF\x16`\x80\x83\x01R`\x05\x83\x01\x80T\x86Q\x81\x87\x02\x81\x01\x87\x01\x90\x97R\x80\x87R\x91\x95\x92\x94`\xA0\x86\x01\x93\x92\x90\x83\x01\x82\x82\x80\x15a5nW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a5PW[PPPPP\x81R` \x01`\x06\x82\x01\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15a5\xC4W` \x02\x82\x01\x91\x90_R` _ \x90[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a5\xB0W[PPPPP\x81RPP\x91P\x81`\xA0\x01QQ`\x01`\x01`@\x1B\x03\x81\x11\x15a5\xECWa5\xECaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a6\x15W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\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\x83`\x80\x01Qa6I\x91\x90a\\\xEBV[\x90P_Cc\xFF\xFF\xFF\xFF\x16\x82c\xFF\xFF\xFF\xFF\x16\x10a6zWa6u\x84_\x01Q\x85` \x01Q\x86`\xA0\x01Qa'UV[a6\x91V[a6\x91\x84_\x01Q\x85` \x01Q\x86`\xA0\x01Q\x85aC\x0BV[\x90P_[\x84`\xA0\x01QQ\x81\x10\x15a\x13XWa6\xE2\x85`\xC0\x01Q\x82\x81Q\x81\x10a6\xBBWa6\xBBaYOV[` \x02` \x01\x01Q\x83\x83\x81Q\x81\x10a6\xD5Wa6\xD5aYOV[` \x02` \x01\x01QaD9V[\x84\x82\x81Q\x81\x10a6\xF4Wa6\xF4aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a6\x95V[_a7\x15\x84\x83\x85`\x01aDDV[a\x1A]\x90\x85a]\x07V[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x87\x16\x83R\x92\x90R\x90\x81 \x81\x90a7P\x90aD\x9FV[\x90P_a7\xB6`\x01a7\x82\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\0Ca]\x1AV[a7\x8C\x91\x90a]\x1AV[`\x01`\x01`\xA0\x1B\x03\x80\x8A\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x8C\x16\x83R\x92\x90R \x90aD\xB9V[\x90P_a7\xC3\x82\x84a]\x07V[\x90Pa7\xD0\x81\x87\x87aD\xD5V[\x98\x97PPPPPPPPV[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x98` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 \x80T\x83\x92\x90a8\x12\x90\x84\x90a]\x07V[\x92PP\x81\x90UP\x83`\x01`\x01`\xA0\x1B\x03\x16\x7Fi\t`\x007\xB7]{G3\xAE\xDD\x81TB\xB5\xEC\x01\x8A\x82wQ\xC82\xAA\xFFd\xEB\xA5\xD6\xD2\xDD\x84\x84\x84`@Qa\x1A\xFE\x93\x92\x91\x90a\\\x85V[_`\x01`\x01`\xA0\x1B\x03\x82\x16s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x14a8\xA1W\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\0a\x19\xB5V[\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\x92\x91PPV[_a\r\xD0\x83\x83g\r\xE0\xB6\xB3\xA7d\0\0aD\xF3V[_a\x1A]\x82a8\xF4a8\xED\x87a=\xE7V[\x86\x90a8\xC8V[\x90a8\xC8V[`3T`\x01`\x01`\xA0\x1B\x03\x163\x14a\x11\xE8W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FOwnable: caller is not the owner`D\x82\x01R`d\x01a!NV[`3\x80T`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x01`\x01`\xA0\x1B\x03\x19\x83\x16\x81\x17\x90\x93U`@Q\x91\x16\x91\x90\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\xA3PPV[`\xA0\x84\x01QQ\x82\x14a9\xCAW`@QcCqJ\xFD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x83`@\x01Q`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a:\0W`@Qc\x16\x11\r5`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a:\n\x85a\x11\xEAV[_\x81\x81R`\x9E` R`@\x90 T\x90\x91P`\xFF\x16a:;W`@Qc\x87\xC9\xD2\x19`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``_\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\x87`\x80\x01Qa:n\x91\x90a\\\xEBV[\x90P\x80c\xFF\xFF\xFF\xFF\x16Cc\xFF\xFF\xFF\xFF\x16\x11a:\x9CW`@Qcx\xF6z\xE1`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a:\xB3\x87_\x01Q\x88` \x01Q\x89`\xA0\x01Q\x84aC\x0BV[\x87Q`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\xA3` R`@\x90 \x90\x92Pa:\xD9\x91P\x83aE\xD8V[P_\x82\x81R`\xA4` R`@\x81 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x90\x81\x16\x82U`\x01\x82\x01\x80T\x82\x16\x90U`\x02\x82\x01\x80T\x90\x91\x16\x90U`\x03\x81\x01\x82\x90U`\x04\x81\x01\x80Tc\xFF\xFF\xFF\xFF\x19\x16\x90U\x90a;0`\x05\x83\x01\x82aL\xF5V[a;=`\x06\x83\x01_aL\xF5V[PP_\x82\x81R`\x9E` R`@\x90\x81\x90 \x80T`\xFF\x19\x16\x90UQ\x7F\x1F@@\x08\x89'N\xD0{$\x84^PT\xA8z\x0C\xAB\x96\x9E\xB1'z\xAF\xE6\x1A\xE3R\xE7\xC3*\0\x90a;\x86\x90\x84\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA1\x85Q`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x90\x81R`\x9A` R`@\x81 T\x88Q`\xA0\x8A\x01Q\x91\x90\x93\x16\x92a;\xC0\x91\x84\x90a'UV[\x90P_[\x88`\xA0\x01QQ\x81\x10\x15a=\xDCW_a;\xEB\x8A`\xA0\x01Q\x83\x81Q\x81\x10a\x1F\x03Wa\x1F\x03aYOV[\x90P_a<!\x8B`\xC0\x01Q\x84\x81Q\x81\x10a<\x07Wa<\x07aYOV[` \x02` \x01\x01Q\x87\x85\x81Q\x81\x10a6\xD5Wa6\xD5aYOV[\x90P\x80_\x03a<1WPPa=\xD4V[\x87\x15a<\xFFW\x81`\x01`\x01`\xA0\x1B\x03\x16c.\xAEA\x8C\x8C_\x01Q\x8D`\xA0\x01Q\x86\x81Q\x81\x10a<`Wa<`aYOV[` \x02` \x01\x01Q\x8D\x8D\x88\x81\x81\x10a<zWa<zaYOV[\x90P` \x02\x01` \x81\x01\x90a<\x8F\x91\x90aQ\x91V[`@Q`\xE0\x85\x90\x1B`\x01`\x01`\xE0\x1B\x03\x19\x16\x81R`\x01`\x01`\xA0\x1B\x03\x93\x84\x16`\x04\x82\x01R\x91\x83\x16`$\x83\x01R\x90\x91\x16`D\x82\x01R`d\x81\x01\x84\x90R`\x84\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a<\xE4W__\xFD[PZ\xF1\x15\x80\x15a<\xF6W=__>=_\xFD[PPPPa=\xD1V[__\x83`\x01`\x01`\xA0\x1B\x03\x16cP\xFFr%\x8E_\x01Q\x8F`\xA0\x01Q\x88\x81Q\x81\x10a=*Wa=*aYOV[` \x02` \x01\x01Q\x86`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a=Q\x93\x92\x91\x90a\\\x85V[`@\x80Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a=lW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a=\x90\x91\x90a]6V[\x91P\x91Pa=\xCE\x87\x8E_\x01Q\x8F`\xA0\x01Q\x88\x81Q\x81\x10a=\xB2Wa=\xB2aYOV[` \x02` \x01\x01Q\x85\x85\x8B\x8B\x81Q\x81\x10a1\x91Wa1\x91aYOV[PP[PP[`\x01\x01a;\xC4V[PPPPPPPPPV[\x80Q_\x90\x15a=\xF7W\x81Qa\x19\xB5V[g\r\xE0\xB6\xB3\xA7d\0\0\x92\x91PPV[`fT``\x90`\x01\x90`\x02\x90\x81\x16\x03a>2W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x81\x81R`\x9A` R`@\x80\x82 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x81\x16\x90\x91U\x90Q\x93\x16\x92\x83\x92\x91\x7F\xFE\xE3\tf\xA2V\xB7\x1E\x14\xBC\x0E\xBF\xC9C\x15\xE2\x8E\xF4\xA9zq1\xA9\xE2\xB7\xA3\x10\xA7:\xF4Fv\x91\xA3__a>\x91\x86a\x16\x83V[\x91P\x91P\x81Q_\x03a>\xA5WPPPa@_V[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15a>\xBEWa>\xBEaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a>\xE7W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x94P_a>\xF6\x87\x85\x85a'UV[\x90P_[\x83Q\x81\x10\x15a@YW`@\x80Q`\x01\x80\x82R\x81\x83\x01\x90\x92R_\x91` \x80\x83\x01\x90\x806\x837PP`@\x80Q`\x01\x80\x82R\x81\x83\x01\x90\x92R\x92\x93P_\x92\x91P` \x80\x83\x01\x90\x806\x837PP`@\x80Q`\x01\x80\x82R\x81\x83\x01\x90\x92R\x92\x93P_\x92\x91P` \x80\x83\x01\x90\x806\x837\x01\x90PP\x90P\x86\x84\x81Q\x81\x10a?zWa?zaYOV[` \x02` \x01\x01Q\x83_\x81Q\x81\x10a?\x94Wa?\x94aYOV[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x85\x84\x81Q\x81\x10a?\xC6Wa?\xC6aYOV[` \x02` \x01\x01Q\x82_\x81Q\x81\x10a?\xE0Wa?\xE0aYOV[` \x02` \x01\x01\x81\x81RPP\x84\x84\x81Q\x81\x10a?\xFEWa?\xFEaYOV[` \x02` \x01\x01Q\x81_\x81Q\x81\x10a@\x18Wa@\x18aYOV[` \x02` \x01\x01\x81\x81RPPa@1\x8B\x89\x85\x85\x85a(\xA7V[\x8A\x85\x81Q\x81\x10a@CWa@CaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RPPP`\x01\x01a>\xFAV[PPPPP[P\x91\x90PV[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x99` R`@\x90 `\x01\x01T\x16\x80a@\x8DWPa\x0F%V[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x9C` \x90\x81R`@\x80\x83 \x85\x84R\x90\x91R\x90 T`\xFF\x16\x15a@\xD1W`@Qc\rLL\x91`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x9C` \x90\x81R`@\x80\x83 \x85\x84R\x82R\x90\x91 \x80T`\xFF\x19\x16`\x01\x17\x90U\x83\x01Qa#K\x90\x82\x90aA\x18\x90\x88\x90\x88\x90\x84\x90\x88\x90a\x08\x89V[\x85Q` \x87\x01QaE\xE3V[``_aAP\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\0a4wV[\x90P\x80_\x81Q\x81\x10aAdWaAdaYOV[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x81`\x01\x81Q\x81\x10aA\x82WaA\x82aYOV[\x01` \x90\x81\x01Q`@Q`\x01`\x01`\xF8\x1B\x03\x19\x93\x84\x16\x92\x81\x01\x92\x90\x92R\x91\x90\x91\x16`!\x82\x01R`\"\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x91PP\x90V[``_a\r\xD0\x83aF5V[_a\r\xD0aA\xD9\x84a=\xE7V[\x83\x90a8\xC8V[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 aB\x0F\x90aD\x9FV[\x90Pa\x0F%CaB\x1F\x84\x84aZ>V[`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x8A\x16\x83R\x92\x90R \x91\x90aF\x8EV[_a\r\xD0\x83\x83aF\x99V[_a\r\xD0\x83g\r\xE0\xB6\xB3\xA7d\0\0\x84aD\xF3V[\x82_\x03aB\x95W`@\x80Q` \x81\x01\x90\x91R\x84T\x81RaB\x8E\x90\x82\x90a.\x97\x90a=\xE7V[\x84Ua\x0F%V[`@\x80Q` \x81\x01\x90\x91R\x84T\x81R_\x90aB\xB1\x90\x85\x84a8\xDCV[\x90P_aB\xBE\x84\x83aZ>V[\x90P_aB\xD9\x84a.\x97aB\xD2\x88\x8AaZ>V[\x85\x90aBUV[\x87UPPPPPPPV[_`\xFF\x82\x16`\x1F\x81\x11\x15a\x19\xB5W`@Qc,\xD4J\xC3`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``_\x83Q`\x01`\x01`@\x1B\x03\x81\x11\x15aC'WaC'aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15aCPW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\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\x16c\x94\xD7\xD0\x0C\x87\x87\x87`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01aC\xA4\x93\x92\x91\x90a]XV[_`@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15aC\xBEW=__>=_\xFD[PPPP`@Q=_\x82>`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01`@RaC\xE5\x91\x90\x81\x01\x90a[\xF6V[\x90P_[\x85Q\x81\x10\x15aD-WaD\x08\x88\x87\x83\x81Q\x81\x10a(PWa(PaYOV[\x83\x82\x81Q\x81\x10aD\x1AWaD\x1AaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01aC\xE9V[P\x90\x96\x95PPPPPPV[_a\r\xD0\x83\x83a8\xC8V[__aDQ\x86\x86\x86aD\xF3V[\x90P`\x01\x83`\x02\x81\x11\x15aDgWaDga]\x91V[\x14\x80\x15aD\x83WP_\x84\x80aD~WaD~a]\xA5V[\x86\x88\t\x11[\x15aD\x96WaD\x93`\x01\x82aZ>V[\x90P[\x95\x94PPPPPV[_aD\xAA\x82\x82aF\xE5V[`\x01`\x01`\xE0\x1B\x03\x16\x92\x91PPV[_aD\xC5\x83\x83\x83aG*V[`\x01`\x01`\xE0\x1B\x03\x16\x93\x92PPPV[_a\x1A]aD\xE3\x83\x85a]\xB9V[\x85\x90`\x01`\x01`@\x1B\x03\x16a8\xC8V[_\x80\x80_\x19\x85\x87\t\x85\x87\x02\x92P\x82\x81\x10\x83\x82\x03\x03\x91PP\x80_\x03aE*W\x83\x82\x81aE WaE a]\xA5V[\x04\x92PPPa\r\xD0V[\x80\x84\x11aEqW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x15`$\x82\x01RtMath: mulDiv overflow`X\x1B`D\x82\x01R`d\x01a!NV[_\x84\x86\x88\t`\x02`\x01\x87\x19\x81\x01\x88\x16\x97\x88\x90\x04`\x03\x81\x02\x83\x18\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x90\x81\x02\x90\x92\x03\x90\x91\x02_\x88\x90\x03\x88\x90\x04\x90\x91\x01\x85\x83\x11\x90\x94\x03\x93\x90\x93\x02\x93\x03\x94\x90\x94\x04\x91\x90\x91\x17\x02\x94\x93PPPPV[_a\r\xD0\x83\x83aGsV[B\x81\x10\x15aF\x04W`@Qc\x08\x19\xBD\xCD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[aF\x18`\x01`\x01`\xA0\x1B\x03\x85\x16\x84\x84aHVV[a\x0F%W`@Qc\x8B\xAAW\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``\x81_\x01\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15aF\x82W` \x02\x82\x01\x91\x90_R` _ \x90[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11aFnW[PPPPP\x90P\x91\x90PV[a\x11\x06\x83\x83\x83aH\xAAV[_\x81\x81R`\x01\x83\x01` R`@\x81 TaF\xDEWP\x81T`\x01\x81\x81\x01\x84U_\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ua\x19\xB5V[P_a\x19\xB5V[\x81T_\x90\x80\x15aG\"WaG\x0B\x84aF\xFE`\x01\x84a]\x07V[_\x91\x82R` \x90\x91 \x01\x90V[Td\x01\0\0\0\0\x90\x04`\x01`\x01`\xE0\x1B\x03\x16a\x1A]V[P\x90\x92\x91PPV[\x82T_\x90\x81aG;\x86\x86\x83\x85aI\xB0V[\x90P\x80\x15aGiWaGR\x86aF\xFE`\x01\x84a]\x07V[Td\x01\0\0\0\0\x90\x04`\x01`\x01`\xE0\x1B\x03\x16a\t\x07V[P\x91\x94\x93PPPPV[_\x81\x81R`\x01\x83\x01` R`@\x81 T\x80\x15aHMW_aG\x95`\x01\x83a]\x07V[\x85T\x90\x91P_\x90aG\xA8\x90`\x01\x90a]\x07V[\x90P\x81\x81\x14aH\x07W_\x86_\x01\x82\x81T\x81\x10aG\xC6WaG\xC6aYOV[\x90_R` _ \x01T\x90P\x80\x87_\x01\x84\x81T\x81\x10aG\xE6WaG\xE6aYOV[_\x91\x82R` \x80\x83 \x90\x91\x01\x92\x90\x92U\x91\x82R`\x01\x88\x01\x90R`@\x90 \x83\x90U[\x85T\x86\x90\x80aH\x18WaH\x18a]\xD8V[`\x01\x90\x03\x81\x81\x90_R` _ \x01_\x90U\x90U\x85`\x01\x01_\x86\x81R` \x01\x90\x81R` \x01_ _\x90U`\x01\x93PPPPa\x19\xB5V[_\x91PPa\x19\xB5V[___aHc\x85\x85aJ\x03V[\x90\x92P\x90P_\x81`\x04\x81\x11\x15aH{WaH{a]\x91V[\x14\x80\x15aH\x99WP\x85`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x14[\x80a\t\x07WPa\t\x07\x86\x86\x86aJBV[\x82T\x80\x15aIbW_aH\xC2\x85aF\xFE`\x01\x85a]\x07V[`@\x80Q\x80\x82\x01\x90\x91R\x90Tc\xFF\xFF\xFF\xFF\x80\x82\x16\x80\x84Rd\x01\0\0\0\0\x90\x92\x04`\x01`\x01`\xE0\x1B\x03\x16` \x84\x01R\x91\x92P\x90\x85\x16\x10\x15aI\x15W`@Qc\x15\x1B\x8E?`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Qc\xFF\xFF\xFF\xFF\x80\x86\x16\x91\x16\x03aI`W\x82aI6\x86aF\xFE`\x01\x86a]\x07V[\x80T`\x01`\x01`\xE0\x1B\x03\x92\x90\x92\x16d\x01\0\0\0\0\x02c\xFF\xFF\xFF\xFF\x90\x92\x16\x91\x90\x91\x17\x90UPPPPPV[P[P`@\x80Q\x80\x82\x01\x90\x91Rc\xFF\xFF\xFF\xFF\x92\x83\x16\x81R`\x01`\x01`\xE0\x1B\x03\x91\x82\x16` \x80\x83\x01\x91\x82R\x85T`\x01\x81\x01\x87U_\x96\x87R\x95 \x91Q\x90Q\x90\x92\x16d\x01\0\0\0\0\x02\x91\x90\x92\x16\x17\x91\x01UV[_[\x81\x83\x10\x15a\x1B\xDAW_aI\xC5\x84\x84aK)V[_\x87\x81R` \x90 \x90\x91Pc\xFF\xFF\xFF\xFF\x86\x16\x90\x82\x01Tc\xFF\xFF\xFF\xFF\x16\x11\x15aI\xEFW\x80\x92PaI\xFDV[aI\xFA\x81`\x01aZ>V[\x93P[PaI\xB2V[__\x82Q`A\x03aJ7W` \x83\x01Q`@\x84\x01Q``\x85\x01Q_\x1AaJ+\x87\x82\x85\x85aKCV[\x94P\x94PPPPa \xB1V[P_\x90P`\x02a \xB1V[___\x85`\x01`\x01`\xA0\x1B\x03\x16c\x16&\xBA~`\xE0\x1B\x86\x86`@Q`$\x01aJj\x92\x91\x90a]\xECV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R` \x82\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16`\x01`\x01`\xE0\x1B\x03\x19\x90\x94\x16\x93\x90\x93\x17\x90\x92R\x90QaJ\xA8\x91\x90a^\x04V[_`@Q\x80\x83\x03\x81\x85Z\xFA\x91PP=\x80_\x81\x14aJ\xE0W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>aJ\xE5V[``\x91P[P\x91P\x91P\x81\x80\x15aJ\xF9WP` \x81Q\x10\x15[\x80\x15a\t\x07WP\x80Qc\x0B\x13]?`\xE1\x1B\x90aK\x1E\x90\x83\x01` \x90\x81\x01\x90\x84\x01a[gV[\x14\x96\x95PPPPPPV[_aK7`\x02\x84\x84\x18a^\x15V[a\r\xD0\x90\x84\x84\x16aZ>V[_\x80\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x83\x11\x15aKxWP_\x90P`\x03aK\xF7V[`@\x80Q_\x80\x82R` \x82\x01\x80\x84R\x89\x90R`\xFF\x88\x16\x92\x82\x01\x92\x90\x92R``\x81\x01\x86\x90R`\x80\x81\x01\x85\x90R`\x01\x90`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15aK\xC9W=__>=_\xFD[PP`@Q`\x1F\x19\x01Q\x91PP`\x01`\x01`\xA0\x1B\x03\x81\x16aK\xF1W_`\x01\x92P\x92PPaK\xF7V[\x91P_\x90P[\x94P\x94\x92PPPV[`@Q\x80`\xE0\x01`@R\x80_`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01_`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01_`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01_\x81R` \x01_c\xFF\xFF\xFF\xFF\x16\x81R` \x01``\x81R` \x01``\x81RP\x90V[\x82\x80T\x82\x82U\x90_R` _ \x90\x81\x01\x92\x82\x15aL\xACW\x91` \x02\x82\x01[\x82\x81\x11\x15aL\xACW\x82Q\x82T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x17\x82U` \x90\x92\x01\x91`\x01\x90\x91\x01\x90aLwV[PaL\xB8\x92\x91PaM\x0CV[P\x90V[\x82\x80T\x82\x82U\x90_R` _ \x90\x81\x01\x92\x82\x15aL\xACW\x91` \x02\x82\x01[\x82\x81\x11\x15aL\xACW\x82Q\x82U\x91` \x01\x91\x90`\x01\x01\x90aL\xDAV[P\x80T_\x82U\x90_R` _ \x90\x81\x01\x90a$\xD8\x91\x90[[\x80\x82\x11\x15aL\xB8W_\x81U`\x01\x01aM\rV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a$\xD8W__\xFD[\x805a\"\xF7\x81aM V[_____`\xA0\x86\x88\x03\x12\x15aMSW__\xFD[\x855aM^\x81aM V[\x94P` \x86\x015aMn\x81aM V[\x93P`@\x86\x015aM~\x81aM V[\x94\x97\x93\x96P\x93\x94``\x81\x015\x94P`\x80\x015\x92\x91PPV[__\x83`\x1F\x84\x01\x12aM\xA6W__\xFD[P\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aM\xBCW__\xFD[` \x83\x01\x91P\x83` \x82`\x05\x1B\x85\x01\x01\x11\x15a \xB1W__\xFD[__` \x83\x85\x03\x12\x15aM\xE7W__\xFD[\x825`\x01`\x01`@\x1B\x03\x81\x11\x15aM\xFCW__\xFD[aN\x08\x85\x82\x86\x01aM\x96V[\x90\x96\x90\x95P\x93PPPPV[` \x80\x82R\x82Q\x82\x82\x01\x81\x90R_\x91\x84\x01\x90`@\x84\x01\x90\x83[\x81\x81\x10\x15a(\x9CW\x83Q\x83R` \x93\x84\x01\x93\x90\x92\x01\x91`\x01\x01aN-V[_` \x82\x84\x03\x12\x15aN[W__\xFD[P5\x91\x90PV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@Q`\xE0\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15aN\x98WaN\x98aNbV[`@R\x90V[`@\x80Q\x90\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15aN\x98WaN\x98aNbV[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15aN\xE8WaN\xE8aNbV[`@R\x91\x90PV[_`\x01`\x01`@\x1B\x03\x82\x11\x15aO\x08WaO\x08aNbV[P`\x05\x1B` \x01\x90V[_\x82`\x1F\x83\x01\x12aO!W__\xFD[\x815aO4aO/\x82aN\xF0V[aN\xC0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x86\x01\x01\x92P\x85\x83\x11\x15aOUW__\xFD[` \x85\x01[\x83\x81\x10\x15aO{W\x805aOm\x81aM V[\x83R` \x92\x83\x01\x92\x01aOZV[P\x95\x94PPPPPV[_\x82`\x1F\x83\x01\x12aO\x94W__\xFD[\x815aO\xA2aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x86\x01\x01\x92P\x85\x83\x11\x15aO\xC3W__\xFD[` \x85\x01[\x83\x81\x10\x15aO{W\x805\x83R` \x92\x83\x01\x92\x01aO\xC8V[___``\x84\x86\x03\x12\x15aO\xF2W__\xFD[\x835aO\xFD\x81aM V[\x92P` \x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aP\x17W__\xFD[aP#\x86\x82\x87\x01aO\x12V[\x92PP`@\x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aP>W__\xFD[aPJ\x86\x82\x87\x01aO\x85V[\x91PP\x92P\x92P\x92V[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15aP\x84W\x81Q\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01aPfV[P\x93\x94\x93PPPPV[` \x81R_a\r\xD0` \x83\x01\x84aPTV[\x805c\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\"\xF7W__\xFD[__\x83`\x1F\x84\x01\x12aP\xC3W__\xFD[P\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aP\xD9W__\xFD[` \x83\x01\x91P\x83` \x82\x85\x01\x01\x11\x15a \xB1W__\xFD[____``\x85\x87\x03\x12\x15aQ\x03W__\xFD[\x845aQ\x0E\x81aM V[\x93PaQ\x1C` \x86\x01aP\xA0V[\x92P`@\x85\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aQ6W__\xFD[aQB\x87\x82\x88\x01aP\xB3V[\x95\x98\x94\x97P\x95PPPPV[____`\x80\x85\x87\x03\x12\x15aQaW__\xFD[\x845aQl\x81aM V[\x93P` \x85\x015aQ|\x81aM V[\x93\x96\x93\x95PPPP`@\x82\x015\x91``\x015\x90V[_` \x82\x84\x03\x12\x15aQ\xA1W__\xFD[\x815a\r\xD0\x81aM V[__`@\x83\x85\x03\x12\x15aQ\xBDW__\xFD[\x825aQ\xC8\x81aM V[\x91P` \x83\x015aQ\xD8\x81aM V[\x80\x91PP\x92P\x92\x90PV[_[\x83\x81\x10\x15aQ\xFDW\x81\x81\x01Q\x83\x82\x01R` \x01aQ\xE5V[PP_\x91\x01RV[_\x81Q\x80\x84RaR\x1C\x81` \x86\x01` \x86\x01aQ\xE3V[`\x1F\x01`\x1F\x19\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R_a\r\xD0` \x83\x01\x84aR\x05V[_`\xE0\x82\x84\x03\x12\x15aRRW__\xFD[aRZaNvV[\x90PaRe\x82aM4V[\x81RaRs` \x83\x01aM4V[` \x82\x01RaR\x84`@\x83\x01aM4V[`@\x82\x01R``\x82\x81\x015\x90\x82\x01RaR\x9F`\x80\x83\x01aP\xA0V[`\x80\x82\x01R`\xA0\x82\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aR\xBCW__\xFD[aR\xC8\x84\x82\x85\x01aO\x12V[`\xA0\x83\x01RP`\xC0\x82\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aR\xE6W__\xFD[aR\xF2\x84\x82\x85\x01aO\x85V[`\xC0\x83\x01RP\x92\x91PPV[_` \x82\x84\x03\x12\x15aS\x0EW__\xFD[\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aS#W__\xFD[a\x1A]\x84\x82\x85\x01aRBV[_` \x82\x84\x03\x12\x15aS?W__\xFD[\x815`\xFF\x81\x16\x81\x14a\r\xD0W__\xFD[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15aP\x84W\x81Q`\x01`\x01`\xA0\x1B\x03\x16\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01aSaV[\x80Q`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x83R` \x80\x83\x01Q\x82\x16\x90\x84\x01R`@\x80\x83\x01Q\x90\x91\x16\x90\x83\x01R``\x80\x82\x01Q\x90\x83\x01R`\x80\x80\x82\x01Q_\x91aS\xD3\x90\x85\x01\x82c\xFF\xFF\xFF\xFF\x16\x90RV[P`\xA0\x82\x01Q`\xE0`\xA0\x85\x01RaS\xED`\xE0\x85\x01\x82aSOV[\x90P`\xC0\x83\x01Q\x84\x82\x03`\xC0\x86\x01RaD\x96\x82\x82aPTV[`@\x81R_aT\x18`@\x83\x01\x85aS\x88V[\x82\x81\x03` \x84\x01RaD\x96\x81\x85aPTV[_\x82\x82Q\x80\x85R` \x85\x01\x94P` \x81`\x05\x1B\x83\x01\x01` \x85\x01_[\x83\x81\x10\x15aD-W`\x1F\x19\x85\x84\x03\x01\x88RaTb\x83\x83QaPTV[` \x98\x89\x01\x98\x90\x93P\x91\x90\x91\x01\x90`\x01\x01aTFV[_`@\x82\x01`@\x83R\x80\x85Q\x80\x83R``\x85\x01\x91P``\x81`\x05\x1B\x86\x01\x01\x92P` \x87\x01_[\x82\x81\x10\x15aT\xCFW`_\x19\x87\x86\x03\x01\x84RaT\xBA\x85\x83QaS\x88V[\x94P` \x93\x84\x01\x93\x91\x90\x91\x01\x90`\x01\x01aT\x9EV[PPPP\x82\x81\x03` \x84\x01RaD\x96\x81\x85aT*V[`\x01`\x01`@\x1B\x03\x81\x16\x81\x14a$\xD8W__\xFD[____`\x80\x85\x87\x03\x12\x15aU\x0CW__\xFD[\x845aU\x17\x81aM V[\x93P` \x85\x015aU'\x81aM V[\x92P`@\x85\x015aU7\x81aT\xE5V[\x91P``\x85\x015aUG\x81aT\xE5V[\x93\x96\x92\x95P\x90\x93PPV[___``\x84\x86\x03\x12\x15aUdW__\xFD[\x835aUo\x81aM V[\x92P` \x84\x015\x91P`@\x84\x015aU\x86\x81aT\xE5V[\x80\x91PP\x92P\x92P\x92V[`@\x81R_aT\x18`@\x83\x01\x85aSOV[___`@\x84\x86\x03\x12\x15aU\xB5W__\xFD[\x835aU\xC0\x81aM V[\x92P` \x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aU\xDAW__\xFD[aU\xE6\x86\x82\x87\x01aP\xB3V[\x94\x97\x90\x96P\x93\x94PPPPV[__`@\x83\x85\x03\x12\x15aV\x04W__\xFD[\x825aV\x0F\x81aM V[\x91P` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV)W__\xFD[aV5\x85\x82\x86\x01aO\x12V[\x91PP\x92P\x92\x90PV[______``\x87\x89\x03\x12\x15aVTW__\xFD[\x865`\x01`\x01`@\x1B\x03\x81\x11\x15aViW__\xFD[aVu\x89\x82\x8A\x01aM\x96V[\x90\x97P\x95PP` \x87\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV\x93W__\xFD[aV\x9F\x89\x82\x8A\x01aM\x96V[\x90\x95P\x93PP`@\x87\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV\xBDW__\xFD[aV\xC9\x89\x82\x8A\x01aM\x96V[\x97\x9A\x96\x99P\x94\x97P\x92\x95\x93\x94\x92PPPV[` \x81R_a\r\xD0` \x83\x01\x84aS\x88V[___``\x84\x86\x03\x12\x15aV\xFFW__\xFD[\x835aW\n\x81aM V[\x92P` \x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aW$W__\xFD[\x84\x01`@\x81\x87\x03\x12\x15aW5W__\xFD[aW=aN\x9EV[\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aWRW__\xFD[\x82\x01`\x1F\x81\x01\x88\x13aWbW__\xFD[\x805`\x01`\x01`@\x1B\x03\x81\x11\x15aW{WaW{aNbV[aW\x8E`\x1F\x82\x01`\x1F\x19\x16` \x01aN\xC0V[\x81\x81R\x89` \x83\x85\x01\x01\x11\x15aW\xA2W__\xFD[\x81` \x84\x01` \x83\x017_` \x92\x82\x01\x83\x01R\x83R\x92\x83\x015\x92\x82\x01\x92\x90\x92R\x93\x96\x93\x95PPPP`@\x91\x90\x91\x015\x90V[__`@\x83\x85\x03\x12\x15aW\xE5W__\xFD[\x825aW\xF0\x81aM V[\x94` \x93\x90\x93\x015\x93PPPV[`@\x81R_aT\x18`@\x83\x01\x85aPTV[\x80\x15\x15\x81\x14a$\xD8W__\xFD[____``\x85\x87\x03\x12\x15aX0W__\xFD[\x845`\x01`\x01`@\x1B\x03\x81\x11\x15aXEW__\xFD[\x85\x01`\xE0\x81\x88\x03\x12\x15aXVW__\xFD[\x93P` \x85\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aXpW__\xFD[aX|\x87\x82\x88\x01aM\x96V[\x90\x94P\x92PP`@\x85\x015aUG\x81aX\x10V[__`@\x83\x85\x03\x12\x15aX\xA1W__\xFD[\x825`\x01`\x01`@\x1B\x03\x81\x11\x15aX\xB6W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13aX\xC6W__\xFD[\x805aX\xD4aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x85\x01\x01\x92P\x87\x83\x11\x15aX\xF5W__\xFD[` \x84\x01\x93P[\x82\x84\x10\x15aY W\x835aY\x0F\x81aM V[\x82R` \x93\x84\x01\x93\x90\x91\x01\x90aX\xFCV[\x94PPPP` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV)W__\xFD[` \x81R_a\r\xD0` \x83\x01\x84aT*V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_\x825`^\x19\x836\x03\x01\x81\x12aYwW__\xFD[\x91\x90\x91\x01\x92\x91PPV[__\x835`\x1E\x19\x846\x03\x01\x81\x12aY\x96W__\xFD[\x83\x01\x805\x91P`\x01`\x01`@\x1B\x03\x82\x11\x15aY\xAFW__\xFD[` \x01\x91P`\x05\x81\x90\x1B6\x03\x82\x13\x15a \xB1W__\xFD[_` \x82\x84\x03\x12\x15aY\xD6W__\xFD[\x81Qa\r\xD0\x81aX\x10V[` \x81R\x81` \x82\x01R\x81\x83`@\x83\x017_\x81\x83\x01`@\x90\x81\x01\x91\x90\x91R`\x1F\x90\x92\x01`\x1F\x19\x16\x01\x01\x91\x90PV[_` \x82\x84\x03\x12\x15aZ\x1FW__\xFD[\x81Qa\r\xD0\x81aT\xE5V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[_\x82`\x1F\x83\x01\x12aZ`W__\xFD[\x81QaZnaO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x86\x01\x01\x92P\x85\x83\x11\x15aZ\x8FW__\xFD[` \x85\x01[\x83\x81\x10\x15aO{W\x80Q\x83R` \x92\x83\x01\x92\x01aZ\x94V[__`@\x83\x85\x03\x12\x15aZ\xBDW__\xFD[\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15aZ\xD2W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13aZ\xE2W__\xFD[\x80QaZ\xF0aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x85\x01\x01\x92P\x87\x83\x11\x15a[\x11W__\xFD[` \x84\x01\x93P[\x82\x84\x10\x15a[<W\x83Qa[+\x81aM V[\x82R` \x93\x84\x01\x93\x90\x91\x01\x90a[\x18V[\x80\x95PPPPP` \x83\x01Q`\x01`\x01`@\x1B\x03\x81\x11\x15a[[W__\xFD[aV5\x85\x82\x86\x01aZQV[_` \x82\x84\x03\x12\x15a[wW__\xFD[PQ\x91\x90PV[_\x825`\xDE\x19\x836\x03\x01\x81\x12aYwW__\xFD[_a\x19\xB56\x83aRBV[_` \x82\x84\x03\x12\x15a[\xADW__\xFD[\x815a\r\xD0\x81aX\x10V[_` \x82\x84\x03\x12\x15a[\xC8W__\xFD[\x81Qa\r\xD0\x81aM V[`\x01`\x01`\xA0\x1B\x03\x83\x16\x81R`@` \x82\x01\x81\x90R_\x90a\x1A]\x90\x83\x01\x84aSOV[_` \x82\x84\x03\x12\x15a\\\x06W__\xFD[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\\\x1BW__\xFD[\x82\x01`\x1F\x81\x01\x84\x13a\\+W__\xFD[\x80Qa\\9aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x85\x01\x01\x92P\x86\x83\x11\x15a\\ZW__\xFD[` \x84\x01\x93P[\x82\x84\x10\x15a\t\x07W\x83Qa\\t\x81aT\xE5V[\x82R` \x93\x84\x01\x93\x90\x91\x01\x90a\\aV[`\x01`\x01`\xA0\x1B\x03\x93\x84\x16\x81R\x91\x90\x92\x16` \x82\x01R`@\x81\x01\x91\x90\x91R``\x01\x90V[_`\x01\x82\x01a\\\xBAWa\\\xBAaZ*V[P`\x01\x01\x90V[\x83\x81R``` \x82\x01R_a\\\xD9``\x83\x01\x85aS\x88V[\x82\x81\x03`@\x84\x01Ra\t\x07\x81\x85aPTV[c\xFF\xFF\xFF\xFF\x81\x81\x16\x83\x82\x16\x01\x90\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[\x81\x81\x03\x81\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[c\xFF\xFF\xFF\xFF\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[__`@\x83\x85\x03\x12\x15a]GW__\xFD[PP\x80Q` \x90\x91\x01Q\x90\x92\x90\x91PV[`\x01`\x01`\xA0\x1B\x03\x84\x16\x81R``` \x82\x01\x81\x90R_\x90a]{\x90\x83\x01\x85aSOV[\x90Pc\xFF\xFF\xFF\xFF\x83\x16`@\x83\x01R\x94\x93PPPPV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[`\x01`\x01`@\x1B\x03\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[cNH{q`\xE0\x1B_R`1`\x04R`$_\xFD[\x82\x81R`@` \x82\x01R_a\x1A]`@\x83\x01\x84aR\x05V[_\x82QaYw\x81\x84` \x87\x01aQ\xE3V[_\x82a^/WcNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[P\x04\x90V\xFE\xA2dipfsX\"\x12 \xAD{\x0BY\x11\x02\x1F\xA3\xEF8T\xA4\x85>\x9E\x1F5\xBAr\xED\x89=9\xC5\x9F\x87M\xE9@!X\xFCdsolcC\0\x08\x1B\x003",
3088 );
3089 #[rustfmt::skip]
3095 #[allow(clippy::all)]
3096 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
3097 b"`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\x02\xFFW_5`\xE0\x1C\x80cqP\x18\xA6\x11a\x01\x95W\x80c\xBF\xAE?\xD2\x11a\0\xE4W\x80c\xE4\xCC?\x90\x11a\0\x9EW\x80c\xF2\xFD\xE3\x8B\x11a\0yW\x80c\xF2\xFD\xE3\x8B\x14a\x08HW\x80c\xF6\x98\xDA%\x14a\x08[W\x80c\xFA\xBC\x1C\xBC\x14a\x08cW\x80c\xFD\x8A\xA8\x8D\x14a\x08vW__\xFD[\x80c\xE4\xCC?\x90\x14a\x08\x02W\x80c\xEE\xA9\x06K\x14a\x08\x15W\x80c\xF0\xE0\xE6v\x14a\x08(W__\xFD[\x80c\xBF\xAE?\xD2\x14a\x07MW\x80c\xC4H\xFE\xB8\x14a\x07`W\x80c\xC9x\xF7\xAC\x14a\x07\x94W\x80c\xCA\x8A\xA7\xC7\x14a\x07\xB5W\x80c\xCDm\xC6\x87\x14a\x07\xDCW\x80c\xDA\x8B\xE8d\x14a\x07\xEFW__\xFD[\x80c\x91\x04\xC3\x19\x11a\x01OW\x80c\xA1x\x84\x84\x11a\x01*W\x80c\xA1x\x84\x84\x14a\x06\xCCW\x80c\xA3:43\x14a\x06\xEBW\x80c\xB7\xF0n\xBE\x14a\x06\xFEW\x80c\xBBE\xFE\xF2\x14a\x07 W__\xFD[\x80c\x91\x04\xC3\x19\x14a\x06~W\x80c\x945\xBBC\x14a\x06\x99W\x80c\x99\xF57\x1B\x14a\x06\xACW__\xFD[\x80cqP\x18\xA6\x14a\x05\xEEW\x80cw\x8EU\xF3\x14a\x05\xF6W\x80cx)n\xC5\x14a\x06 W\x80c\x88o\x11\x95\x14a\x063W\x80c\x8D\xA5\xCB[\x14a\x06ZW\x80c\x90\x04\x13G\x14a\x06kW__\xFD[\x80cT\xFDMP\x11a\x02QW\x80c]\xD6\x85y\x11a\x02\x0BW\x80ce\xDA\x12d\x11a\x01\xE6W\x80ce\xDA\x12d\x14a\x05\x7FW\x80cf\xD5\xBA\x93\x14a\x05\xA7W\x80cmp\xF7\xAE\x14a\x05\xC8W\x80cn\x17DH\x14a\x05\xDBW__\xFD[\x80c]\xD6\x85y\x14a\x058W\x80c`\x1B\xB3o\x14a\x05YW\x80c`\xA0\xD1\xCE\x14a\x05lW__\xFD[\x80cT\xFDMP\x14a\x04\xBCW\x80cY\\jg\x14a\x04\xD1W\x80cY{6\xDA\x14a\x04\xD9W\x80cZ\xC8j\xB7\x14a\x04\xECW\x80c\\\x97Z\xBB\x14a\x05\x0FW\x80c]\x97^\x88\x14a\x05\x17W__\xFD[\x80c9\xB7\x0E8\x11a\x02\xBCW\x80c>(9\x1D\x11a\x02\x97W\x80c>(9\x1D\x14a\x048W\x80cFW\xE2j\x14a\x04[W\x80cFe\xBC\xDA\x14a\x04\x82W\x80cT\xB7\xC9l\x14a\x04\xA9W__\xFD[\x80c9\xB7\x0E8\x14a\x03\xB8W\x80c<e\x1C\xF2\x14a\x03\xF7W\x80c<\xDE\xB5\xE0\x14a\x04\nW__\xFD[\x80c\x04\xA4\xF9y\x14a\x03\x03W\x80c\x0B\x9FHz\x14a\x03=W\x80c\r\xD8\xDD\x02\x14a\x03PW\x80c\x13d9\xDD\x14a\x03pW\x80c%\xDF\x92.\x14a\x03\x85W\x80c*\xA6\xD8\x88\x14a\x03\xA5W[__\xFD[a\x03*\x7F\x14\xBD\xE6t\xC9\xF6K*\xD0\x0E\xAA\xEEJ\x8B\xED\x1F\xAB\xEF5\xC7P~<[\x9C\xFC\x946\x90\x9A-\xAD\x81V[`@Q\x90\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x03*a\x03K6`\x04aM?V[a\x08\x89V[a\x03ca\x03^6`\x04aM\xD6V[a\t\x11V[`@Qa\x034\x91\x90aN\x14V[a\x03\x83a\x03~6`\x04aNKV[a\x0B\xA2V[\0[a\x03\x98a\x03\x936`\x04aO\xE0V[a\x0CwV[`@Qa\x034\x91\x90aP\x8EV[a\x03\x83a\x03\xB36`\x04aP\xF0V[a\r\xD7V[a\x03\xDF\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\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x034V[a\x03\x83a\x04\x056`\x04aQNV[a\x0F+V[a\x03\xDFa\x04\x186`\x04aQ\x91V[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x90\x81R`\x99` R`@\x90 `\x01\x01T\x16\x90V[a\x04Ka\x04F6`\x04aQ\x91V[a\x10~V[`@Q\x90\x15\x15\x81R` \x01a\x034V[a\x03\xDF\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\x81V[a\x03\xDF\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\x81V[a\x03\x83a\x04\xB76`\x04aQ\xACV[a\x10\x9DV[a\x04\xC4a\x11\x0BV[`@Qa\x034\x91\x90aR0V[a\x03\x83a\x11;V[a\x03*a\x04\xE76`\x04aR\xFEV[a\x11\xEAV[a\x04Ka\x04\xFA6`\x04aS/V[`fT`\x01`\xFF\x90\x92\x16\x91\x90\x91\x1B\x90\x81\x16\x14\x90V[`fTa\x03*V[a\x05*a\x05%6`\x04aNKV[a\x12\x19V[`@Qa\x034\x92\x91\x90aT\x06V[a\x05Ka\x05F6`\x04aQ\x91V[a\x126V[`@Qa\x034\x92\x91\x90aTxV[a\x03\x83a\x05g6`\x04aT\xF9V[a\x13`V[a\x03\x83a\x05z6`\x04aURV[a\x14\xD8V[a\x03\xDFa\x05\x8D6`\x04aQ\x91V[`\x9A` R_\x90\x81R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x05\xBAa\x05\xB56`\x04aQ\x91V[a\x16\x83V[`@Qa\x034\x92\x91\x90aU\x91V[a\x04Ka\x05\xD66`\x04aQ\x91V[a\x19\x83V[a\x03*a\x05\xE96`\x04aQ\xACV[a\x19\xBBV[a\x03\x83a\x1AeV[a\x03*a\x06\x046`\x04aQ\xACV[`\x98` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[a\x03\x83a\x06.6`\x04aU\xA3V[a\x1AvV[a\x03\xDF\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\x81V[`3T`\x01`\x01`\xA0\x1B\x03\x16a\x03\xDFV[a\x03\x98a\x06y6`\x04aU\xF3V[a\x1B\x0CV[a\x03\xDFs\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x81V[a\x03\x83a\x06\xA76`\x04aV?V[a\x1B\xE2V[a\x06\xBFa\x06\xBA6`\x04aNKV[a\x1C\xBBV[`@Qa\x034\x91\x90aV\xDBV[a\x03*a\x06\xDA6`\x04aQ\x91V[`\x9F` R_\x90\x81R`@\x90 T\x81V[a\x03ca\x06\xF96`\x04aV\xEDV[a\x1D\xD7V[a\x04Ka\x07\x0C6`\x04aNKV[`\x9E` R_\x90\x81R`@\x90 T`\xFF\x16\x81V[a\x04Ka\x07.6`\x04aW\xD4V[`\x9C` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T`\xFF\x16\x81V[a\x03*a\x07[6`\x04aQ\xACV[a\x1D\xEFV[`@Qc\xFF\xFF\xFF\xFF\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\x81R` \x01a\x034V[a\x07\xA7a\x07\xA26`\x04aU\xF3V[a\x1E+V[`@Qa\x034\x92\x91\x90aW\xFEV[a\x03\xDF\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\x81V[a\x03\x83a\x07\xEA6`\x04aW\xD4V[a \xB8V[a\x03ca\x07\xFD6`\x04aQ\x91V[a!\xD3V[a\x03\x83a\x08\x106`\x04aX\x1DV[a\"\xFCV[a\x03\x83a\x08#6`\x04aV\xEDV[a#RV[a\x08;a\x0866`\x04aX\x90V[a#\xBDV[`@Qa\x034\x91\x90aY=V[a\x03\x83a\x08V6`\x04aQ\x91V[a$bV[a\x03*a$\xDBV[a\x03\x83a\x08q6`\x04aNKV[a%\x94V[a\x03ca\x08\x846`\x04aQ\x91V[a&\xABV[`@\x80Q\x7F\x14\xBD\xE6t\xC9\xF6K*\xD0\x0E\xAA\xEEJ\x8B\xED\x1F\xAB\xEF5\xC7P~<[\x9C\xFC\x946\x90\x9A-\xAD` \x82\x01R`\x01`\x01`\xA0\x1B\x03\x80\x86\x16\x92\x82\x01\x92\x90\x92R\x81\x87\x16``\x82\x01R\x90\x85\x16`\x80\x82\x01R`\xA0\x81\x01\x83\x90R`\xC0\x81\x01\x82\x90R_\x90a\t\x07\x90`\xE0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 a&\xCEV[\x96\x95PPPPPPV[`fT``\x90`\x01\x90`\x02\x90\x81\x16\x03a\t=W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\tEa&\xFCV[_\x83`\x01`\x01`@\x1B\x03\x81\x11\x15a\t^Wa\t^aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\t\x87W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P3_\x90\x81R`\x9A` R`@\x81 T\x91\x92P`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x90[\x85\x81\x10\x15a\x0B\x93W\x86\x86\x82\x81\x81\x10a\t\xC1Wa\t\xC1aYOV[\x90P` \x02\x81\x01\x90a\t\xD3\x91\x90aYcV[a\t\xE1\x90` \x81\x01\x90aY\x81V[\x90P\x87\x87\x83\x81\x81\x10a\t\xF5Wa\t\xF5aYOV[\x90P` \x02\x81\x01\x90a\n\x07\x91\x90aYcV[a\n\x11\x90\x80aY\x81V[\x90P\x14a\n1W`@QcCqJ\xFD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a\n\x9B3\x84\x8A\x8A\x86\x81\x81\x10a\nIWa\nIaYOV[\x90P` \x02\x81\x01\x90a\n[\x91\x90aYcV[a\ne\x90\x80aY\x81V[\x80\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83` \x02\x80\x82\x847_\x92\x01\x91\x90\x91RPa'U\x92PPPV[\x90Pa\x0Bm3\x84\x8A\x8A\x86\x81\x81\x10a\n\xB4Wa\n\xB4aYOV[\x90P` \x02\x81\x01\x90a\n\xC6\x91\x90aYcV[a\n\xD0\x90\x80aY\x81V[\x80\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83` \x02\x80\x82\x847_\x92\x01\x91\x90\x91RP\x8E\x92P\x8D\x91P\x88\x90P\x81\x81\x10a\x0B\x15Wa\x0B\x15aYOV[\x90P` \x02\x81\x01\x90a\x0B'\x91\x90aYcV[a\x0B5\x90` \x81\x01\x90aY\x81V[\x80\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83` \x02\x80\x82\x847_\x92\x01\x91\x90\x91RP\x88\x92Pa(\xA7\x91PPV[\x84\x83\x81Q\x81\x10a\x0B\x7FWa\x0B\x7FaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RP`\x01\x01a\t\xA7V[PP`\x01`\xC9U\x94\x93PPPPV[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\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\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x0C\x04W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x0C(\x91\x90aY\xC6V[a\x0CEW`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`fT\x81\x81\x16\x81\x14a\x0CjW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0Cs\x82a.BV[PPV[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x9A` R`@\x81 T``\x92\x16\x90a\x0C\xA0\x86\x83\x87a'UV[\x90P_\x85Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x0C\xBCWa\x0C\xBCaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x0C\xE5W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x86Q\x81\x10\x15a\r\xCAW`\x01`\x01`\xA0\x1B\x03\x88\x16_\x90\x81R`\xA2` R`@\x81 \x88Q\x82\x90\x8A\x90\x85\x90\x81\x10a\r Wa\r aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ `@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPP\x90Pa\r\xA4\x87\x83\x81Q\x81\x10a\rrWa\rraYOV[` \x02` \x01\x01Q\x85\x84\x81Q\x81\x10a\r\x8CWa\r\x8CaYOV[` \x02` \x01\x01Q\x83a.\x7F\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x83\x83\x81Q\x81\x10a\r\xB6Wa\r\xB6aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RP`\x01\x01a\x0C\xEAV[P\x92PPP[\x93\x92PPPV[a\r\xDFa&\xFCV[a\r\xE83a\x10~V[\x15a\x0E\x06W`@Qc;\xF2\xB5\x03`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@Qc+bA\xF3`\xE1\x1B\x81R3`\x04\x82\x01Rc\xFF\xFF\xFF\xFF\x84\x16`$\x82\x01R\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\x16\x90cV\xC4\x83\xE6\x90`D\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x0EpW__\xFD[PZ\xF1\x15\x80\x15a\x0E\x82W=__>=_\xFD[PPPPa\x0E\x903\x85a.\x9DV[a\x0E\x9A33a.\xFFV[`@Q`\x01`\x01`\xA0\x1B\x03\x85\x16\x81R3\x90\x7F\xA4S\xDBa*\xF5\x9EU!\xD6\xAB\x92\x84\xDC>-\x06\xAF(n\xB1\xB1\xB7\xB7q\xFC\xE4ql\x19\xF2\xC1\x90` \x01`@Q\x80\x91\x03\x90\xA23`\x01`\x01`\xA0\x1B\x03\x16\x7F\x02\xA9\x19\xED\x0E*\xCA\xD1\xDD\x90\xF1~\xF2\xFAJ\xE5F.\xE13\x91p\x03J\x851\xCC\xA4\xB6p\x80\x90\x83\x83`@Qa\x0F\x13\x92\x91\x90aY\xE1V[`@Q\x80\x91\x03\x90\xA2a\x0F%`\x01`\xC9UV[PPPPV[3`\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\x0F\x8AWP3`\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[a\x0F\xA7W`@Qc\x04R\x06\xA5`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0F\xAFa&\xFCV[`\x01`\x01`\xA0\x1B\x03\x84\x81\x16_\x90\x81R`\x9A` R`@\x80\x82 T\x90Qc\x15&g\xD9`\xE3\x1B\x81R\x90\x83\x16`\x04\x82\x01\x81\x90R\x86\x84\x16`$\x83\x01R\x92\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\x90c\xA93>\xC8\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x10/W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x10S\x91\x90aZ\x0FV[\x90P_a\x10a\x87\x87\x84a1\xA6V[\x90Pa\x10q\x83\x88\x88\x88\x88\x86a2\x88V[PPPa\x0F%`\x01`\xC9UV[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x90\x81R`\x9A` R`@\x90 T\x16\x15\x15\x90V[\x81a\x10\xA7\x81a3\xCDV[a\x10\xC4W`@Qc\x93-\x94\xF7`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x10\xCCa&\xFCV[a\x10\xD5\x83a\x19\x83V[a\x10\xF2W`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x10\xFC\x83\x83a.\x9DV[a\x11\x06`\x01`\xC9UV[PPPV[``a\x116\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\0a4wV[\x90P\x90V[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\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\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x11\x9DW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x11\xC1\x91\x90aY\xC6V[a\x11\xDEW`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x11\xE8_\x19a.BV[V[_\x81`@Q` \x01a\x11\xFC\x91\x90aV\xDBV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[a\x12!aL\0V[``a\x12,\x83a4\xB4V[\x90\x94\x90\x93P\x91PPV[``\x80_a\x12C\x84a&\xABV[\x80Q\x90\x91P\x80`\x01`\x01`@\x1B\x03\x81\x11\x15a\x12`Wa\x12`aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x12\x99W\x81` \x01[a\x12\x86aL\0V[\x81R` \x01\x90`\x01\x90\x03\x90\x81a\x12~W\x90P[P\x93P\x80`\x01`\x01`@\x1B\x03\x81\x11\x15a\x12\xB4Wa\x12\xB4aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x12\xE7W\x81` \x01[``\x81R` \x01\x90`\x01\x90\x03\x90\x81a\x12\xD2W\x90P[P\x92P_[\x81\x81\x10\x15a\x13XWa\x13\x16\x83\x82\x81Q\x81\x10a\x13\tWa\x13\taYOV[` \x02` \x01\x01Qa4\xB4V[\x86\x83\x81Q\x81\x10a\x13(Wa\x13(aYOV[` \x02` \x01\x01\x86\x84\x81Q\x81\x10a\x13AWa\x13AaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01\x91\x90\x91RR`\x01\x01a\x12\xECV[PPP\x91P\x91V[3`\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\x13\xA9W`@Qc#\xD8q\xA5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x13\xB1a&\xFCV[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x98` \x90\x81R`@\x80\x83 \x93\x87\x16\x83R\x92\x90R\x90\x81 Ta\x13\xEF\x90`\x01`\x01`@\x1B\x03\x80\x86\x16\x90\x85\x16a7\x07V[\x90P_a\x13\xFE\x86\x86\x86\x86a7\x1FV[\x90P_a\x14\x0B\x82\x84aZ>V[\x90Pa\x14\x19\x87_\x88\x86a7\xDCV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x88\x81\x16\x82R` \x82\x01\x84\x90R\x89\x16\x91\x7F\xDDa\x1FN\xF6?C\x85\xF1ul\x86\xCE\x1F\x1F8\x9A\x90\x13\xBAo\xA0}\xAB\xA8R\x82\x91\xBC-<0\x91\x01`@Q\x80\x91\x03\x90\xA2_a\x14i\x87a8VV[`@Qc\xDE\xBE\x1E\xAB`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x89\x81\x16`\x04\x83\x01R`$\x82\x01\x85\x90R\x91\x92P\x90\x82\x16\x90c\xDE\xBE\x1E\xAB\x90`D\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x14\xB4W__\xFD[PZ\xF1\x15\x80\x15a\x14\xC6W=__>=_\xFD[PPPPPPPPa\x0F%`\x01`\xC9UV[3`\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\x15!W`@Qc2\x13\xA6a`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x15)a&\xFCV[a\x152\x83a\x10~V[\x15a\x10\xFCW`\x01`\x01`\xA0\x1B\x03\x83\x81\x16_\x90\x81R`\x9A` R`@\x80\x82 T\x90Qc\x15&g\xD9`\xE3\x1B\x81R\x90\x83\x16`\x04\x82\x01\x81\x90Rs\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0`$\x83\x01R\x92\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\x90c\xA93>\xC8\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x15\xC9W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x15\xED\x91\x90aZ\x0FV[`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xA2` \x90\x81R`@\x80\x83 s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x84R\x82R\x80\x83 \x81Q\x92\x83\x01\x90\x91RT\x81R\x91\x92Pa\x16S\x86a\x16K`\x01`\x01`@\x1B\x03\x80\x87\x16\x90\x89\x16a8\xC8V[\x84\x91\x90a8\xDCV[\x90Pa\x16u\x84\x88s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x84a7\xDCV[PPPPa\x11\x06`\x01`\xC9UV[`@Qc\x94\xF6I\xDD`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x81\x16`\x04\x83\x01R``\x91\x82\x91_\x91\x82\x91\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\x90c\x94\xF6I\xDD\x90`$\x01_`@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x16\xEFW=__>=_\xFD[PPPP`@Q=_\x82>`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01`@Ra\x17\x16\x91\x90\x81\x01\x90aZ\xACV[`@Qc\xFE$:\x17`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x88\x81\x16`\x04\x83\x01Rs\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0`$\x83\x01R\x92\x94P\x90\x92P_\x91\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\x90c\xFE$:\x17\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x17\x9CW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x17\xC0\x91\x90a[gV[\x90P\x80_\x03a\x17\xD4WP\x90\x94\x90\x93P\x91PPV[_\x83Q`\x01a\x17\xE3\x91\x90aZ>V[`\x01`\x01`@\x1B\x03\x81\x11\x15a\x17\xFAWa\x17\xFAaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x18#W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\x84Q`\x01a\x185\x91\x90aZ>V[`\x01`\x01`@\x1B\x03\x81\x11\x15a\x18LWa\x18LaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x18uW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90Ps\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x82\x86Q\x81Q\x81\x10a\x18\xA0Wa\x18\xA0aYOV[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x82\x81\x86Q\x81Q\x81\x10a\x18\xD4Wa\x18\xD4aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R_[\x85Q\x81\x10\x15a\x19uW\x85\x81\x81Q\x81\x10a\x18\xFCWa\x18\xFCaYOV[` \x02` \x01\x01Q\x83\x82\x81Q\x81\x10a\x19\x16Wa\x19\x16aYOV[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x84\x81\x81Q\x81\x10a\x19HWa\x19HaYOV[` \x02` \x01\x01Q\x82\x82\x81Q\x81\x10a\x19bWa\x19baYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a\x18\xE1V[P\x90\x97\x90\x96P\x94PPPPPV[_`\x01`\x01`\xA0\x1B\x03\x82\x16\x15\x80\x15\x90a\x19\xB5WP`\x01`\x01`\xA0\x1B\x03\x80\x83\x16_\x81\x81R`\x9A` R`@\x90 T\x90\x91\x16\x14[\x92\x91PPV[`@Qc\x15&g\xD9`\xE3\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x04\x83\x01R\x82\x81\x16`$\x83\x01R_\x91\x82\x91\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\x90c\xA93>\xC8\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x1A+W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x1AO\x91\x90aZ\x0FV[\x90Pa\x1A]\x84\x84\x83_a7\x1FV[\x94\x93PPPPV[a\x1Ama8\xFAV[a\x11\xE8_a9TV[\x82a\x1A\x80\x81a3\xCDV[a\x1A\x9DW`@Qc\x93-\x94\xF7`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1A\xA6\x84a\x19\x83V[a\x1A\xC3W`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x83`\x01`\x01`\xA0\x1B\x03\x16\x7F\x02\xA9\x19\xED\x0E*\xCA\xD1\xDD\x90\xF1~\xF2\xFAJ\xE5F.\xE13\x91p\x03J\x851\xCC\xA4\xB6p\x80\x90\x84\x84`@Qa\x1A\xFE\x92\x91\x90aY\xE1V[`@Q\x80\x91\x03\x90\xA2PPPPV[``_\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x1B(Wa\x1B(aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x1BQW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x83Q\x81\x10\x15a\x1B\xDAW`\x01`\x01`\xA0\x1B\x03\x85\x16_\x90\x81R`\x98` R`@\x81 \x85Q\x90\x91\x90\x86\x90\x84\x90\x81\x10a\x1B\x8DWa\x1B\x8DaYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ T\x82\x82\x81Q\x81\x10a\x1B\xC7Wa\x1B\xC7aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a\x1BVV[P\x93\x92PPPV[`fT`\x02\x90`\x04\x90\x81\x16\x03a\x1C\x0BW`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1C\x13a&\xFCV[\x85_[\x81\x81\x10\x15a\x1C\xA6Wa\x1C\x9E\x89\x89\x83\x81\x81\x10a\x1C3Wa\x1C3aYOV[\x90P` \x02\x81\x01\x90a\x1CE\x91\x90a[~V[a\x1CN\x90a[\x92V[\x88\x88\x84\x81\x81\x10a\x1C`Wa\x1C`aYOV[\x90P` \x02\x81\x01\x90a\x1Cr\x91\x90aY\x81V[\x88\x88\x86\x81\x81\x10a\x1C\x84Wa\x1C\x84aYOV[\x90P` \x02\x01` \x81\x01\x90a\x1C\x99\x91\x90a[\x9DV[a9\xA5V[`\x01\x01a\x1C\x16V[PPa\x1C\xB2`\x01`\xC9UV[PPPPPPPV[a\x1C\xC3aL\0V[_\x82\x81R`\xA4` \x90\x81R`@\x91\x82\x90 \x82Q`\xE0\x81\x01\x84R\x81T`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x82R`\x01\x83\x01T\x81\x16\x82\x85\x01R`\x02\x83\x01T\x16\x81\x85\x01R`\x03\x82\x01T``\x82\x01R`\x04\x82\x01Tc\xFF\xFF\xFF\xFF\x16`\x80\x82\x01R`\x05\x82\x01\x80T\x85Q\x81\x86\x02\x81\x01\x86\x01\x90\x96R\x80\x86R\x91\x94\x92\x93`\xA0\x86\x01\x93\x92\x90\x83\x01\x82\x82\x80\x15a\x1DqW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a\x1DSW[PPPPP\x81R` \x01`\x06\x82\x01\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15a\x1D\xC7W` \x02\x82\x01\x91\x90_R` _ \x90[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a\x1D\xB3W[PPPPP\x81RPP\x90P\x91\x90PV[``a\x1D\xE23a!\xD3V[\x90Pa\r\xD0\x84\x84\x84a#RV[`\x01`\x01`\xA0\x1B\x03\x80\x83\x16_\x90\x81R`\xA2` \x90\x81R`@\x80\x83 \x93\x85\x16\x83R\x92\x81R\x82\x82 \x83Q\x91\x82\x01\x90\x93R\x91T\x82R\x90a\r\xD0\x90a=\xE7V[``\x80\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x1EGWa\x1EGaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x1EpW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x91P\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x1E\x8CWa\x1E\x8CaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x1E\xB5W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\x9A` R`@\x81 T\x92\x93P\x91\x16\x90a\x1E\xE0\x86\x83\x87a'UV[\x90P_[\x85Q\x81\x10\x15a \xADW_a\x1F\x10\x87\x83\x81Q\x81\x10a\x1F\x03Wa\x1F\x03aYOV[` \x02` \x01\x01Qa8VV[\x90P\x80`\x01`\x01`\xA0\x1B\x03\x16c\xFE$:\x17\x89\x89\x85\x81Q\x81\x10a\x1F4Wa\x1F4aYOV[` \x02` \x01\x01Q`@Q\x83c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x1Fn\x92\x91\x90`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x16` \x82\x01R`@\x01\x90V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x1F\x89W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x1F\xAD\x91\x90a[gV[\x85\x83\x81Q\x81\x10a\x1F\xBFWa\x1F\xBFaYOV[` \x02` \x01\x01\x81\x81RPP_`\xA2_\x8A`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ _\x89\x85\x81Q\x81\x10a \x02Wa \x02aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ `@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPP\x90Pa \x86\x86\x84\x81Q\x81\x10a TWa TaYOV[` \x02` \x01\x01Q\x85\x85\x81Q\x81\x10a nWa naYOV[` \x02` \x01\x01Q\x83a8\xDC\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x87\x84\x81Q\x81\x10a \x98Wa \x98aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RPP`\x01\x01a\x1E\xE4V[PPP[\x92P\x92\x90PV[_Ta\x01\0\x90\x04`\xFF\x16\x15\x80\x80\x15a \xD6WP_T`\x01`\xFF\x90\x91\x16\x10[\x80a \xEFWP0;\x15\x80\x15a \xEFWP_T`\xFF\x16`\x01\x14[a!WW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`.`$\x82\x01R\x7FInitializable: contract is alrea`D\x82\x01Rm\x19\x1EH\x1A[\x9A]\x1AX[\x1A^\x99Y`\x92\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[_\x80T`\xFF\x19\x16`\x01\x17\x90U\x80\x15a!xW_\x80Ta\xFF\0\x19\x16a\x01\0\x17\x90U[a!\x81\x82a.BV[a!\x8A\x83a9TV[\x80\x15a\x11\x06W_\x80Ta\xFF\0\x19\x16\x90U`@Q`\x01\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1PPPV[``a!\xDDa&\xFCV[a!\xE6\x82a\x10~V[a\"\x03W`@Qc\xA5\xC7\xC4E`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\"\x0C\x82a\x19\x83V[\x15a\"*W`@Qc\x11\xCA35`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[3`\x01`\x01`\xA0\x1B\x03\x83\x16\x14a\"\xE2W`\x01`\x01`\xA0\x1B\x03\x80\x83\x16_\x90\x81R`\x9A` R`@\x90 T\x16a\"]\x81a3\xCDV[\x80a\"\x83WP`\x01`\x01`\xA0\x1B\x03\x81\x81\x16_\x90\x81R`\x99` R`@\x90 `\x01\x01T\x163\x14[a\"\xA0W`@Qc\x1EI\x9A#`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80`\x01`\x01`\xA0\x1B\x03\x16\x83`\x01`\x01`\xA0\x1B\x03\x16\x7F\xF0\xED\xDF\x07\xE6\xEA\x14\xF3\x88\xB4~\x1E\x94\xA0\xF4d\xEC\xBD\x9E\xEDAq\x13\x0E\x0F\xC0\xE9\x9F\xB4\x03\n\x8A`@Q`@Q\x80\x91\x03\x90\xA3P[a\"\xEB\x82a>\x06V[\x90Pa\"\xF7`\x01`\xC9UV[\x91\x90PV[`fT`\x02\x90`\x04\x90\x81\x16\x03a#%W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a#-a&\xFCV[a#Aa#9\x86a[\x92V[\x85\x85\x85a9\xA5V[a#K`\x01`\xC9UV[PPPPPV[a#Za&\xFCV[a#c3a\x10~V[\x15a#\x81W`@Qc;\xF2\xB5\x03`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a#\x8A\x83a\x19\x83V[a#\xA7W`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a#\xB33\x84\x84\x84a@eV[a\x10\xFC3\x84a.\xFFV[``_\x83Q`\x01`\x01`@\x1B\x03\x81\x11\x15a#\xD9Wa#\xD9aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a$\x0CW\x81` \x01[``\x81R` \x01\x90`\x01\x90\x03\x90\x81a#\xF7W\x90P[P\x90P_[\x84Q\x81\x10\x15a\x1B\xDAWa$=\x85\x82\x81Q\x81\x10a$/Wa$/aYOV[` \x02` \x01\x01Q\x85a\x1B\x0CV[\x82\x82\x81Q\x81\x10a$OWa$OaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a$\x11V[a$ja8\xFAV[`\x01`\x01`\xA0\x1B\x03\x81\x16a$\xCFW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOwnable: new owner is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01a!NV[a$\xD8\x81a9TV[PV[`@\x80Q\x80\x82\x01\x90\x91R`\n\x81Ri\"\xB4\xB3\xB2\xB7&0\xBC\xB2\xB9`\xB1\x1B` \x90\x91\x01R_\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F\x7Fq\xB6%\xCF\xADD\xBA\xC6;\x13\xDB\xA0\x7F.\x1D`\x84\xEE\x04\xB6\xF8u!\x01\xEC\xE6\x12mXN\xE6\xEAa%HaA$V[\x80Q` \x91\x82\x01 `@\x80Q\x92\x83\x01\x94\x90\x94R\x92\x81\x01\x91\x90\x91R``\x81\x01\x91\x90\x91RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[\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\x16c\xEA\xB6mz`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a%\xF0W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a&\x14\x91\x90a[\xB8V[`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a&EW`@QcyH!\xFF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`fT\x80\x19\x82\x19\x81\x16\x14a&lW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`f\x82\x90U`@Q\x82\x81R3\x90\x7F5\x82\xD1\x82\x8E&\xBFV\xBD\x80\x15\x02\xBC\x02\x1A\xC0\xBC\x8A\xFBW\xC8&\xE4\x98kEY<\x8F\xAD8\x9C\x90` \x01[`@Q\x80\x91\x03\x90\xA2PPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\xA3` R`@\x90 ``\x90a\x19\xB5\x90aA\xC0V[_a&\xD7a$\xDBV[`@Qa\x19\x01`\xF0\x1B` \x82\x01R`\"\x81\x01\x91\x90\x91R`B\x81\x01\x83\x90R`b\x01a\x11\xFCV[`\x02`\xC9T\x03a'NW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FReentrancyGuard: reentrant call\0`D\x82\x01R`d\x01a!NV[`\x02`\xC9UV[``_\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15a'qWa'qaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a'\x9AW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\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\x16cTz\xFB\x87\x86\x86`@Q\x83c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a'\xEC\x92\x91\x90a[\xD3V[_`@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a(\x06W=__>=_\xFD[PPPP`@Q=_\x82>`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01`@Ra(-\x91\x90\x81\x01\x90a[\xF6V[\x90P_[\x84Q\x81\x10\x15a(\x9CWa(w\x87\x86\x83\x81Q\x81\x10a(PWa(PaYOV[` \x02` \x01\x01Q\x84\x84\x81Q\x81\x10a(jWa(jaYOV[` \x02` \x01\x01Qa1\xA6V[\x83\x82\x81Q\x81\x10a(\x89Wa(\x89aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a(1V[P\x90\x95\x94PPPPPV[_`\x01`\x01`\xA0\x1B\x03\x86\x16a(\xCFW`@Qc9\xB1\x90\xBB`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x83Q_\x03a(\xF0W`@Qcyl\xC5%`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x84Q`\x01`\x01`@\x1B\x03\x81\x11\x15a)\nWa)\naNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a)3W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\x85Q`\x01`\x01`@\x1B\x03\x81\x11\x15a)PWa)PaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a)yW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x86Q\x81\x10\x15a,uW_a)\x9D\x88\x83\x81Q\x81\x10a\x1F\x03Wa\x1F\x03aYOV[\x90P_`\xA2_\x8C`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ _\x8A\x85\x81Q\x81\x10a)\xD6Wa)\xD6aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ \x90Pa*O\x88\x84\x81Q\x81\x10a*\x14Wa*\x14aYOV[` \x02` \x01\x01Q\x88\x85\x81Q\x81\x10a*.Wa*.aYOV[` \x90\x81\x02\x91\x90\x91\x01\x81\x01Q`@\x80Q\x92\x83\x01\x90R\x84T\x82R\x90\x91\x90a8\xDCV[\x84\x84\x81Q\x81\x10a*aWa*aaYOV[` \x02` \x01\x01\x81\x81RPPa*\xA0\x88\x84\x81Q\x81\x10a*\x82Wa*\x82aYOV[` \x90\x81\x02\x91\x90\x91\x01\x81\x01Q`@\x80Q\x92\x83\x01\x90R\x83T\x82RaA\xCCV[\x85\x84\x81Q\x81\x10a*\xB2Wa*\xB2aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01`\x01`\xA0\x1B\x03\x8A\x16\x15a+GWa+\t\x8A\x8A\x85\x81Q\x81\x10a*\xE2Wa*\xE2aYOV[` \x02` \x01\x01Q\x87\x86\x81Q\x81\x10a*\xFCWa*\xFCaYOV[` \x02` \x01\x01QaA\xE0V[a+G\x8A\x8C\x8B\x86\x81Q\x81\x10a+ Wa+ aYOV[` \x02` \x01\x01Q\x87\x87\x81Q\x81\x10a+:Wa+:aYOV[` \x02` \x01\x01Qa7\xDCV[_\x82`\x01`\x01`\xA0\x1B\x03\x16crJ\xF4#\x8D\x8C\x87\x81Q\x81\x10a+jWa+jaYOV[` \x02` \x01\x01Q\x8C\x88\x81Q\x81\x10a+\x84Wa+\x84aYOV[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a+\xAA\x93\x92\x91\x90a\\\x85V[` `@Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a+\xC6W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a+\xEA\x91\x90a[gV[\x90P\x80_\x03a,gW_\x82U\x7F\x8B\xE92\xBA\xC5Ea\xF2r`\xF9Tc\xD9\xB8\xAB7\xE0k(B\xE5\xEE$\x04\x15|\xC1=\xF6\xEB\x8F\x8C\x8B\x86\x81Q\x81\x10a,*Wa,*aYOV[` \x02` \x01\x01Qa,O\x85`@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPPa=\xE7V[`@Qa,^\x93\x92\x91\x90a\\\x85V[`@Q\x80\x91\x03\x90\xA1[PPP\x80`\x01\x01\x90Pa)~V[P`\x01`\x01`\xA0\x1B\x03\x88\x16_\x90\x81R`\x9F` R`@\x81 \x80T\x91\x82\x91\x90a,\x9C\x83a\\\xA9V[\x91\x90PUP_`@Q\x80`\xE0\x01`@R\x80\x8B`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x8A`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x8B`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x83\x81R` \x01Cc\xFF\xFF\xFF\xFF\x16\x81R` \x01\x89\x81R` \x01\x85\x81RP\x90P_a-\x02\x82a\x11\xEAV[_\x81\x81R`\x9E` \x90\x81R`@\x80\x83 \x80T`\x01`\xFF\x19\x90\x91\x16\x81\x17\x90\x91U`\xA4\x83R\x92\x81\x90 \x86Q\x81T`\x01`\x01`\xA0\x1B\x03\x19\x90\x81\x16`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x17\x83U\x88\x85\x01Q\x95\x83\x01\x80T\x82\x16\x96\x83\x16\x96\x90\x96\x17\x90\x95U\x91\x87\x01Q`\x02\x82\x01\x80T\x90\x95\x16\x92\x16\x91\x90\x91\x17\x90\x92U``\x85\x01Q`\x03\x83\x01U`\x80\x85\x01Q`\x04\x83\x01\x80Tc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x90\x92\x16\x91\x90\x91\x17\x90U`\xA0\x85\x01Q\x80Q\x93\x94P\x85\x93a-\xB8\x92`\x05\x85\x01\x92\x01\x90aLYV[P`\xC0\x82\x01Q\x80Qa-\xD4\x91`\x06\x84\x01\x91` \x90\x91\x01\x90aL\xBCV[PPP`\x01`\x01`\xA0\x1B\x03\x8B\x16_\x90\x81R`\xA3` R`@\x90 a-\xF8\x90\x82aBJV[P\x7F&\xB2\xAA\xE2e\x16\xE8q\x9E\xF5\x0E\xA2\xF6\x83\x1A.\xFB\xD4\xE3}\xCC\xDF\x0Fi6\xB2{\xC0\x8Ey>0\x81\x83\x86`@Qa.,\x93\x92\x91\x90a\\\xC1V[`@Q\x80\x91\x03\x90\xA1\x9A\x99PPPPPPPPPPV[`f\x81\x90U`@Q\x81\x81R3\x90\x7F\xAB@\xA3t\xBCQ\xDE7\"\0\xA8\xBC\x98\x1A\xF8\xC9\xEC\xDC\x08\xDF\xDA\xEF\x0B\xB6\xE0\x9F\x88\xF3\xC6\x16\xEF=\x90` \x01`@Q\x80\x91\x03\x90\xA2PV[_a\x1A]\x82a.\x97a.\x90\x87a=\xE7V[\x86\x90aBUV[\x90aBUV[`\x01`\x01`\xA0\x1B\x03\x82\x81\x16_\x81\x81R`\x99` \x90\x81R`@\x91\x82\x90 `\x01\x01\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x94\x86\x16\x94\x85\x17\x90U\x90Q\x92\x83R\x90\x91\x7Fw;T\xC0Muo\xCC^g\x81\x11\xF7\xD70\xDE;\xE9\x81\x92\0\x07\x99\xEE\xE3\xD67\x16\x05Z\x87\xC6\x91\x01a&\x9FV[`fT_\x90`\x01\x90\x81\x16\x03a/'W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[__a/2\x85a\x16\x83V[\x91P\x91P_a/B_\x86\x85a'UV[`\x01`\x01`\xA0\x1B\x03\x87\x81\x16_\x81\x81R`\x9A` R`@\x80\x82 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x94\x8B\x16\x94\x85\x17\x90UQ\x93\x94P\x91\x92\x90\x91\x7F\xC3\xEE\x9F._\xDA\x98\xE8\x06j\x1Ft[-\xF9(_Ao\xE9\x8C\xF2U\x9C\xD2\x14\x84\xB3\xD8t3\x04\x91\xA3_[\x83Q\x81\x10\x15a\x1C\xB2Ws\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0`\x01`\x01`\xA0\x1B\x03\x16\x84\x82\x81Q\x81\x10a/\xD5Wa/\xD5aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16\x03a1EW`@Qc\xA3\xD7^\t`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x88\x81\x16`\x04\x83\x01R_\x91\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\x90\x91\x16\x90c\xA3\xD7^\t\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a0SW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a0w\x91\x90aZ\x0FV[\x90P_`\xA2_\x8A`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ _\x87\x85\x81Q\x81\x10a0\xB0Wa0\xB0aYOV[` \x02` \x01\x01Q`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ `@Q\x80` \x01`@R\x90\x81_\x82\x01T\x81RPP\x90Pa1$\x85\x84\x81Q\x81\x10a1\x02Wa1\x02aYOV[` \x02` \x01\x01Q\x83`\x01`\x01`@\x1B\x03\x16\x83a8\xDC\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x85\x84\x81Q\x81\x10a16Wa16aYOV[` \x02` \x01\x01\x81\x81RPPPP[a1\x9E\x86\x88\x86\x84\x81Q\x81\x10a1\\Wa1\\aYOV[` \x02` \x01\x01Q_\x87\x86\x81Q\x81\x10a1wWa1waYOV[` \x02` \x01\x01Q\x87\x87\x81Q\x81\x10a1\x91Wa1\x91aYOV[` \x02` \x01\x01Qa2\x88V[`\x01\x01a/\x9CV[_s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xBF\x19`\x01`\x01`\xA0\x1B\x03\x84\x16\x01a2xW`@Qc\xA3\xD7^\t`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x81\x16`\x04\x83\x01R_\x91\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\x90\x91\x16\x90c\xA3\xD7^\t\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a24W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a2X\x91\x90aZ\x0FV[\x90Pa2p`\x01`\x01`@\x1B\x03\x84\x81\x16\x90\x83\x16a8\xC8V[\x91PPa\r\xD0V[P`\x01`\x01`@\x1B\x03\x16\x92\x91PPV[\x80_\x03a2\xA8W`@Qc\n3\xBCi`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81\x15a3\xC5W`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\xA2` \x90\x81R`@\x80\x83 \x93\x88\x16\x83R\x92\x90R a2\xDE\x81\x85\x85\x85aBiV[`@\x80Q` \x81\x01\x90\x91R\x81T\x81R\x7F\x8B\xE92\xBA\xC5Ea\xF2r`\xF9Tc\xD9\xB8\xAB7\xE0k(B\xE5\xEE$\x04\x15|\xC1=\xF6\xEB\x8F\x90\x87\x90\x87\x90a3\x1C\x90a=\xE7V[`@Qa3+\x93\x92\x91\x90a\\\x85V[`@Q\x80\x91\x03\x90\xA1a3<\x86a\x10~V[\x15a\x1C\xB2W`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\x98` \x90\x81R`@\x80\x83 \x93\x89\x16\x83R\x92\x90R\x90\x81 \x80T\x85\x92\x90a3w\x90\x84\x90aZ>V[\x92PP\x81\x90UP\x86`\x01`\x01`\xA0\x1B\x03\x16\x7F\x1E\xC0B\xC9e\xE2\xED\xD7\x10{Q\x18\x8E\xE0\xF3\x83\xE2.v\x17\x90A\xAB:\x9D\x18\xFF\x15\x14\x05\x16l\x87\x87\x86`@Qa3\xBB\x93\x92\x91\x90a\\\x85V[`@Q\x80\x91\x03\x90\xA2P[PPPPPPV[`@Qc\x1B\xEB+\x97`\xE3\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x81\x16`\x04\x83\x01R3`$\x83\x01R0`D\x83\x01R_\x805`\x01`\x01`\xE0\x1B\x03\x19\x16`d\x84\x01R\x91\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\x90\x91\x16\x90c\xDFY\\\xB8\x90`\x84\x01` `@Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a4SW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x19\xB5\x91\x90aY\xC6V[``_a4\x83\x83aB\xE4V[`@\x80Q` \x80\x82R\x81\x83\x01\x90\x92R\x91\x92P_\x91\x90` \x82\x01\x81\x806\x837PPP\x91\x82RP` \x81\x01\x92\x90\x92RP\x90V[a4\xBCaL\0V[_\x82\x81R`\xA4` \x90\x81R`@\x91\x82\x90 \x82Q`\xE0\x81\x01\x84R\x81T`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x82R`\x01\x83\x01T\x81\x16\x82\x85\x01R`\x02\x83\x01T\x16\x81\x85\x01R`\x03\x82\x01T``\x82\x81\x01\x91\x90\x91R`\x04\x83\x01Tc\xFF\xFF\xFF\xFF\x16`\x80\x83\x01R`\x05\x83\x01\x80T\x86Q\x81\x87\x02\x81\x01\x87\x01\x90\x97R\x80\x87R\x91\x95\x92\x94`\xA0\x86\x01\x93\x92\x90\x83\x01\x82\x82\x80\x15a5nW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a5PW[PPPPP\x81R` \x01`\x06\x82\x01\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15a5\xC4W` \x02\x82\x01\x91\x90_R` _ \x90[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a5\xB0W[PPPPP\x81RPP\x91P\x81`\xA0\x01QQ`\x01`\x01`@\x1B\x03\x81\x11\x15a5\xECWa5\xECaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a6\x15W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\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\x83`\x80\x01Qa6I\x91\x90a\\\xEBV[\x90P_Cc\xFF\xFF\xFF\xFF\x16\x82c\xFF\xFF\xFF\xFF\x16\x10a6zWa6u\x84_\x01Q\x85` \x01Q\x86`\xA0\x01Qa'UV[a6\x91V[a6\x91\x84_\x01Q\x85` \x01Q\x86`\xA0\x01Q\x85aC\x0BV[\x90P_[\x84`\xA0\x01QQ\x81\x10\x15a\x13XWa6\xE2\x85`\xC0\x01Q\x82\x81Q\x81\x10a6\xBBWa6\xBBaYOV[` \x02` \x01\x01Q\x83\x83\x81Q\x81\x10a6\xD5Wa6\xD5aYOV[` \x02` \x01\x01QaD9V[\x84\x82\x81Q\x81\x10a6\xF4Wa6\xF4aYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a6\x95V[_a7\x15\x84\x83\x85`\x01aDDV[a\x1A]\x90\x85a]\x07V[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x87\x16\x83R\x92\x90R\x90\x81 \x81\x90a7P\x90aD\x9FV[\x90P_a7\xB6`\x01a7\x82\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\0Ca]\x1AV[a7\x8C\x91\x90a]\x1AV[`\x01`\x01`\xA0\x1B\x03\x80\x8A\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x8C\x16\x83R\x92\x90R \x90aD\xB9V[\x90P_a7\xC3\x82\x84a]\x07V[\x90Pa7\xD0\x81\x87\x87aD\xD5V[\x98\x97PPPPPPPPV[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x98` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 \x80T\x83\x92\x90a8\x12\x90\x84\x90a]\x07V[\x92PP\x81\x90UP\x83`\x01`\x01`\xA0\x1B\x03\x16\x7Fi\t`\x007\xB7]{G3\xAE\xDD\x81TB\xB5\xEC\x01\x8A\x82wQ\xC82\xAA\xFFd\xEB\xA5\xD6\xD2\xDD\x84\x84\x84`@Qa\x1A\xFE\x93\x92\x91\x90a\\\x85V[_`\x01`\x01`\xA0\x1B\x03\x82\x16s\xBE\xAC\x0E\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEB\xEA\xC0\x14a8\xA1W\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\0a\x19\xB5V[\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\x92\x91PPV[_a\r\xD0\x83\x83g\r\xE0\xB6\xB3\xA7d\0\0aD\xF3V[_a\x1A]\x82a8\xF4a8\xED\x87a=\xE7V[\x86\x90a8\xC8V[\x90a8\xC8V[`3T`\x01`\x01`\xA0\x1B\x03\x163\x14a\x11\xE8W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FOwnable: caller is not the owner`D\x82\x01R`d\x01a!NV[`3\x80T`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x01`\x01`\xA0\x1B\x03\x19\x83\x16\x81\x17\x90\x93U`@Q\x91\x16\x91\x90\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\xA3PPV[`\xA0\x84\x01QQ\x82\x14a9\xCAW`@QcCqJ\xFD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x83`@\x01Q`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a:\0W`@Qc\x16\x11\r5`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a:\n\x85a\x11\xEAV[_\x81\x81R`\x9E` R`@\x90 T\x90\x91P`\xFF\x16a:;W`@Qc\x87\xC9\xD2\x19`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``_\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\x87`\x80\x01Qa:n\x91\x90a\\\xEBV[\x90P\x80c\xFF\xFF\xFF\xFF\x16Cc\xFF\xFF\xFF\xFF\x16\x11a:\x9CW`@Qcx\xF6z\xE1`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a:\xB3\x87_\x01Q\x88` \x01Q\x89`\xA0\x01Q\x84aC\x0BV[\x87Q`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\xA3` R`@\x90 \x90\x92Pa:\xD9\x91P\x83aE\xD8V[P_\x82\x81R`\xA4` R`@\x81 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x90\x81\x16\x82U`\x01\x82\x01\x80T\x82\x16\x90U`\x02\x82\x01\x80T\x90\x91\x16\x90U`\x03\x81\x01\x82\x90U`\x04\x81\x01\x80Tc\xFF\xFF\xFF\xFF\x19\x16\x90U\x90a;0`\x05\x83\x01\x82aL\xF5V[a;=`\x06\x83\x01_aL\xF5V[PP_\x82\x81R`\x9E` R`@\x90\x81\x90 \x80T`\xFF\x19\x16\x90UQ\x7F\x1F@@\x08\x89'N\xD0{$\x84^PT\xA8z\x0C\xAB\x96\x9E\xB1'z\xAF\xE6\x1A\xE3R\xE7\xC3*\0\x90a;\x86\x90\x84\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA1\x85Q`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x90\x81R`\x9A` R`@\x81 T\x88Q`\xA0\x8A\x01Q\x91\x90\x93\x16\x92a;\xC0\x91\x84\x90a'UV[\x90P_[\x88`\xA0\x01QQ\x81\x10\x15a=\xDCW_a;\xEB\x8A`\xA0\x01Q\x83\x81Q\x81\x10a\x1F\x03Wa\x1F\x03aYOV[\x90P_a<!\x8B`\xC0\x01Q\x84\x81Q\x81\x10a<\x07Wa<\x07aYOV[` \x02` \x01\x01Q\x87\x85\x81Q\x81\x10a6\xD5Wa6\xD5aYOV[\x90P\x80_\x03a<1WPPa=\xD4V[\x87\x15a<\xFFW\x81`\x01`\x01`\xA0\x1B\x03\x16c.\xAEA\x8C\x8C_\x01Q\x8D`\xA0\x01Q\x86\x81Q\x81\x10a<`Wa<`aYOV[` \x02` \x01\x01Q\x8D\x8D\x88\x81\x81\x10a<zWa<zaYOV[\x90P` \x02\x01` \x81\x01\x90a<\x8F\x91\x90aQ\x91V[`@Q`\xE0\x85\x90\x1B`\x01`\x01`\xE0\x1B\x03\x19\x16\x81R`\x01`\x01`\xA0\x1B\x03\x93\x84\x16`\x04\x82\x01R\x91\x83\x16`$\x83\x01R\x90\x91\x16`D\x82\x01R`d\x81\x01\x84\x90R`\x84\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a<\xE4W__\xFD[PZ\xF1\x15\x80\x15a<\xF6W=__>=_\xFD[PPPPa=\xD1V[__\x83`\x01`\x01`\xA0\x1B\x03\x16cP\xFFr%\x8E_\x01Q\x8F`\xA0\x01Q\x88\x81Q\x81\x10a=*Wa=*aYOV[` \x02` \x01\x01Q\x86`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a=Q\x93\x92\x91\x90a\\\x85V[`@\x80Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a=lW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a=\x90\x91\x90a]6V[\x91P\x91Pa=\xCE\x87\x8E_\x01Q\x8F`\xA0\x01Q\x88\x81Q\x81\x10a=\xB2Wa=\xB2aYOV[` \x02` \x01\x01Q\x85\x85\x8B\x8B\x81Q\x81\x10a1\x91Wa1\x91aYOV[PP[PP[`\x01\x01a;\xC4V[PPPPPPPPPV[\x80Q_\x90\x15a=\xF7W\x81Qa\x19\xB5V[g\r\xE0\xB6\xB3\xA7d\0\0\x92\x91PPV[`fT``\x90`\x01\x90`\x02\x90\x81\x16\x03a>2W`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x81\x81R`\x9A` R`@\x80\x82 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x81\x16\x90\x91U\x90Q\x93\x16\x92\x83\x92\x91\x7F\xFE\xE3\tf\xA2V\xB7\x1E\x14\xBC\x0E\xBF\xC9C\x15\xE2\x8E\xF4\xA9zq1\xA9\xE2\xB7\xA3\x10\xA7:\xF4Fv\x91\xA3__a>\x91\x86a\x16\x83V[\x91P\x91P\x81Q_\x03a>\xA5WPPPa@_V[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15a>\xBEWa>\xBEaNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a>\xE7W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x94P_a>\xF6\x87\x85\x85a'UV[\x90P_[\x83Q\x81\x10\x15a@YW`@\x80Q`\x01\x80\x82R\x81\x83\x01\x90\x92R_\x91` \x80\x83\x01\x90\x806\x837PP`@\x80Q`\x01\x80\x82R\x81\x83\x01\x90\x92R\x92\x93P_\x92\x91P` \x80\x83\x01\x90\x806\x837PP`@\x80Q`\x01\x80\x82R\x81\x83\x01\x90\x92R\x92\x93P_\x92\x91P` \x80\x83\x01\x90\x806\x837\x01\x90PP\x90P\x86\x84\x81Q\x81\x10a?zWa?zaYOV[` \x02` \x01\x01Q\x83_\x81Q\x81\x10a?\x94Wa?\x94aYOV[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x85\x84\x81Q\x81\x10a?\xC6Wa?\xC6aYOV[` \x02` \x01\x01Q\x82_\x81Q\x81\x10a?\xE0Wa?\xE0aYOV[` \x02` \x01\x01\x81\x81RPP\x84\x84\x81Q\x81\x10a?\xFEWa?\xFEaYOV[` \x02` \x01\x01Q\x81_\x81Q\x81\x10a@\x18Wa@\x18aYOV[` \x02` \x01\x01\x81\x81RPPa@1\x8B\x89\x85\x85\x85a(\xA7V[\x8A\x85\x81Q\x81\x10a@CWa@CaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01RPPP`\x01\x01a>\xFAV[PPPPP[P\x91\x90PV[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x99` R`@\x90 `\x01\x01T\x16\x80a@\x8DWPa\x0F%V[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x9C` \x90\x81R`@\x80\x83 \x85\x84R\x90\x91R\x90 T`\xFF\x16\x15a@\xD1W`@Qc\rLL\x91`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x9C` \x90\x81R`@\x80\x83 \x85\x84R\x82R\x90\x91 \x80T`\xFF\x19\x16`\x01\x17\x90U\x83\x01Qa#K\x90\x82\x90aA\x18\x90\x88\x90\x88\x90\x84\x90\x88\x90a\x08\x89V[\x85Q` \x87\x01QaE\xE3V[``_aAP\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\0a4wV[\x90P\x80_\x81Q\x81\x10aAdWaAdaYOV[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x81`\x01\x81Q\x81\x10aA\x82WaA\x82aYOV[\x01` \x90\x81\x01Q`@Q`\x01`\x01`\xF8\x1B\x03\x19\x93\x84\x16\x92\x81\x01\x92\x90\x92R\x91\x90\x91\x16`!\x82\x01R`\"\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x91PP\x90V[``_a\r\xD0\x83aF5V[_a\r\xD0aA\xD9\x84a=\xE7V[\x83\x90a8\xC8V[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 aB\x0F\x90aD\x9FV[\x90Pa\x0F%CaB\x1F\x84\x84aZ>V[`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\xA5` \x90\x81R`@\x80\x83 \x93\x8A\x16\x83R\x92\x90R \x91\x90aF\x8EV[_a\r\xD0\x83\x83aF\x99V[_a\r\xD0\x83g\r\xE0\xB6\xB3\xA7d\0\0\x84aD\xF3V[\x82_\x03aB\x95W`@\x80Q` \x81\x01\x90\x91R\x84T\x81RaB\x8E\x90\x82\x90a.\x97\x90a=\xE7V[\x84Ua\x0F%V[`@\x80Q` \x81\x01\x90\x91R\x84T\x81R_\x90aB\xB1\x90\x85\x84a8\xDCV[\x90P_aB\xBE\x84\x83aZ>V[\x90P_aB\xD9\x84a.\x97aB\xD2\x88\x8AaZ>V[\x85\x90aBUV[\x87UPPPPPPPV[_`\xFF\x82\x16`\x1F\x81\x11\x15a\x19\xB5W`@Qc,\xD4J\xC3`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``_\x83Q`\x01`\x01`@\x1B\x03\x81\x11\x15aC'WaC'aNbV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15aCPW\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\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\x16c\x94\xD7\xD0\x0C\x87\x87\x87`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01aC\xA4\x93\x92\x91\x90a]XV[_`@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15aC\xBEW=__>=_\xFD[PPPP`@Q=_\x82>`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01`@RaC\xE5\x91\x90\x81\x01\x90a[\xF6V[\x90P_[\x85Q\x81\x10\x15aD-WaD\x08\x88\x87\x83\x81Q\x81\x10a(PWa(PaYOV[\x83\x82\x81Q\x81\x10aD\x1AWaD\x1AaYOV[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01aC\xE9V[P\x90\x96\x95PPPPPPV[_a\r\xD0\x83\x83a8\xC8V[__aDQ\x86\x86\x86aD\xF3V[\x90P`\x01\x83`\x02\x81\x11\x15aDgWaDga]\x91V[\x14\x80\x15aD\x83WP_\x84\x80aD~WaD~a]\xA5V[\x86\x88\t\x11[\x15aD\x96WaD\x93`\x01\x82aZ>V[\x90P[\x95\x94PPPPPV[_aD\xAA\x82\x82aF\xE5V[`\x01`\x01`\xE0\x1B\x03\x16\x92\x91PPV[_aD\xC5\x83\x83\x83aG*V[`\x01`\x01`\xE0\x1B\x03\x16\x93\x92PPPV[_a\x1A]aD\xE3\x83\x85a]\xB9V[\x85\x90`\x01`\x01`@\x1B\x03\x16a8\xC8V[_\x80\x80_\x19\x85\x87\t\x85\x87\x02\x92P\x82\x81\x10\x83\x82\x03\x03\x91PP\x80_\x03aE*W\x83\x82\x81aE WaE a]\xA5V[\x04\x92PPPa\r\xD0V[\x80\x84\x11aEqW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x15`$\x82\x01RtMath: mulDiv overflow`X\x1B`D\x82\x01R`d\x01a!NV[_\x84\x86\x88\t`\x02`\x01\x87\x19\x81\x01\x88\x16\x97\x88\x90\x04`\x03\x81\x02\x83\x18\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x80\x82\x02\x84\x03\x02\x90\x81\x02\x90\x92\x03\x90\x91\x02_\x88\x90\x03\x88\x90\x04\x90\x91\x01\x85\x83\x11\x90\x94\x03\x93\x90\x93\x02\x93\x03\x94\x90\x94\x04\x91\x90\x91\x17\x02\x94\x93PPPPV[_a\r\xD0\x83\x83aGsV[B\x81\x10\x15aF\x04W`@Qc\x08\x19\xBD\xCD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[aF\x18`\x01`\x01`\xA0\x1B\x03\x85\x16\x84\x84aHVV[a\x0F%W`@Qc\x8B\xAAW\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[``\x81_\x01\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15aF\x82W` \x02\x82\x01\x91\x90_R` _ \x90[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11aFnW[PPPPP\x90P\x91\x90PV[a\x11\x06\x83\x83\x83aH\xAAV[_\x81\x81R`\x01\x83\x01` R`@\x81 TaF\xDEWP\x81T`\x01\x81\x81\x01\x84U_\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ua\x19\xB5V[P_a\x19\xB5V[\x81T_\x90\x80\x15aG\"WaG\x0B\x84aF\xFE`\x01\x84a]\x07V[_\x91\x82R` \x90\x91 \x01\x90V[Td\x01\0\0\0\0\x90\x04`\x01`\x01`\xE0\x1B\x03\x16a\x1A]V[P\x90\x92\x91PPV[\x82T_\x90\x81aG;\x86\x86\x83\x85aI\xB0V[\x90P\x80\x15aGiWaGR\x86aF\xFE`\x01\x84a]\x07V[Td\x01\0\0\0\0\x90\x04`\x01`\x01`\xE0\x1B\x03\x16a\t\x07V[P\x91\x94\x93PPPPV[_\x81\x81R`\x01\x83\x01` R`@\x81 T\x80\x15aHMW_aG\x95`\x01\x83a]\x07V[\x85T\x90\x91P_\x90aG\xA8\x90`\x01\x90a]\x07V[\x90P\x81\x81\x14aH\x07W_\x86_\x01\x82\x81T\x81\x10aG\xC6WaG\xC6aYOV[\x90_R` _ \x01T\x90P\x80\x87_\x01\x84\x81T\x81\x10aG\xE6WaG\xE6aYOV[_\x91\x82R` \x80\x83 \x90\x91\x01\x92\x90\x92U\x91\x82R`\x01\x88\x01\x90R`@\x90 \x83\x90U[\x85T\x86\x90\x80aH\x18WaH\x18a]\xD8V[`\x01\x90\x03\x81\x81\x90_R` _ \x01_\x90U\x90U\x85`\x01\x01_\x86\x81R` \x01\x90\x81R` \x01_ _\x90U`\x01\x93PPPPa\x19\xB5V[_\x91PPa\x19\xB5V[___aHc\x85\x85aJ\x03V[\x90\x92P\x90P_\x81`\x04\x81\x11\x15aH{WaH{a]\x91V[\x14\x80\x15aH\x99WP\x85`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x14[\x80a\t\x07WPa\t\x07\x86\x86\x86aJBV[\x82T\x80\x15aIbW_aH\xC2\x85aF\xFE`\x01\x85a]\x07V[`@\x80Q\x80\x82\x01\x90\x91R\x90Tc\xFF\xFF\xFF\xFF\x80\x82\x16\x80\x84Rd\x01\0\0\0\0\x90\x92\x04`\x01`\x01`\xE0\x1B\x03\x16` \x84\x01R\x91\x92P\x90\x85\x16\x10\x15aI\x15W`@Qc\x15\x1B\x8E?`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Qc\xFF\xFF\xFF\xFF\x80\x86\x16\x91\x16\x03aI`W\x82aI6\x86aF\xFE`\x01\x86a]\x07V[\x80T`\x01`\x01`\xE0\x1B\x03\x92\x90\x92\x16d\x01\0\0\0\0\x02c\xFF\xFF\xFF\xFF\x90\x92\x16\x91\x90\x91\x17\x90UPPPPPV[P[P`@\x80Q\x80\x82\x01\x90\x91Rc\xFF\xFF\xFF\xFF\x92\x83\x16\x81R`\x01`\x01`\xE0\x1B\x03\x91\x82\x16` \x80\x83\x01\x91\x82R\x85T`\x01\x81\x01\x87U_\x96\x87R\x95 \x91Q\x90Q\x90\x92\x16d\x01\0\0\0\0\x02\x91\x90\x92\x16\x17\x91\x01UV[_[\x81\x83\x10\x15a\x1B\xDAW_aI\xC5\x84\x84aK)V[_\x87\x81R` \x90 \x90\x91Pc\xFF\xFF\xFF\xFF\x86\x16\x90\x82\x01Tc\xFF\xFF\xFF\xFF\x16\x11\x15aI\xEFW\x80\x92PaI\xFDV[aI\xFA\x81`\x01aZ>V[\x93P[PaI\xB2V[__\x82Q`A\x03aJ7W` \x83\x01Q`@\x84\x01Q``\x85\x01Q_\x1AaJ+\x87\x82\x85\x85aKCV[\x94P\x94PPPPa \xB1V[P_\x90P`\x02a \xB1V[___\x85`\x01`\x01`\xA0\x1B\x03\x16c\x16&\xBA~`\xE0\x1B\x86\x86`@Q`$\x01aJj\x92\x91\x90a]\xECV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R` \x82\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16`\x01`\x01`\xE0\x1B\x03\x19\x90\x94\x16\x93\x90\x93\x17\x90\x92R\x90QaJ\xA8\x91\x90a^\x04V[_`@Q\x80\x83\x03\x81\x85Z\xFA\x91PP=\x80_\x81\x14aJ\xE0W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>aJ\xE5V[``\x91P[P\x91P\x91P\x81\x80\x15aJ\xF9WP` \x81Q\x10\x15[\x80\x15a\t\x07WP\x80Qc\x0B\x13]?`\xE1\x1B\x90aK\x1E\x90\x83\x01` \x90\x81\x01\x90\x84\x01a[gV[\x14\x96\x95PPPPPPV[_aK7`\x02\x84\x84\x18a^\x15V[a\r\xD0\x90\x84\x84\x16aZ>V[_\x80\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x83\x11\x15aKxWP_\x90P`\x03aK\xF7V[`@\x80Q_\x80\x82R` \x82\x01\x80\x84R\x89\x90R`\xFF\x88\x16\x92\x82\x01\x92\x90\x92R``\x81\x01\x86\x90R`\x80\x81\x01\x85\x90R`\x01\x90`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15aK\xC9W=__>=_\xFD[PP`@Q`\x1F\x19\x01Q\x91PP`\x01`\x01`\xA0\x1B\x03\x81\x16aK\xF1W_`\x01\x92P\x92PPaK\xF7V[\x91P_\x90P[\x94P\x94\x92PPPV[`@Q\x80`\xE0\x01`@R\x80_`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01_`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01_`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01_\x81R` \x01_c\xFF\xFF\xFF\xFF\x16\x81R` \x01``\x81R` \x01``\x81RP\x90V[\x82\x80T\x82\x82U\x90_R` _ \x90\x81\x01\x92\x82\x15aL\xACW\x91` \x02\x82\x01[\x82\x81\x11\x15aL\xACW\x82Q\x82T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x17\x82U` \x90\x92\x01\x91`\x01\x90\x91\x01\x90aLwV[PaL\xB8\x92\x91PaM\x0CV[P\x90V[\x82\x80T\x82\x82U\x90_R` _ \x90\x81\x01\x92\x82\x15aL\xACW\x91` \x02\x82\x01[\x82\x81\x11\x15aL\xACW\x82Q\x82U\x91` \x01\x91\x90`\x01\x01\x90aL\xDAV[P\x80T_\x82U\x90_R` _ \x90\x81\x01\x90a$\xD8\x91\x90[[\x80\x82\x11\x15aL\xB8W_\x81U`\x01\x01aM\rV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a$\xD8W__\xFD[\x805a\"\xF7\x81aM V[_____`\xA0\x86\x88\x03\x12\x15aMSW__\xFD[\x855aM^\x81aM V[\x94P` \x86\x015aMn\x81aM V[\x93P`@\x86\x015aM~\x81aM V[\x94\x97\x93\x96P\x93\x94``\x81\x015\x94P`\x80\x015\x92\x91PPV[__\x83`\x1F\x84\x01\x12aM\xA6W__\xFD[P\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aM\xBCW__\xFD[` \x83\x01\x91P\x83` \x82`\x05\x1B\x85\x01\x01\x11\x15a \xB1W__\xFD[__` \x83\x85\x03\x12\x15aM\xE7W__\xFD[\x825`\x01`\x01`@\x1B\x03\x81\x11\x15aM\xFCW__\xFD[aN\x08\x85\x82\x86\x01aM\x96V[\x90\x96\x90\x95P\x93PPPPV[` \x80\x82R\x82Q\x82\x82\x01\x81\x90R_\x91\x84\x01\x90`@\x84\x01\x90\x83[\x81\x81\x10\x15a(\x9CW\x83Q\x83R` \x93\x84\x01\x93\x90\x92\x01\x91`\x01\x01aN-V[_` \x82\x84\x03\x12\x15aN[W__\xFD[P5\x91\x90PV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@Q`\xE0\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15aN\x98WaN\x98aNbV[`@R\x90V[`@\x80Q\x90\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15aN\x98WaN\x98aNbV[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15aN\xE8WaN\xE8aNbV[`@R\x91\x90PV[_`\x01`\x01`@\x1B\x03\x82\x11\x15aO\x08WaO\x08aNbV[P`\x05\x1B` \x01\x90V[_\x82`\x1F\x83\x01\x12aO!W__\xFD[\x815aO4aO/\x82aN\xF0V[aN\xC0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x86\x01\x01\x92P\x85\x83\x11\x15aOUW__\xFD[` \x85\x01[\x83\x81\x10\x15aO{W\x805aOm\x81aM V[\x83R` \x92\x83\x01\x92\x01aOZV[P\x95\x94PPPPPV[_\x82`\x1F\x83\x01\x12aO\x94W__\xFD[\x815aO\xA2aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x86\x01\x01\x92P\x85\x83\x11\x15aO\xC3W__\xFD[` \x85\x01[\x83\x81\x10\x15aO{W\x805\x83R` \x92\x83\x01\x92\x01aO\xC8V[___``\x84\x86\x03\x12\x15aO\xF2W__\xFD[\x835aO\xFD\x81aM V[\x92P` \x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aP\x17W__\xFD[aP#\x86\x82\x87\x01aO\x12V[\x92PP`@\x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aP>W__\xFD[aPJ\x86\x82\x87\x01aO\x85V[\x91PP\x92P\x92P\x92V[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15aP\x84W\x81Q\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01aPfV[P\x93\x94\x93PPPPV[` \x81R_a\r\xD0` \x83\x01\x84aPTV[\x805c\xFF\xFF\xFF\xFF\x81\x16\x81\x14a\"\xF7W__\xFD[__\x83`\x1F\x84\x01\x12aP\xC3W__\xFD[P\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aP\xD9W__\xFD[` \x83\x01\x91P\x83` \x82\x85\x01\x01\x11\x15a \xB1W__\xFD[____``\x85\x87\x03\x12\x15aQ\x03W__\xFD[\x845aQ\x0E\x81aM V[\x93PaQ\x1C` \x86\x01aP\xA0V[\x92P`@\x85\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aQ6W__\xFD[aQB\x87\x82\x88\x01aP\xB3V[\x95\x98\x94\x97P\x95PPPPV[____`\x80\x85\x87\x03\x12\x15aQaW__\xFD[\x845aQl\x81aM V[\x93P` \x85\x015aQ|\x81aM V[\x93\x96\x93\x95PPPP`@\x82\x015\x91``\x015\x90V[_` \x82\x84\x03\x12\x15aQ\xA1W__\xFD[\x815a\r\xD0\x81aM V[__`@\x83\x85\x03\x12\x15aQ\xBDW__\xFD[\x825aQ\xC8\x81aM V[\x91P` \x83\x015aQ\xD8\x81aM V[\x80\x91PP\x92P\x92\x90PV[_[\x83\x81\x10\x15aQ\xFDW\x81\x81\x01Q\x83\x82\x01R` \x01aQ\xE5V[PP_\x91\x01RV[_\x81Q\x80\x84RaR\x1C\x81` \x86\x01` \x86\x01aQ\xE3V[`\x1F\x01`\x1F\x19\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R_a\r\xD0` \x83\x01\x84aR\x05V[_`\xE0\x82\x84\x03\x12\x15aRRW__\xFD[aRZaNvV[\x90PaRe\x82aM4V[\x81RaRs` \x83\x01aM4V[` \x82\x01RaR\x84`@\x83\x01aM4V[`@\x82\x01R``\x82\x81\x015\x90\x82\x01RaR\x9F`\x80\x83\x01aP\xA0V[`\x80\x82\x01R`\xA0\x82\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aR\xBCW__\xFD[aR\xC8\x84\x82\x85\x01aO\x12V[`\xA0\x83\x01RP`\xC0\x82\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aR\xE6W__\xFD[aR\xF2\x84\x82\x85\x01aO\x85V[`\xC0\x83\x01RP\x92\x91PPV[_` \x82\x84\x03\x12\x15aS\x0EW__\xFD[\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aS#W__\xFD[a\x1A]\x84\x82\x85\x01aRBV[_` \x82\x84\x03\x12\x15aS?W__\xFD[\x815`\xFF\x81\x16\x81\x14a\r\xD0W__\xFD[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15aP\x84W\x81Q`\x01`\x01`\xA0\x1B\x03\x16\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01aSaV[\x80Q`\x01`\x01`\xA0\x1B\x03\x90\x81\x16\x83R` \x80\x83\x01Q\x82\x16\x90\x84\x01R`@\x80\x83\x01Q\x90\x91\x16\x90\x83\x01R``\x80\x82\x01Q\x90\x83\x01R`\x80\x80\x82\x01Q_\x91aS\xD3\x90\x85\x01\x82c\xFF\xFF\xFF\xFF\x16\x90RV[P`\xA0\x82\x01Q`\xE0`\xA0\x85\x01RaS\xED`\xE0\x85\x01\x82aSOV[\x90P`\xC0\x83\x01Q\x84\x82\x03`\xC0\x86\x01RaD\x96\x82\x82aPTV[`@\x81R_aT\x18`@\x83\x01\x85aS\x88V[\x82\x81\x03` \x84\x01RaD\x96\x81\x85aPTV[_\x82\x82Q\x80\x85R` \x85\x01\x94P` \x81`\x05\x1B\x83\x01\x01` \x85\x01_[\x83\x81\x10\x15aD-W`\x1F\x19\x85\x84\x03\x01\x88RaTb\x83\x83QaPTV[` \x98\x89\x01\x98\x90\x93P\x91\x90\x91\x01\x90`\x01\x01aTFV[_`@\x82\x01`@\x83R\x80\x85Q\x80\x83R``\x85\x01\x91P``\x81`\x05\x1B\x86\x01\x01\x92P` \x87\x01_[\x82\x81\x10\x15aT\xCFW`_\x19\x87\x86\x03\x01\x84RaT\xBA\x85\x83QaS\x88V[\x94P` \x93\x84\x01\x93\x91\x90\x91\x01\x90`\x01\x01aT\x9EV[PPPP\x82\x81\x03` \x84\x01RaD\x96\x81\x85aT*V[`\x01`\x01`@\x1B\x03\x81\x16\x81\x14a$\xD8W__\xFD[____`\x80\x85\x87\x03\x12\x15aU\x0CW__\xFD[\x845aU\x17\x81aM V[\x93P` \x85\x015aU'\x81aM V[\x92P`@\x85\x015aU7\x81aT\xE5V[\x91P``\x85\x015aUG\x81aT\xE5V[\x93\x96\x92\x95P\x90\x93PPV[___``\x84\x86\x03\x12\x15aUdW__\xFD[\x835aUo\x81aM V[\x92P` \x84\x015\x91P`@\x84\x015aU\x86\x81aT\xE5V[\x80\x91PP\x92P\x92P\x92V[`@\x81R_aT\x18`@\x83\x01\x85aSOV[___`@\x84\x86\x03\x12\x15aU\xB5W__\xFD[\x835aU\xC0\x81aM V[\x92P` \x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aU\xDAW__\xFD[aU\xE6\x86\x82\x87\x01aP\xB3V[\x94\x97\x90\x96P\x93\x94PPPPV[__`@\x83\x85\x03\x12\x15aV\x04W__\xFD[\x825aV\x0F\x81aM V[\x91P` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV)W__\xFD[aV5\x85\x82\x86\x01aO\x12V[\x91PP\x92P\x92\x90PV[______``\x87\x89\x03\x12\x15aVTW__\xFD[\x865`\x01`\x01`@\x1B\x03\x81\x11\x15aViW__\xFD[aVu\x89\x82\x8A\x01aM\x96V[\x90\x97P\x95PP` \x87\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV\x93W__\xFD[aV\x9F\x89\x82\x8A\x01aM\x96V[\x90\x95P\x93PP`@\x87\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV\xBDW__\xFD[aV\xC9\x89\x82\x8A\x01aM\x96V[\x97\x9A\x96\x99P\x94\x97P\x92\x95\x93\x94\x92PPPV[` \x81R_a\r\xD0` \x83\x01\x84aS\x88V[___``\x84\x86\x03\x12\x15aV\xFFW__\xFD[\x835aW\n\x81aM V[\x92P` \x84\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aW$W__\xFD[\x84\x01`@\x81\x87\x03\x12\x15aW5W__\xFD[aW=aN\x9EV[\x815`\x01`\x01`@\x1B\x03\x81\x11\x15aWRW__\xFD[\x82\x01`\x1F\x81\x01\x88\x13aWbW__\xFD[\x805`\x01`\x01`@\x1B\x03\x81\x11\x15aW{WaW{aNbV[aW\x8E`\x1F\x82\x01`\x1F\x19\x16` \x01aN\xC0V[\x81\x81R\x89` \x83\x85\x01\x01\x11\x15aW\xA2W__\xFD[\x81` \x84\x01` \x83\x017_` \x92\x82\x01\x83\x01R\x83R\x92\x83\x015\x92\x82\x01\x92\x90\x92R\x93\x96\x93\x95PPPP`@\x91\x90\x91\x015\x90V[__`@\x83\x85\x03\x12\x15aW\xE5W__\xFD[\x825aW\xF0\x81aM V[\x94` \x93\x90\x93\x015\x93PPPV[`@\x81R_aT\x18`@\x83\x01\x85aPTV[\x80\x15\x15\x81\x14a$\xD8W__\xFD[____``\x85\x87\x03\x12\x15aX0W__\xFD[\x845`\x01`\x01`@\x1B\x03\x81\x11\x15aXEW__\xFD[\x85\x01`\xE0\x81\x88\x03\x12\x15aXVW__\xFD[\x93P` \x85\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aXpW__\xFD[aX|\x87\x82\x88\x01aM\x96V[\x90\x94P\x92PP`@\x85\x015aUG\x81aX\x10V[__`@\x83\x85\x03\x12\x15aX\xA1W__\xFD[\x825`\x01`\x01`@\x1B\x03\x81\x11\x15aX\xB6W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13aX\xC6W__\xFD[\x805aX\xD4aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x85\x01\x01\x92P\x87\x83\x11\x15aX\xF5W__\xFD[` \x84\x01\x93P[\x82\x84\x10\x15aY W\x835aY\x0F\x81aM V[\x82R` \x93\x84\x01\x93\x90\x91\x01\x90aX\xFCV[\x94PPPP` \x83\x015`\x01`\x01`@\x1B\x03\x81\x11\x15aV)W__\xFD[` \x81R_a\r\xD0` \x83\x01\x84aT*V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_\x825`^\x19\x836\x03\x01\x81\x12aYwW__\xFD[\x91\x90\x91\x01\x92\x91PPV[__\x835`\x1E\x19\x846\x03\x01\x81\x12aY\x96W__\xFD[\x83\x01\x805\x91P`\x01`\x01`@\x1B\x03\x82\x11\x15aY\xAFW__\xFD[` \x01\x91P`\x05\x81\x90\x1B6\x03\x82\x13\x15a \xB1W__\xFD[_` \x82\x84\x03\x12\x15aY\xD6W__\xFD[\x81Qa\r\xD0\x81aX\x10V[` \x81R\x81` \x82\x01R\x81\x83`@\x83\x017_\x81\x83\x01`@\x90\x81\x01\x91\x90\x91R`\x1F\x90\x92\x01`\x1F\x19\x16\x01\x01\x91\x90PV[_` \x82\x84\x03\x12\x15aZ\x1FW__\xFD[\x81Qa\r\xD0\x81aT\xE5V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[_\x82`\x1F\x83\x01\x12aZ`W__\xFD[\x81QaZnaO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x86\x01\x01\x92P\x85\x83\x11\x15aZ\x8FW__\xFD[` \x85\x01[\x83\x81\x10\x15aO{W\x80Q\x83R` \x92\x83\x01\x92\x01aZ\x94V[__`@\x83\x85\x03\x12\x15aZ\xBDW__\xFD[\x82Q`\x01`\x01`@\x1B\x03\x81\x11\x15aZ\xD2W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13aZ\xE2W__\xFD[\x80QaZ\xF0aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x85\x01\x01\x92P\x87\x83\x11\x15a[\x11W__\xFD[` \x84\x01\x93P[\x82\x84\x10\x15a[<W\x83Qa[+\x81aM V[\x82R` \x93\x84\x01\x93\x90\x91\x01\x90a[\x18V[\x80\x95PPPPP` \x83\x01Q`\x01`\x01`@\x1B\x03\x81\x11\x15a[[W__\xFD[aV5\x85\x82\x86\x01aZQV[_` \x82\x84\x03\x12\x15a[wW__\xFD[PQ\x91\x90PV[_\x825`\xDE\x19\x836\x03\x01\x81\x12aYwW__\xFD[_a\x19\xB56\x83aRBV[_` \x82\x84\x03\x12\x15a[\xADW__\xFD[\x815a\r\xD0\x81aX\x10V[_` \x82\x84\x03\x12\x15a[\xC8W__\xFD[\x81Qa\r\xD0\x81aM V[`\x01`\x01`\xA0\x1B\x03\x83\x16\x81R`@` \x82\x01\x81\x90R_\x90a\x1A]\x90\x83\x01\x84aSOV[_` \x82\x84\x03\x12\x15a\\\x06W__\xFD[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\\\x1BW__\xFD[\x82\x01`\x1F\x81\x01\x84\x13a\\+W__\xFD[\x80Qa\\9aO/\x82aN\xF0V[\x80\x82\x82R` \x82\x01\x91P` \x83`\x05\x1B\x85\x01\x01\x92P\x86\x83\x11\x15a\\ZW__\xFD[` \x84\x01\x93P[\x82\x84\x10\x15a\t\x07W\x83Qa\\t\x81aT\xE5V[\x82R` \x93\x84\x01\x93\x90\x91\x01\x90a\\aV[`\x01`\x01`\xA0\x1B\x03\x93\x84\x16\x81R\x91\x90\x92\x16` \x82\x01R`@\x81\x01\x91\x90\x91R``\x01\x90V[_`\x01\x82\x01a\\\xBAWa\\\xBAaZ*V[P`\x01\x01\x90V[\x83\x81R``` \x82\x01R_a\\\xD9``\x83\x01\x85aS\x88V[\x82\x81\x03`@\x84\x01Ra\t\x07\x81\x85aPTV[c\xFF\xFF\xFF\xFF\x81\x81\x16\x83\x82\x16\x01\x90\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[\x81\x81\x03\x81\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[c\xFF\xFF\xFF\xFF\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[__`@\x83\x85\x03\x12\x15a]GW__\xFD[PP\x80Q` \x90\x91\x01Q\x90\x92\x90\x91PV[`\x01`\x01`\xA0\x1B\x03\x84\x16\x81R``` \x82\x01\x81\x90R_\x90a]{\x90\x83\x01\x85aSOV[\x90Pc\xFF\xFF\xFF\xFF\x83\x16`@\x83\x01R\x94\x93PPPPV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[`\x01`\x01`@\x1B\x03\x82\x81\x16\x82\x82\x16\x03\x90\x81\x11\x15a\x19\xB5Wa\x19\xB5aZ*V[cNH{q`\xE0\x1B_R`1`\x04R`$_\xFD[\x82\x81R`@` \x82\x01R_a\x1A]`@\x83\x01\x84aR\x05V[_\x82QaYw\x81\x84` \x87\x01aQ\xE3V[_\x82a^/WcNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[P\x04\x90V\xFE\xA2dipfsX\"\x12 \xAD{\x0BY\x11\x02\x1F\xA3\xEF8T\xA4\x85>\x9E\x1F5\xBAr\xED\x89=9\xC5\x9F\x87M\xE9@!X\xFCdsolcC\0\x08\x1B\x003",
3098 );
3099 #[derive(serde::Serialize, serde::Deserialize)]
3100 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3101 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3106 #[derive(Clone)]
3107 pub struct ActivelyDelegated;
3108 #[allow(
3109 non_camel_case_types,
3110 non_snake_case,
3111 clippy::pub_underscore_fields,
3112 clippy::style
3113 )]
3114 const _: () = {
3115 use alloy::sol_types as alloy_sol_types;
3116 #[doc(hidden)]
3117 type UnderlyingSolTuple<'a> = ();
3118 #[doc(hidden)]
3119 type UnderlyingRustTuple<'a> = ();
3120 #[cfg(test)]
3121 #[allow(dead_code, unreachable_patterns)]
3122 fn _type_assertion(
3123 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3124 ) {
3125 match _t {
3126 alloy_sol_types::private::AssertTypeEq::<
3127 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3128 >(_) => {}
3129 }
3130 }
3131 #[automatically_derived]
3132 #[doc(hidden)]
3133 impl ::core::convert::From<ActivelyDelegated> for UnderlyingRustTuple<'_> {
3134 fn from(value: ActivelyDelegated) -> Self {
3135 ()
3136 }
3137 }
3138 #[automatically_derived]
3139 #[doc(hidden)]
3140 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ActivelyDelegated {
3141 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3142 Self
3143 }
3144 }
3145 #[automatically_derived]
3146 impl alloy_sol_types::SolError for ActivelyDelegated {
3147 type Parameters<'a> = UnderlyingSolTuple<'a>;
3148 type Token<'a> = <Self::Parameters<
3149 'a,
3150 > as alloy_sol_types::SolType>::Token<'a>;
3151 const SIGNATURE: &'static str = "ActivelyDelegated()";
3152 const SELECTOR: [u8; 4] = [119u8, 229u8, 106u8, 6u8];
3153 #[inline]
3154 fn new<'a>(
3155 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3156 ) -> Self {
3157 tuple.into()
3158 }
3159 #[inline]
3160 fn tokenize(&self) -> Self::Token<'_> {
3161 ()
3162 }
3163 #[inline]
3164 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3165 <Self::Parameters<
3166 '_,
3167 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3168 .map(Self::new)
3169 }
3170 }
3171 };
3172 #[derive(serde::Serialize, serde::Deserialize)]
3173 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3174 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3179 #[derive(Clone)]
3180 pub struct CallerCannotUndelegate;
3181 #[allow(
3182 non_camel_case_types,
3183 non_snake_case,
3184 clippy::pub_underscore_fields,
3185 clippy::style
3186 )]
3187 const _: () = {
3188 use alloy::sol_types as alloy_sol_types;
3189 #[doc(hidden)]
3190 type UnderlyingSolTuple<'a> = ();
3191 #[doc(hidden)]
3192 type UnderlyingRustTuple<'a> = ();
3193 #[cfg(test)]
3194 #[allow(dead_code, unreachable_patterns)]
3195 fn _type_assertion(
3196 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3197 ) {
3198 match _t {
3199 alloy_sol_types::private::AssertTypeEq::<
3200 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3201 >(_) => {}
3202 }
3203 }
3204 #[automatically_derived]
3205 #[doc(hidden)]
3206 impl ::core::convert::From<CallerCannotUndelegate> for UnderlyingRustTuple<'_> {
3207 fn from(value: CallerCannotUndelegate) -> Self {
3208 ()
3209 }
3210 }
3211 #[automatically_derived]
3212 #[doc(hidden)]
3213 impl ::core::convert::From<UnderlyingRustTuple<'_>> for CallerCannotUndelegate {
3214 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3215 Self
3216 }
3217 }
3218 #[automatically_derived]
3219 impl alloy_sol_types::SolError for CallerCannotUndelegate {
3220 type Parameters<'a> = UnderlyingSolTuple<'a>;
3221 type Token<'a> = <Self::Parameters<
3222 'a,
3223 > as alloy_sol_types::SolType>::Token<'a>;
3224 const SIGNATURE: &'static str = "CallerCannotUndelegate()";
3225 const SELECTOR: [u8; 4] = [60u8, 147u8, 52u8, 70u8];
3226 #[inline]
3227 fn new<'a>(
3228 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3229 ) -> Self {
3230 tuple.into()
3231 }
3232 #[inline]
3233 fn tokenize(&self) -> Self::Token<'_> {
3234 ()
3235 }
3236 #[inline]
3237 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3238 <Self::Parameters<
3239 '_,
3240 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3241 .map(Self::new)
3242 }
3243 }
3244 };
3245 #[derive(serde::Serialize, serde::Deserialize)]
3246 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3247 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3252 #[derive(Clone)]
3253 pub struct CurrentlyPaused;
3254 #[allow(
3255 non_camel_case_types,
3256 non_snake_case,
3257 clippy::pub_underscore_fields,
3258 clippy::style
3259 )]
3260 const _: () = {
3261 use alloy::sol_types as alloy_sol_types;
3262 #[doc(hidden)]
3263 type UnderlyingSolTuple<'a> = ();
3264 #[doc(hidden)]
3265 type UnderlyingRustTuple<'a> = ();
3266 #[cfg(test)]
3267 #[allow(dead_code, unreachable_patterns)]
3268 fn _type_assertion(
3269 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3270 ) {
3271 match _t {
3272 alloy_sol_types::private::AssertTypeEq::<
3273 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3274 >(_) => {}
3275 }
3276 }
3277 #[automatically_derived]
3278 #[doc(hidden)]
3279 impl ::core::convert::From<CurrentlyPaused> for UnderlyingRustTuple<'_> {
3280 fn from(value: CurrentlyPaused) -> Self {
3281 ()
3282 }
3283 }
3284 #[automatically_derived]
3285 #[doc(hidden)]
3286 impl ::core::convert::From<UnderlyingRustTuple<'_>> for CurrentlyPaused {
3287 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3288 Self
3289 }
3290 }
3291 #[automatically_derived]
3292 impl alloy_sol_types::SolError for CurrentlyPaused {
3293 type Parameters<'a> = UnderlyingSolTuple<'a>;
3294 type Token<'a> = <Self::Parameters<
3295 'a,
3296 > as alloy_sol_types::SolType>::Token<'a>;
3297 const SIGNATURE: &'static str = "CurrentlyPaused()";
3298 const SELECTOR: [u8; 4] = [132u8, 10u8, 72u8, 213u8];
3299 #[inline]
3300 fn new<'a>(
3301 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3302 ) -> Self {
3303 tuple.into()
3304 }
3305 #[inline]
3306 fn tokenize(&self) -> Self::Token<'_> {
3307 ()
3308 }
3309 #[inline]
3310 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3311 <Self::Parameters<
3312 '_,
3313 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3314 .map(Self::new)
3315 }
3316 }
3317 };
3318 #[derive(serde::Serialize, serde::Deserialize)]
3319 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3320 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3325 #[derive(Clone)]
3326 pub struct FullySlashed;
3327 #[allow(
3328 non_camel_case_types,
3329 non_snake_case,
3330 clippy::pub_underscore_fields,
3331 clippy::style
3332 )]
3333 const _: () = {
3334 use alloy::sol_types as alloy_sol_types;
3335 #[doc(hidden)]
3336 type UnderlyingSolTuple<'a> = ();
3337 #[doc(hidden)]
3338 type UnderlyingRustTuple<'a> = ();
3339 #[cfg(test)]
3340 #[allow(dead_code, unreachable_patterns)]
3341 fn _type_assertion(
3342 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3343 ) {
3344 match _t {
3345 alloy_sol_types::private::AssertTypeEq::<
3346 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3347 >(_) => {}
3348 }
3349 }
3350 #[automatically_derived]
3351 #[doc(hidden)]
3352 impl ::core::convert::From<FullySlashed> for UnderlyingRustTuple<'_> {
3353 fn from(value: FullySlashed) -> Self {
3354 ()
3355 }
3356 }
3357 #[automatically_derived]
3358 #[doc(hidden)]
3359 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FullySlashed {
3360 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3361 Self
3362 }
3363 }
3364 #[automatically_derived]
3365 impl alloy_sol_types::SolError for FullySlashed {
3366 type Parameters<'a> = UnderlyingSolTuple<'a>;
3367 type Token<'a> = <Self::Parameters<
3368 'a,
3369 > as alloy_sol_types::SolType>::Token<'a>;
3370 const SIGNATURE: &'static str = "FullySlashed()";
3371 const SELECTOR: [u8; 4] = [40u8, 206u8, 241u8, 164u8];
3372 #[inline]
3373 fn new<'a>(
3374 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3375 ) -> Self {
3376 tuple.into()
3377 }
3378 #[inline]
3379 fn tokenize(&self) -> Self::Token<'_> {
3380 ()
3381 }
3382 #[inline]
3383 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3384 <Self::Parameters<
3385 '_,
3386 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3387 .map(Self::new)
3388 }
3389 }
3390 };
3391 #[derive(serde::Serialize, serde::Deserialize)]
3392 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3393 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3398 #[derive(Clone)]
3399 pub struct InputAddressZero;
3400 #[allow(
3401 non_camel_case_types,
3402 non_snake_case,
3403 clippy::pub_underscore_fields,
3404 clippy::style
3405 )]
3406 const _: () = {
3407 use alloy::sol_types as alloy_sol_types;
3408 #[doc(hidden)]
3409 type UnderlyingSolTuple<'a> = ();
3410 #[doc(hidden)]
3411 type UnderlyingRustTuple<'a> = ();
3412 #[cfg(test)]
3413 #[allow(dead_code, unreachable_patterns)]
3414 fn _type_assertion(
3415 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3416 ) {
3417 match _t {
3418 alloy_sol_types::private::AssertTypeEq::<
3419 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3420 >(_) => {}
3421 }
3422 }
3423 #[automatically_derived]
3424 #[doc(hidden)]
3425 impl ::core::convert::From<InputAddressZero> for UnderlyingRustTuple<'_> {
3426 fn from(value: InputAddressZero) -> Self {
3427 ()
3428 }
3429 }
3430 #[automatically_derived]
3431 #[doc(hidden)]
3432 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InputAddressZero {
3433 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3434 Self
3435 }
3436 }
3437 #[automatically_derived]
3438 impl alloy_sol_types::SolError for InputAddressZero {
3439 type Parameters<'a> = UnderlyingSolTuple<'a>;
3440 type Token<'a> = <Self::Parameters<
3441 'a,
3442 > as alloy_sol_types::SolType>::Token<'a>;
3443 const SIGNATURE: &'static str = "InputAddressZero()";
3444 const SELECTOR: [u8; 4] = [115u8, 99u8, 33u8, 118u8];
3445 #[inline]
3446 fn new<'a>(
3447 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3448 ) -> Self {
3449 tuple.into()
3450 }
3451 #[inline]
3452 fn tokenize(&self) -> Self::Token<'_> {
3453 ()
3454 }
3455 #[inline]
3456 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3457 <Self::Parameters<
3458 '_,
3459 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3460 .map(Self::new)
3461 }
3462 }
3463 };
3464 #[derive(serde::Serialize, serde::Deserialize)]
3465 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3466 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3471 #[derive(Clone)]
3472 pub struct InputArrayLengthMismatch;
3473 #[allow(
3474 non_camel_case_types,
3475 non_snake_case,
3476 clippy::pub_underscore_fields,
3477 clippy::style
3478 )]
3479 const _: () = {
3480 use alloy::sol_types as alloy_sol_types;
3481 #[doc(hidden)]
3482 type UnderlyingSolTuple<'a> = ();
3483 #[doc(hidden)]
3484 type UnderlyingRustTuple<'a> = ();
3485 #[cfg(test)]
3486 #[allow(dead_code, unreachable_patterns)]
3487 fn _type_assertion(
3488 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3489 ) {
3490 match _t {
3491 alloy_sol_types::private::AssertTypeEq::<
3492 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3493 >(_) => {}
3494 }
3495 }
3496 #[automatically_derived]
3497 #[doc(hidden)]
3498 impl ::core::convert::From<InputArrayLengthMismatch>
3499 for UnderlyingRustTuple<'_> {
3500 fn from(value: InputArrayLengthMismatch) -> Self {
3501 ()
3502 }
3503 }
3504 #[automatically_derived]
3505 #[doc(hidden)]
3506 impl ::core::convert::From<UnderlyingRustTuple<'_>>
3507 for InputArrayLengthMismatch {
3508 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3509 Self
3510 }
3511 }
3512 #[automatically_derived]
3513 impl alloy_sol_types::SolError for InputArrayLengthMismatch {
3514 type Parameters<'a> = UnderlyingSolTuple<'a>;
3515 type Token<'a> = <Self::Parameters<
3516 'a,
3517 > as alloy_sol_types::SolType>::Token<'a>;
3518 const SIGNATURE: &'static str = "InputArrayLengthMismatch()";
3519 const SELECTOR: [u8; 4] = [67u8, 113u8, 74u8, 253u8];
3520 #[inline]
3521 fn new<'a>(
3522 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3523 ) -> Self {
3524 tuple.into()
3525 }
3526 #[inline]
3527 fn tokenize(&self) -> Self::Token<'_> {
3528 ()
3529 }
3530 #[inline]
3531 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3532 <Self::Parameters<
3533 '_,
3534 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3535 .map(Self::new)
3536 }
3537 }
3538 };
3539 #[derive(serde::Serialize, serde::Deserialize)]
3540 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3541 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3546 #[derive(Clone)]
3547 pub struct InputArrayLengthZero;
3548 #[allow(
3549 non_camel_case_types,
3550 non_snake_case,
3551 clippy::pub_underscore_fields,
3552 clippy::style
3553 )]
3554 const _: () = {
3555 use alloy::sol_types as alloy_sol_types;
3556 #[doc(hidden)]
3557 type UnderlyingSolTuple<'a> = ();
3558 #[doc(hidden)]
3559 type UnderlyingRustTuple<'a> = ();
3560 #[cfg(test)]
3561 #[allow(dead_code, unreachable_patterns)]
3562 fn _type_assertion(
3563 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3564 ) {
3565 match _t {
3566 alloy_sol_types::private::AssertTypeEq::<
3567 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3568 >(_) => {}
3569 }
3570 }
3571 #[automatically_derived]
3572 #[doc(hidden)]
3573 impl ::core::convert::From<InputArrayLengthZero> for UnderlyingRustTuple<'_> {
3574 fn from(value: InputArrayLengthZero) -> Self {
3575 ()
3576 }
3577 }
3578 #[automatically_derived]
3579 #[doc(hidden)]
3580 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InputArrayLengthZero {
3581 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3582 Self
3583 }
3584 }
3585 #[automatically_derived]
3586 impl alloy_sol_types::SolError for InputArrayLengthZero {
3587 type Parameters<'a> = UnderlyingSolTuple<'a>;
3588 type Token<'a> = <Self::Parameters<
3589 'a,
3590 > as alloy_sol_types::SolType>::Token<'a>;
3591 const SIGNATURE: &'static str = "InputArrayLengthZero()";
3592 const SELECTOR: [u8; 4] = [121u8, 108u8, 197u8, 37u8];
3593 #[inline]
3594 fn new<'a>(
3595 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3596 ) -> Self {
3597 tuple.into()
3598 }
3599 #[inline]
3600 fn tokenize(&self) -> Self::Token<'_> {
3601 ()
3602 }
3603 #[inline]
3604 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3605 <Self::Parameters<
3606 '_,
3607 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3608 .map(Self::new)
3609 }
3610 }
3611 };
3612 #[derive(serde::Serialize, serde::Deserialize)]
3613 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3614 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3619 #[derive(Clone)]
3620 pub struct InvalidNewPausedStatus;
3621 #[allow(
3622 non_camel_case_types,
3623 non_snake_case,
3624 clippy::pub_underscore_fields,
3625 clippy::style
3626 )]
3627 const _: () = {
3628 use alloy::sol_types as alloy_sol_types;
3629 #[doc(hidden)]
3630 type UnderlyingSolTuple<'a> = ();
3631 #[doc(hidden)]
3632 type UnderlyingRustTuple<'a> = ();
3633 #[cfg(test)]
3634 #[allow(dead_code, unreachable_patterns)]
3635 fn _type_assertion(
3636 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3637 ) {
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<InvalidNewPausedStatus> for UnderlyingRustTuple<'_> {
3647 fn from(value: InvalidNewPausedStatus) -> Self {
3648 ()
3649 }
3650 }
3651 #[automatically_derived]
3652 #[doc(hidden)]
3653 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidNewPausedStatus {
3654 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3655 Self
3656 }
3657 }
3658 #[automatically_derived]
3659 impl alloy_sol_types::SolError for InvalidNewPausedStatus {
3660 type Parameters<'a> = UnderlyingSolTuple<'a>;
3661 type Token<'a> = <Self::Parameters<
3662 'a,
3663 > as alloy_sol_types::SolType>::Token<'a>;
3664 const SIGNATURE: &'static str = "InvalidNewPausedStatus()";
3665 const SELECTOR: [u8; 4] = [198u8, 29u8, 202u8, 93u8];
3666 #[inline]
3667 fn new<'a>(
3668 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3669 ) -> Self {
3670 tuple.into()
3671 }
3672 #[inline]
3673 fn tokenize(&self) -> Self::Token<'_> {
3674 ()
3675 }
3676 #[inline]
3677 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3678 <Self::Parameters<
3679 '_,
3680 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3681 .map(Self::new)
3682 }
3683 }
3684 };
3685 #[derive(serde::Serialize, serde::Deserialize)]
3686 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3687 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3692 #[derive(Clone)]
3693 pub struct InvalidPermissions;
3694 #[allow(
3695 non_camel_case_types,
3696 non_snake_case,
3697 clippy::pub_underscore_fields,
3698 clippy::style
3699 )]
3700 const _: () = {
3701 use alloy::sol_types as alloy_sol_types;
3702 #[doc(hidden)]
3703 type UnderlyingSolTuple<'a> = ();
3704 #[doc(hidden)]
3705 type UnderlyingRustTuple<'a> = ();
3706 #[cfg(test)]
3707 #[allow(dead_code, unreachable_patterns)]
3708 fn _type_assertion(
3709 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3710 ) {
3711 match _t {
3712 alloy_sol_types::private::AssertTypeEq::<
3713 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3714 >(_) => {}
3715 }
3716 }
3717 #[automatically_derived]
3718 #[doc(hidden)]
3719 impl ::core::convert::From<InvalidPermissions> for UnderlyingRustTuple<'_> {
3720 fn from(value: InvalidPermissions) -> Self {
3721 ()
3722 }
3723 }
3724 #[automatically_derived]
3725 #[doc(hidden)]
3726 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidPermissions {
3727 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3728 Self
3729 }
3730 }
3731 #[automatically_derived]
3732 impl alloy_sol_types::SolError for InvalidPermissions {
3733 type Parameters<'a> = UnderlyingSolTuple<'a>;
3734 type Token<'a> = <Self::Parameters<
3735 'a,
3736 > as alloy_sol_types::SolType>::Token<'a>;
3737 const SIGNATURE: &'static str = "InvalidPermissions()";
3738 const SELECTOR: [u8; 4] = [147u8, 45u8, 148u8, 247u8];
3739 #[inline]
3740 fn new<'a>(
3741 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3742 ) -> Self {
3743 tuple.into()
3744 }
3745 #[inline]
3746 fn tokenize(&self) -> Self::Token<'_> {
3747 ()
3748 }
3749 #[inline]
3750 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3751 <Self::Parameters<
3752 '_,
3753 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3754 .map(Self::new)
3755 }
3756 }
3757 };
3758 #[derive(serde::Serialize, serde::Deserialize)]
3759 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3760 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3765 #[derive(Clone)]
3766 pub struct InvalidShortString;
3767 #[allow(
3768 non_camel_case_types,
3769 non_snake_case,
3770 clippy::pub_underscore_fields,
3771 clippy::style
3772 )]
3773 const _: () = {
3774 use alloy::sol_types as alloy_sol_types;
3775 #[doc(hidden)]
3776 type UnderlyingSolTuple<'a> = ();
3777 #[doc(hidden)]
3778 type UnderlyingRustTuple<'a> = ();
3779 #[cfg(test)]
3780 #[allow(dead_code, unreachable_patterns)]
3781 fn _type_assertion(
3782 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3783 ) {
3784 match _t {
3785 alloy_sol_types::private::AssertTypeEq::<
3786 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3787 >(_) => {}
3788 }
3789 }
3790 #[automatically_derived]
3791 #[doc(hidden)]
3792 impl ::core::convert::From<InvalidShortString> for UnderlyingRustTuple<'_> {
3793 fn from(value: InvalidShortString) -> Self {
3794 ()
3795 }
3796 }
3797 #[automatically_derived]
3798 #[doc(hidden)]
3799 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidShortString {
3800 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3801 Self
3802 }
3803 }
3804 #[automatically_derived]
3805 impl alloy_sol_types::SolError for InvalidShortString {
3806 type Parameters<'a> = UnderlyingSolTuple<'a>;
3807 type Token<'a> = <Self::Parameters<
3808 'a,
3809 > as alloy_sol_types::SolType>::Token<'a>;
3810 const SIGNATURE: &'static str = "InvalidShortString()";
3811 const SELECTOR: [u8; 4] = [179u8, 81u8, 43u8, 12u8];
3812 #[inline]
3813 fn new<'a>(
3814 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3815 ) -> Self {
3816 tuple.into()
3817 }
3818 #[inline]
3819 fn tokenize(&self) -> Self::Token<'_> {
3820 ()
3821 }
3822 #[inline]
3823 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3824 <Self::Parameters<
3825 '_,
3826 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3827 .map(Self::new)
3828 }
3829 }
3830 };
3831 #[derive(serde::Serialize, serde::Deserialize)]
3832 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3833 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3838 #[derive(Clone)]
3839 pub struct InvalidSignature;
3840 #[allow(
3841 non_camel_case_types,
3842 non_snake_case,
3843 clippy::pub_underscore_fields,
3844 clippy::style
3845 )]
3846 const _: () = {
3847 use alloy::sol_types as alloy_sol_types;
3848 #[doc(hidden)]
3849 type UnderlyingSolTuple<'a> = ();
3850 #[doc(hidden)]
3851 type UnderlyingRustTuple<'a> = ();
3852 #[cfg(test)]
3853 #[allow(dead_code, unreachable_patterns)]
3854 fn _type_assertion(
3855 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3856 ) {
3857 match _t {
3858 alloy_sol_types::private::AssertTypeEq::<
3859 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3860 >(_) => {}
3861 }
3862 }
3863 #[automatically_derived]
3864 #[doc(hidden)]
3865 impl ::core::convert::From<InvalidSignature> for UnderlyingRustTuple<'_> {
3866 fn from(value: InvalidSignature) -> Self {
3867 ()
3868 }
3869 }
3870 #[automatically_derived]
3871 #[doc(hidden)]
3872 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidSignature {
3873 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3874 Self
3875 }
3876 }
3877 #[automatically_derived]
3878 impl alloy_sol_types::SolError for InvalidSignature {
3879 type Parameters<'a> = UnderlyingSolTuple<'a>;
3880 type Token<'a> = <Self::Parameters<
3881 'a,
3882 > as alloy_sol_types::SolType>::Token<'a>;
3883 const SIGNATURE: &'static str = "InvalidSignature()";
3884 const SELECTOR: [u8; 4] = [139u8, 170u8, 87u8, 159u8];
3885 #[inline]
3886 fn new<'a>(
3887 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3888 ) -> Self {
3889 tuple.into()
3890 }
3891 #[inline]
3892 fn tokenize(&self) -> Self::Token<'_> {
3893 ()
3894 }
3895 #[inline]
3896 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3897 <Self::Parameters<
3898 '_,
3899 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3900 .map(Self::new)
3901 }
3902 }
3903 };
3904 #[derive(serde::Serialize, serde::Deserialize)]
3905 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3906 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3911 #[derive(Clone)]
3912 pub struct InvalidSnapshotOrdering;
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> = ();
3923 #[doc(hidden)]
3924 type UnderlyingRustTuple<'a> = ();
3925 #[cfg(test)]
3926 #[allow(dead_code, unreachable_patterns)]
3927 fn _type_assertion(
3928 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3929 ) {
3930 match _t {
3931 alloy_sol_types::private::AssertTypeEq::<
3932 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3933 >(_) => {}
3934 }
3935 }
3936 #[automatically_derived]
3937 #[doc(hidden)]
3938 impl ::core::convert::From<InvalidSnapshotOrdering> for UnderlyingRustTuple<'_> {
3939 fn from(value: InvalidSnapshotOrdering) -> Self {
3940 ()
3941 }
3942 }
3943 #[automatically_derived]
3944 #[doc(hidden)]
3945 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidSnapshotOrdering {
3946 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3947 Self
3948 }
3949 }
3950 #[automatically_derived]
3951 impl alloy_sol_types::SolError for InvalidSnapshotOrdering {
3952 type Parameters<'a> = UnderlyingSolTuple<'a>;
3953 type Token<'a> = <Self::Parameters<
3954 'a,
3955 > as alloy_sol_types::SolType>::Token<'a>;
3956 const SIGNATURE: &'static str = "InvalidSnapshotOrdering()";
3957 const SELECTOR: [u8; 4] = [42u8, 55u8, 28u8, 126u8];
3958 #[inline]
3959 fn new<'a>(
3960 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3961 ) -> Self {
3962 tuple.into()
3963 }
3964 #[inline]
3965 fn tokenize(&self) -> Self::Token<'_> {
3966 ()
3967 }
3968 #[inline]
3969 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3970 <Self::Parameters<
3971 '_,
3972 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3973 .map(Self::new)
3974 }
3975 }
3976 };
3977 #[derive(serde::Serialize, serde::Deserialize)]
3978 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3979 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3984 #[derive(Clone)]
3985 pub struct NotActivelyDelegated;
3986 #[allow(
3987 non_camel_case_types,
3988 non_snake_case,
3989 clippy::pub_underscore_fields,
3990 clippy::style
3991 )]
3992 const _: () = {
3993 use alloy::sol_types as alloy_sol_types;
3994 #[doc(hidden)]
3995 type UnderlyingSolTuple<'a> = ();
3996 #[doc(hidden)]
3997 type UnderlyingRustTuple<'a> = ();
3998 #[cfg(test)]
3999 #[allow(dead_code, unreachable_patterns)]
4000 fn _type_assertion(
4001 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4002 ) {
4003 match _t {
4004 alloy_sol_types::private::AssertTypeEq::<
4005 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4006 >(_) => {}
4007 }
4008 }
4009 #[automatically_derived]
4010 #[doc(hidden)]
4011 impl ::core::convert::From<NotActivelyDelegated> for UnderlyingRustTuple<'_> {
4012 fn from(value: NotActivelyDelegated) -> Self {
4013 ()
4014 }
4015 }
4016 #[automatically_derived]
4017 #[doc(hidden)]
4018 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NotActivelyDelegated {
4019 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4020 Self
4021 }
4022 }
4023 #[automatically_derived]
4024 impl alloy_sol_types::SolError for NotActivelyDelegated {
4025 type Parameters<'a> = UnderlyingSolTuple<'a>;
4026 type Token<'a> = <Self::Parameters<
4027 'a,
4028 > as alloy_sol_types::SolType>::Token<'a>;
4029 const SIGNATURE: &'static str = "NotActivelyDelegated()";
4030 const SELECTOR: [u8; 4] = [165u8, 199u8, 196u8, 69u8];
4031 #[inline]
4032 fn new<'a>(
4033 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4034 ) -> Self {
4035 tuple.into()
4036 }
4037 #[inline]
4038 fn tokenize(&self) -> Self::Token<'_> {
4039 ()
4040 }
4041 #[inline]
4042 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4043 <Self::Parameters<
4044 '_,
4045 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4046 .map(Self::new)
4047 }
4048 }
4049 };
4050 #[derive(serde::Serialize, serde::Deserialize)]
4051 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4052 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4057 #[derive(Clone)]
4058 pub struct OnlyAllocationManager;
4059 #[allow(
4060 non_camel_case_types,
4061 non_snake_case,
4062 clippy::pub_underscore_fields,
4063 clippy::style
4064 )]
4065 const _: () = {
4066 use alloy::sol_types as alloy_sol_types;
4067 #[doc(hidden)]
4068 type UnderlyingSolTuple<'a> = ();
4069 #[doc(hidden)]
4070 type UnderlyingRustTuple<'a> = ();
4071 #[cfg(test)]
4072 #[allow(dead_code, unreachable_patterns)]
4073 fn _type_assertion(
4074 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4075 ) {
4076 match _t {
4077 alloy_sol_types::private::AssertTypeEq::<
4078 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4079 >(_) => {}
4080 }
4081 }
4082 #[automatically_derived]
4083 #[doc(hidden)]
4084 impl ::core::convert::From<OnlyAllocationManager> for UnderlyingRustTuple<'_> {
4085 fn from(value: OnlyAllocationManager) -> Self {
4086 ()
4087 }
4088 }
4089 #[automatically_derived]
4090 #[doc(hidden)]
4091 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyAllocationManager {
4092 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4093 Self
4094 }
4095 }
4096 #[automatically_derived]
4097 impl alloy_sol_types::SolError for OnlyAllocationManager {
4098 type Parameters<'a> = UnderlyingSolTuple<'a>;
4099 type Token<'a> = <Self::Parameters<
4100 'a,
4101 > as alloy_sol_types::SolType>::Token<'a>;
4102 const SIGNATURE: &'static str = "OnlyAllocationManager()";
4103 const SELECTOR: [u8; 4] = [35u8, 216u8, 113u8, 165u8];
4104 #[inline]
4105 fn new<'a>(
4106 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4107 ) -> Self {
4108 tuple.into()
4109 }
4110 #[inline]
4111 fn tokenize(&self) -> Self::Token<'_> {
4112 ()
4113 }
4114 #[inline]
4115 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4116 <Self::Parameters<
4117 '_,
4118 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4119 .map(Self::new)
4120 }
4121 }
4122 };
4123 #[derive(serde::Serialize, serde::Deserialize)]
4124 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4125 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4130 #[derive(Clone)]
4131 pub struct OnlyEigenPodManager;
4132 #[allow(
4133 non_camel_case_types,
4134 non_snake_case,
4135 clippy::pub_underscore_fields,
4136 clippy::style
4137 )]
4138 const _: () = {
4139 use alloy::sol_types as alloy_sol_types;
4140 #[doc(hidden)]
4141 type UnderlyingSolTuple<'a> = ();
4142 #[doc(hidden)]
4143 type UnderlyingRustTuple<'a> = ();
4144 #[cfg(test)]
4145 #[allow(dead_code, unreachable_patterns)]
4146 fn _type_assertion(
4147 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4148 ) {
4149 match _t {
4150 alloy_sol_types::private::AssertTypeEq::<
4151 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4152 >(_) => {}
4153 }
4154 }
4155 #[automatically_derived]
4156 #[doc(hidden)]
4157 impl ::core::convert::From<OnlyEigenPodManager> for UnderlyingRustTuple<'_> {
4158 fn from(value: OnlyEigenPodManager) -> Self {
4159 ()
4160 }
4161 }
4162 #[automatically_derived]
4163 #[doc(hidden)]
4164 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyEigenPodManager {
4165 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4166 Self
4167 }
4168 }
4169 #[automatically_derived]
4170 impl alloy_sol_types::SolError for OnlyEigenPodManager {
4171 type Parameters<'a> = UnderlyingSolTuple<'a>;
4172 type Token<'a> = <Self::Parameters<
4173 'a,
4174 > as alloy_sol_types::SolType>::Token<'a>;
4175 const SIGNATURE: &'static str = "OnlyEigenPodManager()";
4176 const SELECTOR: [u8; 4] = [200u8, 78u8, 153u8, 132u8];
4177 #[inline]
4178 fn new<'a>(
4179 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4180 ) -> Self {
4181 tuple.into()
4182 }
4183 #[inline]
4184 fn tokenize(&self) -> Self::Token<'_> {
4185 ()
4186 }
4187 #[inline]
4188 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4189 <Self::Parameters<
4190 '_,
4191 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4192 .map(Self::new)
4193 }
4194 }
4195 };
4196 #[derive(serde::Serialize, serde::Deserialize)]
4197 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4198 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4203 #[derive(Clone)]
4204 pub struct OnlyPauser;
4205 #[allow(
4206 non_camel_case_types,
4207 non_snake_case,
4208 clippy::pub_underscore_fields,
4209 clippy::style
4210 )]
4211 const _: () = {
4212 use alloy::sol_types as alloy_sol_types;
4213 #[doc(hidden)]
4214 type UnderlyingSolTuple<'a> = ();
4215 #[doc(hidden)]
4216 type UnderlyingRustTuple<'a> = ();
4217 #[cfg(test)]
4218 #[allow(dead_code, unreachable_patterns)]
4219 fn _type_assertion(
4220 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4221 ) {
4222 match _t {
4223 alloy_sol_types::private::AssertTypeEq::<
4224 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4225 >(_) => {}
4226 }
4227 }
4228 #[automatically_derived]
4229 #[doc(hidden)]
4230 impl ::core::convert::From<OnlyPauser> for UnderlyingRustTuple<'_> {
4231 fn from(value: OnlyPauser) -> Self {
4232 ()
4233 }
4234 }
4235 #[automatically_derived]
4236 #[doc(hidden)]
4237 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyPauser {
4238 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4239 Self
4240 }
4241 }
4242 #[automatically_derived]
4243 impl alloy_sol_types::SolError for OnlyPauser {
4244 type Parameters<'a> = UnderlyingSolTuple<'a>;
4245 type Token<'a> = <Self::Parameters<
4246 'a,
4247 > as alloy_sol_types::SolType>::Token<'a>;
4248 const SIGNATURE: &'static str = "OnlyPauser()";
4249 const SELECTOR: [u8; 4] = [117u8, 223u8, 81u8, 220u8];
4250 #[inline]
4251 fn new<'a>(
4252 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4253 ) -> Self {
4254 tuple.into()
4255 }
4256 #[inline]
4257 fn tokenize(&self) -> Self::Token<'_> {
4258 ()
4259 }
4260 #[inline]
4261 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4262 <Self::Parameters<
4263 '_,
4264 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4265 .map(Self::new)
4266 }
4267 }
4268 };
4269 #[derive(serde::Serialize, serde::Deserialize)]
4270 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4271 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4276 #[derive(Clone)]
4277 pub struct OnlyStrategyManagerOrEigenPodManager;
4278 #[allow(
4279 non_camel_case_types,
4280 non_snake_case,
4281 clippy::pub_underscore_fields,
4282 clippy::style
4283 )]
4284 const _: () = {
4285 use alloy::sol_types as alloy_sol_types;
4286 #[doc(hidden)]
4287 type UnderlyingSolTuple<'a> = ();
4288 #[doc(hidden)]
4289 type UnderlyingRustTuple<'a> = ();
4290 #[cfg(test)]
4291 #[allow(dead_code, unreachable_patterns)]
4292 fn _type_assertion(
4293 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4294 ) {
4295 match _t {
4296 alloy_sol_types::private::AssertTypeEq::<
4297 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4298 >(_) => {}
4299 }
4300 }
4301 #[automatically_derived]
4302 #[doc(hidden)]
4303 impl ::core::convert::From<OnlyStrategyManagerOrEigenPodManager>
4304 for UnderlyingRustTuple<'_> {
4305 fn from(value: OnlyStrategyManagerOrEigenPodManager) -> Self {
4306 ()
4307 }
4308 }
4309 #[automatically_derived]
4310 #[doc(hidden)]
4311 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4312 for OnlyStrategyManagerOrEigenPodManager {
4313 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4314 Self
4315 }
4316 }
4317 #[automatically_derived]
4318 impl alloy_sol_types::SolError for OnlyStrategyManagerOrEigenPodManager {
4319 type Parameters<'a> = UnderlyingSolTuple<'a>;
4320 type Token<'a> = <Self::Parameters<
4321 'a,
4322 > as alloy_sol_types::SolType>::Token<'a>;
4323 const SIGNATURE: &'static str = "OnlyStrategyManagerOrEigenPodManager()";
4324 const SELECTOR: [u8; 4] = [17u8, 72u8, 26u8, 148u8];
4325 #[inline]
4326 fn new<'a>(
4327 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4328 ) -> Self {
4329 tuple.into()
4330 }
4331 #[inline]
4332 fn tokenize(&self) -> Self::Token<'_> {
4333 ()
4334 }
4335 #[inline]
4336 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4337 <Self::Parameters<
4338 '_,
4339 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4340 .map(Self::new)
4341 }
4342 }
4343 };
4344 #[derive(serde::Serialize, serde::Deserialize)]
4345 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4346 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4351 #[derive(Clone)]
4352 pub struct OnlyUnpauser;
4353 #[allow(
4354 non_camel_case_types,
4355 non_snake_case,
4356 clippy::pub_underscore_fields,
4357 clippy::style
4358 )]
4359 const _: () = {
4360 use alloy::sol_types as alloy_sol_types;
4361 #[doc(hidden)]
4362 type UnderlyingSolTuple<'a> = ();
4363 #[doc(hidden)]
4364 type UnderlyingRustTuple<'a> = ();
4365 #[cfg(test)]
4366 #[allow(dead_code, unreachable_patterns)]
4367 fn _type_assertion(
4368 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4369 ) {
4370 match _t {
4371 alloy_sol_types::private::AssertTypeEq::<
4372 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4373 >(_) => {}
4374 }
4375 }
4376 #[automatically_derived]
4377 #[doc(hidden)]
4378 impl ::core::convert::From<OnlyUnpauser> for UnderlyingRustTuple<'_> {
4379 fn from(value: OnlyUnpauser) -> Self {
4380 ()
4381 }
4382 }
4383 #[automatically_derived]
4384 #[doc(hidden)]
4385 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyUnpauser {
4386 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4387 Self
4388 }
4389 }
4390 #[automatically_derived]
4391 impl alloy_sol_types::SolError for OnlyUnpauser {
4392 type Parameters<'a> = UnderlyingSolTuple<'a>;
4393 type Token<'a> = <Self::Parameters<
4394 'a,
4395 > as alloy_sol_types::SolType>::Token<'a>;
4396 const SIGNATURE: &'static str = "OnlyUnpauser()";
4397 const SELECTOR: [u8; 4] = [121u8, 72u8, 33u8, 255u8];
4398 #[inline]
4399 fn new<'a>(
4400 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4401 ) -> Self {
4402 tuple.into()
4403 }
4404 #[inline]
4405 fn tokenize(&self) -> Self::Token<'_> {
4406 ()
4407 }
4408 #[inline]
4409 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4410 <Self::Parameters<
4411 '_,
4412 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4413 .map(Self::new)
4414 }
4415 }
4416 };
4417 #[derive(serde::Serialize, serde::Deserialize)]
4418 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4419 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4424 #[derive(Clone)]
4425 pub struct OperatorNotRegistered;
4426 #[allow(
4427 non_camel_case_types,
4428 non_snake_case,
4429 clippy::pub_underscore_fields,
4430 clippy::style
4431 )]
4432 const _: () = {
4433 use alloy::sol_types as alloy_sol_types;
4434 #[doc(hidden)]
4435 type UnderlyingSolTuple<'a> = ();
4436 #[doc(hidden)]
4437 type UnderlyingRustTuple<'a> = ();
4438 #[cfg(test)]
4439 #[allow(dead_code, unreachable_patterns)]
4440 fn _type_assertion(
4441 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4442 ) {
4443 match _t {
4444 alloy_sol_types::private::AssertTypeEq::<
4445 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4446 >(_) => {}
4447 }
4448 }
4449 #[automatically_derived]
4450 #[doc(hidden)]
4451 impl ::core::convert::From<OperatorNotRegistered> for UnderlyingRustTuple<'_> {
4452 fn from(value: OperatorNotRegistered) -> Self {
4453 ()
4454 }
4455 }
4456 #[automatically_derived]
4457 #[doc(hidden)]
4458 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OperatorNotRegistered {
4459 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4460 Self
4461 }
4462 }
4463 #[automatically_derived]
4464 impl alloy_sol_types::SolError for OperatorNotRegistered {
4465 type Parameters<'a> = UnderlyingSolTuple<'a>;
4466 type Token<'a> = <Self::Parameters<
4467 'a,
4468 > as alloy_sol_types::SolType>::Token<'a>;
4469 const SIGNATURE: &'static str = "OperatorNotRegistered()";
4470 const SELECTOR: [u8; 4] = [37u8, 236u8, 108u8, 31u8];
4471 #[inline]
4472 fn new<'a>(
4473 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4474 ) -> Self {
4475 tuple.into()
4476 }
4477 #[inline]
4478 fn tokenize(&self) -> Self::Token<'_> {
4479 ()
4480 }
4481 #[inline]
4482 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4483 <Self::Parameters<
4484 '_,
4485 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4486 .map(Self::new)
4487 }
4488 }
4489 };
4490 #[derive(serde::Serialize, serde::Deserialize)]
4491 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4492 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4497 #[derive(Clone)]
4498 pub struct OperatorsCannotUndelegate;
4499 #[allow(
4500 non_camel_case_types,
4501 non_snake_case,
4502 clippy::pub_underscore_fields,
4503 clippy::style
4504 )]
4505 const _: () = {
4506 use alloy::sol_types as alloy_sol_types;
4507 #[doc(hidden)]
4508 type UnderlyingSolTuple<'a> = ();
4509 #[doc(hidden)]
4510 type UnderlyingRustTuple<'a> = ();
4511 #[cfg(test)]
4512 #[allow(dead_code, unreachable_patterns)]
4513 fn _type_assertion(
4514 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4515 ) {
4516 match _t {
4517 alloy_sol_types::private::AssertTypeEq::<
4518 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4519 >(_) => {}
4520 }
4521 }
4522 #[automatically_derived]
4523 #[doc(hidden)]
4524 impl ::core::convert::From<OperatorsCannotUndelegate>
4525 for UnderlyingRustTuple<'_> {
4526 fn from(value: OperatorsCannotUndelegate) -> Self {
4527 ()
4528 }
4529 }
4530 #[automatically_derived]
4531 #[doc(hidden)]
4532 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4533 for OperatorsCannotUndelegate {
4534 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4535 Self
4536 }
4537 }
4538 #[automatically_derived]
4539 impl alloy_sol_types::SolError for OperatorsCannotUndelegate {
4540 type Parameters<'a> = UnderlyingSolTuple<'a>;
4541 type Token<'a> = <Self::Parameters<
4542 'a,
4543 > as alloy_sol_types::SolType>::Token<'a>;
4544 const SIGNATURE: &'static str = "OperatorsCannotUndelegate()";
4545 const SELECTOR: [u8; 4] = [142u8, 81u8, 153u8, 168u8];
4546 #[inline]
4547 fn new<'a>(
4548 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4549 ) -> Self {
4550 tuple.into()
4551 }
4552 #[inline]
4553 fn tokenize(&self) -> Self::Token<'_> {
4554 ()
4555 }
4556 #[inline]
4557 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4558 <Self::Parameters<
4559 '_,
4560 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4561 .map(Self::new)
4562 }
4563 }
4564 };
4565 #[derive(serde::Serialize, serde::Deserialize)]
4566 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4567 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4572 #[derive(Clone)]
4573 pub struct SaltSpent;
4574 #[allow(
4575 non_camel_case_types,
4576 non_snake_case,
4577 clippy::pub_underscore_fields,
4578 clippy::style
4579 )]
4580 const _: () = {
4581 use alloy::sol_types as alloy_sol_types;
4582 #[doc(hidden)]
4583 type UnderlyingSolTuple<'a> = ();
4584 #[doc(hidden)]
4585 type UnderlyingRustTuple<'a> = ();
4586 #[cfg(test)]
4587 #[allow(dead_code, unreachable_patterns)]
4588 fn _type_assertion(
4589 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4590 ) {
4591 match _t {
4592 alloy_sol_types::private::AssertTypeEq::<
4593 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4594 >(_) => {}
4595 }
4596 }
4597 #[automatically_derived]
4598 #[doc(hidden)]
4599 impl ::core::convert::From<SaltSpent> for UnderlyingRustTuple<'_> {
4600 fn from(value: SaltSpent) -> Self {
4601 ()
4602 }
4603 }
4604 #[automatically_derived]
4605 #[doc(hidden)]
4606 impl ::core::convert::From<UnderlyingRustTuple<'_>> for SaltSpent {
4607 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4608 Self
4609 }
4610 }
4611 #[automatically_derived]
4612 impl alloy_sol_types::SolError for SaltSpent {
4613 type Parameters<'a> = UnderlyingSolTuple<'a>;
4614 type Token<'a> = <Self::Parameters<
4615 'a,
4616 > as alloy_sol_types::SolType>::Token<'a>;
4617 const SIGNATURE: &'static str = "SaltSpent()";
4618 const SELECTOR: [u8; 4] = [53u8, 49u8, 50u8, 68u8];
4619 #[inline]
4620 fn new<'a>(
4621 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4622 ) -> Self {
4623 tuple.into()
4624 }
4625 #[inline]
4626 fn tokenize(&self) -> Self::Token<'_> {
4627 ()
4628 }
4629 #[inline]
4630 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4631 <Self::Parameters<
4632 '_,
4633 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4634 .map(Self::new)
4635 }
4636 }
4637 };
4638 #[derive(serde::Serialize, serde::Deserialize)]
4639 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4640 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4645 #[derive(Clone)]
4646 pub struct SignatureExpired;
4647 #[allow(
4648 non_camel_case_types,
4649 non_snake_case,
4650 clippy::pub_underscore_fields,
4651 clippy::style
4652 )]
4653 const _: () = {
4654 use alloy::sol_types as alloy_sol_types;
4655 #[doc(hidden)]
4656 type UnderlyingSolTuple<'a> = ();
4657 #[doc(hidden)]
4658 type UnderlyingRustTuple<'a> = ();
4659 #[cfg(test)]
4660 #[allow(dead_code, unreachable_patterns)]
4661 fn _type_assertion(
4662 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4663 ) {
4664 match _t {
4665 alloy_sol_types::private::AssertTypeEq::<
4666 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4667 >(_) => {}
4668 }
4669 }
4670 #[automatically_derived]
4671 #[doc(hidden)]
4672 impl ::core::convert::From<SignatureExpired> for UnderlyingRustTuple<'_> {
4673 fn from(value: SignatureExpired) -> Self {
4674 ()
4675 }
4676 }
4677 #[automatically_derived]
4678 #[doc(hidden)]
4679 impl ::core::convert::From<UnderlyingRustTuple<'_>> for SignatureExpired {
4680 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4681 Self
4682 }
4683 }
4684 #[automatically_derived]
4685 impl alloy_sol_types::SolError for SignatureExpired {
4686 type Parameters<'a> = UnderlyingSolTuple<'a>;
4687 type Token<'a> = <Self::Parameters<
4688 'a,
4689 > as alloy_sol_types::SolType>::Token<'a>;
4690 const SIGNATURE: &'static str = "SignatureExpired()";
4691 const SELECTOR: [u8; 4] = [8u8, 25u8, 189u8, 205u8];
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 #[inline]
4703 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4704 <Self::Parameters<
4705 '_,
4706 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4707 .map(Self::new)
4708 }
4709 }
4710 };
4711 #[derive(serde::Serialize, serde::Deserialize)]
4712 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4713 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4718 #[derive(Clone)]
4719 pub struct StringTooLong {
4720 #[allow(missing_docs)]
4721 pub str: alloy::sol_types::private::String,
4722 }
4723 #[allow(
4724 non_camel_case_types,
4725 non_snake_case,
4726 clippy::pub_underscore_fields,
4727 clippy::style
4728 )]
4729 const _: () = {
4730 use alloy::sol_types as alloy_sol_types;
4731 #[doc(hidden)]
4732 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
4733 #[doc(hidden)]
4734 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
4735 #[cfg(test)]
4736 #[allow(dead_code, unreachable_patterns)]
4737 fn _type_assertion(
4738 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4739 ) {
4740 match _t {
4741 alloy_sol_types::private::AssertTypeEq::<
4742 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4743 >(_) => {}
4744 }
4745 }
4746 #[automatically_derived]
4747 #[doc(hidden)]
4748 impl ::core::convert::From<StringTooLong> for UnderlyingRustTuple<'_> {
4749 fn from(value: StringTooLong) -> Self {
4750 (value.str,)
4751 }
4752 }
4753 #[automatically_derived]
4754 #[doc(hidden)]
4755 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StringTooLong {
4756 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4757 Self { str: tuple.0 }
4758 }
4759 }
4760 #[automatically_derived]
4761 impl alloy_sol_types::SolError for StringTooLong {
4762 type Parameters<'a> = UnderlyingSolTuple<'a>;
4763 type Token<'a> = <Self::Parameters<
4764 'a,
4765 > as alloy_sol_types::SolType>::Token<'a>;
4766 const SIGNATURE: &'static str = "StringTooLong(string)";
4767 const SELECTOR: [u8; 4] = [48u8, 90u8, 39u8, 169u8];
4768 #[inline]
4769 fn new<'a>(
4770 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4771 ) -> Self {
4772 tuple.into()
4773 }
4774 #[inline]
4775 fn tokenize(&self) -> Self::Token<'_> {
4776 (
4777 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
4778 &self.str,
4779 ),
4780 )
4781 }
4782 #[inline]
4783 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4784 <Self::Parameters<
4785 '_,
4786 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4787 .map(Self::new)
4788 }
4789 }
4790 };
4791 #[derive(serde::Serialize, serde::Deserialize)]
4792 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4793 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4798 #[derive(Clone)]
4799 pub struct WithdrawalDelayNotElapsed;
4800 #[allow(
4801 non_camel_case_types,
4802 non_snake_case,
4803 clippy::pub_underscore_fields,
4804 clippy::style
4805 )]
4806 const _: () = {
4807 use alloy::sol_types as alloy_sol_types;
4808 #[doc(hidden)]
4809 type UnderlyingSolTuple<'a> = ();
4810 #[doc(hidden)]
4811 type UnderlyingRustTuple<'a> = ();
4812 #[cfg(test)]
4813 #[allow(dead_code, unreachable_patterns)]
4814 fn _type_assertion(
4815 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4816 ) {
4817 match _t {
4818 alloy_sol_types::private::AssertTypeEq::<
4819 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4820 >(_) => {}
4821 }
4822 }
4823 #[automatically_derived]
4824 #[doc(hidden)]
4825 impl ::core::convert::From<WithdrawalDelayNotElapsed>
4826 for UnderlyingRustTuple<'_> {
4827 fn from(value: WithdrawalDelayNotElapsed) -> Self {
4828 ()
4829 }
4830 }
4831 #[automatically_derived]
4832 #[doc(hidden)]
4833 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4834 for WithdrawalDelayNotElapsed {
4835 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4836 Self
4837 }
4838 }
4839 #[automatically_derived]
4840 impl alloy_sol_types::SolError for WithdrawalDelayNotElapsed {
4841 type Parameters<'a> = UnderlyingSolTuple<'a>;
4842 type Token<'a> = <Self::Parameters<
4843 'a,
4844 > as alloy_sol_types::SolType>::Token<'a>;
4845 const SIGNATURE: &'static str = "WithdrawalDelayNotElapsed()";
4846 const SELECTOR: [u8; 4] = [241u8, 236u8, 245u8, 194u8];
4847 #[inline]
4848 fn new<'a>(
4849 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4850 ) -> Self {
4851 tuple.into()
4852 }
4853 #[inline]
4854 fn tokenize(&self) -> Self::Token<'_> {
4855 ()
4856 }
4857 #[inline]
4858 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4859 <Self::Parameters<
4860 '_,
4861 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4862 .map(Self::new)
4863 }
4864 }
4865 };
4866 #[derive(serde::Serialize, serde::Deserialize)]
4867 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4868 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4873 #[derive(Clone)]
4874 pub struct WithdrawalNotQueued;
4875 #[allow(
4876 non_camel_case_types,
4877 non_snake_case,
4878 clippy::pub_underscore_fields,
4879 clippy::style
4880 )]
4881 const _: () = {
4882 use alloy::sol_types as alloy_sol_types;
4883 #[doc(hidden)]
4884 type UnderlyingSolTuple<'a> = ();
4885 #[doc(hidden)]
4886 type UnderlyingRustTuple<'a> = ();
4887 #[cfg(test)]
4888 #[allow(dead_code, unreachable_patterns)]
4889 fn _type_assertion(
4890 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4891 ) {
4892 match _t {
4893 alloy_sol_types::private::AssertTypeEq::<
4894 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4895 >(_) => {}
4896 }
4897 }
4898 #[automatically_derived]
4899 #[doc(hidden)]
4900 impl ::core::convert::From<WithdrawalNotQueued> for UnderlyingRustTuple<'_> {
4901 fn from(value: WithdrawalNotQueued) -> Self {
4902 ()
4903 }
4904 }
4905 #[automatically_derived]
4906 #[doc(hidden)]
4907 impl ::core::convert::From<UnderlyingRustTuple<'_>> for WithdrawalNotQueued {
4908 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4909 Self
4910 }
4911 }
4912 #[automatically_derived]
4913 impl alloy_sol_types::SolError for WithdrawalNotQueued {
4914 type Parameters<'a> = UnderlyingSolTuple<'a>;
4915 type Token<'a> = <Self::Parameters<
4916 'a,
4917 > as alloy_sol_types::SolType>::Token<'a>;
4918 const SIGNATURE: &'static str = "WithdrawalNotQueued()";
4919 const SELECTOR: [u8; 4] = [135u8, 201u8, 210u8, 25u8];
4920 #[inline]
4921 fn new<'a>(
4922 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4923 ) -> Self {
4924 tuple.into()
4925 }
4926 #[inline]
4927 fn tokenize(&self) -> Self::Token<'_> {
4928 ()
4929 }
4930 #[inline]
4931 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4932 <Self::Parameters<
4933 '_,
4934 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4935 .map(Self::new)
4936 }
4937 }
4938 };
4939 #[derive(serde::Serialize, serde::Deserialize)]
4940 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4941 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4946 #[derive(Clone)]
4947 pub struct WithdrawerNotCaller;
4948 #[allow(
4949 non_camel_case_types,
4950 non_snake_case,
4951 clippy::pub_underscore_fields,
4952 clippy::style
4953 )]
4954 const _: () = {
4955 use alloy::sol_types as alloy_sol_types;
4956 #[doc(hidden)]
4957 type UnderlyingSolTuple<'a> = ();
4958 #[doc(hidden)]
4959 type UnderlyingRustTuple<'a> = ();
4960 #[cfg(test)]
4961 #[allow(dead_code, unreachable_patterns)]
4962 fn _type_assertion(
4963 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4964 ) {
4965 match _t {
4966 alloy_sol_types::private::AssertTypeEq::<
4967 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4968 >(_) => {}
4969 }
4970 }
4971 #[automatically_derived]
4972 #[doc(hidden)]
4973 impl ::core::convert::From<WithdrawerNotCaller> for UnderlyingRustTuple<'_> {
4974 fn from(value: WithdrawerNotCaller) -> Self {
4975 ()
4976 }
4977 }
4978 #[automatically_derived]
4979 #[doc(hidden)]
4980 impl ::core::convert::From<UnderlyingRustTuple<'_>> for WithdrawerNotCaller {
4981 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4982 Self
4983 }
4984 }
4985 #[automatically_derived]
4986 impl alloy_sol_types::SolError for WithdrawerNotCaller {
4987 type Parameters<'a> = UnderlyingSolTuple<'a>;
4988 type Token<'a> = <Self::Parameters<
4989 'a,
4990 > as alloy_sol_types::SolType>::Token<'a>;
4991 const SIGNATURE: &'static str = "WithdrawerNotCaller()";
4992 const SELECTOR: [u8; 4] = [88u8, 68u8, 52u8, 212u8];
4993 #[inline]
4994 fn new<'a>(
4995 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4996 ) -> Self {
4997 tuple.into()
4998 }
4999 #[inline]
5000 fn tokenize(&self) -> Self::Token<'_> {
5001 ()
5002 }
5003 #[inline]
5004 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
5005 <Self::Parameters<
5006 '_,
5007 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
5008 .map(Self::new)
5009 }
5010 }
5011 };
5012 #[derive(serde::Serialize, serde::Deserialize)]
5013 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5014 #[allow(
5019 non_camel_case_types,
5020 non_snake_case,
5021 clippy::pub_underscore_fields,
5022 clippy::style
5023 )]
5024 #[derive(Clone)]
5025 pub struct DelegationApproverUpdated {
5026 #[allow(missing_docs)]
5027 pub operator: alloy::sol_types::private::Address,
5028 #[allow(missing_docs)]
5029 pub newDelegationApprover: alloy::sol_types::private::Address,
5030 }
5031 #[allow(
5032 non_camel_case_types,
5033 non_snake_case,
5034 clippy::pub_underscore_fields,
5035 clippy::style
5036 )]
5037 const _: () = {
5038 use alloy::sol_types as alloy_sol_types;
5039 #[automatically_derived]
5040 impl alloy_sol_types::SolEvent for DelegationApproverUpdated {
5041 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
5042 type DataToken<'a> = <Self::DataTuple<
5043 'a,
5044 > as alloy_sol_types::SolType>::Token<'a>;
5045 type TopicList = (
5046 alloy_sol_types::sol_data::FixedBytes<32>,
5047 alloy::sol_types::sol_data::Address,
5048 );
5049 const SIGNATURE: &'static str = "DelegationApproverUpdated(address,address)";
5050 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5051 119u8, 59u8, 84u8, 192u8, 77u8, 117u8, 111u8, 204u8, 94u8, 103u8, 129u8,
5052 17u8, 247u8, 215u8, 48u8, 222u8, 59u8, 233u8, 129u8, 146u8, 0u8, 7u8,
5053 153u8, 238u8, 227u8, 214u8, 55u8, 22u8, 5u8, 90u8, 135u8, 198u8,
5054 ]);
5055 const ANONYMOUS: bool = false;
5056 #[allow(unused_variables)]
5057 #[inline]
5058 fn new(
5059 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5060 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5061 ) -> Self {
5062 Self {
5063 operator: topics.1,
5064 newDelegationApprover: data.0,
5065 }
5066 }
5067 #[inline]
5068 fn check_signature(
5069 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5070 ) -> alloy_sol_types::Result<()> {
5071 if topics.0 != Self::SIGNATURE_HASH {
5072 return Err(
5073 alloy_sol_types::Error::invalid_event_signature_hash(
5074 Self::SIGNATURE,
5075 topics.0,
5076 Self::SIGNATURE_HASH,
5077 ),
5078 );
5079 }
5080 Ok(())
5081 }
5082 #[inline]
5083 fn tokenize_body(&self) -> Self::DataToken<'_> {
5084 (
5085 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5086 &self.newDelegationApprover,
5087 ),
5088 )
5089 }
5090 #[inline]
5091 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5092 (Self::SIGNATURE_HASH.into(), self.operator.clone())
5093 }
5094 #[inline]
5095 fn encode_topics_raw(
5096 &self,
5097 out: &mut [alloy_sol_types::abi::token::WordToken],
5098 ) -> alloy_sol_types::Result<()> {
5099 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5100 return Err(alloy_sol_types::Error::Overrun);
5101 }
5102 out[0usize] = alloy_sol_types::abi::token::WordToken(
5103 Self::SIGNATURE_HASH,
5104 );
5105 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5106 &self.operator,
5107 );
5108 Ok(())
5109 }
5110 }
5111 #[automatically_derived]
5112 impl alloy_sol_types::private::IntoLogData for DelegationApproverUpdated {
5113 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5114 From::from(self)
5115 }
5116 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5117 From::from(&self)
5118 }
5119 }
5120 #[automatically_derived]
5121 impl From<&DelegationApproverUpdated> for alloy_sol_types::private::LogData {
5122 #[inline]
5123 fn from(
5124 this: &DelegationApproverUpdated,
5125 ) -> alloy_sol_types::private::LogData {
5126 alloy_sol_types::SolEvent::encode_log_data(this)
5127 }
5128 }
5129 };
5130 #[derive(serde::Serialize, serde::Deserialize)]
5131 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5132 #[allow(
5137 non_camel_case_types,
5138 non_snake_case,
5139 clippy::pub_underscore_fields,
5140 clippy::style
5141 )]
5142 #[derive(Clone)]
5143 pub struct DepositScalingFactorUpdated {
5144 #[allow(missing_docs)]
5145 pub staker: alloy::sol_types::private::Address,
5146 #[allow(missing_docs)]
5147 pub strategy: alloy::sol_types::private::Address,
5148 #[allow(missing_docs)]
5149 pub newDepositScalingFactor: alloy::sol_types::private::primitives::aliases::U256,
5150 }
5151 #[allow(
5152 non_camel_case_types,
5153 non_snake_case,
5154 clippy::pub_underscore_fields,
5155 clippy::style
5156 )]
5157 const _: () = {
5158 use alloy::sol_types as alloy_sol_types;
5159 #[automatically_derived]
5160 impl alloy_sol_types::SolEvent for DepositScalingFactorUpdated {
5161 type DataTuple<'a> = (
5162 alloy::sol_types::sol_data::Address,
5163 alloy::sol_types::sol_data::Address,
5164 alloy::sol_types::sol_data::Uint<256>,
5165 );
5166 type DataToken<'a> = <Self::DataTuple<
5167 'a,
5168 > as alloy_sol_types::SolType>::Token<'a>;
5169 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5170 const SIGNATURE: &'static str = "DepositScalingFactorUpdated(address,address,uint256)";
5171 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5172 139u8, 233u8, 50u8, 186u8, 197u8, 69u8, 97u8, 242u8, 114u8, 96u8, 249u8,
5173 84u8, 99u8, 217u8, 184u8, 171u8, 55u8, 224u8, 107u8, 40u8, 66u8, 229u8,
5174 238u8, 36u8, 4u8, 21u8, 124u8, 193u8, 61u8, 246u8, 235u8, 143u8,
5175 ]);
5176 const ANONYMOUS: bool = false;
5177 #[allow(unused_variables)]
5178 #[inline]
5179 fn new(
5180 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5181 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5182 ) -> Self {
5183 Self {
5184 staker: data.0,
5185 strategy: data.1,
5186 newDepositScalingFactor: data.2,
5187 }
5188 }
5189 #[inline]
5190 fn check_signature(
5191 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5192 ) -> alloy_sol_types::Result<()> {
5193 if topics.0 != Self::SIGNATURE_HASH {
5194 return Err(
5195 alloy_sol_types::Error::invalid_event_signature_hash(
5196 Self::SIGNATURE,
5197 topics.0,
5198 Self::SIGNATURE_HASH,
5199 ),
5200 );
5201 }
5202 Ok(())
5203 }
5204 #[inline]
5205 fn tokenize_body(&self) -> Self::DataToken<'_> {
5206 (
5207 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5208 &self.staker,
5209 ),
5210 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5211 &self.strategy,
5212 ),
5213 <alloy::sol_types::sol_data::Uint<
5214 256,
5215 > as alloy_sol_types::SolType>::tokenize(
5216 &self.newDepositScalingFactor,
5217 ),
5218 )
5219 }
5220 #[inline]
5221 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5222 (Self::SIGNATURE_HASH.into(),)
5223 }
5224 #[inline]
5225 fn encode_topics_raw(
5226 &self,
5227 out: &mut [alloy_sol_types::abi::token::WordToken],
5228 ) -> alloy_sol_types::Result<()> {
5229 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5230 return Err(alloy_sol_types::Error::Overrun);
5231 }
5232 out[0usize] = alloy_sol_types::abi::token::WordToken(
5233 Self::SIGNATURE_HASH,
5234 );
5235 Ok(())
5236 }
5237 }
5238 #[automatically_derived]
5239 impl alloy_sol_types::private::IntoLogData for DepositScalingFactorUpdated {
5240 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5241 From::from(self)
5242 }
5243 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5244 From::from(&self)
5245 }
5246 }
5247 #[automatically_derived]
5248 impl From<&DepositScalingFactorUpdated> for alloy_sol_types::private::LogData {
5249 #[inline]
5250 fn from(
5251 this: &DepositScalingFactorUpdated,
5252 ) -> alloy_sol_types::private::LogData {
5253 alloy_sol_types::SolEvent::encode_log_data(this)
5254 }
5255 }
5256 };
5257 #[derive(serde::Serialize, serde::Deserialize)]
5258 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5259 #[allow(
5264 non_camel_case_types,
5265 non_snake_case,
5266 clippy::pub_underscore_fields,
5267 clippy::style
5268 )]
5269 #[derive(Clone)]
5270 pub struct Initialized {
5271 #[allow(missing_docs)]
5272 pub version: u8,
5273 }
5274 #[allow(
5275 non_camel_case_types,
5276 non_snake_case,
5277 clippy::pub_underscore_fields,
5278 clippy::style
5279 )]
5280 const _: () = {
5281 use alloy::sol_types as alloy_sol_types;
5282 #[automatically_derived]
5283 impl alloy_sol_types::SolEvent for Initialized {
5284 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,);
5285 type DataToken<'a> = <Self::DataTuple<
5286 'a,
5287 > as alloy_sol_types::SolType>::Token<'a>;
5288 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5289 const SIGNATURE: &'static str = "Initialized(uint8)";
5290 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5291 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8,
5292 19u8, 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8,
5293 146u8, 20u8, 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8,
5294 ]);
5295 const ANONYMOUS: bool = false;
5296 #[allow(unused_variables)]
5297 #[inline]
5298 fn new(
5299 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5300 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5301 ) -> Self {
5302 Self { version: data.0 }
5303 }
5304 #[inline]
5305 fn check_signature(
5306 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5307 ) -> alloy_sol_types::Result<()> {
5308 if topics.0 != Self::SIGNATURE_HASH {
5309 return Err(
5310 alloy_sol_types::Error::invalid_event_signature_hash(
5311 Self::SIGNATURE,
5312 topics.0,
5313 Self::SIGNATURE_HASH,
5314 ),
5315 );
5316 }
5317 Ok(())
5318 }
5319 #[inline]
5320 fn tokenize_body(&self) -> Self::DataToken<'_> {
5321 (
5322 <alloy::sol_types::sol_data::Uint<
5323 8,
5324 > as alloy_sol_types::SolType>::tokenize(&self.version),
5325 )
5326 }
5327 #[inline]
5328 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5329 (Self::SIGNATURE_HASH.into(),)
5330 }
5331 #[inline]
5332 fn encode_topics_raw(
5333 &self,
5334 out: &mut [alloy_sol_types::abi::token::WordToken],
5335 ) -> alloy_sol_types::Result<()> {
5336 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5337 return Err(alloy_sol_types::Error::Overrun);
5338 }
5339 out[0usize] = alloy_sol_types::abi::token::WordToken(
5340 Self::SIGNATURE_HASH,
5341 );
5342 Ok(())
5343 }
5344 }
5345 #[automatically_derived]
5346 impl alloy_sol_types::private::IntoLogData for Initialized {
5347 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5348 From::from(self)
5349 }
5350 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5351 From::from(&self)
5352 }
5353 }
5354 #[automatically_derived]
5355 impl From<&Initialized> for alloy_sol_types::private::LogData {
5356 #[inline]
5357 fn from(this: &Initialized) -> alloy_sol_types::private::LogData {
5358 alloy_sol_types::SolEvent::encode_log_data(this)
5359 }
5360 }
5361 };
5362 #[derive(serde::Serialize, serde::Deserialize)]
5363 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5364 #[allow(
5369 non_camel_case_types,
5370 non_snake_case,
5371 clippy::pub_underscore_fields,
5372 clippy::style
5373 )]
5374 #[derive(Clone)]
5375 pub struct OperatorMetadataURIUpdated {
5376 #[allow(missing_docs)]
5377 pub operator: alloy::sol_types::private::Address,
5378 #[allow(missing_docs)]
5379 pub metadataURI: alloy::sol_types::private::String,
5380 }
5381 #[allow(
5382 non_camel_case_types,
5383 non_snake_case,
5384 clippy::pub_underscore_fields,
5385 clippy::style
5386 )]
5387 const _: () = {
5388 use alloy::sol_types as alloy_sol_types;
5389 #[automatically_derived]
5390 impl alloy_sol_types::SolEvent for OperatorMetadataURIUpdated {
5391 type DataTuple<'a> = (alloy::sol_types::sol_data::String,);
5392 type DataToken<'a> = <Self::DataTuple<
5393 'a,
5394 > as alloy_sol_types::SolType>::Token<'a>;
5395 type TopicList = (
5396 alloy_sol_types::sol_data::FixedBytes<32>,
5397 alloy::sol_types::sol_data::Address,
5398 );
5399 const SIGNATURE: &'static str = "OperatorMetadataURIUpdated(address,string)";
5400 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5401 2u8, 169u8, 25u8, 237u8, 14u8, 42u8, 202u8, 209u8, 221u8, 144u8, 241u8,
5402 126u8, 242u8, 250u8, 74u8, 229u8, 70u8, 46u8, 225u8, 51u8, 145u8, 112u8,
5403 3u8, 74u8, 133u8, 49u8, 204u8, 164u8, 182u8, 112u8, 128u8, 144u8,
5404 ]);
5405 const ANONYMOUS: bool = false;
5406 #[allow(unused_variables)]
5407 #[inline]
5408 fn new(
5409 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5410 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5411 ) -> Self {
5412 Self {
5413 operator: topics.1,
5414 metadataURI: data.0,
5415 }
5416 }
5417 #[inline]
5418 fn check_signature(
5419 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5420 ) -> alloy_sol_types::Result<()> {
5421 if topics.0 != Self::SIGNATURE_HASH {
5422 return Err(
5423 alloy_sol_types::Error::invalid_event_signature_hash(
5424 Self::SIGNATURE,
5425 topics.0,
5426 Self::SIGNATURE_HASH,
5427 ),
5428 );
5429 }
5430 Ok(())
5431 }
5432 #[inline]
5433 fn tokenize_body(&self) -> Self::DataToken<'_> {
5434 (
5435 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
5436 &self.metadataURI,
5437 ),
5438 )
5439 }
5440 #[inline]
5441 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5442 (Self::SIGNATURE_HASH.into(), self.operator.clone())
5443 }
5444 #[inline]
5445 fn encode_topics_raw(
5446 &self,
5447 out: &mut [alloy_sol_types::abi::token::WordToken],
5448 ) -> alloy_sol_types::Result<()> {
5449 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5450 return Err(alloy_sol_types::Error::Overrun);
5451 }
5452 out[0usize] = alloy_sol_types::abi::token::WordToken(
5453 Self::SIGNATURE_HASH,
5454 );
5455 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5456 &self.operator,
5457 );
5458 Ok(())
5459 }
5460 }
5461 #[automatically_derived]
5462 impl alloy_sol_types::private::IntoLogData for OperatorMetadataURIUpdated {
5463 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5464 From::from(self)
5465 }
5466 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5467 From::from(&self)
5468 }
5469 }
5470 #[automatically_derived]
5471 impl From<&OperatorMetadataURIUpdated> for alloy_sol_types::private::LogData {
5472 #[inline]
5473 fn from(
5474 this: &OperatorMetadataURIUpdated,
5475 ) -> alloy_sol_types::private::LogData {
5476 alloy_sol_types::SolEvent::encode_log_data(this)
5477 }
5478 }
5479 };
5480 #[derive(serde::Serialize, serde::Deserialize)]
5481 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5482 #[allow(
5487 non_camel_case_types,
5488 non_snake_case,
5489 clippy::pub_underscore_fields,
5490 clippy::style
5491 )]
5492 #[derive(Clone)]
5493 pub struct OperatorRegistered {
5494 #[allow(missing_docs)]
5495 pub operator: alloy::sol_types::private::Address,
5496 #[allow(missing_docs)]
5497 pub delegationApprover: alloy::sol_types::private::Address,
5498 }
5499 #[allow(
5500 non_camel_case_types,
5501 non_snake_case,
5502 clippy::pub_underscore_fields,
5503 clippy::style
5504 )]
5505 const _: () = {
5506 use alloy::sol_types as alloy_sol_types;
5507 #[automatically_derived]
5508 impl alloy_sol_types::SolEvent for OperatorRegistered {
5509 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
5510 type DataToken<'a> = <Self::DataTuple<
5511 'a,
5512 > as alloy_sol_types::SolType>::Token<'a>;
5513 type TopicList = (
5514 alloy_sol_types::sol_data::FixedBytes<32>,
5515 alloy::sol_types::sol_data::Address,
5516 );
5517 const SIGNATURE: &'static str = "OperatorRegistered(address,address)";
5518 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5519 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8,
5520 146u8, 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8,
5521 183u8, 183u8, 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8,
5522 ]);
5523 const ANONYMOUS: bool = false;
5524 #[allow(unused_variables)]
5525 #[inline]
5526 fn new(
5527 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5528 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5529 ) -> Self {
5530 Self {
5531 operator: topics.1,
5532 delegationApprover: data.0,
5533 }
5534 }
5535 #[inline]
5536 fn check_signature(
5537 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5538 ) -> alloy_sol_types::Result<()> {
5539 if topics.0 != Self::SIGNATURE_HASH {
5540 return Err(
5541 alloy_sol_types::Error::invalid_event_signature_hash(
5542 Self::SIGNATURE,
5543 topics.0,
5544 Self::SIGNATURE_HASH,
5545 ),
5546 );
5547 }
5548 Ok(())
5549 }
5550 #[inline]
5551 fn tokenize_body(&self) -> Self::DataToken<'_> {
5552 (
5553 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5554 &self.delegationApprover,
5555 ),
5556 )
5557 }
5558 #[inline]
5559 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5560 (Self::SIGNATURE_HASH.into(), self.operator.clone())
5561 }
5562 #[inline]
5563 fn encode_topics_raw(
5564 &self,
5565 out: &mut [alloy_sol_types::abi::token::WordToken],
5566 ) -> alloy_sol_types::Result<()> {
5567 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5568 return Err(alloy_sol_types::Error::Overrun);
5569 }
5570 out[0usize] = alloy_sol_types::abi::token::WordToken(
5571 Self::SIGNATURE_HASH,
5572 );
5573 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5574 &self.operator,
5575 );
5576 Ok(())
5577 }
5578 }
5579 #[automatically_derived]
5580 impl alloy_sol_types::private::IntoLogData for OperatorRegistered {
5581 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5582 From::from(self)
5583 }
5584 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5585 From::from(&self)
5586 }
5587 }
5588 #[automatically_derived]
5589 impl From<&OperatorRegistered> for alloy_sol_types::private::LogData {
5590 #[inline]
5591 fn from(this: &OperatorRegistered) -> alloy_sol_types::private::LogData {
5592 alloy_sol_types::SolEvent::encode_log_data(this)
5593 }
5594 }
5595 };
5596 #[derive(serde::Serialize, serde::Deserialize)]
5597 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5598 #[allow(
5603 non_camel_case_types,
5604 non_snake_case,
5605 clippy::pub_underscore_fields,
5606 clippy::style
5607 )]
5608 #[derive(Clone)]
5609 pub struct OperatorSharesDecreased {
5610 #[allow(missing_docs)]
5611 pub operator: alloy::sol_types::private::Address,
5612 #[allow(missing_docs)]
5613 pub staker: alloy::sol_types::private::Address,
5614 #[allow(missing_docs)]
5615 pub strategy: alloy::sol_types::private::Address,
5616 #[allow(missing_docs)]
5617 pub shares: alloy::sol_types::private::primitives::aliases::U256,
5618 }
5619 #[allow(
5620 non_camel_case_types,
5621 non_snake_case,
5622 clippy::pub_underscore_fields,
5623 clippy::style
5624 )]
5625 const _: () = {
5626 use alloy::sol_types as alloy_sol_types;
5627 #[automatically_derived]
5628 impl alloy_sol_types::SolEvent for OperatorSharesDecreased {
5629 type DataTuple<'a> = (
5630 alloy::sol_types::sol_data::Address,
5631 alloy::sol_types::sol_data::Address,
5632 alloy::sol_types::sol_data::Uint<256>,
5633 );
5634 type DataToken<'a> = <Self::DataTuple<
5635 'a,
5636 > as alloy_sol_types::SolType>::Token<'a>;
5637 type TopicList = (
5638 alloy_sol_types::sol_data::FixedBytes<32>,
5639 alloy::sol_types::sol_data::Address,
5640 );
5641 const SIGNATURE: &'static str = "OperatorSharesDecreased(address,address,address,uint256)";
5642 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5643 105u8, 9u8, 96u8, 0u8, 55u8, 183u8, 93u8, 123u8, 71u8, 51u8, 174u8,
5644 221u8, 129u8, 84u8, 66u8, 181u8, 236u8, 1u8, 138u8, 130u8, 119u8, 81u8,
5645 200u8, 50u8, 170u8, 255u8, 100u8, 235u8, 165u8, 214u8, 210u8, 221u8,
5646 ]);
5647 const ANONYMOUS: bool = false;
5648 #[allow(unused_variables)]
5649 #[inline]
5650 fn new(
5651 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5652 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5653 ) -> Self {
5654 Self {
5655 operator: topics.1,
5656 staker: data.0,
5657 strategy: data.1,
5658 shares: data.2,
5659 }
5660 }
5661 #[inline]
5662 fn check_signature(
5663 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5664 ) -> alloy_sol_types::Result<()> {
5665 if topics.0 != Self::SIGNATURE_HASH {
5666 return Err(
5667 alloy_sol_types::Error::invalid_event_signature_hash(
5668 Self::SIGNATURE,
5669 topics.0,
5670 Self::SIGNATURE_HASH,
5671 ),
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.staker,
5681 ),
5682 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5683 &self.strategy,
5684 ),
5685 <alloy::sol_types::sol_data::Uint<
5686 256,
5687 > as alloy_sol_types::SolType>::tokenize(&self.shares),
5688 )
5689 }
5690 #[inline]
5691 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5692 (Self::SIGNATURE_HASH.into(), self.operator.clone())
5693 }
5694 #[inline]
5695 fn encode_topics_raw(
5696 &self,
5697 out: &mut [alloy_sol_types::abi::token::WordToken],
5698 ) -> alloy_sol_types::Result<()> {
5699 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5700 return Err(alloy_sol_types::Error::Overrun);
5701 }
5702 out[0usize] = alloy_sol_types::abi::token::WordToken(
5703 Self::SIGNATURE_HASH,
5704 );
5705 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5706 &self.operator,
5707 );
5708 Ok(())
5709 }
5710 }
5711 #[automatically_derived]
5712 impl alloy_sol_types::private::IntoLogData for OperatorSharesDecreased {
5713 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5714 From::from(self)
5715 }
5716 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5717 From::from(&self)
5718 }
5719 }
5720 #[automatically_derived]
5721 impl From<&OperatorSharesDecreased> for alloy_sol_types::private::LogData {
5722 #[inline]
5723 fn from(
5724 this: &OperatorSharesDecreased,
5725 ) -> alloy_sol_types::private::LogData {
5726 alloy_sol_types::SolEvent::encode_log_data(this)
5727 }
5728 }
5729 };
5730 #[derive(serde::Serialize, serde::Deserialize)]
5731 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5732 #[allow(
5737 non_camel_case_types,
5738 non_snake_case,
5739 clippy::pub_underscore_fields,
5740 clippy::style
5741 )]
5742 #[derive(Clone)]
5743 pub struct OperatorSharesIncreased {
5744 #[allow(missing_docs)]
5745 pub operator: alloy::sol_types::private::Address,
5746 #[allow(missing_docs)]
5747 pub staker: alloy::sol_types::private::Address,
5748 #[allow(missing_docs)]
5749 pub strategy: alloy::sol_types::private::Address,
5750 #[allow(missing_docs)]
5751 pub shares: alloy::sol_types::private::primitives::aliases::U256,
5752 }
5753 #[allow(
5754 non_camel_case_types,
5755 non_snake_case,
5756 clippy::pub_underscore_fields,
5757 clippy::style
5758 )]
5759 const _: () = {
5760 use alloy::sol_types as alloy_sol_types;
5761 #[automatically_derived]
5762 impl alloy_sol_types::SolEvent for OperatorSharesIncreased {
5763 type DataTuple<'a> = (
5764 alloy::sol_types::sol_data::Address,
5765 alloy::sol_types::sol_data::Address,
5766 alloy::sol_types::sol_data::Uint<256>,
5767 );
5768 type DataToken<'a> = <Self::DataTuple<
5769 'a,
5770 > as alloy_sol_types::SolType>::Token<'a>;
5771 type TopicList = (
5772 alloy_sol_types::sol_data::FixedBytes<32>,
5773 alloy::sol_types::sol_data::Address,
5774 );
5775 const SIGNATURE: &'static str = "OperatorSharesIncreased(address,address,address,uint256)";
5776 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5777 30u8, 192u8, 66u8, 201u8, 101u8, 226u8, 237u8, 215u8, 16u8, 123u8, 81u8,
5778 24u8, 142u8, 224u8, 243u8, 131u8, 226u8, 46u8, 118u8, 23u8, 144u8, 65u8,
5779 171u8, 58u8, 157u8, 24u8, 255u8, 21u8, 20u8, 5u8, 22u8, 108u8,
5780 ]);
5781 const ANONYMOUS: bool = false;
5782 #[allow(unused_variables)]
5783 #[inline]
5784 fn new(
5785 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5786 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5787 ) -> Self {
5788 Self {
5789 operator: topics.1,
5790 staker: data.0,
5791 strategy: data.1,
5792 shares: data.2,
5793 }
5794 }
5795 #[inline]
5796 fn check_signature(
5797 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5798 ) -> alloy_sol_types::Result<()> {
5799 if topics.0 != Self::SIGNATURE_HASH {
5800 return Err(
5801 alloy_sol_types::Error::invalid_event_signature_hash(
5802 Self::SIGNATURE,
5803 topics.0,
5804 Self::SIGNATURE_HASH,
5805 ),
5806 );
5807 }
5808 Ok(())
5809 }
5810 #[inline]
5811 fn tokenize_body(&self) -> Self::DataToken<'_> {
5812 (
5813 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5814 &self.staker,
5815 ),
5816 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5817 &self.strategy,
5818 ),
5819 <alloy::sol_types::sol_data::Uint<
5820 256,
5821 > as alloy_sol_types::SolType>::tokenize(&self.shares),
5822 )
5823 }
5824 #[inline]
5825 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5826 (Self::SIGNATURE_HASH.into(), self.operator.clone())
5827 }
5828 #[inline]
5829 fn encode_topics_raw(
5830 &self,
5831 out: &mut [alloy_sol_types::abi::token::WordToken],
5832 ) -> alloy_sol_types::Result<()> {
5833 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5834 return Err(alloy_sol_types::Error::Overrun);
5835 }
5836 out[0usize] = alloy_sol_types::abi::token::WordToken(
5837 Self::SIGNATURE_HASH,
5838 );
5839 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5840 &self.operator,
5841 );
5842 Ok(())
5843 }
5844 }
5845 #[automatically_derived]
5846 impl alloy_sol_types::private::IntoLogData for OperatorSharesIncreased {
5847 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5848 From::from(self)
5849 }
5850 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5851 From::from(&self)
5852 }
5853 }
5854 #[automatically_derived]
5855 impl From<&OperatorSharesIncreased> for alloy_sol_types::private::LogData {
5856 #[inline]
5857 fn from(
5858 this: &OperatorSharesIncreased,
5859 ) -> alloy_sol_types::private::LogData {
5860 alloy_sol_types::SolEvent::encode_log_data(this)
5861 }
5862 }
5863 };
5864 #[derive(serde::Serialize, serde::Deserialize)]
5865 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5866 #[allow(
5871 non_camel_case_types,
5872 non_snake_case,
5873 clippy::pub_underscore_fields,
5874 clippy::style
5875 )]
5876 #[derive(Clone)]
5877 pub struct OperatorSharesSlashed {
5878 #[allow(missing_docs)]
5879 pub operator: alloy::sol_types::private::Address,
5880 #[allow(missing_docs)]
5881 pub strategy: alloy::sol_types::private::Address,
5882 #[allow(missing_docs)]
5883 pub totalSlashedShares: alloy::sol_types::private::primitives::aliases::U256,
5884 }
5885 #[allow(
5886 non_camel_case_types,
5887 non_snake_case,
5888 clippy::pub_underscore_fields,
5889 clippy::style
5890 )]
5891 const _: () = {
5892 use alloy::sol_types as alloy_sol_types;
5893 #[automatically_derived]
5894 impl alloy_sol_types::SolEvent for OperatorSharesSlashed {
5895 type DataTuple<'a> = (
5896 alloy::sol_types::sol_data::Address,
5897 alloy::sol_types::sol_data::Uint<256>,
5898 );
5899 type DataToken<'a> = <Self::DataTuple<
5900 'a,
5901 > as alloy_sol_types::SolType>::Token<'a>;
5902 type TopicList = (
5903 alloy_sol_types::sol_data::FixedBytes<32>,
5904 alloy::sol_types::sol_data::Address,
5905 );
5906 const SIGNATURE: &'static str = "OperatorSharesSlashed(address,address,uint256)";
5907 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5908 221u8, 97u8, 31u8, 78u8, 246u8, 63u8, 67u8, 133u8, 241u8, 117u8, 108u8,
5909 134u8, 206u8, 31u8, 31u8, 56u8, 154u8, 144u8, 19u8, 186u8, 111u8, 160u8,
5910 125u8, 171u8, 168u8, 82u8, 130u8, 145u8, 188u8, 45u8, 60u8, 48u8,
5911 ]);
5912 const ANONYMOUS: bool = false;
5913 #[allow(unused_variables)]
5914 #[inline]
5915 fn new(
5916 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5917 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5918 ) -> Self {
5919 Self {
5920 operator: topics.1,
5921 strategy: data.0,
5922 totalSlashedShares: data.1,
5923 }
5924 }
5925 #[inline]
5926 fn check_signature(
5927 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5928 ) -> alloy_sol_types::Result<()> {
5929 if topics.0 != Self::SIGNATURE_HASH {
5930 return Err(
5931 alloy_sol_types::Error::invalid_event_signature_hash(
5932 Self::SIGNATURE,
5933 topics.0,
5934 Self::SIGNATURE_HASH,
5935 ),
5936 );
5937 }
5938 Ok(())
5939 }
5940 #[inline]
5941 fn tokenize_body(&self) -> Self::DataToken<'_> {
5942 (
5943 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5944 &self.strategy,
5945 ),
5946 <alloy::sol_types::sol_data::Uint<
5947 256,
5948 > as alloy_sol_types::SolType>::tokenize(&self.totalSlashedShares),
5949 )
5950 }
5951 #[inline]
5952 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5953 (Self::SIGNATURE_HASH.into(), self.operator.clone())
5954 }
5955 #[inline]
5956 fn encode_topics_raw(
5957 &self,
5958 out: &mut [alloy_sol_types::abi::token::WordToken],
5959 ) -> alloy_sol_types::Result<()> {
5960 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5961 return Err(alloy_sol_types::Error::Overrun);
5962 }
5963 out[0usize] = alloy_sol_types::abi::token::WordToken(
5964 Self::SIGNATURE_HASH,
5965 );
5966 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5967 &self.operator,
5968 );
5969 Ok(())
5970 }
5971 }
5972 #[automatically_derived]
5973 impl alloy_sol_types::private::IntoLogData for OperatorSharesSlashed {
5974 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5975 From::from(self)
5976 }
5977 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5978 From::from(&self)
5979 }
5980 }
5981 #[automatically_derived]
5982 impl From<&OperatorSharesSlashed> for alloy_sol_types::private::LogData {
5983 #[inline]
5984 fn from(this: &OperatorSharesSlashed) -> alloy_sol_types::private::LogData {
5985 alloy_sol_types::SolEvent::encode_log_data(this)
5986 }
5987 }
5988 };
5989 #[derive(serde::Serialize, serde::Deserialize)]
5990 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5991 #[allow(
5996 non_camel_case_types,
5997 non_snake_case,
5998 clippy::pub_underscore_fields,
5999 clippy::style
6000 )]
6001 #[derive(Clone)]
6002 pub struct OwnershipTransferred {
6003 #[allow(missing_docs)]
6004 pub previousOwner: alloy::sol_types::private::Address,
6005 #[allow(missing_docs)]
6006 pub newOwner: alloy::sol_types::private::Address,
6007 }
6008 #[allow(
6009 non_camel_case_types,
6010 non_snake_case,
6011 clippy::pub_underscore_fields,
6012 clippy::style
6013 )]
6014 const _: () = {
6015 use alloy::sol_types as alloy_sol_types;
6016 #[automatically_derived]
6017 impl alloy_sol_types::SolEvent for OwnershipTransferred {
6018 type DataTuple<'a> = ();
6019 type DataToken<'a> = <Self::DataTuple<
6020 'a,
6021 > as alloy_sol_types::SolType>::Token<'a>;
6022 type TopicList = (
6023 alloy_sol_types::sol_data::FixedBytes<32>,
6024 alloy::sol_types::sol_data::Address,
6025 alloy::sol_types::sol_data::Address,
6026 );
6027 const SIGNATURE: &'static str = "OwnershipTransferred(address,address)";
6028 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6029 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8,
6030 31u8, 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8,
6031 218u8, 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
6032 ]);
6033 const ANONYMOUS: bool = false;
6034 #[allow(unused_variables)]
6035 #[inline]
6036 fn new(
6037 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6038 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6039 ) -> Self {
6040 Self {
6041 previousOwner: topics.1,
6042 newOwner: topics.2,
6043 }
6044 }
6045 #[inline]
6046 fn check_signature(
6047 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6048 ) -> alloy_sol_types::Result<()> {
6049 if topics.0 != Self::SIGNATURE_HASH {
6050 return Err(
6051 alloy_sol_types::Error::invalid_event_signature_hash(
6052 Self::SIGNATURE,
6053 topics.0,
6054 Self::SIGNATURE_HASH,
6055 ),
6056 );
6057 }
6058 Ok(())
6059 }
6060 #[inline]
6061 fn tokenize_body(&self) -> Self::DataToken<'_> {
6062 ()
6063 }
6064 #[inline]
6065 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6066 (
6067 Self::SIGNATURE_HASH.into(),
6068 self.previousOwner.clone(),
6069 self.newOwner.clone(),
6070 )
6071 }
6072 #[inline]
6073 fn encode_topics_raw(
6074 &self,
6075 out: &mut [alloy_sol_types::abi::token::WordToken],
6076 ) -> alloy_sol_types::Result<()> {
6077 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6078 return Err(alloy_sol_types::Error::Overrun);
6079 }
6080 out[0usize] = alloy_sol_types::abi::token::WordToken(
6081 Self::SIGNATURE_HASH,
6082 );
6083 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6084 &self.previousOwner,
6085 );
6086 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6087 &self.newOwner,
6088 );
6089 Ok(())
6090 }
6091 }
6092 #[automatically_derived]
6093 impl alloy_sol_types::private::IntoLogData for OwnershipTransferred {
6094 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6095 From::from(self)
6096 }
6097 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6098 From::from(&self)
6099 }
6100 }
6101 #[automatically_derived]
6102 impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData {
6103 #[inline]
6104 fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData {
6105 alloy_sol_types::SolEvent::encode_log_data(this)
6106 }
6107 }
6108 };
6109 #[derive(serde::Serialize, serde::Deserialize)]
6110 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6111 #[allow(
6116 non_camel_case_types,
6117 non_snake_case,
6118 clippy::pub_underscore_fields,
6119 clippy::style
6120 )]
6121 #[derive(Clone)]
6122 pub struct Paused {
6123 #[allow(missing_docs)]
6124 pub account: alloy::sol_types::private::Address,
6125 #[allow(missing_docs)]
6126 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
6127 }
6128 #[allow(
6129 non_camel_case_types,
6130 non_snake_case,
6131 clippy::pub_underscore_fields,
6132 clippy::style
6133 )]
6134 const _: () = {
6135 use alloy::sol_types as alloy_sol_types;
6136 #[automatically_derived]
6137 impl alloy_sol_types::SolEvent for Paused {
6138 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6139 type DataToken<'a> = <Self::DataTuple<
6140 'a,
6141 > as alloy_sol_types::SolType>::Token<'a>;
6142 type TopicList = (
6143 alloy_sol_types::sol_data::FixedBytes<32>,
6144 alloy::sol_types::sol_data::Address,
6145 );
6146 const SIGNATURE: &'static str = "Paused(address,uint256)";
6147 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6148 171u8, 64u8, 163u8, 116u8, 188u8, 81u8, 222u8, 55u8, 34u8, 0u8, 168u8,
6149 188u8, 152u8, 26u8, 248u8, 201u8, 236u8, 220u8, 8u8, 223u8, 218u8, 239u8,
6150 11u8, 182u8, 224u8, 159u8, 136u8, 243u8, 198u8, 22u8, 239u8, 61u8,
6151 ]);
6152 const ANONYMOUS: bool = false;
6153 #[allow(unused_variables)]
6154 #[inline]
6155 fn new(
6156 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6157 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6158 ) -> Self {
6159 Self {
6160 account: topics.1,
6161 newPausedStatus: data.0,
6162 }
6163 }
6164 #[inline]
6165 fn check_signature(
6166 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6167 ) -> alloy_sol_types::Result<()> {
6168 if topics.0 != Self::SIGNATURE_HASH {
6169 return Err(
6170 alloy_sol_types::Error::invalid_event_signature_hash(
6171 Self::SIGNATURE,
6172 topics.0,
6173 Self::SIGNATURE_HASH,
6174 ),
6175 );
6176 }
6177 Ok(())
6178 }
6179 #[inline]
6180 fn tokenize_body(&self) -> Self::DataToken<'_> {
6181 (
6182 <alloy::sol_types::sol_data::Uint<
6183 256,
6184 > as alloy_sol_types::SolType>::tokenize(&self.newPausedStatus),
6185 )
6186 }
6187 #[inline]
6188 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6189 (Self::SIGNATURE_HASH.into(), self.account.clone())
6190 }
6191 #[inline]
6192 fn encode_topics_raw(
6193 &self,
6194 out: &mut [alloy_sol_types::abi::token::WordToken],
6195 ) -> alloy_sol_types::Result<()> {
6196 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6197 return Err(alloy_sol_types::Error::Overrun);
6198 }
6199 out[0usize] = alloy_sol_types::abi::token::WordToken(
6200 Self::SIGNATURE_HASH,
6201 );
6202 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6203 &self.account,
6204 );
6205 Ok(())
6206 }
6207 }
6208 #[automatically_derived]
6209 impl alloy_sol_types::private::IntoLogData for Paused {
6210 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6211 From::from(self)
6212 }
6213 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6214 From::from(&self)
6215 }
6216 }
6217 #[automatically_derived]
6218 impl From<&Paused> for alloy_sol_types::private::LogData {
6219 #[inline]
6220 fn from(this: &Paused) -> alloy_sol_types::private::LogData {
6221 alloy_sol_types::SolEvent::encode_log_data(this)
6222 }
6223 }
6224 };
6225 #[derive(serde::Serialize, serde::Deserialize)]
6226 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6227 #[allow(
6232 non_camel_case_types,
6233 non_snake_case,
6234 clippy::pub_underscore_fields,
6235 clippy::style
6236 )]
6237 #[derive(Clone)]
6238 pub struct SlashingWithdrawalCompleted {
6239 #[allow(missing_docs)]
6240 pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
6241 }
6242 #[allow(
6243 non_camel_case_types,
6244 non_snake_case,
6245 clippy::pub_underscore_fields,
6246 clippy::style
6247 )]
6248 const _: () = {
6249 use alloy::sol_types as alloy_sol_types;
6250 #[automatically_derived]
6251 impl alloy_sol_types::SolEvent for SlashingWithdrawalCompleted {
6252 type DataTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6253 type DataToken<'a> = <Self::DataTuple<
6254 'a,
6255 > as alloy_sol_types::SolType>::Token<'a>;
6256 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
6257 const SIGNATURE: &'static str = "SlashingWithdrawalCompleted(bytes32)";
6258 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6259 31u8, 64u8, 64u8, 8u8, 137u8, 39u8, 78u8, 208u8, 123u8, 36u8, 132u8,
6260 94u8, 80u8, 84u8, 168u8, 122u8, 12u8, 171u8, 150u8, 158u8, 177u8, 39u8,
6261 122u8, 175u8, 230u8, 26u8, 227u8, 82u8, 231u8, 195u8, 42u8, 0u8,
6262 ]);
6263 const ANONYMOUS: bool = false;
6264 #[allow(unused_variables)]
6265 #[inline]
6266 fn new(
6267 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6268 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6269 ) -> Self {
6270 Self { withdrawalRoot: data.0 }
6271 }
6272 #[inline]
6273 fn check_signature(
6274 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6275 ) -> alloy_sol_types::Result<()> {
6276 if topics.0 != Self::SIGNATURE_HASH {
6277 return Err(
6278 alloy_sol_types::Error::invalid_event_signature_hash(
6279 Self::SIGNATURE,
6280 topics.0,
6281 Self::SIGNATURE_HASH,
6282 ),
6283 );
6284 }
6285 Ok(())
6286 }
6287 #[inline]
6288 fn tokenize_body(&self) -> Self::DataToken<'_> {
6289 (
6290 <alloy::sol_types::sol_data::FixedBytes<
6291 32,
6292 > as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot),
6293 )
6294 }
6295 #[inline]
6296 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6297 (Self::SIGNATURE_HASH.into(),)
6298 }
6299 #[inline]
6300 fn encode_topics_raw(
6301 &self,
6302 out: &mut [alloy_sol_types::abi::token::WordToken],
6303 ) -> alloy_sol_types::Result<()> {
6304 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6305 return Err(alloy_sol_types::Error::Overrun);
6306 }
6307 out[0usize] = alloy_sol_types::abi::token::WordToken(
6308 Self::SIGNATURE_HASH,
6309 );
6310 Ok(())
6311 }
6312 }
6313 #[automatically_derived]
6314 impl alloy_sol_types::private::IntoLogData for SlashingWithdrawalCompleted {
6315 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6316 From::from(self)
6317 }
6318 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6319 From::from(&self)
6320 }
6321 }
6322 #[automatically_derived]
6323 impl From<&SlashingWithdrawalCompleted> for alloy_sol_types::private::LogData {
6324 #[inline]
6325 fn from(
6326 this: &SlashingWithdrawalCompleted,
6327 ) -> alloy_sol_types::private::LogData {
6328 alloy_sol_types::SolEvent::encode_log_data(this)
6329 }
6330 }
6331 };
6332 #[derive(serde::Serialize, serde::Deserialize)]
6333 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6334 #[allow(
6339 non_camel_case_types,
6340 non_snake_case,
6341 clippy::pub_underscore_fields,
6342 clippy::style
6343 )]
6344 #[derive(Clone)]
6345 pub struct SlashingWithdrawalQueued {
6346 #[allow(missing_docs)]
6347 pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
6348 #[allow(missing_docs)]
6349 pub withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
6350 #[allow(missing_docs)]
6351 pub sharesToWithdraw: alloy::sol_types::private::Vec<
6352 alloy::sol_types::private::primitives::aliases::U256,
6353 >,
6354 }
6355 #[allow(
6356 non_camel_case_types,
6357 non_snake_case,
6358 clippy::pub_underscore_fields,
6359 clippy::style
6360 )]
6361 const _: () = {
6362 use alloy::sol_types as alloy_sol_types;
6363 #[automatically_derived]
6364 impl alloy_sol_types::SolEvent for SlashingWithdrawalQueued {
6365 type DataTuple<'a> = (
6366 alloy::sol_types::sol_data::FixedBytes<32>,
6367 IDelegationManagerTypes::Withdrawal,
6368 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
6369 );
6370 type DataToken<'a> = <Self::DataTuple<
6371 'a,
6372 > as alloy_sol_types::SolType>::Token<'a>;
6373 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
6374 const SIGNATURE: &'static str = "SlashingWithdrawalQueued(bytes32,(address,address,address,uint256,uint32,address[],uint256[]),uint256[])";
6375 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6376 38u8, 178u8, 170u8, 226u8, 101u8, 22u8, 232u8, 113u8, 158u8, 245u8, 14u8,
6377 162u8, 246u8, 131u8, 26u8, 46u8, 251u8, 212u8, 227u8, 125u8, 204u8,
6378 223u8, 15u8, 105u8, 54u8, 178u8, 123u8, 192u8, 142u8, 121u8, 62u8, 48u8,
6379 ]);
6380 const ANONYMOUS: bool = false;
6381 #[allow(unused_variables)]
6382 #[inline]
6383 fn new(
6384 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6385 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6386 ) -> Self {
6387 Self {
6388 withdrawalRoot: data.0,
6389 withdrawal: data.1,
6390 sharesToWithdraw: data.2,
6391 }
6392 }
6393 #[inline]
6394 fn check_signature(
6395 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6396 ) -> alloy_sol_types::Result<()> {
6397 if topics.0 != Self::SIGNATURE_HASH {
6398 return Err(
6399 alloy_sol_types::Error::invalid_event_signature_hash(
6400 Self::SIGNATURE,
6401 topics.0,
6402 Self::SIGNATURE_HASH,
6403 ),
6404 );
6405 }
6406 Ok(())
6407 }
6408 #[inline]
6409 fn tokenize_body(&self) -> Self::DataToken<'_> {
6410 (
6411 <alloy::sol_types::sol_data::FixedBytes<
6412 32,
6413 > as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot),
6414 <IDelegationManagerTypes::Withdrawal as alloy_sol_types::SolType>::tokenize(
6415 &self.withdrawal,
6416 ),
6417 <alloy::sol_types::sol_data::Array<
6418 alloy::sol_types::sol_data::Uint<256>,
6419 > as alloy_sol_types::SolType>::tokenize(&self.sharesToWithdraw),
6420 )
6421 }
6422 #[inline]
6423 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6424 (Self::SIGNATURE_HASH.into(),)
6425 }
6426 #[inline]
6427 fn encode_topics_raw(
6428 &self,
6429 out: &mut [alloy_sol_types::abi::token::WordToken],
6430 ) -> alloy_sol_types::Result<()> {
6431 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6432 return Err(alloy_sol_types::Error::Overrun);
6433 }
6434 out[0usize] = alloy_sol_types::abi::token::WordToken(
6435 Self::SIGNATURE_HASH,
6436 );
6437 Ok(())
6438 }
6439 }
6440 #[automatically_derived]
6441 impl alloy_sol_types::private::IntoLogData for SlashingWithdrawalQueued {
6442 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6443 From::from(self)
6444 }
6445 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6446 From::from(&self)
6447 }
6448 }
6449 #[automatically_derived]
6450 impl From<&SlashingWithdrawalQueued> for alloy_sol_types::private::LogData {
6451 #[inline]
6452 fn from(
6453 this: &SlashingWithdrawalQueued,
6454 ) -> alloy_sol_types::private::LogData {
6455 alloy_sol_types::SolEvent::encode_log_data(this)
6456 }
6457 }
6458 };
6459 #[derive(serde::Serialize, serde::Deserialize)]
6460 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6461 #[allow(
6466 non_camel_case_types,
6467 non_snake_case,
6468 clippy::pub_underscore_fields,
6469 clippy::style
6470 )]
6471 #[derive(Clone)]
6472 pub struct StakerDelegated {
6473 #[allow(missing_docs)]
6474 pub staker: alloy::sol_types::private::Address,
6475 #[allow(missing_docs)]
6476 pub operator: alloy::sol_types::private::Address,
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 #[automatically_derived]
6487 impl alloy_sol_types::SolEvent for StakerDelegated {
6488 type DataTuple<'a> = ();
6489 type DataToken<'a> = <Self::DataTuple<
6490 'a,
6491 > as alloy_sol_types::SolType>::Token<'a>;
6492 type TopicList = (
6493 alloy_sol_types::sol_data::FixedBytes<32>,
6494 alloy::sol_types::sol_data::Address,
6495 alloy::sol_types::sol_data::Address,
6496 );
6497 const SIGNATURE: &'static str = "StakerDelegated(address,address)";
6498 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6499 195u8, 238u8, 159u8, 46u8, 95u8, 218u8, 152u8, 232u8, 6u8, 106u8, 31u8,
6500 116u8, 91u8, 45u8, 249u8, 40u8, 95u8, 65u8, 111u8, 233u8, 140u8, 242u8,
6501 85u8, 156u8, 210u8, 20u8, 132u8, 179u8, 216u8, 116u8, 51u8, 4u8,
6502 ]);
6503 const ANONYMOUS: bool = false;
6504 #[allow(unused_variables)]
6505 #[inline]
6506 fn new(
6507 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6508 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6509 ) -> Self {
6510 Self {
6511 staker: topics.1,
6512 operator: topics.2,
6513 }
6514 }
6515 #[inline]
6516 fn check_signature(
6517 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6518 ) -> alloy_sol_types::Result<()> {
6519 if topics.0 != Self::SIGNATURE_HASH {
6520 return Err(
6521 alloy_sol_types::Error::invalid_event_signature_hash(
6522 Self::SIGNATURE,
6523 topics.0,
6524 Self::SIGNATURE_HASH,
6525 ),
6526 );
6527 }
6528 Ok(())
6529 }
6530 #[inline]
6531 fn tokenize_body(&self) -> Self::DataToken<'_> {
6532 ()
6533 }
6534 #[inline]
6535 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6536 (Self::SIGNATURE_HASH.into(), self.staker.clone(), self.operator.clone())
6537 }
6538 #[inline]
6539 fn encode_topics_raw(
6540 &self,
6541 out: &mut [alloy_sol_types::abi::token::WordToken],
6542 ) -> alloy_sol_types::Result<()> {
6543 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6544 return Err(alloy_sol_types::Error::Overrun);
6545 }
6546 out[0usize] = alloy_sol_types::abi::token::WordToken(
6547 Self::SIGNATURE_HASH,
6548 );
6549 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6550 &self.staker,
6551 );
6552 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6553 &self.operator,
6554 );
6555 Ok(())
6556 }
6557 }
6558 #[automatically_derived]
6559 impl alloy_sol_types::private::IntoLogData for StakerDelegated {
6560 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6561 From::from(self)
6562 }
6563 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6564 From::from(&self)
6565 }
6566 }
6567 #[automatically_derived]
6568 impl From<&StakerDelegated> for alloy_sol_types::private::LogData {
6569 #[inline]
6570 fn from(this: &StakerDelegated) -> alloy_sol_types::private::LogData {
6571 alloy_sol_types::SolEvent::encode_log_data(this)
6572 }
6573 }
6574 };
6575 #[derive(serde::Serialize, serde::Deserialize)]
6576 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6577 #[allow(
6582 non_camel_case_types,
6583 non_snake_case,
6584 clippy::pub_underscore_fields,
6585 clippy::style
6586 )]
6587 #[derive(Clone)]
6588 pub struct StakerForceUndelegated {
6589 #[allow(missing_docs)]
6590 pub staker: alloy::sol_types::private::Address,
6591 #[allow(missing_docs)]
6592 pub operator: alloy::sol_types::private::Address,
6593 }
6594 #[allow(
6595 non_camel_case_types,
6596 non_snake_case,
6597 clippy::pub_underscore_fields,
6598 clippy::style
6599 )]
6600 const _: () = {
6601 use alloy::sol_types as alloy_sol_types;
6602 #[automatically_derived]
6603 impl alloy_sol_types::SolEvent for StakerForceUndelegated {
6604 type DataTuple<'a> = ();
6605 type DataToken<'a> = <Self::DataTuple<
6606 'a,
6607 > as alloy_sol_types::SolType>::Token<'a>;
6608 type TopicList = (
6609 alloy_sol_types::sol_data::FixedBytes<32>,
6610 alloy::sol_types::sol_data::Address,
6611 alloy::sol_types::sol_data::Address,
6612 );
6613 const SIGNATURE: &'static str = "StakerForceUndelegated(address,address)";
6614 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6615 240u8, 237u8, 223u8, 7u8, 230u8, 234u8, 20u8, 243u8, 136u8, 180u8, 126u8,
6616 30u8, 148u8, 160u8, 244u8, 100u8, 236u8, 189u8, 158u8, 237u8, 65u8,
6617 113u8, 19u8, 14u8, 15u8, 192u8, 233u8, 159u8, 180u8, 3u8, 10u8, 138u8,
6618 ]);
6619 const ANONYMOUS: bool = false;
6620 #[allow(unused_variables)]
6621 #[inline]
6622 fn new(
6623 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6624 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6625 ) -> Self {
6626 Self {
6627 staker: topics.1,
6628 operator: topics.2,
6629 }
6630 }
6631 #[inline]
6632 fn check_signature(
6633 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6634 ) -> alloy_sol_types::Result<()> {
6635 if topics.0 != Self::SIGNATURE_HASH {
6636 return Err(
6637 alloy_sol_types::Error::invalid_event_signature_hash(
6638 Self::SIGNATURE,
6639 topics.0,
6640 Self::SIGNATURE_HASH,
6641 ),
6642 );
6643 }
6644 Ok(())
6645 }
6646 #[inline]
6647 fn tokenize_body(&self) -> Self::DataToken<'_> {
6648 ()
6649 }
6650 #[inline]
6651 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6652 (Self::SIGNATURE_HASH.into(), self.staker.clone(), self.operator.clone())
6653 }
6654 #[inline]
6655 fn encode_topics_raw(
6656 &self,
6657 out: &mut [alloy_sol_types::abi::token::WordToken],
6658 ) -> alloy_sol_types::Result<()> {
6659 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6660 return Err(alloy_sol_types::Error::Overrun);
6661 }
6662 out[0usize] = alloy_sol_types::abi::token::WordToken(
6663 Self::SIGNATURE_HASH,
6664 );
6665 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6666 &self.staker,
6667 );
6668 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6669 &self.operator,
6670 );
6671 Ok(())
6672 }
6673 }
6674 #[automatically_derived]
6675 impl alloy_sol_types::private::IntoLogData for StakerForceUndelegated {
6676 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6677 From::from(self)
6678 }
6679 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6680 From::from(&self)
6681 }
6682 }
6683 #[automatically_derived]
6684 impl From<&StakerForceUndelegated> for alloy_sol_types::private::LogData {
6685 #[inline]
6686 fn from(this: &StakerForceUndelegated) -> alloy_sol_types::private::LogData {
6687 alloy_sol_types::SolEvent::encode_log_data(this)
6688 }
6689 }
6690 };
6691 #[derive(serde::Serialize, serde::Deserialize)]
6692 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6693 #[allow(
6698 non_camel_case_types,
6699 non_snake_case,
6700 clippy::pub_underscore_fields,
6701 clippy::style
6702 )]
6703 #[derive(Clone)]
6704 pub struct StakerUndelegated {
6705 #[allow(missing_docs)]
6706 pub staker: alloy::sol_types::private::Address,
6707 #[allow(missing_docs)]
6708 pub operator: alloy::sol_types::private::Address,
6709 }
6710 #[allow(
6711 non_camel_case_types,
6712 non_snake_case,
6713 clippy::pub_underscore_fields,
6714 clippy::style
6715 )]
6716 const _: () = {
6717 use alloy::sol_types as alloy_sol_types;
6718 #[automatically_derived]
6719 impl alloy_sol_types::SolEvent for StakerUndelegated {
6720 type DataTuple<'a> = ();
6721 type DataToken<'a> = <Self::DataTuple<
6722 'a,
6723 > as alloy_sol_types::SolType>::Token<'a>;
6724 type TopicList = (
6725 alloy_sol_types::sol_data::FixedBytes<32>,
6726 alloy::sol_types::sol_data::Address,
6727 alloy::sol_types::sol_data::Address,
6728 );
6729 const SIGNATURE: &'static str = "StakerUndelegated(address,address)";
6730 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6731 254u8, 227u8, 9u8, 102u8, 162u8, 86u8, 183u8, 30u8, 20u8, 188u8, 14u8,
6732 191u8, 201u8, 67u8, 21u8, 226u8, 142u8, 244u8, 169u8, 122u8, 113u8, 49u8,
6733 169u8, 226u8, 183u8, 163u8, 16u8, 167u8, 58u8, 244u8, 70u8, 118u8,
6734 ]);
6735 const ANONYMOUS: bool = false;
6736 #[allow(unused_variables)]
6737 #[inline]
6738 fn new(
6739 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6740 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6741 ) -> Self {
6742 Self {
6743 staker: topics.1,
6744 operator: topics.2,
6745 }
6746 }
6747 #[inline]
6748 fn check_signature(
6749 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6750 ) -> alloy_sol_types::Result<()> {
6751 if topics.0 != Self::SIGNATURE_HASH {
6752 return Err(
6753 alloy_sol_types::Error::invalid_event_signature_hash(
6754 Self::SIGNATURE,
6755 topics.0,
6756 Self::SIGNATURE_HASH,
6757 ),
6758 );
6759 }
6760 Ok(())
6761 }
6762 #[inline]
6763 fn tokenize_body(&self) -> Self::DataToken<'_> {
6764 ()
6765 }
6766 #[inline]
6767 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6768 (Self::SIGNATURE_HASH.into(), self.staker.clone(), self.operator.clone())
6769 }
6770 #[inline]
6771 fn encode_topics_raw(
6772 &self,
6773 out: &mut [alloy_sol_types::abi::token::WordToken],
6774 ) -> alloy_sol_types::Result<()> {
6775 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6776 return Err(alloy_sol_types::Error::Overrun);
6777 }
6778 out[0usize] = alloy_sol_types::abi::token::WordToken(
6779 Self::SIGNATURE_HASH,
6780 );
6781 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6782 &self.staker,
6783 );
6784 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6785 &self.operator,
6786 );
6787 Ok(())
6788 }
6789 }
6790 #[automatically_derived]
6791 impl alloy_sol_types::private::IntoLogData for StakerUndelegated {
6792 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6793 From::from(self)
6794 }
6795 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6796 From::from(&self)
6797 }
6798 }
6799 #[automatically_derived]
6800 impl From<&StakerUndelegated> for alloy_sol_types::private::LogData {
6801 #[inline]
6802 fn from(this: &StakerUndelegated) -> alloy_sol_types::private::LogData {
6803 alloy_sol_types::SolEvent::encode_log_data(this)
6804 }
6805 }
6806 };
6807 #[derive(serde::Serialize, serde::Deserialize)]
6808 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6809 #[allow(
6814 non_camel_case_types,
6815 non_snake_case,
6816 clippy::pub_underscore_fields,
6817 clippy::style
6818 )]
6819 #[derive(Clone)]
6820 pub struct Unpaused {
6821 #[allow(missing_docs)]
6822 pub account: alloy::sol_types::private::Address,
6823 #[allow(missing_docs)]
6824 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
6825 }
6826 #[allow(
6827 non_camel_case_types,
6828 non_snake_case,
6829 clippy::pub_underscore_fields,
6830 clippy::style
6831 )]
6832 const _: () = {
6833 use alloy::sol_types as alloy_sol_types;
6834 #[automatically_derived]
6835 impl alloy_sol_types::SolEvent for Unpaused {
6836 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6837 type DataToken<'a> = <Self::DataTuple<
6838 'a,
6839 > as alloy_sol_types::SolType>::Token<'a>;
6840 type TopicList = (
6841 alloy_sol_types::sol_data::FixedBytes<32>,
6842 alloy::sol_types::sol_data::Address,
6843 );
6844 const SIGNATURE: &'static str = "Unpaused(address,uint256)";
6845 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
6846 53u8, 130u8, 209u8, 130u8, 142u8, 38u8, 191u8, 86u8, 189u8, 128u8, 21u8,
6847 2u8, 188u8, 2u8, 26u8, 192u8, 188u8, 138u8, 251u8, 87u8, 200u8, 38u8,
6848 228u8, 152u8, 107u8, 69u8, 89u8, 60u8, 143u8, 173u8, 56u8, 156u8,
6849 ]);
6850 const ANONYMOUS: bool = false;
6851 #[allow(unused_variables)]
6852 #[inline]
6853 fn new(
6854 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
6855 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
6856 ) -> Self {
6857 Self {
6858 account: topics.1,
6859 newPausedStatus: data.0,
6860 }
6861 }
6862 #[inline]
6863 fn check_signature(
6864 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
6865 ) -> alloy_sol_types::Result<()> {
6866 if topics.0 != Self::SIGNATURE_HASH {
6867 return Err(
6868 alloy_sol_types::Error::invalid_event_signature_hash(
6869 Self::SIGNATURE,
6870 topics.0,
6871 Self::SIGNATURE_HASH,
6872 ),
6873 );
6874 }
6875 Ok(())
6876 }
6877 #[inline]
6878 fn tokenize_body(&self) -> Self::DataToken<'_> {
6879 (
6880 <alloy::sol_types::sol_data::Uint<
6881 256,
6882 > as alloy_sol_types::SolType>::tokenize(&self.newPausedStatus),
6883 )
6884 }
6885 #[inline]
6886 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
6887 (Self::SIGNATURE_HASH.into(), self.account.clone())
6888 }
6889 #[inline]
6890 fn encode_topics_raw(
6891 &self,
6892 out: &mut [alloy_sol_types::abi::token::WordToken],
6893 ) -> alloy_sol_types::Result<()> {
6894 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
6895 return Err(alloy_sol_types::Error::Overrun);
6896 }
6897 out[0usize] = alloy_sol_types::abi::token::WordToken(
6898 Self::SIGNATURE_HASH,
6899 );
6900 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
6901 &self.account,
6902 );
6903 Ok(())
6904 }
6905 }
6906 #[automatically_derived]
6907 impl alloy_sol_types::private::IntoLogData for Unpaused {
6908 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
6909 From::from(self)
6910 }
6911 fn into_log_data(self) -> alloy_sol_types::private::LogData {
6912 From::from(&self)
6913 }
6914 }
6915 #[automatically_derived]
6916 impl From<&Unpaused> for alloy_sol_types::private::LogData {
6917 #[inline]
6918 fn from(this: &Unpaused) -> alloy_sol_types::private::LogData {
6919 alloy_sol_types::SolEvent::encode_log_data(this)
6920 }
6921 }
6922 };
6923 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6928 #[derive(Clone)]
6929 pub struct constructorCall {
6930 #[allow(missing_docs)]
6931 pub _strategyManager: alloy::sol_types::private::Address,
6932 #[allow(missing_docs)]
6933 pub _eigenPodManager: alloy::sol_types::private::Address,
6934 #[allow(missing_docs)]
6935 pub _allocationManager: alloy::sol_types::private::Address,
6936 #[allow(missing_docs)]
6937 pub _pauserRegistry: alloy::sol_types::private::Address,
6938 #[allow(missing_docs)]
6939 pub _permissionController: alloy::sol_types::private::Address,
6940 #[allow(missing_docs)]
6941 pub _MIN_WITHDRAWAL_DELAY: u32,
6942 #[allow(missing_docs)]
6943 pub _version: alloy::sol_types::private::String,
6944 }
6945 const _: () = {
6946 use alloy::sol_types as alloy_sol_types;
6947 {
6948 #[doc(hidden)]
6949 type UnderlyingSolTuple<'a> = (
6950 alloy::sol_types::sol_data::Address,
6951 alloy::sol_types::sol_data::Address,
6952 alloy::sol_types::sol_data::Address,
6953 alloy::sol_types::sol_data::Address,
6954 alloy::sol_types::sol_data::Address,
6955 alloy::sol_types::sol_data::Uint<32>,
6956 alloy::sol_types::sol_data::String,
6957 );
6958 #[doc(hidden)]
6959 type UnderlyingRustTuple<'a> = (
6960 alloy::sol_types::private::Address,
6961 alloy::sol_types::private::Address,
6962 alloy::sol_types::private::Address,
6963 alloy::sol_types::private::Address,
6964 alloy::sol_types::private::Address,
6965 u32,
6966 alloy::sol_types::private::String,
6967 );
6968 #[cfg(test)]
6969 #[allow(dead_code, unreachable_patterns)]
6970 fn _type_assertion(
6971 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6972 ) {
6973 match _t {
6974 alloy_sol_types::private::AssertTypeEq::<
6975 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6976 >(_) => {}
6977 }
6978 }
6979 #[automatically_derived]
6980 #[doc(hidden)]
6981 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
6982 fn from(value: constructorCall) -> Self {
6983 (
6984 value._strategyManager,
6985 value._eigenPodManager,
6986 value._allocationManager,
6987 value._pauserRegistry,
6988 value._permissionController,
6989 value._MIN_WITHDRAWAL_DELAY,
6990 value._version,
6991 )
6992 }
6993 }
6994 #[automatically_derived]
6995 #[doc(hidden)]
6996 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
6997 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6998 Self {
6999 _strategyManager: tuple.0,
7000 _eigenPodManager: tuple.1,
7001 _allocationManager: tuple.2,
7002 _pauserRegistry: tuple.3,
7003 _permissionController: tuple.4,
7004 _MIN_WITHDRAWAL_DELAY: tuple.5,
7005 _version: tuple.6,
7006 }
7007 }
7008 }
7009 }
7010 #[automatically_derived]
7011 impl alloy_sol_types::SolConstructor for constructorCall {
7012 type Parameters<'a> = (
7013 alloy::sol_types::sol_data::Address,
7014 alloy::sol_types::sol_data::Address,
7015 alloy::sol_types::sol_data::Address,
7016 alloy::sol_types::sol_data::Address,
7017 alloy::sol_types::sol_data::Address,
7018 alloy::sol_types::sol_data::Uint<32>,
7019 alloy::sol_types::sol_data::String,
7020 );
7021 type Token<'a> = <Self::Parameters<
7022 'a,
7023 > as alloy_sol_types::SolType>::Token<'a>;
7024 #[inline]
7025 fn new<'a>(
7026 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7027 ) -> Self {
7028 tuple.into()
7029 }
7030 #[inline]
7031 fn tokenize(&self) -> Self::Token<'_> {
7032 (
7033 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7034 &self._strategyManager,
7035 ),
7036 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7037 &self._eigenPodManager,
7038 ),
7039 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7040 &self._allocationManager,
7041 ),
7042 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7043 &self._pauserRegistry,
7044 ),
7045 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7046 &self._permissionController,
7047 ),
7048 <alloy::sol_types::sol_data::Uint<
7049 32,
7050 > as alloy_sol_types::SolType>::tokenize(
7051 &self._MIN_WITHDRAWAL_DELAY,
7052 ),
7053 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
7054 &self._version,
7055 ),
7056 )
7057 }
7058 }
7059 };
7060 #[derive(serde::Serialize, serde::Deserialize)]
7061 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7062 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7067 #[derive(Clone)]
7068 pub struct DELEGATION_APPROVAL_TYPEHASHCall;
7069 #[derive(serde::Serialize, serde::Deserialize)]
7070 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7071 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7073 #[derive(Clone)]
7074 pub struct DELEGATION_APPROVAL_TYPEHASHReturn {
7075 #[allow(missing_docs)]
7076 pub _0: alloy::sol_types::private::FixedBytes<32>,
7077 }
7078 #[allow(
7079 non_camel_case_types,
7080 non_snake_case,
7081 clippy::pub_underscore_fields,
7082 clippy::style
7083 )]
7084 const _: () = {
7085 use alloy::sol_types as alloy_sol_types;
7086 {
7087 #[doc(hidden)]
7088 type UnderlyingSolTuple<'a> = ();
7089 #[doc(hidden)]
7090 type UnderlyingRustTuple<'a> = ();
7091 #[cfg(test)]
7092 #[allow(dead_code, unreachable_patterns)]
7093 fn _type_assertion(
7094 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7095 ) {
7096 match _t {
7097 alloy_sol_types::private::AssertTypeEq::<
7098 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7099 >(_) => {}
7100 }
7101 }
7102 #[automatically_derived]
7103 #[doc(hidden)]
7104 impl ::core::convert::From<DELEGATION_APPROVAL_TYPEHASHCall>
7105 for UnderlyingRustTuple<'_> {
7106 fn from(value: DELEGATION_APPROVAL_TYPEHASHCall) -> Self {
7107 ()
7108 }
7109 }
7110 #[automatically_derived]
7111 #[doc(hidden)]
7112 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7113 for DELEGATION_APPROVAL_TYPEHASHCall {
7114 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7115 Self
7116 }
7117 }
7118 }
7119 {
7120 #[doc(hidden)]
7121 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7122 #[doc(hidden)]
7123 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
7124 #[cfg(test)]
7125 #[allow(dead_code, unreachable_patterns)]
7126 fn _type_assertion(
7127 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7128 ) {
7129 match _t {
7130 alloy_sol_types::private::AssertTypeEq::<
7131 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7132 >(_) => {}
7133 }
7134 }
7135 #[automatically_derived]
7136 #[doc(hidden)]
7137 impl ::core::convert::From<DELEGATION_APPROVAL_TYPEHASHReturn>
7138 for UnderlyingRustTuple<'_> {
7139 fn from(value: DELEGATION_APPROVAL_TYPEHASHReturn) -> Self {
7140 (value._0,)
7141 }
7142 }
7143 #[automatically_derived]
7144 #[doc(hidden)]
7145 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7146 for DELEGATION_APPROVAL_TYPEHASHReturn {
7147 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7148 Self { _0: tuple.0 }
7149 }
7150 }
7151 }
7152 #[automatically_derived]
7153 impl alloy_sol_types::SolCall for DELEGATION_APPROVAL_TYPEHASHCall {
7154 type Parameters<'a> = ();
7155 type Token<'a> = <Self::Parameters<
7156 'a,
7157 > as alloy_sol_types::SolType>::Token<'a>;
7158 type Return = alloy::sol_types::private::FixedBytes<32>;
7159 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7160 type ReturnToken<'a> = <Self::ReturnTuple<
7161 'a,
7162 > as alloy_sol_types::SolType>::Token<'a>;
7163 const SIGNATURE: &'static str = "DELEGATION_APPROVAL_TYPEHASH()";
7164 const SELECTOR: [u8; 4] = [4u8, 164u8, 249u8, 121u8];
7165 #[inline]
7166 fn new<'a>(
7167 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7168 ) -> Self {
7169 tuple.into()
7170 }
7171 #[inline]
7172 fn tokenize(&self) -> Self::Token<'_> {
7173 ()
7174 }
7175 #[inline]
7176 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7177 (
7178 <alloy::sol_types::sol_data::FixedBytes<
7179 32,
7180 > as alloy_sol_types::SolType>::tokenize(ret),
7181 )
7182 }
7183 #[inline]
7184 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7185 <Self::ReturnTuple<
7186 '_,
7187 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7188 .map(|r| {
7189 let r: DELEGATION_APPROVAL_TYPEHASHReturn = r.into();
7190 r._0
7191 })
7192 }
7193 #[inline]
7194 fn abi_decode_returns_validate(
7195 data: &[u8],
7196 ) -> alloy_sol_types::Result<Self::Return> {
7197 <Self::ReturnTuple<
7198 '_,
7199 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7200 .map(|r| {
7201 let r: DELEGATION_APPROVAL_TYPEHASHReturn = r.into();
7202 r._0
7203 })
7204 }
7205 }
7206 };
7207 #[derive(serde::Serialize, serde::Deserialize)]
7208 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7209 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7214 #[derive(Clone)]
7215 pub struct allocationManagerCall;
7216 #[derive(serde::Serialize, serde::Deserialize)]
7217 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7218 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7220 #[derive(Clone)]
7221 pub struct allocationManagerReturn {
7222 #[allow(missing_docs)]
7223 pub _0: alloy::sol_types::private::Address,
7224 }
7225 #[allow(
7226 non_camel_case_types,
7227 non_snake_case,
7228 clippy::pub_underscore_fields,
7229 clippy::style
7230 )]
7231 const _: () = {
7232 use alloy::sol_types as alloy_sol_types;
7233 {
7234 #[doc(hidden)]
7235 type UnderlyingSolTuple<'a> = ();
7236 #[doc(hidden)]
7237 type UnderlyingRustTuple<'a> = ();
7238 #[cfg(test)]
7239 #[allow(dead_code, unreachable_patterns)]
7240 fn _type_assertion(
7241 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7242 ) {
7243 match _t {
7244 alloy_sol_types::private::AssertTypeEq::<
7245 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7246 >(_) => {}
7247 }
7248 }
7249 #[automatically_derived]
7250 #[doc(hidden)]
7251 impl ::core::convert::From<allocationManagerCall>
7252 for UnderlyingRustTuple<'_> {
7253 fn from(value: allocationManagerCall) -> Self {
7254 ()
7255 }
7256 }
7257 #[automatically_derived]
7258 #[doc(hidden)]
7259 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7260 for allocationManagerCall {
7261 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7262 Self
7263 }
7264 }
7265 }
7266 {
7267 #[doc(hidden)]
7268 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7269 #[doc(hidden)]
7270 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7271 #[cfg(test)]
7272 #[allow(dead_code, unreachable_patterns)]
7273 fn _type_assertion(
7274 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7275 ) {
7276 match _t {
7277 alloy_sol_types::private::AssertTypeEq::<
7278 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7279 >(_) => {}
7280 }
7281 }
7282 #[automatically_derived]
7283 #[doc(hidden)]
7284 impl ::core::convert::From<allocationManagerReturn>
7285 for UnderlyingRustTuple<'_> {
7286 fn from(value: allocationManagerReturn) -> Self {
7287 (value._0,)
7288 }
7289 }
7290 #[automatically_derived]
7291 #[doc(hidden)]
7292 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7293 for allocationManagerReturn {
7294 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7295 Self { _0: tuple.0 }
7296 }
7297 }
7298 }
7299 #[automatically_derived]
7300 impl alloy_sol_types::SolCall for allocationManagerCall {
7301 type Parameters<'a> = ();
7302 type Token<'a> = <Self::Parameters<
7303 'a,
7304 > as alloy_sol_types::SolType>::Token<'a>;
7305 type Return = alloy::sol_types::private::Address;
7306 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7307 type ReturnToken<'a> = <Self::ReturnTuple<
7308 'a,
7309 > as alloy_sol_types::SolType>::Token<'a>;
7310 const SIGNATURE: &'static str = "allocationManager()";
7311 const SELECTOR: [u8; 4] = [202u8, 138u8, 167u8, 199u8];
7312 #[inline]
7313 fn new<'a>(
7314 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7315 ) -> Self {
7316 tuple.into()
7317 }
7318 #[inline]
7319 fn tokenize(&self) -> Self::Token<'_> {
7320 ()
7321 }
7322 #[inline]
7323 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7324 (
7325 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7326 ret,
7327 ),
7328 )
7329 }
7330 #[inline]
7331 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7332 <Self::ReturnTuple<
7333 '_,
7334 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7335 .map(|r| {
7336 let r: allocationManagerReturn = r.into();
7337 r._0
7338 })
7339 }
7340 #[inline]
7341 fn abi_decode_returns_validate(
7342 data: &[u8],
7343 ) -> alloy_sol_types::Result<Self::Return> {
7344 <Self::ReturnTuple<
7345 '_,
7346 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7347 .map(|r| {
7348 let r: allocationManagerReturn = r.into();
7349 r._0
7350 })
7351 }
7352 }
7353 };
7354 #[derive(serde::Serialize, serde::Deserialize)]
7355 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7356 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7361 #[derive(Clone)]
7362 pub struct beaconChainETHStrategyCall;
7363 #[derive(serde::Serialize, serde::Deserialize)]
7364 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7365 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7367 #[derive(Clone)]
7368 pub struct beaconChainETHStrategyReturn {
7369 #[allow(missing_docs)]
7370 pub _0: alloy::sol_types::private::Address,
7371 }
7372 #[allow(
7373 non_camel_case_types,
7374 non_snake_case,
7375 clippy::pub_underscore_fields,
7376 clippy::style
7377 )]
7378 const _: () = {
7379 use alloy::sol_types as alloy_sol_types;
7380 {
7381 #[doc(hidden)]
7382 type UnderlyingSolTuple<'a> = ();
7383 #[doc(hidden)]
7384 type UnderlyingRustTuple<'a> = ();
7385 #[cfg(test)]
7386 #[allow(dead_code, unreachable_patterns)]
7387 fn _type_assertion(
7388 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7389 ) {
7390 match _t {
7391 alloy_sol_types::private::AssertTypeEq::<
7392 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7393 >(_) => {}
7394 }
7395 }
7396 #[automatically_derived]
7397 #[doc(hidden)]
7398 impl ::core::convert::From<beaconChainETHStrategyCall>
7399 for UnderlyingRustTuple<'_> {
7400 fn from(value: beaconChainETHStrategyCall) -> Self {
7401 ()
7402 }
7403 }
7404 #[automatically_derived]
7405 #[doc(hidden)]
7406 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7407 for beaconChainETHStrategyCall {
7408 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7409 Self
7410 }
7411 }
7412 }
7413 {
7414 #[doc(hidden)]
7415 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7416 #[doc(hidden)]
7417 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7418 #[cfg(test)]
7419 #[allow(dead_code, unreachable_patterns)]
7420 fn _type_assertion(
7421 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7422 ) {
7423 match _t {
7424 alloy_sol_types::private::AssertTypeEq::<
7425 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7426 >(_) => {}
7427 }
7428 }
7429 #[automatically_derived]
7430 #[doc(hidden)]
7431 impl ::core::convert::From<beaconChainETHStrategyReturn>
7432 for UnderlyingRustTuple<'_> {
7433 fn from(value: beaconChainETHStrategyReturn) -> Self {
7434 (value._0,)
7435 }
7436 }
7437 #[automatically_derived]
7438 #[doc(hidden)]
7439 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7440 for beaconChainETHStrategyReturn {
7441 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7442 Self { _0: tuple.0 }
7443 }
7444 }
7445 }
7446 #[automatically_derived]
7447 impl alloy_sol_types::SolCall for beaconChainETHStrategyCall {
7448 type Parameters<'a> = ();
7449 type Token<'a> = <Self::Parameters<
7450 'a,
7451 > as alloy_sol_types::SolType>::Token<'a>;
7452 type Return = alloy::sol_types::private::Address;
7453 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7454 type ReturnToken<'a> = <Self::ReturnTuple<
7455 'a,
7456 > as alloy_sol_types::SolType>::Token<'a>;
7457 const SIGNATURE: &'static str = "beaconChainETHStrategy()";
7458 const SELECTOR: [u8; 4] = [145u8, 4u8, 195u8, 25u8];
7459 #[inline]
7460 fn new<'a>(
7461 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7462 ) -> Self {
7463 tuple.into()
7464 }
7465 #[inline]
7466 fn tokenize(&self) -> Self::Token<'_> {
7467 ()
7468 }
7469 #[inline]
7470 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7471 (
7472 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7473 ret,
7474 ),
7475 )
7476 }
7477 #[inline]
7478 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7479 <Self::ReturnTuple<
7480 '_,
7481 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7482 .map(|r| {
7483 let r: beaconChainETHStrategyReturn = r.into();
7484 r._0
7485 })
7486 }
7487 #[inline]
7488 fn abi_decode_returns_validate(
7489 data: &[u8],
7490 ) -> alloy_sol_types::Result<Self::Return> {
7491 <Self::ReturnTuple<
7492 '_,
7493 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7494 .map(|r| {
7495 let r: beaconChainETHStrategyReturn = r.into();
7496 r._0
7497 })
7498 }
7499 }
7500 };
7501 #[derive(serde::Serialize, serde::Deserialize)]
7502 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7503 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7508 #[derive(Clone)]
7509 pub struct calculateDelegationApprovalDigestHashCall {
7510 #[allow(missing_docs)]
7511 pub staker: alloy::sol_types::private::Address,
7512 #[allow(missing_docs)]
7513 pub operator: alloy::sol_types::private::Address,
7514 #[allow(missing_docs)]
7515 pub approver: alloy::sol_types::private::Address,
7516 #[allow(missing_docs)]
7517 pub approverSalt: alloy::sol_types::private::FixedBytes<32>,
7518 #[allow(missing_docs)]
7519 pub expiry: alloy::sol_types::private::primitives::aliases::U256,
7520 }
7521 #[derive(serde::Serialize, serde::Deserialize)]
7522 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7523 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7525 #[derive(Clone)]
7526 pub struct calculateDelegationApprovalDigestHashReturn {
7527 #[allow(missing_docs)]
7528 pub _0: alloy::sol_types::private::FixedBytes<32>,
7529 }
7530 #[allow(
7531 non_camel_case_types,
7532 non_snake_case,
7533 clippy::pub_underscore_fields,
7534 clippy::style
7535 )]
7536 const _: () = {
7537 use alloy::sol_types as alloy_sol_types;
7538 {
7539 #[doc(hidden)]
7540 type UnderlyingSolTuple<'a> = (
7541 alloy::sol_types::sol_data::Address,
7542 alloy::sol_types::sol_data::Address,
7543 alloy::sol_types::sol_data::Address,
7544 alloy::sol_types::sol_data::FixedBytes<32>,
7545 alloy::sol_types::sol_data::Uint<256>,
7546 );
7547 #[doc(hidden)]
7548 type UnderlyingRustTuple<'a> = (
7549 alloy::sol_types::private::Address,
7550 alloy::sol_types::private::Address,
7551 alloy::sol_types::private::Address,
7552 alloy::sol_types::private::FixedBytes<32>,
7553 alloy::sol_types::private::primitives::aliases::U256,
7554 );
7555 #[cfg(test)]
7556 #[allow(dead_code, unreachable_patterns)]
7557 fn _type_assertion(
7558 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7559 ) {
7560 match _t {
7561 alloy_sol_types::private::AssertTypeEq::<
7562 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7563 >(_) => {}
7564 }
7565 }
7566 #[automatically_derived]
7567 #[doc(hidden)]
7568 impl ::core::convert::From<calculateDelegationApprovalDigestHashCall>
7569 for UnderlyingRustTuple<'_> {
7570 fn from(value: calculateDelegationApprovalDigestHashCall) -> Self {
7571 (
7572 value.staker,
7573 value.operator,
7574 value.approver,
7575 value.approverSalt,
7576 value.expiry,
7577 )
7578 }
7579 }
7580 #[automatically_derived]
7581 #[doc(hidden)]
7582 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7583 for calculateDelegationApprovalDigestHashCall {
7584 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7585 Self {
7586 staker: tuple.0,
7587 operator: tuple.1,
7588 approver: tuple.2,
7589 approverSalt: tuple.3,
7590 expiry: tuple.4,
7591 }
7592 }
7593 }
7594 }
7595 {
7596 #[doc(hidden)]
7597 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7598 #[doc(hidden)]
7599 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
7600 #[cfg(test)]
7601 #[allow(dead_code, unreachable_patterns)]
7602 fn _type_assertion(
7603 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7604 ) {
7605 match _t {
7606 alloy_sol_types::private::AssertTypeEq::<
7607 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7608 >(_) => {}
7609 }
7610 }
7611 #[automatically_derived]
7612 #[doc(hidden)]
7613 impl ::core::convert::From<calculateDelegationApprovalDigestHashReturn>
7614 for UnderlyingRustTuple<'_> {
7615 fn from(value: calculateDelegationApprovalDigestHashReturn) -> Self {
7616 (value._0,)
7617 }
7618 }
7619 #[automatically_derived]
7620 #[doc(hidden)]
7621 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7622 for calculateDelegationApprovalDigestHashReturn {
7623 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7624 Self { _0: tuple.0 }
7625 }
7626 }
7627 }
7628 #[automatically_derived]
7629 impl alloy_sol_types::SolCall for calculateDelegationApprovalDigestHashCall {
7630 type Parameters<'a> = (
7631 alloy::sol_types::sol_data::Address,
7632 alloy::sol_types::sol_data::Address,
7633 alloy::sol_types::sol_data::Address,
7634 alloy::sol_types::sol_data::FixedBytes<32>,
7635 alloy::sol_types::sol_data::Uint<256>,
7636 );
7637 type Token<'a> = <Self::Parameters<
7638 'a,
7639 > as alloy_sol_types::SolType>::Token<'a>;
7640 type Return = alloy::sol_types::private::FixedBytes<32>;
7641 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7642 type ReturnToken<'a> = <Self::ReturnTuple<
7643 'a,
7644 > as alloy_sol_types::SolType>::Token<'a>;
7645 const SIGNATURE: &'static str = "calculateDelegationApprovalDigestHash(address,address,address,bytes32,uint256)";
7646 const SELECTOR: [u8; 4] = [11u8, 159u8, 72u8, 122u8];
7647 #[inline]
7648 fn new<'a>(
7649 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7650 ) -> Self {
7651 tuple.into()
7652 }
7653 #[inline]
7654 fn tokenize(&self) -> Self::Token<'_> {
7655 (
7656 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7657 &self.staker,
7658 ),
7659 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7660 &self.operator,
7661 ),
7662 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7663 &self.approver,
7664 ),
7665 <alloy::sol_types::sol_data::FixedBytes<
7666 32,
7667 > as alloy_sol_types::SolType>::tokenize(&self.approverSalt),
7668 <alloy::sol_types::sol_data::Uint<
7669 256,
7670 > as alloy_sol_types::SolType>::tokenize(&self.expiry),
7671 )
7672 }
7673 #[inline]
7674 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7675 (
7676 <alloy::sol_types::sol_data::FixedBytes<
7677 32,
7678 > as alloy_sol_types::SolType>::tokenize(ret),
7679 )
7680 }
7681 #[inline]
7682 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7683 <Self::ReturnTuple<
7684 '_,
7685 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7686 .map(|r| {
7687 let r: calculateDelegationApprovalDigestHashReturn = r.into();
7688 r._0
7689 })
7690 }
7691 #[inline]
7692 fn abi_decode_returns_validate(
7693 data: &[u8],
7694 ) -> alloy_sol_types::Result<Self::Return> {
7695 <Self::ReturnTuple<
7696 '_,
7697 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7698 .map(|r| {
7699 let r: calculateDelegationApprovalDigestHashReturn = r.into();
7700 r._0
7701 })
7702 }
7703 }
7704 };
7705 #[derive(serde::Serialize, serde::Deserialize)]
7706 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7707 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7712 #[derive(Clone)]
7713 pub struct calculateWithdrawalRootCall {
7714 #[allow(missing_docs)]
7715 pub withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
7716 }
7717 #[derive(serde::Serialize, serde::Deserialize)]
7718 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7719 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7721 #[derive(Clone)]
7722 pub struct calculateWithdrawalRootReturn {
7723 #[allow(missing_docs)]
7724 pub _0: alloy::sol_types::private::FixedBytes<32>,
7725 }
7726 #[allow(
7727 non_camel_case_types,
7728 non_snake_case,
7729 clippy::pub_underscore_fields,
7730 clippy::style
7731 )]
7732 const _: () = {
7733 use alloy::sol_types as alloy_sol_types;
7734 {
7735 #[doc(hidden)]
7736 type UnderlyingSolTuple<'a> = (IDelegationManagerTypes::Withdrawal,);
7737 #[doc(hidden)]
7738 type UnderlyingRustTuple<'a> = (
7739 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
7740 );
7741 #[cfg(test)]
7742 #[allow(dead_code, unreachable_patterns)]
7743 fn _type_assertion(
7744 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7745 ) {
7746 match _t {
7747 alloy_sol_types::private::AssertTypeEq::<
7748 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7749 >(_) => {}
7750 }
7751 }
7752 #[automatically_derived]
7753 #[doc(hidden)]
7754 impl ::core::convert::From<calculateWithdrawalRootCall>
7755 for UnderlyingRustTuple<'_> {
7756 fn from(value: calculateWithdrawalRootCall) -> Self {
7757 (value.withdrawal,)
7758 }
7759 }
7760 #[automatically_derived]
7761 #[doc(hidden)]
7762 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7763 for calculateWithdrawalRootCall {
7764 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7765 Self { withdrawal: tuple.0 }
7766 }
7767 }
7768 }
7769 {
7770 #[doc(hidden)]
7771 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7772 #[doc(hidden)]
7773 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
7774 #[cfg(test)]
7775 #[allow(dead_code, unreachable_patterns)]
7776 fn _type_assertion(
7777 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7778 ) {
7779 match _t {
7780 alloy_sol_types::private::AssertTypeEq::<
7781 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7782 >(_) => {}
7783 }
7784 }
7785 #[automatically_derived]
7786 #[doc(hidden)]
7787 impl ::core::convert::From<calculateWithdrawalRootReturn>
7788 for UnderlyingRustTuple<'_> {
7789 fn from(value: calculateWithdrawalRootReturn) -> Self {
7790 (value._0,)
7791 }
7792 }
7793 #[automatically_derived]
7794 #[doc(hidden)]
7795 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7796 for calculateWithdrawalRootReturn {
7797 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7798 Self { _0: tuple.0 }
7799 }
7800 }
7801 }
7802 #[automatically_derived]
7803 impl alloy_sol_types::SolCall for calculateWithdrawalRootCall {
7804 type Parameters<'a> = (IDelegationManagerTypes::Withdrawal,);
7805 type Token<'a> = <Self::Parameters<
7806 'a,
7807 > as alloy_sol_types::SolType>::Token<'a>;
7808 type Return = alloy::sol_types::private::FixedBytes<32>;
7809 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
7810 type ReturnToken<'a> = <Self::ReturnTuple<
7811 'a,
7812 > as alloy_sol_types::SolType>::Token<'a>;
7813 const SIGNATURE: &'static str = "calculateWithdrawalRoot((address,address,address,uint256,uint32,address[],uint256[]))";
7814 const SELECTOR: [u8; 4] = [89u8, 123u8, 54u8, 218u8];
7815 #[inline]
7816 fn new<'a>(
7817 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7818 ) -> Self {
7819 tuple.into()
7820 }
7821 #[inline]
7822 fn tokenize(&self) -> Self::Token<'_> {
7823 (
7824 <IDelegationManagerTypes::Withdrawal as alloy_sol_types::SolType>::tokenize(
7825 &self.withdrawal,
7826 ),
7827 )
7828 }
7829 #[inline]
7830 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7831 (
7832 <alloy::sol_types::sol_data::FixedBytes<
7833 32,
7834 > as alloy_sol_types::SolType>::tokenize(ret),
7835 )
7836 }
7837 #[inline]
7838 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7839 <Self::ReturnTuple<
7840 '_,
7841 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7842 .map(|r| {
7843 let r: calculateWithdrawalRootReturn = r.into();
7844 r._0
7845 })
7846 }
7847 #[inline]
7848 fn abi_decode_returns_validate(
7849 data: &[u8],
7850 ) -> alloy_sol_types::Result<Self::Return> {
7851 <Self::ReturnTuple<
7852 '_,
7853 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7854 .map(|r| {
7855 let r: calculateWithdrawalRootReturn = r.into();
7856 r._0
7857 })
7858 }
7859 }
7860 };
7861 #[derive(serde::Serialize, serde::Deserialize)]
7862 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7863 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7868 #[derive(Clone)]
7869 pub struct completeQueuedWithdrawalCall {
7870 #[allow(missing_docs)]
7871 pub withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
7872 #[allow(missing_docs)]
7873 pub tokens: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
7874 #[allow(missing_docs)]
7875 pub receiveAsTokens: bool,
7876 }
7877 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7879 #[derive(Clone)]
7880 pub struct completeQueuedWithdrawalReturn {}
7881 #[allow(
7882 non_camel_case_types,
7883 non_snake_case,
7884 clippy::pub_underscore_fields,
7885 clippy::style
7886 )]
7887 const _: () = {
7888 use alloy::sol_types as alloy_sol_types;
7889 {
7890 #[doc(hidden)]
7891 type UnderlyingSolTuple<'a> = (
7892 IDelegationManagerTypes::Withdrawal,
7893 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
7894 alloy::sol_types::sol_data::Bool,
7895 );
7896 #[doc(hidden)]
7897 type UnderlyingRustTuple<'a> = (
7898 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
7899 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
7900 bool,
7901 );
7902 #[cfg(test)]
7903 #[allow(dead_code, unreachable_patterns)]
7904 fn _type_assertion(
7905 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7906 ) {
7907 match _t {
7908 alloy_sol_types::private::AssertTypeEq::<
7909 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7910 >(_) => {}
7911 }
7912 }
7913 #[automatically_derived]
7914 #[doc(hidden)]
7915 impl ::core::convert::From<completeQueuedWithdrawalCall>
7916 for UnderlyingRustTuple<'_> {
7917 fn from(value: completeQueuedWithdrawalCall) -> Self {
7918 (value.withdrawal, value.tokens, value.receiveAsTokens)
7919 }
7920 }
7921 #[automatically_derived]
7922 #[doc(hidden)]
7923 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7924 for completeQueuedWithdrawalCall {
7925 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7926 Self {
7927 withdrawal: tuple.0,
7928 tokens: tuple.1,
7929 receiveAsTokens: tuple.2,
7930 }
7931 }
7932 }
7933 }
7934 {
7935 #[doc(hidden)]
7936 type UnderlyingSolTuple<'a> = ();
7937 #[doc(hidden)]
7938 type UnderlyingRustTuple<'a> = ();
7939 #[cfg(test)]
7940 #[allow(dead_code, unreachable_patterns)]
7941 fn _type_assertion(
7942 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7943 ) {
7944 match _t {
7945 alloy_sol_types::private::AssertTypeEq::<
7946 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7947 >(_) => {}
7948 }
7949 }
7950 #[automatically_derived]
7951 #[doc(hidden)]
7952 impl ::core::convert::From<completeQueuedWithdrawalReturn>
7953 for UnderlyingRustTuple<'_> {
7954 fn from(value: completeQueuedWithdrawalReturn) -> Self {
7955 ()
7956 }
7957 }
7958 #[automatically_derived]
7959 #[doc(hidden)]
7960 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7961 for completeQueuedWithdrawalReturn {
7962 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7963 Self {}
7964 }
7965 }
7966 }
7967 impl completeQueuedWithdrawalReturn {
7968 fn _tokenize(
7969 &self,
7970 ) -> <completeQueuedWithdrawalCall as alloy_sol_types::SolCall>::ReturnToken<
7971 '_,
7972 > {
7973 ()
7974 }
7975 }
7976 #[automatically_derived]
7977 impl alloy_sol_types::SolCall for completeQueuedWithdrawalCall {
7978 type Parameters<'a> = (
7979 IDelegationManagerTypes::Withdrawal,
7980 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
7981 alloy::sol_types::sol_data::Bool,
7982 );
7983 type Token<'a> = <Self::Parameters<
7984 'a,
7985 > as alloy_sol_types::SolType>::Token<'a>;
7986 type Return = completeQueuedWithdrawalReturn;
7987 type ReturnTuple<'a> = ();
7988 type ReturnToken<'a> = <Self::ReturnTuple<
7989 'a,
7990 > as alloy_sol_types::SolType>::Token<'a>;
7991 const SIGNATURE: &'static str = "completeQueuedWithdrawal((address,address,address,uint256,uint32,address[],uint256[]),address[],bool)";
7992 const SELECTOR: [u8; 4] = [228u8, 204u8, 63u8, 144u8];
7993 #[inline]
7994 fn new<'a>(
7995 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7996 ) -> Self {
7997 tuple.into()
7998 }
7999 #[inline]
8000 fn tokenize(&self) -> Self::Token<'_> {
8001 (
8002 <IDelegationManagerTypes::Withdrawal as alloy_sol_types::SolType>::tokenize(
8003 &self.withdrawal,
8004 ),
8005 <alloy::sol_types::sol_data::Array<
8006 alloy::sol_types::sol_data::Address,
8007 > as alloy_sol_types::SolType>::tokenize(&self.tokens),
8008 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
8009 &self.receiveAsTokens,
8010 ),
8011 )
8012 }
8013 #[inline]
8014 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8015 completeQueuedWithdrawalReturn::_tokenize(ret)
8016 }
8017 #[inline]
8018 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8019 <Self::ReturnTuple<
8020 '_,
8021 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8022 .map(Into::into)
8023 }
8024 #[inline]
8025 fn abi_decode_returns_validate(
8026 data: &[u8],
8027 ) -> alloy_sol_types::Result<Self::Return> {
8028 <Self::ReturnTuple<
8029 '_,
8030 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8031 .map(Into::into)
8032 }
8033 }
8034 };
8035 #[derive(serde::Serialize, serde::Deserialize)]
8036 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8037 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8042 #[derive(Clone)]
8043 pub struct completeQueuedWithdrawalsCall {
8044 #[allow(missing_docs)]
8045 pub withdrawals: alloy::sol_types::private::Vec<
8046 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
8047 >,
8048 #[allow(missing_docs)]
8049 pub tokens: alloy::sol_types::private::Vec<
8050 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
8051 >,
8052 #[allow(missing_docs)]
8053 pub receiveAsTokens: alloy::sol_types::private::Vec<bool>,
8054 }
8055 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8057 #[derive(Clone)]
8058 pub struct completeQueuedWithdrawalsReturn {}
8059 #[allow(
8060 non_camel_case_types,
8061 non_snake_case,
8062 clippy::pub_underscore_fields,
8063 clippy::style
8064 )]
8065 const _: () = {
8066 use alloy::sol_types as alloy_sol_types;
8067 {
8068 #[doc(hidden)]
8069 type UnderlyingSolTuple<'a> = (
8070 alloy::sol_types::sol_data::Array<IDelegationManagerTypes::Withdrawal>,
8071 alloy::sol_types::sol_data::Array<
8072 alloy::sol_types::sol_data::Array<
8073 alloy::sol_types::sol_data::Address,
8074 >,
8075 >,
8076 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Bool>,
8077 );
8078 #[doc(hidden)]
8079 type UnderlyingRustTuple<'a> = (
8080 alloy::sol_types::private::Vec<
8081 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
8082 >,
8083 alloy::sol_types::private::Vec<
8084 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
8085 >,
8086 alloy::sol_types::private::Vec<bool>,
8087 );
8088 #[cfg(test)]
8089 #[allow(dead_code, unreachable_patterns)]
8090 fn _type_assertion(
8091 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8092 ) {
8093 match _t {
8094 alloy_sol_types::private::AssertTypeEq::<
8095 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8096 >(_) => {}
8097 }
8098 }
8099 #[automatically_derived]
8100 #[doc(hidden)]
8101 impl ::core::convert::From<completeQueuedWithdrawalsCall>
8102 for UnderlyingRustTuple<'_> {
8103 fn from(value: completeQueuedWithdrawalsCall) -> Self {
8104 (value.withdrawals, value.tokens, value.receiveAsTokens)
8105 }
8106 }
8107 #[automatically_derived]
8108 #[doc(hidden)]
8109 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8110 for completeQueuedWithdrawalsCall {
8111 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8112 Self {
8113 withdrawals: tuple.0,
8114 tokens: tuple.1,
8115 receiveAsTokens: tuple.2,
8116 }
8117 }
8118 }
8119 }
8120 {
8121 #[doc(hidden)]
8122 type UnderlyingSolTuple<'a> = ();
8123 #[doc(hidden)]
8124 type UnderlyingRustTuple<'a> = ();
8125 #[cfg(test)]
8126 #[allow(dead_code, unreachable_patterns)]
8127 fn _type_assertion(
8128 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8129 ) {
8130 match _t {
8131 alloy_sol_types::private::AssertTypeEq::<
8132 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8133 >(_) => {}
8134 }
8135 }
8136 #[automatically_derived]
8137 #[doc(hidden)]
8138 impl ::core::convert::From<completeQueuedWithdrawalsReturn>
8139 for UnderlyingRustTuple<'_> {
8140 fn from(value: completeQueuedWithdrawalsReturn) -> Self {
8141 ()
8142 }
8143 }
8144 #[automatically_derived]
8145 #[doc(hidden)]
8146 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8147 for completeQueuedWithdrawalsReturn {
8148 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8149 Self {}
8150 }
8151 }
8152 }
8153 impl completeQueuedWithdrawalsReturn {
8154 fn _tokenize(
8155 &self,
8156 ) -> <completeQueuedWithdrawalsCall as alloy_sol_types::SolCall>::ReturnToken<
8157 '_,
8158 > {
8159 ()
8160 }
8161 }
8162 #[automatically_derived]
8163 impl alloy_sol_types::SolCall for completeQueuedWithdrawalsCall {
8164 type Parameters<'a> = (
8165 alloy::sol_types::sol_data::Array<IDelegationManagerTypes::Withdrawal>,
8166 alloy::sol_types::sol_data::Array<
8167 alloy::sol_types::sol_data::Array<
8168 alloy::sol_types::sol_data::Address,
8169 >,
8170 >,
8171 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Bool>,
8172 );
8173 type Token<'a> = <Self::Parameters<
8174 'a,
8175 > as alloy_sol_types::SolType>::Token<'a>;
8176 type Return = completeQueuedWithdrawalsReturn;
8177 type ReturnTuple<'a> = ();
8178 type ReturnToken<'a> = <Self::ReturnTuple<
8179 'a,
8180 > as alloy_sol_types::SolType>::Token<'a>;
8181 const SIGNATURE: &'static str = "completeQueuedWithdrawals((address,address,address,uint256,uint32,address[],uint256[])[],address[][],bool[])";
8182 const SELECTOR: [u8; 4] = [148u8, 53u8, 187u8, 67u8];
8183 #[inline]
8184 fn new<'a>(
8185 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8186 ) -> Self {
8187 tuple.into()
8188 }
8189 #[inline]
8190 fn tokenize(&self) -> Self::Token<'_> {
8191 (
8192 <alloy::sol_types::sol_data::Array<
8193 IDelegationManagerTypes::Withdrawal,
8194 > as alloy_sol_types::SolType>::tokenize(&self.withdrawals),
8195 <alloy::sol_types::sol_data::Array<
8196 alloy::sol_types::sol_data::Array<
8197 alloy::sol_types::sol_data::Address,
8198 >,
8199 > as alloy_sol_types::SolType>::tokenize(&self.tokens),
8200 <alloy::sol_types::sol_data::Array<
8201 alloy::sol_types::sol_data::Bool,
8202 > as alloy_sol_types::SolType>::tokenize(&self.receiveAsTokens),
8203 )
8204 }
8205 #[inline]
8206 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8207 completeQueuedWithdrawalsReturn::_tokenize(ret)
8208 }
8209 #[inline]
8210 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8211 <Self::ReturnTuple<
8212 '_,
8213 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8214 .map(Into::into)
8215 }
8216 #[inline]
8217 fn abi_decode_returns_validate(
8218 data: &[u8],
8219 ) -> alloy_sol_types::Result<Self::Return> {
8220 <Self::ReturnTuple<
8221 '_,
8222 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8223 .map(Into::into)
8224 }
8225 }
8226 };
8227 #[derive(serde::Serialize, serde::Deserialize)]
8228 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8229 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8234 #[derive(Clone)]
8235 pub struct convertToDepositSharesCall {
8236 #[allow(missing_docs)]
8237 pub staker: alloy::sol_types::private::Address,
8238 #[allow(missing_docs)]
8239 pub strategies: alloy::sol_types::private::Vec<
8240 alloy::sol_types::private::Address,
8241 >,
8242 #[allow(missing_docs)]
8243 pub withdrawableShares: alloy::sol_types::private::Vec<
8244 alloy::sol_types::private::primitives::aliases::U256,
8245 >,
8246 }
8247 #[derive(serde::Serialize, serde::Deserialize)]
8248 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8249 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8251 #[derive(Clone)]
8252 pub struct convertToDepositSharesReturn {
8253 #[allow(missing_docs)]
8254 pub _0: alloy::sol_types::private::Vec<
8255 alloy::sol_types::private::primitives::aliases::U256,
8256 >,
8257 }
8258 #[allow(
8259 non_camel_case_types,
8260 non_snake_case,
8261 clippy::pub_underscore_fields,
8262 clippy::style
8263 )]
8264 const _: () = {
8265 use alloy::sol_types as alloy_sol_types;
8266 {
8267 #[doc(hidden)]
8268 type UnderlyingSolTuple<'a> = (
8269 alloy::sol_types::sol_data::Address,
8270 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
8271 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
8272 );
8273 #[doc(hidden)]
8274 type UnderlyingRustTuple<'a> = (
8275 alloy::sol_types::private::Address,
8276 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
8277 alloy::sol_types::private::Vec<
8278 alloy::sol_types::private::primitives::aliases::U256,
8279 >,
8280 );
8281 #[cfg(test)]
8282 #[allow(dead_code, unreachable_patterns)]
8283 fn _type_assertion(
8284 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8285 ) {
8286 match _t {
8287 alloy_sol_types::private::AssertTypeEq::<
8288 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8289 >(_) => {}
8290 }
8291 }
8292 #[automatically_derived]
8293 #[doc(hidden)]
8294 impl ::core::convert::From<convertToDepositSharesCall>
8295 for UnderlyingRustTuple<'_> {
8296 fn from(value: convertToDepositSharesCall) -> Self {
8297 (value.staker, value.strategies, value.withdrawableShares)
8298 }
8299 }
8300 #[automatically_derived]
8301 #[doc(hidden)]
8302 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8303 for convertToDepositSharesCall {
8304 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8305 Self {
8306 staker: tuple.0,
8307 strategies: tuple.1,
8308 withdrawableShares: tuple.2,
8309 }
8310 }
8311 }
8312 }
8313 {
8314 #[doc(hidden)]
8315 type UnderlyingSolTuple<'a> = (
8316 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
8317 );
8318 #[doc(hidden)]
8319 type UnderlyingRustTuple<'a> = (
8320 alloy::sol_types::private::Vec<
8321 alloy::sol_types::private::primitives::aliases::U256,
8322 >,
8323 );
8324 #[cfg(test)]
8325 #[allow(dead_code, unreachable_patterns)]
8326 fn _type_assertion(
8327 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8328 ) {
8329 match _t {
8330 alloy_sol_types::private::AssertTypeEq::<
8331 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8332 >(_) => {}
8333 }
8334 }
8335 #[automatically_derived]
8336 #[doc(hidden)]
8337 impl ::core::convert::From<convertToDepositSharesReturn>
8338 for UnderlyingRustTuple<'_> {
8339 fn from(value: convertToDepositSharesReturn) -> Self {
8340 (value._0,)
8341 }
8342 }
8343 #[automatically_derived]
8344 #[doc(hidden)]
8345 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8346 for convertToDepositSharesReturn {
8347 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8348 Self { _0: tuple.0 }
8349 }
8350 }
8351 }
8352 #[automatically_derived]
8353 impl alloy_sol_types::SolCall for convertToDepositSharesCall {
8354 type Parameters<'a> = (
8355 alloy::sol_types::sol_data::Address,
8356 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
8357 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
8358 );
8359 type Token<'a> = <Self::Parameters<
8360 'a,
8361 > as alloy_sol_types::SolType>::Token<'a>;
8362 type Return = alloy::sol_types::private::Vec<
8363 alloy::sol_types::private::primitives::aliases::U256,
8364 >;
8365 type ReturnTuple<'a> = (
8366 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
8367 );
8368 type ReturnToken<'a> = <Self::ReturnTuple<
8369 'a,
8370 > as alloy_sol_types::SolType>::Token<'a>;
8371 const SIGNATURE: &'static str = "convertToDepositShares(address,address[],uint256[])";
8372 const SELECTOR: [u8; 4] = [37u8, 223u8, 146u8, 46u8];
8373 #[inline]
8374 fn new<'a>(
8375 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8376 ) -> Self {
8377 tuple.into()
8378 }
8379 #[inline]
8380 fn tokenize(&self) -> Self::Token<'_> {
8381 (
8382 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8383 &self.staker,
8384 ),
8385 <alloy::sol_types::sol_data::Array<
8386 alloy::sol_types::sol_data::Address,
8387 > as alloy_sol_types::SolType>::tokenize(&self.strategies),
8388 <alloy::sol_types::sol_data::Array<
8389 alloy::sol_types::sol_data::Uint<256>,
8390 > as alloy_sol_types::SolType>::tokenize(&self.withdrawableShares),
8391 )
8392 }
8393 #[inline]
8394 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8395 (
8396 <alloy::sol_types::sol_data::Array<
8397 alloy::sol_types::sol_data::Uint<256>,
8398 > as alloy_sol_types::SolType>::tokenize(ret),
8399 )
8400 }
8401 #[inline]
8402 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8403 <Self::ReturnTuple<
8404 '_,
8405 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8406 .map(|r| {
8407 let r: convertToDepositSharesReturn = r.into();
8408 r._0
8409 })
8410 }
8411 #[inline]
8412 fn abi_decode_returns_validate(
8413 data: &[u8],
8414 ) -> alloy_sol_types::Result<Self::Return> {
8415 <Self::ReturnTuple<
8416 '_,
8417 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8418 .map(|r| {
8419 let r: convertToDepositSharesReturn = r.into();
8420 r._0
8421 })
8422 }
8423 }
8424 };
8425 #[derive(serde::Serialize, serde::Deserialize)]
8426 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8427 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8432 #[derive(Clone)]
8433 pub struct cumulativeWithdrawalsQueuedCall {
8434 #[allow(missing_docs)]
8435 pub staker: alloy::sol_types::private::Address,
8436 }
8437 #[derive(serde::Serialize, serde::Deserialize)]
8438 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8439 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8441 #[derive(Clone)]
8442 pub struct cumulativeWithdrawalsQueuedReturn {
8443 #[allow(missing_docs)]
8444 pub totalQueued: alloy::sol_types::private::primitives::aliases::U256,
8445 }
8446 #[allow(
8447 non_camel_case_types,
8448 non_snake_case,
8449 clippy::pub_underscore_fields,
8450 clippy::style
8451 )]
8452 const _: () = {
8453 use alloy::sol_types as alloy_sol_types;
8454 {
8455 #[doc(hidden)]
8456 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8457 #[doc(hidden)]
8458 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8459 #[cfg(test)]
8460 #[allow(dead_code, unreachable_patterns)]
8461 fn _type_assertion(
8462 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8463 ) {
8464 match _t {
8465 alloy_sol_types::private::AssertTypeEq::<
8466 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8467 >(_) => {}
8468 }
8469 }
8470 #[automatically_derived]
8471 #[doc(hidden)]
8472 impl ::core::convert::From<cumulativeWithdrawalsQueuedCall>
8473 for UnderlyingRustTuple<'_> {
8474 fn from(value: cumulativeWithdrawalsQueuedCall) -> Self {
8475 (value.staker,)
8476 }
8477 }
8478 #[automatically_derived]
8479 #[doc(hidden)]
8480 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8481 for cumulativeWithdrawalsQueuedCall {
8482 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8483 Self { staker: tuple.0 }
8484 }
8485 }
8486 }
8487 {
8488 #[doc(hidden)]
8489 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8490 #[doc(hidden)]
8491 type UnderlyingRustTuple<'a> = (
8492 alloy::sol_types::private::primitives::aliases::U256,
8493 );
8494 #[cfg(test)]
8495 #[allow(dead_code, unreachable_patterns)]
8496 fn _type_assertion(
8497 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8498 ) {
8499 match _t {
8500 alloy_sol_types::private::AssertTypeEq::<
8501 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8502 >(_) => {}
8503 }
8504 }
8505 #[automatically_derived]
8506 #[doc(hidden)]
8507 impl ::core::convert::From<cumulativeWithdrawalsQueuedReturn>
8508 for UnderlyingRustTuple<'_> {
8509 fn from(value: cumulativeWithdrawalsQueuedReturn) -> Self {
8510 (value.totalQueued,)
8511 }
8512 }
8513 #[automatically_derived]
8514 #[doc(hidden)]
8515 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8516 for cumulativeWithdrawalsQueuedReturn {
8517 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8518 Self { totalQueued: tuple.0 }
8519 }
8520 }
8521 }
8522 #[automatically_derived]
8523 impl alloy_sol_types::SolCall for cumulativeWithdrawalsQueuedCall {
8524 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
8525 type Token<'a> = <Self::Parameters<
8526 'a,
8527 > as alloy_sol_types::SolType>::Token<'a>;
8528 type Return = alloy::sol_types::private::primitives::aliases::U256;
8529 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8530 type ReturnToken<'a> = <Self::ReturnTuple<
8531 'a,
8532 > as alloy_sol_types::SolType>::Token<'a>;
8533 const SIGNATURE: &'static str = "cumulativeWithdrawalsQueued(address)";
8534 const SELECTOR: [u8; 4] = [161u8, 120u8, 132u8, 132u8];
8535 #[inline]
8536 fn new<'a>(
8537 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8538 ) -> Self {
8539 tuple.into()
8540 }
8541 #[inline]
8542 fn tokenize(&self) -> Self::Token<'_> {
8543 (
8544 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8545 &self.staker,
8546 ),
8547 )
8548 }
8549 #[inline]
8550 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8551 (
8552 <alloy::sol_types::sol_data::Uint<
8553 256,
8554 > as alloy_sol_types::SolType>::tokenize(ret),
8555 )
8556 }
8557 #[inline]
8558 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8559 <Self::ReturnTuple<
8560 '_,
8561 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8562 .map(|r| {
8563 let r: cumulativeWithdrawalsQueuedReturn = r.into();
8564 r.totalQueued
8565 })
8566 }
8567 #[inline]
8568 fn abi_decode_returns_validate(
8569 data: &[u8],
8570 ) -> alloy_sol_types::Result<Self::Return> {
8571 <Self::ReturnTuple<
8572 '_,
8573 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8574 .map(|r| {
8575 let r: cumulativeWithdrawalsQueuedReturn = r.into();
8576 r.totalQueued
8577 })
8578 }
8579 }
8580 };
8581 #[derive(serde::Serialize, serde::Deserialize)]
8582 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8583 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8588 #[derive(Clone)]
8589 pub struct decreaseDelegatedSharesCall {
8590 #[allow(missing_docs)]
8591 pub staker: alloy::sol_types::private::Address,
8592 #[allow(missing_docs)]
8593 pub curDepositShares: alloy::sol_types::private::primitives::aliases::U256,
8594 #[allow(missing_docs)]
8595 pub beaconChainSlashingFactorDecrease: u64,
8596 }
8597 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8599 #[derive(Clone)]
8600 pub struct decreaseDelegatedSharesReturn {}
8601 #[allow(
8602 non_camel_case_types,
8603 non_snake_case,
8604 clippy::pub_underscore_fields,
8605 clippy::style
8606 )]
8607 const _: () = {
8608 use alloy::sol_types as alloy_sol_types;
8609 {
8610 #[doc(hidden)]
8611 type UnderlyingSolTuple<'a> = (
8612 alloy::sol_types::sol_data::Address,
8613 alloy::sol_types::sol_data::Uint<256>,
8614 alloy::sol_types::sol_data::Uint<64>,
8615 );
8616 #[doc(hidden)]
8617 type UnderlyingRustTuple<'a> = (
8618 alloy::sol_types::private::Address,
8619 alloy::sol_types::private::primitives::aliases::U256,
8620 u64,
8621 );
8622 #[cfg(test)]
8623 #[allow(dead_code, unreachable_patterns)]
8624 fn _type_assertion(
8625 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8626 ) {
8627 match _t {
8628 alloy_sol_types::private::AssertTypeEq::<
8629 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8630 >(_) => {}
8631 }
8632 }
8633 #[automatically_derived]
8634 #[doc(hidden)]
8635 impl ::core::convert::From<decreaseDelegatedSharesCall>
8636 for UnderlyingRustTuple<'_> {
8637 fn from(value: decreaseDelegatedSharesCall) -> Self {
8638 (
8639 value.staker,
8640 value.curDepositShares,
8641 value.beaconChainSlashingFactorDecrease,
8642 )
8643 }
8644 }
8645 #[automatically_derived]
8646 #[doc(hidden)]
8647 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8648 for decreaseDelegatedSharesCall {
8649 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8650 Self {
8651 staker: tuple.0,
8652 curDepositShares: tuple.1,
8653 beaconChainSlashingFactorDecrease: tuple.2,
8654 }
8655 }
8656 }
8657 }
8658 {
8659 #[doc(hidden)]
8660 type UnderlyingSolTuple<'a> = ();
8661 #[doc(hidden)]
8662 type UnderlyingRustTuple<'a> = ();
8663 #[cfg(test)]
8664 #[allow(dead_code, unreachable_patterns)]
8665 fn _type_assertion(
8666 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8667 ) {
8668 match _t {
8669 alloy_sol_types::private::AssertTypeEq::<
8670 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8671 >(_) => {}
8672 }
8673 }
8674 #[automatically_derived]
8675 #[doc(hidden)]
8676 impl ::core::convert::From<decreaseDelegatedSharesReturn>
8677 for UnderlyingRustTuple<'_> {
8678 fn from(value: decreaseDelegatedSharesReturn) -> Self {
8679 ()
8680 }
8681 }
8682 #[automatically_derived]
8683 #[doc(hidden)]
8684 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8685 for decreaseDelegatedSharesReturn {
8686 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8687 Self {}
8688 }
8689 }
8690 }
8691 impl decreaseDelegatedSharesReturn {
8692 fn _tokenize(
8693 &self,
8694 ) -> <decreaseDelegatedSharesCall as alloy_sol_types::SolCall>::ReturnToken<
8695 '_,
8696 > {
8697 ()
8698 }
8699 }
8700 #[automatically_derived]
8701 impl alloy_sol_types::SolCall for decreaseDelegatedSharesCall {
8702 type Parameters<'a> = (
8703 alloy::sol_types::sol_data::Address,
8704 alloy::sol_types::sol_data::Uint<256>,
8705 alloy::sol_types::sol_data::Uint<64>,
8706 );
8707 type Token<'a> = <Self::Parameters<
8708 'a,
8709 > as alloy_sol_types::SolType>::Token<'a>;
8710 type Return = decreaseDelegatedSharesReturn;
8711 type ReturnTuple<'a> = ();
8712 type ReturnToken<'a> = <Self::ReturnTuple<
8713 'a,
8714 > as alloy_sol_types::SolType>::Token<'a>;
8715 const SIGNATURE: &'static str = "decreaseDelegatedShares(address,uint256,uint64)";
8716 const SELECTOR: [u8; 4] = [96u8, 160u8, 209u8, 206u8];
8717 #[inline]
8718 fn new<'a>(
8719 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8720 ) -> Self {
8721 tuple.into()
8722 }
8723 #[inline]
8724 fn tokenize(&self) -> Self::Token<'_> {
8725 (
8726 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8727 &self.staker,
8728 ),
8729 <alloy::sol_types::sol_data::Uint<
8730 256,
8731 > as alloy_sol_types::SolType>::tokenize(&self.curDepositShares),
8732 <alloy::sol_types::sol_data::Uint<
8733 64,
8734 > as alloy_sol_types::SolType>::tokenize(
8735 &self.beaconChainSlashingFactorDecrease,
8736 ),
8737 )
8738 }
8739 #[inline]
8740 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8741 decreaseDelegatedSharesReturn::_tokenize(ret)
8742 }
8743 #[inline]
8744 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8745 <Self::ReturnTuple<
8746 '_,
8747 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8748 .map(Into::into)
8749 }
8750 #[inline]
8751 fn abi_decode_returns_validate(
8752 data: &[u8],
8753 ) -> alloy_sol_types::Result<Self::Return> {
8754 <Self::ReturnTuple<
8755 '_,
8756 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8757 .map(Into::into)
8758 }
8759 }
8760 };
8761 #[derive(serde::Serialize, serde::Deserialize)]
8762 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8763 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8768 #[derive(Clone)]
8769 pub struct delegateToCall {
8770 #[allow(missing_docs)]
8771 pub operator: alloy::sol_types::private::Address,
8772 #[allow(missing_docs)]
8773 pub approverSignatureAndExpiry: <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy::sol_types::SolType>::RustType,
8774 #[allow(missing_docs)]
8775 pub approverSalt: alloy::sol_types::private::FixedBytes<32>,
8776 }
8777 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8779 #[derive(Clone)]
8780 pub struct delegateToReturn {}
8781 #[allow(
8782 non_camel_case_types,
8783 non_snake_case,
8784 clippy::pub_underscore_fields,
8785 clippy::style
8786 )]
8787 const _: () = {
8788 use alloy::sol_types as alloy_sol_types;
8789 {
8790 #[doc(hidden)]
8791 type UnderlyingSolTuple<'a> = (
8792 alloy::sol_types::sol_data::Address,
8793 ISignatureUtilsMixinTypes::SignatureWithExpiry,
8794 alloy::sol_types::sol_data::FixedBytes<32>,
8795 );
8796 #[doc(hidden)]
8797 type UnderlyingRustTuple<'a> = (
8798 alloy::sol_types::private::Address,
8799 <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy::sol_types::SolType>::RustType,
8800 alloy::sol_types::private::FixedBytes<32>,
8801 );
8802 #[cfg(test)]
8803 #[allow(dead_code, unreachable_patterns)]
8804 fn _type_assertion(
8805 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8806 ) {
8807 match _t {
8808 alloy_sol_types::private::AssertTypeEq::<
8809 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8810 >(_) => {}
8811 }
8812 }
8813 #[automatically_derived]
8814 #[doc(hidden)]
8815 impl ::core::convert::From<delegateToCall> for UnderlyingRustTuple<'_> {
8816 fn from(value: delegateToCall) -> Self {
8817 (
8818 value.operator,
8819 value.approverSignatureAndExpiry,
8820 value.approverSalt,
8821 )
8822 }
8823 }
8824 #[automatically_derived]
8825 #[doc(hidden)]
8826 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegateToCall {
8827 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8828 Self {
8829 operator: tuple.0,
8830 approverSignatureAndExpiry: tuple.1,
8831 approverSalt: tuple.2,
8832 }
8833 }
8834 }
8835 }
8836 {
8837 #[doc(hidden)]
8838 type UnderlyingSolTuple<'a> = ();
8839 #[doc(hidden)]
8840 type UnderlyingRustTuple<'a> = ();
8841 #[cfg(test)]
8842 #[allow(dead_code, unreachable_patterns)]
8843 fn _type_assertion(
8844 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8845 ) {
8846 match _t {
8847 alloy_sol_types::private::AssertTypeEq::<
8848 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8849 >(_) => {}
8850 }
8851 }
8852 #[automatically_derived]
8853 #[doc(hidden)]
8854 impl ::core::convert::From<delegateToReturn> for UnderlyingRustTuple<'_> {
8855 fn from(value: delegateToReturn) -> Self {
8856 ()
8857 }
8858 }
8859 #[automatically_derived]
8860 #[doc(hidden)]
8861 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegateToReturn {
8862 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8863 Self {}
8864 }
8865 }
8866 }
8867 impl delegateToReturn {
8868 fn _tokenize(
8869 &self,
8870 ) -> <delegateToCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8871 ()
8872 }
8873 }
8874 #[automatically_derived]
8875 impl alloy_sol_types::SolCall for delegateToCall {
8876 type Parameters<'a> = (
8877 alloy::sol_types::sol_data::Address,
8878 ISignatureUtilsMixinTypes::SignatureWithExpiry,
8879 alloy::sol_types::sol_data::FixedBytes<32>,
8880 );
8881 type Token<'a> = <Self::Parameters<
8882 'a,
8883 > as alloy_sol_types::SolType>::Token<'a>;
8884 type Return = delegateToReturn;
8885 type ReturnTuple<'a> = ();
8886 type ReturnToken<'a> = <Self::ReturnTuple<
8887 'a,
8888 > as alloy_sol_types::SolType>::Token<'a>;
8889 const SIGNATURE: &'static str = "delegateTo(address,(bytes,uint256),bytes32)";
8890 const SELECTOR: [u8; 4] = [238u8, 169u8, 6u8, 75u8];
8891 #[inline]
8892 fn new<'a>(
8893 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8894 ) -> Self {
8895 tuple.into()
8896 }
8897 #[inline]
8898 fn tokenize(&self) -> Self::Token<'_> {
8899 (
8900 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8901 &self.operator,
8902 ),
8903 <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy_sol_types::SolType>::tokenize(
8904 &self.approverSignatureAndExpiry,
8905 ),
8906 <alloy::sol_types::sol_data::FixedBytes<
8907 32,
8908 > as alloy_sol_types::SolType>::tokenize(&self.approverSalt),
8909 )
8910 }
8911 #[inline]
8912 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8913 delegateToReturn::_tokenize(ret)
8914 }
8915 #[inline]
8916 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8917 <Self::ReturnTuple<
8918 '_,
8919 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8920 .map(Into::into)
8921 }
8922 #[inline]
8923 fn abi_decode_returns_validate(
8924 data: &[u8],
8925 ) -> alloy_sol_types::Result<Self::Return> {
8926 <Self::ReturnTuple<
8927 '_,
8928 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8929 .map(Into::into)
8930 }
8931 }
8932 };
8933 #[derive(serde::Serialize, serde::Deserialize)]
8934 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8935 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8940 #[derive(Clone)]
8941 pub struct delegatedToCall {
8942 #[allow(missing_docs)]
8943 pub staker: alloy::sol_types::private::Address,
8944 }
8945 #[derive(serde::Serialize, serde::Deserialize)]
8946 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8947 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8949 #[derive(Clone)]
8950 pub struct delegatedToReturn {
8951 #[allow(missing_docs)]
8952 pub operator: alloy::sol_types::private::Address,
8953 }
8954 #[allow(
8955 non_camel_case_types,
8956 non_snake_case,
8957 clippy::pub_underscore_fields,
8958 clippy::style
8959 )]
8960 const _: () = {
8961 use alloy::sol_types as alloy_sol_types;
8962 {
8963 #[doc(hidden)]
8964 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8965 #[doc(hidden)]
8966 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8967 #[cfg(test)]
8968 #[allow(dead_code, unreachable_patterns)]
8969 fn _type_assertion(
8970 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8971 ) {
8972 match _t {
8973 alloy_sol_types::private::AssertTypeEq::<
8974 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8975 >(_) => {}
8976 }
8977 }
8978 #[automatically_derived]
8979 #[doc(hidden)]
8980 impl ::core::convert::From<delegatedToCall> for UnderlyingRustTuple<'_> {
8981 fn from(value: delegatedToCall) -> Self {
8982 (value.staker,)
8983 }
8984 }
8985 #[automatically_derived]
8986 #[doc(hidden)]
8987 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegatedToCall {
8988 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8989 Self { staker: tuple.0 }
8990 }
8991 }
8992 }
8993 {
8994 #[doc(hidden)]
8995 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8996 #[doc(hidden)]
8997 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8998 #[cfg(test)]
8999 #[allow(dead_code, unreachable_patterns)]
9000 fn _type_assertion(
9001 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9002 ) {
9003 match _t {
9004 alloy_sol_types::private::AssertTypeEq::<
9005 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9006 >(_) => {}
9007 }
9008 }
9009 #[automatically_derived]
9010 #[doc(hidden)]
9011 impl ::core::convert::From<delegatedToReturn> for UnderlyingRustTuple<'_> {
9012 fn from(value: delegatedToReturn) -> Self {
9013 (value.operator,)
9014 }
9015 }
9016 #[automatically_derived]
9017 #[doc(hidden)]
9018 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegatedToReturn {
9019 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9020 Self { operator: tuple.0 }
9021 }
9022 }
9023 }
9024 #[automatically_derived]
9025 impl alloy_sol_types::SolCall for delegatedToCall {
9026 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
9027 type Token<'a> = <Self::Parameters<
9028 'a,
9029 > as alloy_sol_types::SolType>::Token<'a>;
9030 type Return = alloy::sol_types::private::Address;
9031 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
9032 type ReturnToken<'a> = <Self::ReturnTuple<
9033 'a,
9034 > as alloy_sol_types::SolType>::Token<'a>;
9035 const SIGNATURE: &'static str = "delegatedTo(address)";
9036 const SELECTOR: [u8; 4] = [101u8, 218u8, 18u8, 100u8];
9037 #[inline]
9038 fn new<'a>(
9039 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9040 ) -> Self {
9041 tuple.into()
9042 }
9043 #[inline]
9044 fn tokenize(&self) -> Self::Token<'_> {
9045 (
9046 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9047 &self.staker,
9048 ),
9049 )
9050 }
9051 #[inline]
9052 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9053 (
9054 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9055 ret,
9056 ),
9057 )
9058 }
9059 #[inline]
9060 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9061 <Self::ReturnTuple<
9062 '_,
9063 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9064 .map(|r| {
9065 let r: delegatedToReturn = r.into();
9066 r.operator
9067 })
9068 }
9069 #[inline]
9070 fn abi_decode_returns_validate(
9071 data: &[u8],
9072 ) -> alloy_sol_types::Result<Self::Return> {
9073 <Self::ReturnTuple<
9074 '_,
9075 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9076 .map(|r| {
9077 let r: delegatedToReturn = r.into();
9078 r.operator
9079 })
9080 }
9081 }
9082 };
9083 #[derive(serde::Serialize, serde::Deserialize)]
9084 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9085 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9090 #[derive(Clone)]
9091 pub struct delegationApproverCall {
9092 #[allow(missing_docs)]
9093 pub operator: alloy::sol_types::private::Address,
9094 }
9095 #[derive(serde::Serialize, serde::Deserialize)]
9096 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9097 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9099 #[derive(Clone)]
9100 pub struct delegationApproverReturn {
9101 #[allow(missing_docs)]
9102 pub _0: alloy::sol_types::private::Address,
9103 }
9104 #[allow(
9105 non_camel_case_types,
9106 non_snake_case,
9107 clippy::pub_underscore_fields,
9108 clippy::style
9109 )]
9110 const _: () = {
9111 use alloy::sol_types as alloy_sol_types;
9112 {
9113 #[doc(hidden)]
9114 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
9115 #[doc(hidden)]
9116 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
9117 #[cfg(test)]
9118 #[allow(dead_code, unreachable_patterns)]
9119 fn _type_assertion(
9120 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9121 ) {
9122 match _t {
9123 alloy_sol_types::private::AssertTypeEq::<
9124 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9125 >(_) => {}
9126 }
9127 }
9128 #[automatically_derived]
9129 #[doc(hidden)]
9130 impl ::core::convert::From<delegationApproverCall>
9131 for UnderlyingRustTuple<'_> {
9132 fn from(value: delegationApproverCall) -> Self {
9133 (value.operator,)
9134 }
9135 }
9136 #[automatically_derived]
9137 #[doc(hidden)]
9138 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9139 for delegationApproverCall {
9140 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9141 Self { operator: tuple.0 }
9142 }
9143 }
9144 }
9145 {
9146 #[doc(hidden)]
9147 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
9148 #[doc(hidden)]
9149 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
9150 #[cfg(test)]
9151 #[allow(dead_code, unreachable_patterns)]
9152 fn _type_assertion(
9153 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9154 ) {
9155 match _t {
9156 alloy_sol_types::private::AssertTypeEq::<
9157 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9158 >(_) => {}
9159 }
9160 }
9161 #[automatically_derived]
9162 #[doc(hidden)]
9163 impl ::core::convert::From<delegationApproverReturn>
9164 for UnderlyingRustTuple<'_> {
9165 fn from(value: delegationApproverReturn) -> Self {
9166 (value._0,)
9167 }
9168 }
9169 #[automatically_derived]
9170 #[doc(hidden)]
9171 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9172 for delegationApproverReturn {
9173 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9174 Self { _0: tuple.0 }
9175 }
9176 }
9177 }
9178 #[automatically_derived]
9179 impl alloy_sol_types::SolCall for delegationApproverCall {
9180 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
9181 type Token<'a> = <Self::Parameters<
9182 'a,
9183 > as alloy_sol_types::SolType>::Token<'a>;
9184 type Return = alloy::sol_types::private::Address;
9185 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
9186 type ReturnToken<'a> = <Self::ReturnTuple<
9187 'a,
9188 > as alloy_sol_types::SolType>::Token<'a>;
9189 const SIGNATURE: &'static str = "delegationApprover(address)";
9190 const SELECTOR: [u8; 4] = [60u8, 222u8, 181u8, 224u8];
9191 #[inline]
9192 fn new<'a>(
9193 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9194 ) -> Self {
9195 tuple.into()
9196 }
9197 #[inline]
9198 fn tokenize(&self) -> Self::Token<'_> {
9199 (
9200 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9201 &self.operator,
9202 ),
9203 )
9204 }
9205 #[inline]
9206 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9207 (
9208 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9209 ret,
9210 ),
9211 )
9212 }
9213 #[inline]
9214 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9215 <Self::ReturnTuple<
9216 '_,
9217 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9218 .map(|r| {
9219 let r: delegationApproverReturn = r.into();
9220 r._0
9221 })
9222 }
9223 #[inline]
9224 fn abi_decode_returns_validate(
9225 data: &[u8],
9226 ) -> alloy_sol_types::Result<Self::Return> {
9227 <Self::ReturnTuple<
9228 '_,
9229 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9230 .map(|r| {
9231 let r: delegationApproverReturn = r.into();
9232 r._0
9233 })
9234 }
9235 }
9236 };
9237 #[derive(serde::Serialize, serde::Deserialize)]
9238 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9239 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9244 #[derive(Clone)]
9245 pub struct delegationApproverSaltIsSpentCall {
9246 #[allow(missing_docs)]
9247 pub delegationApprover: alloy::sol_types::private::Address,
9248 #[allow(missing_docs)]
9249 pub salt: alloy::sol_types::private::FixedBytes<32>,
9250 }
9251 #[derive(serde::Serialize, serde::Deserialize)]
9252 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9253 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9255 #[derive(Clone)]
9256 pub struct delegationApproverSaltIsSpentReturn {
9257 #[allow(missing_docs)]
9258 pub spent: bool,
9259 }
9260 #[allow(
9261 non_camel_case_types,
9262 non_snake_case,
9263 clippy::pub_underscore_fields,
9264 clippy::style
9265 )]
9266 const _: () = {
9267 use alloy::sol_types as alloy_sol_types;
9268 {
9269 #[doc(hidden)]
9270 type UnderlyingSolTuple<'a> = (
9271 alloy::sol_types::sol_data::Address,
9272 alloy::sol_types::sol_data::FixedBytes<32>,
9273 );
9274 #[doc(hidden)]
9275 type UnderlyingRustTuple<'a> = (
9276 alloy::sol_types::private::Address,
9277 alloy::sol_types::private::FixedBytes<32>,
9278 );
9279 #[cfg(test)]
9280 #[allow(dead_code, unreachable_patterns)]
9281 fn _type_assertion(
9282 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9283 ) {
9284 match _t {
9285 alloy_sol_types::private::AssertTypeEq::<
9286 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9287 >(_) => {}
9288 }
9289 }
9290 #[automatically_derived]
9291 #[doc(hidden)]
9292 impl ::core::convert::From<delegationApproverSaltIsSpentCall>
9293 for UnderlyingRustTuple<'_> {
9294 fn from(value: delegationApproverSaltIsSpentCall) -> Self {
9295 (value.delegationApprover, value.salt)
9296 }
9297 }
9298 #[automatically_derived]
9299 #[doc(hidden)]
9300 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9301 for delegationApproverSaltIsSpentCall {
9302 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9303 Self {
9304 delegationApprover: tuple.0,
9305 salt: tuple.1,
9306 }
9307 }
9308 }
9309 }
9310 {
9311 #[doc(hidden)]
9312 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
9313 #[doc(hidden)]
9314 type UnderlyingRustTuple<'a> = (bool,);
9315 #[cfg(test)]
9316 #[allow(dead_code, unreachable_patterns)]
9317 fn _type_assertion(
9318 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9319 ) {
9320 match _t {
9321 alloy_sol_types::private::AssertTypeEq::<
9322 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9323 >(_) => {}
9324 }
9325 }
9326 #[automatically_derived]
9327 #[doc(hidden)]
9328 impl ::core::convert::From<delegationApproverSaltIsSpentReturn>
9329 for UnderlyingRustTuple<'_> {
9330 fn from(value: delegationApproverSaltIsSpentReturn) -> Self {
9331 (value.spent,)
9332 }
9333 }
9334 #[automatically_derived]
9335 #[doc(hidden)]
9336 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9337 for delegationApproverSaltIsSpentReturn {
9338 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9339 Self { spent: tuple.0 }
9340 }
9341 }
9342 }
9343 #[automatically_derived]
9344 impl alloy_sol_types::SolCall for delegationApproverSaltIsSpentCall {
9345 type Parameters<'a> = (
9346 alloy::sol_types::sol_data::Address,
9347 alloy::sol_types::sol_data::FixedBytes<32>,
9348 );
9349 type Token<'a> = <Self::Parameters<
9350 'a,
9351 > as alloy_sol_types::SolType>::Token<'a>;
9352 type Return = bool;
9353 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
9354 type ReturnToken<'a> = <Self::ReturnTuple<
9355 'a,
9356 > as alloy_sol_types::SolType>::Token<'a>;
9357 const SIGNATURE: &'static str = "delegationApproverSaltIsSpent(address,bytes32)";
9358 const SELECTOR: [u8; 4] = [187u8, 69u8, 254u8, 242u8];
9359 #[inline]
9360 fn new<'a>(
9361 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9362 ) -> Self {
9363 tuple.into()
9364 }
9365 #[inline]
9366 fn tokenize(&self) -> Self::Token<'_> {
9367 (
9368 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9369 &self.delegationApprover,
9370 ),
9371 <alloy::sol_types::sol_data::FixedBytes<
9372 32,
9373 > as alloy_sol_types::SolType>::tokenize(&self.salt),
9374 )
9375 }
9376 #[inline]
9377 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9378 (
9379 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
9380 ret,
9381 ),
9382 )
9383 }
9384 #[inline]
9385 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9386 <Self::ReturnTuple<
9387 '_,
9388 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9389 .map(|r| {
9390 let r: delegationApproverSaltIsSpentReturn = r.into();
9391 r.spent
9392 })
9393 }
9394 #[inline]
9395 fn abi_decode_returns_validate(
9396 data: &[u8],
9397 ) -> alloy_sol_types::Result<Self::Return> {
9398 <Self::ReturnTuple<
9399 '_,
9400 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9401 .map(|r| {
9402 let r: delegationApproverSaltIsSpentReturn = r.into();
9403 r.spent
9404 })
9405 }
9406 }
9407 };
9408 #[derive(serde::Serialize, serde::Deserialize)]
9409 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9410 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9415 #[derive(Clone)]
9416 pub struct depositScalingFactorCall {
9417 #[allow(missing_docs)]
9418 pub staker: alloy::sol_types::private::Address,
9419 #[allow(missing_docs)]
9420 pub strategy: alloy::sol_types::private::Address,
9421 }
9422 #[derive(serde::Serialize, serde::Deserialize)]
9423 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9424 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9426 #[derive(Clone)]
9427 pub struct depositScalingFactorReturn {
9428 #[allow(missing_docs)]
9429 pub _0: alloy::sol_types::private::primitives::aliases::U256,
9430 }
9431 #[allow(
9432 non_camel_case_types,
9433 non_snake_case,
9434 clippy::pub_underscore_fields,
9435 clippy::style
9436 )]
9437 const _: () = {
9438 use alloy::sol_types as alloy_sol_types;
9439 {
9440 #[doc(hidden)]
9441 type UnderlyingSolTuple<'a> = (
9442 alloy::sol_types::sol_data::Address,
9443 alloy::sol_types::sol_data::Address,
9444 );
9445 #[doc(hidden)]
9446 type UnderlyingRustTuple<'a> = (
9447 alloy::sol_types::private::Address,
9448 alloy::sol_types::private::Address,
9449 );
9450 #[cfg(test)]
9451 #[allow(dead_code, unreachable_patterns)]
9452 fn _type_assertion(
9453 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9454 ) {
9455 match _t {
9456 alloy_sol_types::private::AssertTypeEq::<
9457 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9458 >(_) => {}
9459 }
9460 }
9461 #[automatically_derived]
9462 #[doc(hidden)]
9463 impl ::core::convert::From<depositScalingFactorCall>
9464 for UnderlyingRustTuple<'_> {
9465 fn from(value: depositScalingFactorCall) -> Self {
9466 (value.staker, value.strategy)
9467 }
9468 }
9469 #[automatically_derived]
9470 #[doc(hidden)]
9471 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9472 for depositScalingFactorCall {
9473 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9474 Self {
9475 staker: tuple.0,
9476 strategy: tuple.1,
9477 }
9478 }
9479 }
9480 }
9481 {
9482 #[doc(hidden)]
9483 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9484 #[doc(hidden)]
9485 type UnderlyingRustTuple<'a> = (
9486 alloy::sol_types::private::primitives::aliases::U256,
9487 );
9488 #[cfg(test)]
9489 #[allow(dead_code, unreachable_patterns)]
9490 fn _type_assertion(
9491 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9492 ) {
9493 match _t {
9494 alloy_sol_types::private::AssertTypeEq::<
9495 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9496 >(_) => {}
9497 }
9498 }
9499 #[automatically_derived]
9500 #[doc(hidden)]
9501 impl ::core::convert::From<depositScalingFactorReturn>
9502 for UnderlyingRustTuple<'_> {
9503 fn from(value: depositScalingFactorReturn) -> Self {
9504 (value._0,)
9505 }
9506 }
9507 #[automatically_derived]
9508 #[doc(hidden)]
9509 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9510 for depositScalingFactorReturn {
9511 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9512 Self { _0: tuple.0 }
9513 }
9514 }
9515 }
9516 #[automatically_derived]
9517 impl alloy_sol_types::SolCall for depositScalingFactorCall {
9518 type Parameters<'a> = (
9519 alloy::sol_types::sol_data::Address,
9520 alloy::sol_types::sol_data::Address,
9521 );
9522 type Token<'a> = <Self::Parameters<
9523 'a,
9524 > as alloy_sol_types::SolType>::Token<'a>;
9525 type Return = alloy::sol_types::private::primitives::aliases::U256;
9526 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9527 type ReturnToken<'a> = <Self::ReturnTuple<
9528 'a,
9529 > as alloy_sol_types::SolType>::Token<'a>;
9530 const SIGNATURE: &'static str = "depositScalingFactor(address,address)";
9531 const SELECTOR: [u8; 4] = [191u8, 174u8, 63u8, 210u8];
9532 #[inline]
9533 fn new<'a>(
9534 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9535 ) -> Self {
9536 tuple.into()
9537 }
9538 #[inline]
9539 fn tokenize(&self) -> Self::Token<'_> {
9540 (
9541 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9542 &self.staker,
9543 ),
9544 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9545 &self.strategy,
9546 ),
9547 )
9548 }
9549 #[inline]
9550 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9551 (
9552 <alloy::sol_types::sol_data::Uint<
9553 256,
9554 > as alloy_sol_types::SolType>::tokenize(ret),
9555 )
9556 }
9557 #[inline]
9558 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9559 <Self::ReturnTuple<
9560 '_,
9561 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9562 .map(|r| {
9563 let r: depositScalingFactorReturn = r.into();
9564 r._0
9565 })
9566 }
9567 #[inline]
9568 fn abi_decode_returns_validate(
9569 data: &[u8],
9570 ) -> alloy_sol_types::Result<Self::Return> {
9571 <Self::ReturnTuple<
9572 '_,
9573 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9574 .map(|r| {
9575 let r: depositScalingFactorReturn = r.into();
9576 r._0
9577 })
9578 }
9579 }
9580 };
9581 #[derive(serde::Serialize, serde::Deserialize)]
9582 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9583 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9588 #[derive(Clone)]
9589 pub struct domainSeparatorCall;
9590 #[derive(serde::Serialize, serde::Deserialize)]
9591 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9592 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9594 #[derive(Clone)]
9595 pub struct domainSeparatorReturn {
9596 #[allow(missing_docs)]
9597 pub _0: alloy::sol_types::private::FixedBytes<32>,
9598 }
9599 #[allow(
9600 non_camel_case_types,
9601 non_snake_case,
9602 clippy::pub_underscore_fields,
9603 clippy::style
9604 )]
9605 const _: () = {
9606 use alloy::sol_types as alloy_sol_types;
9607 {
9608 #[doc(hidden)]
9609 type UnderlyingSolTuple<'a> = ();
9610 #[doc(hidden)]
9611 type UnderlyingRustTuple<'a> = ();
9612 #[cfg(test)]
9613 #[allow(dead_code, unreachable_patterns)]
9614 fn _type_assertion(
9615 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9616 ) {
9617 match _t {
9618 alloy_sol_types::private::AssertTypeEq::<
9619 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9620 >(_) => {}
9621 }
9622 }
9623 #[automatically_derived]
9624 #[doc(hidden)]
9625 impl ::core::convert::From<domainSeparatorCall> for UnderlyingRustTuple<'_> {
9626 fn from(value: domainSeparatorCall) -> Self {
9627 ()
9628 }
9629 }
9630 #[automatically_derived]
9631 #[doc(hidden)]
9632 impl ::core::convert::From<UnderlyingRustTuple<'_>> for domainSeparatorCall {
9633 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9634 Self
9635 }
9636 }
9637 }
9638 {
9639 #[doc(hidden)]
9640 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
9641 #[doc(hidden)]
9642 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
9643 #[cfg(test)]
9644 #[allow(dead_code, unreachable_patterns)]
9645 fn _type_assertion(
9646 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9647 ) {
9648 match _t {
9649 alloy_sol_types::private::AssertTypeEq::<
9650 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9651 >(_) => {}
9652 }
9653 }
9654 #[automatically_derived]
9655 #[doc(hidden)]
9656 impl ::core::convert::From<domainSeparatorReturn>
9657 for UnderlyingRustTuple<'_> {
9658 fn from(value: domainSeparatorReturn) -> Self {
9659 (value._0,)
9660 }
9661 }
9662 #[automatically_derived]
9663 #[doc(hidden)]
9664 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9665 for domainSeparatorReturn {
9666 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9667 Self { _0: tuple.0 }
9668 }
9669 }
9670 }
9671 #[automatically_derived]
9672 impl alloy_sol_types::SolCall for domainSeparatorCall {
9673 type Parameters<'a> = ();
9674 type Token<'a> = <Self::Parameters<
9675 'a,
9676 > as alloy_sol_types::SolType>::Token<'a>;
9677 type Return = alloy::sol_types::private::FixedBytes<32>;
9678 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
9679 type ReturnToken<'a> = <Self::ReturnTuple<
9680 'a,
9681 > as alloy_sol_types::SolType>::Token<'a>;
9682 const SIGNATURE: &'static str = "domainSeparator()";
9683 const SELECTOR: [u8; 4] = [246u8, 152u8, 218u8, 37u8];
9684 #[inline]
9685 fn new<'a>(
9686 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9687 ) -> Self {
9688 tuple.into()
9689 }
9690 #[inline]
9691 fn tokenize(&self) -> Self::Token<'_> {
9692 ()
9693 }
9694 #[inline]
9695 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9696 (
9697 <alloy::sol_types::sol_data::FixedBytes<
9698 32,
9699 > as alloy_sol_types::SolType>::tokenize(ret),
9700 )
9701 }
9702 #[inline]
9703 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9704 <Self::ReturnTuple<
9705 '_,
9706 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9707 .map(|r| {
9708 let r: domainSeparatorReturn = r.into();
9709 r._0
9710 })
9711 }
9712 #[inline]
9713 fn abi_decode_returns_validate(
9714 data: &[u8],
9715 ) -> alloy_sol_types::Result<Self::Return> {
9716 <Self::ReturnTuple<
9717 '_,
9718 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9719 .map(|r| {
9720 let r: domainSeparatorReturn = r.into();
9721 r._0
9722 })
9723 }
9724 }
9725 };
9726 #[derive(serde::Serialize, serde::Deserialize)]
9727 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9728 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9733 #[derive(Clone)]
9734 pub struct eigenPodManagerCall;
9735 #[derive(serde::Serialize, serde::Deserialize)]
9736 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9737 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9739 #[derive(Clone)]
9740 pub struct eigenPodManagerReturn {
9741 #[allow(missing_docs)]
9742 pub _0: alloy::sol_types::private::Address,
9743 }
9744 #[allow(
9745 non_camel_case_types,
9746 non_snake_case,
9747 clippy::pub_underscore_fields,
9748 clippy::style
9749 )]
9750 const _: () = {
9751 use alloy::sol_types as alloy_sol_types;
9752 {
9753 #[doc(hidden)]
9754 type UnderlyingSolTuple<'a> = ();
9755 #[doc(hidden)]
9756 type UnderlyingRustTuple<'a> = ();
9757 #[cfg(test)]
9758 #[allow(dead_code, unreachable_patterns)]
9759 fn _type_assertion(
9760 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9761 ) {
9762 match _t {
9763 alloy_sol_types::private::AssertTypeEq::<
9764 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9765 >(_) => {}
9766 }
9767 }
9768 #[automatically_derived]
9769 #[doc(hidden)]
9770 impl ::core::convert::From<eigenPodManagerCall> for UnderlyingRustTuple<'_> {
9771 fn from(value: eigenPodManagerCall) -> Self {
9772 ()
9773 }
9774 }
9775 #[automatically_derived]
9776 #[doc(hidden)]
9777 impl ::core::convert::From<UnderlyingRustTuple<'_>> for eigenPodManagerCall {
9778 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9779 Self
9780 }
9781 }
9782 }
9783 {
9784 #[doc(hidden)]
9785 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
9786 #[doc(hidden)]
9787 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
9788 #[cfg(test)]
9789 #[allow(dead_code, unreachable_patterns)]
9790 fn _type_assertion(
9791 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9792 ) {
9793 match _t {
9794 alloy_sol_types::private::AssertTypeEq::<
9795 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9796 >(_) => {}
9797 }
9798 }
9799 #[automatically_derived]
9800 #[doc(hidden)]
9801 impl ::core::convert::From<eigenPodManagerReturn>
9802 for UnderlyingRustTuple<'_> {
9803 fn from(value: eigenPodManagerReturn) -> Self {
9804 (value._0,)
9805 }
9806 }
9807 #[automatically_derived]
9808 #[doc(hidden)]
9809 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9810 for eigenPodManagerReturn {
9811 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9812 Self { _0: tuple.0 }
9813 }
9814 }
9815 }
9816 #[automatically_derived]
9817 impl alloy_sol_types::SolCall for eigenPodManagerCall {
9818 type Parameters<'a> = ();
9819 type Token<'a> = <Self::Parameters<
9820 'a,
9821 > as alloy_sol_types::SolType>::Token<'a>;
9822 type Return = alloy::sol_types::private::Address;
9823 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
9824 type ReturnToken<'a> = <Self::ReturnTuple<
9825 'a,
9826 > as alloy_sol_types::SolType>::Token<'a>;
9827 const SIGNATURE: &'static str = "eigenPodManager()";
9828 const SELECTOR: [u8; 4] = [70u8, 101u8, 188u8, 218u8];
9829 #[inline]
9830 fn new<'a>(
9831 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9832 ) -> Self {
9833 tuple.into()
9834 }
9835 #[inline]
9836 fn tokenize(&self) -> Self::Token<'_> {
9837 ()
9838 }
9839 #[inline]
9840 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9841 (
9842 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9843 ret,
9844 ),
9845 )
9846 }
9847 #[inline]
9848 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9849 <Self::ReturnTuple<
9850 '_,
9851 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9852 .map(|r| {
9853 let r: eigenPodManagerReturn = r.into();
9854 r._0
9855 })
9856 }
9857 #[inline]
9858 fn abi_decode_returns_validate(
9859 data: &[u8],
9860 ) -> alloy_sol_types::Result<Self::Return> {
9861 <Self::ReturnTuple<
9862 '_,
9863 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9864 .map(|r| {
9865 let r: eigenPodManagerReturn = r.into();
9866 r._0
9867 })
9868 }
9869 }
9870 };
9871 #[derive(serde::Serialize, serde::Deserialize)]
9872 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9873 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9878 #[derive(Clone)]
9879 pub struct getDepositedSharesCall {
9880 #[allow(missing_docs)]
9881 pub staker: alloy::sol_types::private::Address,
9882 }
9883 #[derive(serde::Serialize, serde::Deserialize)]
9884 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9885 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9887 #[derive(Clone)]
9888 pub struct getDepositedSharesReturn {
9889 #[allow(missing_docs)]
9890 pub _0: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
9891 #[allow(missing_docs)]
9892 pub _1: alloy::sol_types::private::Vec<
9893 alloy::sol_types::private::primitives::aliases::U256,
9894 >,
9895 }
9896 #[allow(
9897 non_camel_case_types,
9898 non_snake_case,
9899 clippy::pub_underscore_fields,
9900 clippy::style
9901 )]
9902 const _: () = {
9903 use alloy::sol_types as alloy_sol_types;
9904 {
9905 #[doc(hidden)]
9906 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
9907 #[doc(hidden)]
9908 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
9909 #[cfg(test)]
9910 #[allow(dead_code, unreachable_patterns)]
9911 fn _type_assertion(
9912 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9913 ) {
9914 match _t {
9915 alloy_sol_types::private::AssertTypeEq::<
9916 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9917 >(_) => {}
9918 }
9919 }
9920 #[automatically_derived]
9921 #[doc(hidden)]
9922 impl ::core::convert::From<getDepositedSharesCall>
9923 for UnderlyingRustTuple<'_> {
9924 fn from(value: getDepositedSharesCall) -> Self {
9925 (value.staker,)
9926 }
9927 }
9928 #[automatically_derived]
9929 #[doc(hidden)]
9930 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9931 for getDepositedSharesCall {
9932 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9933 Self { staker: tuple.0 }
9934 }
9935 }
9936 }
9937 {
9938 #[doc(hidden)]
9939 type UnderlyingSolTuple<'a> = (
9940 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
9941 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
9942 );
9943 #[doc(hidden)]
9944 type UnderlyingRustTuple<'a> = (
9945 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
9946 alloy::sol_types::private::Vec<
9947 alloy::sol_types::private::primitives::aliases::U256,
9948 >,
9949 );
9950 #[cfg(test)]
9951 #[allow(dead_code, unreachable_patterns)]
9952 fn _type_assertion(
9953 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9954 ) {
9955 match _t {
9956 alloy_sol_types::private::AssertTypeEq::<
9957 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9958 >(_) => {}
9959 }
9960 }
9961 #[automatically_derived]
9962 #[doc(hidden)]
9963 impl ::core::convert::From<getDepositedSharesReturn>
9964 for UnderlyingRustTuple<'_> {
9965 fn from(value: getDepositedSharesReturn) -> Self {
9966 (value._0, value._1)
9967 }
9968 }
9969 #[automatically_derived]
9970 #[doc(hidden)]
9971 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9972 for getDepositedSharesReturn {
9973 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9974 Self { _0: tuple.0, _1: tuple.1 }
9975 }
9976 }
9977 }
9978 impl getDepositedSharesReturn {
9979 fn _tokenize(
9980 &self,
9981 ) -> <getDepositedSharesCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9982 (
9983 <alloy::sol_types::sol_data::Array<
9984 alloy::sol_types::sol_data::Address,
9985 > as alloy_sol_types::SolType>::tokenize(&self._0),
9986 <alloy::sol_types::sol_data::Array<
9987 alloy::sol_types::sol_data::Uint<256>,
9988 > as alloy_sol_types::SolType>::tokenize(&self._1),
9989 )
9990 }
9991 }
9992 #[automatically_derived]
9993 impl alloy_sol_types::SolCall for getDepositedSharesCall {
9994 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
9995 type Token<'a> = <Self::Parameters<
9996 'a,
9997 > as alloy_sol_types::SolType>::Token<'a>;
9998 type Return = getDepositedSharesReturn;
9999 type ReturnTuple<'a> = (
10000 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10001 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
10002 );
10003 type ReturnToken<'a> = <Self::ReturnTuple<
10004 'a,
10005 > as alloy_sol_types::SolType>::Token<'a>;
10006 const SIGNATURE: &'static str = "getDepositedShares(address)";
10007 const SELECTOR: [u8; 4] = [102u8, 213u8, 186u8, 147u8];
10008 #[inline]
10009 fn new<'a>(
10010 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10011 ) -> Self {
10012 tuple.into()
10013 }
10014 #[inline]
10015 fn tokenize(&self) -> Self::Token<'_> {
10016 (
10017 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
10018 &self.staker,
10019 ),
10020 )
10021 }
10022 #[inline]
10023 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10024 getDepositedSharesReturn::_tokenize(ret)
10025 }
10026 #[inline]
10027 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10028 <Self::ReturnTuple<
10029 '_,
10030 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10031 .map(Into::into)
10032 }
10033 #[inline]
10034 fn abi_decode_returns_validate(
10035 data: &[u8],
10036 ) -> alloy_sol_types::Result<Self::Return> {
10037 <Self::ReturnTuple<
10038 '_,
10039 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10040 .map(Into::into)
10041 }
10042 }
10043 };
10044 #[derive(serde::Serialize, serde::Deserialize)]
10045 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10046 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10051 #[derive(Clone)]
10052 pub struct getOperatorSharesCall {
10053 #[allow(missing_docs)]
10054 pub operator: alloy::sol_types::private::Address,
10055 #[allow(missing_docs)]
10056 pub strategies: alloy::sol_types::private::Vec<
10057 alloy::sol_types::private::Address,
10058 >,
10059 }
10060 #[derive(serde::Serialize, serde::Deserialize)]
10061 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10062 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10064 #[derive(Clone)]
10065 pub struct getOperatorSharesReturn {
10066 #[allow(missing_docs)]
10067 pub _0: alloy::sol_types::private::Vec<
10068 alloy::sol_types::private::primitives::aliases::U256,
10069 >,
10070 }
10071 #[allow(
10072 non_camel_case_types,
10073 non_snake_case,
10074 clippy::pub_underscore_fields,
10075 clippy::style
10076 )]
10077 const _: () = {
10078 use alloy::sol_types as alloy_sol_types;
10079 {
10080 #[doc(hidden)]
10081 type UnderlyingSolTuple<'a> = (
10082 alloy::sol_types::sol_data::Address,
10083 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10084 );
10085 #[doc(hidden)]
10086 type UnderlyingRustTuple<'a> = (
10087 alloy::sol_types::private::Address,
10088 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
10089 );
10090 #[cfg(test)]
10091 #[allow(dead_code, unreachable_patterns)]
10092 fn _type_assertion(
10093 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10094 ) {
10095 match _t {
10096 alloy_sol_types::private::AssertTypeEq::<
10097 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10098 >(_) => {}
10099 }
10100 }
10101 #[automatically_derived]
10102 #[doc(hidden)]
10103 impl ::core::convert::From<getOperatorSharesCall>
10104 for UnderlyingRustTuple<'_> {
10105 fn from(value: getOperatorSharesCall) -> Self {
10106 (value.operator, value.strategies)
10107 }
10108 }
10109 #[automatically_derived]
10110 #[doc(hidden)]
10111 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10112 for getOperatorSharesCall {
10113 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10114 Self {
10115 operator: tuple.0,
10116 strategies: tuple.1,
10117 }
10118 }
10119 }
10120 }
10121 {
10122 #[doc(hidden)]
10123 type UnderlyingSolTuple<'a> = (
10124 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
10125 );
10126 #[doc(hidden)]
10127 type UnderlyingRustTuple<'a> = (
10128 alloy::sol_types::private::Vec<
10129 alloy::sol_types::private::primitives::aliases::U256,
10130 >,
10131 );
10132 #[cfg(test)]
10133 #[allow(dead_code, unreachable_patterns)]
10134 fn _type_assertion(
10135 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10136 ) {
10137 match _t {
10138 alloy_sol_types::private::AssertTypeEq::<
10139 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10140 >(_) => {}
10141 }
10142 }
10143 #[automatically_derived]
10144 #[doc(hidden)]
10145 impl ::core::convert::From<getOperatorSharesReturn>
10146 for UnderlyingRustTuple<'_> {
10147 fn from(value: getOperatorSharesReturn) -> Self {
10148 (value._0,)
10149 }
10150 }
10151 #[automatically_derived]
10152 #[doc(hidden)]
10153 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10154 for getOperatorSharesReturn {
10155 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10156 Self { _0: tuple.0 }
10157 }
10158 }
10159 }
10160 #[automatically_derived]
10161 impl alloy_sol_types::SolCall for getOperatorSharesCall {
10162 type Parameters<'a> = (
10163 alloy::sol_types::sol_data::Address,
10164 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10165 );
10166 type Token<'a> = <Self::Parameters<
10167 'a,
10168 > as alloy_sol_types::SolType>::Token<'a>;
10169 type Return = alloy::sol_types::private::Vec<
10170 alloy::sol_types::private::primitives::aliases::U256,
10171 >;
10172 type ReturnTuple<'a> = (
10173 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
10174 );
10175 type ReturnToken<'a> = <Self::ReturnTuple<
10176 'a,
10177 > as alloy_sol_types::SolType>::Token<'a>;
10178 const SIGNATURE: &'static str = "getOperatorShares(address,address[])";
10179 const SELECTOR: [u8; 4] = [144u8, 4u8, 19u8, 71u8];
10180 #[inline]
10181 fn new<'a>(
10182 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10183 ) -> Self {
10184 tuple.into()
10185 }
10186 #[inline]
10187 fn tokenize(&self) -> Self::Token<'_> {
10188 (
10189 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
10190 &self.operator,
10191 ),
10192 <alloy::sol_types::sol_data::Array<
10193 alloy::sol_types::sol_data::Address,
10194 > as alloy_sol_types::SolType>::tokenize(&self.strategies),
10195 )
10196 }
10197 #[inline]
10198 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10199 (
10200 <alloy::sol_types::sol_data::Array<
10201 alloy::sol_types::sol_data::Uint<256>,
10202 > as alloy_sol_types::SolType>::tokenize(ret),
10203 )
10204 }
10205 #[inline]
10206 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10207 <Self::ReturnTuple<
10208 '_,
10209 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10210 .map(|r| {
10211 let r: getOperatorSharesReturn = r.into();
10212 r._0
10213 })
10214 }
10215 #[inline]
10216 fn abi_decode_returns_validate(
10217 data: &[u8],
10218 ) -> alloy_sol_types::Result<Self::Return> {
10219 <Self::ReturnTuple<
10220 '_,
10221 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10222 .map(|r| {
10223 let r: getOperatorSharesReturn = r.into();
10224 r._0
10225 })
10226 }
10227 }
10228 };
10229 #[derive(serde::Serialize, serde::Deserialize)]
10230 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10231 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10236 #[derive(Clone)]
10237 pub struct getOperatorsSharesCall {
10238 #[allow(missing_docs)]
10239 pub operators: alloy::sol_types::private::Vec<
10240 alloy::sol_types::private::Address,
10241 >,
10242 #[allow(missing_docs)]
10243 pub strategies: alloy::sol_types::private::Vec<
10244 alloy::sol_types::private::Address,
10245 >,
10246 }
10247 #[derive(serde::Serialize, serde::Deserialize)]
10248 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10249 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10251 #[derive(Clone)]
10252 pub struct getOperatorsSharesReturn {
10253 #[allow(missing_docs)]
10254 pub _0: alloy::sol_types::private::Vec<
10255 alloy::sol_types::private::Vec<
10256 alloy::sol_types::private::primitives::aliases::U256,
10257 >,
10258 >,
10259 }
10260 #[allow(
10261 non_camel_case_types,
10262 non_snake_case,
10263 clippy::pub_underscore_fields,
10264 clippy::style
10265 )]
10266 const _: () = {
10267 use alloy::sol_types as alloy_sol_types;
10268 {
10269 #[doc(hidden)]
10270 type UnderlyingSolTuple<'a> = (
10271 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10272 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10273 );
10274 #[doc(hidden)]
10275 type UnderlyingRustTuple<'a> = (
10276 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
10277 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
10278 );
10279 #[cfg(test)]
10280 #[allow(dead_code, unreachable_patterns)]
10281 fn _type_assertion(
10282 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10283 ) {
10284 match _t {
10285 alloy_sol_types::private::AssertTypeEq::<
10286 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10287 >(_) => {}
10288 }
10289 }
10290 #[automatically_derived]
10291 #[doc(hidden)]
10292 impl ::core::convert::From<getOperatorsSharesCall>
10293 for UnderlyingRustTuple<'_> {
10294 fn from(value: getOperatorsSharesCall) -> Self {
10295 (value.operators, value.strategies)
10296 }
10297 }
10298 #[automatically_derived]
10299 #[doc(hidden)]
10300 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10301 for getOperatorsSharesCall {
10302 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10303 Self {
10304 operators: tuple.0,
10305 strategies: tuple.1,
10306 }
10307 }
10308 }
10309 }
10310 {
10311 #[doc(hidden)]
10312 type UnderlyingSolTuple<'a> = (
10313 alloy::sol_types::sol_data::Array<
10314 alloy::sol_types::sol_data::Array<
10315 alloy::sol_types::sol_data::Uint<256>,
10316 >,
10317 >,
10318 );
10319 #[doc(hidden)]
10320 type UnderlyingRustTuple<'a> = (
10321 alloy::sol_types::private::Vec<
10322 alloy::sol_types::private::Vec<
10323 alloy::sol_types::private::primitives::aliases::U256,
10324 >,
10325 >,
10326 );
10327 #[cfg(test)]
10328 #[allow(dead_code, unreachable_patterns)]
10329 fn _type_assertion(
10330 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10331 ) {
10332 match _t {
10333 alloy_sol_types::private::AssertTypeEq::<
10334 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10335 >(_) => {}
10336 }
10337 }
10338 #[automatically_derived]
10339 #[doc(hidden)]
10340 impl ::core::convert::From<getOperatorsSharesReturn>
10341 for UnderlyingRustTuple<'_> {
10342 fn from(value: getOperatorsSharesReturn) -> Self {
10343 (value._0,)
10344 }
10345 }
10346 #[automatically_derived]
10347 #[doc(hidden)]
10348 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10349 for getOperatorsSharesReturn {
10350 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10351 Self { _0: tuple.0 }
10352 }
10353 }
10354 }
10355 #[automatically_derived]
10356 impl alloy_sol_types::SolCall for getOperatorsSharesCall {
10357 type Parameters<'a> = (
10358 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10359 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
10360 );
10361 type Token<'a> = <Self::Parameters<
10362 'a,
10363 > as alloy_sol_types::SolType>::Token<'a>;
10364 type Return = alloy::sol_types::private::Vec<
10365 alloy::sol_types::private::Vec<
10366 alloy::sol_types::private::primitives::aliases::U256,
10367 >,
10368 >;
10369 type ReturnTuple<'a> = (
10370 alloy::sol_types::sol_data::Array<
10371 alloy::sol_types::sol_data::Array<
10372 alloy::sol_types::sol_data::Uint<256>,
10373 >,
10374 >,
10375 );
10376 type ReturnToken<'a> = <Self::ReturnTuple<
10377 'a,
10378 > as alloy_sol_types::SolType>::Token<'a>;
10379 const SIGNATURE: &'static str = "getOperatorsShares(address[],address[])";
10380 const SELECTOR: [u8; 4] = [240u8, 224u8, 230u8, 118u8];
10381 #[inline]
10382 fn new<'a>(
10383 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10384 ) -> Self {
10385 tuple.into()
10386 }
10387 #[inline]
10388 fn tokenize(&self) -> Self::Token<'_> {
10389 (
10390 <alloy::sol_types::sol_data::Array<
10391 alloy::sol_types::sol_data::Address,
10392 > as alloy_sol_types::SolType>::tokenize(&self.operators),
10393 <alloy::sol_types::sol_data::Array<
10394 alloy::sol_types::sol_data::Address,
10395 > as alloy_sol_types::SolType>::tokenize(&self.strategies),
10396 )
10397 }
10398 #[inline]
10399 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10400 (
10401 <alloy::sol_types::sol_data::Array<
10402 alloy::sol_types::sol_data::Array<
10403 alloy::sol_types::sol_data::Uint<256>,
10404 >,
10405 > as alloy_sol_types::SolType>::tokenize(ret),
10406 )
10407 }
10408 #[inline]
10409 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10410 <Self::ReturnTuple<
10411 '_,
10412 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10413 .map(|r| {
10414 let r: getOperatorsSharesReturn = r.into();
10415 r._0
10416 })
10417 }
10418 #[inline]
10419 fn abi_decode_returns_validate(
10420 data: &[u8],
10421 ) -> alloy_sol_types::Result<Self::Return> {
10422 <Self::ReturnTuple<
10423 '_,
10424 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10425 .map(|r| {
10426 let r: getOperatorsSharesReturn = r.into();
10427 r._0
10428 })
10429 }
10430 }
10431 };
10432 #[derive(serde::Serialize, serde::Deserialize)]
10433 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10434 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10439 #[derive(Clone)]
10440 pub struct getQueuedWithdrawalCall {
10441 #[allow(missing_docs)]
10442 pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
10443 }
10444 #[derive(serde::Serialize, serde::Deserialize)]
10445 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10446 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10448 #[derive(Clone)]
10449 pub struct getQueuedWithdrawalReturn {
10450 #[allow(missing_docs)]
10451 pub withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
10452 #[allow(missing_docs)]
10453 pub shares: alloy::sol_types::private::Vec<
10454 alloy::sol_types::private::primitives::aliases::U256,
10455 >,
10456 }
10457 #[allow(
10458 non_camel_case_types,
10459 non_snake_case,
10460 clippy::pub_underscore_fields,
10461 clippy::style
10462 )]
10463 const _: () = {
10464 use alloy::sol_types as alloy_sol_types;
10465 {
10466 #[doc(hidden)]
10467 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
10468 #[doc(hidden)]
10469 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
10470 #[cfg(test)]
10471 #[allow(dead_code, unreachable_patterns)]
10472 fn _type_assertion(
10473 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10474 ) {
10475 match _t {
10476 alloy_sol_types::private::AssertTypeEq::<
10477 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10478 >(_) => {}
10479 }
10480 }
10481 #[automatically_derived]
10482 #[doc(hidden)]
10483 impl ::core::convert::From<getQueuedWithdrawalCall>
10484 for UnderlyingRustTuple<'_> {
10485 fn from(value: getQueuedWithdrawalCall) -> Self {
10486 (value.withdrawalRoot,)
10487 }
10488 }
10489 #[automatically_derived]
10490 #[doc(hidden)]
10491 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10492 for getQueuedWithdrawalCall {
10493 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10494 Self { withdrawalRoot: tuple.0 }
10495 }
10496 }
10497 }
10498 {
10499 #[doc(hidden)]
10500 type UnderlyingSolTuple<'a> = (
10501 IDelegationManagerTypes::Withdrawal,
10502 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
10503 );
10504 #[doc(hidden)]
10505 type UnderlyingRustTuple<'a> = (
10506 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
10507 alloy::sol_types::private::Vec<
10508 alloy::sol_types::private::primitives::aliases::U256,
10509 >,
10510 );
10511 #[cfg(test)]
10512 #[allow(dead_code, unreachable_patterns)]
10513 fn _type_assertion(
10514 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10515 ) {
10516 match _t {
10517 alloy_sol_types::private::AssertTypeEq::<
10518 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10519 >(_) => {}
10520 }
10521 }
10522 #[automatically_derived]
10523 #[doc(hidden)]
10524 impl ::core::convert::From<getQueuedWithdrawalReturn>
10525 for UnderlyingRustTuple<'_> {
10526 fn from(value: getQueuedWithdrawalReturn) -> Self {
10527 (value.withdrawal, value.shares)
10528 }
10529 }
10530 #[automatically_derived]
10531 #[doc(hidden)]
10532 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10533 for getQueuedWithdrawalReturn {
10534 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10535 Self {
10536 withdrawal: tuple.0,
10537 shares: tuple.1,
10538 }
10539 }
10540 }
10541 }
10542 impl getQueuedWithdrawalReturn {
10543 fn _tokenize(
10544 &self,
10545 ) -> <getQueuedWithdrawalCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
10546 (
10547 <IDelegationManagerTypes::Withdrawal as alloy_sol_types::SolType>::tokenize(
10548 &self.withdrawal,
10549 ),
10550 <alloy::sol_types::sol_data::Array<
10551 alloy::sol_types::sol_data::Uint<256>,
10552 > as alloy_sol_types::SolType>::tokenize(&self.shares),
10553 )
10554 }
10555 }
10556 #[automatically_derived]
10557 impl alloy_sol_types::SolCall for getQueuedWithdrawalCall {
10558 type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
10559 type Token<'a> = <Self::Parameters<
10560 'a,
10561 > as alloy_sol_types::SolType>::Token<'a>;
10562 type Return = getQueuedWithdrawalReturn;
10563 type ReturnTuple<'a> = (
10564 IDelegationManagerTypes::Withdrawal,
10565 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
10566 );
10567 type ReturnToken<'a> = <Self::ReturnTuple<
10568 'a,
10569 > as alloy_sol_types::SolType>::Token<'a>;
10570 const SIGNATURE: &'static str = "getQueuedWithdrawal(bytes32)";
10571 const SELECTOR: [u8; 4] = [93u8, 151u8, 94u8, 136u8];
10572 #[inline]
10573 fn new<'a>(
10574 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10575 ) -> Self {
10576 tuple.into()
10577 }
10578 #[inline]
10579 fn tokenize(&self) -> Self::Token<'_> {
10580 (
10581 <alloy::sol_types::sol_data::FixedBytes<
10582 32,
10583 > as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot),
10584 )
10585 }
10586 #[inline]
10587 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10588 getQueuedWithdrawalReturn::_tokenize(ret)
10589 }
10590 #[inline]
10591 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10592 <Self::ReturnTuple<
10593 '_,
10594 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10595 .map(Into::into)
10596 }
10597 #[inline]
10598 fn abi_decode_returns_validate(
10599 data: &[u8],
10600 ) -> alloy_sol_types::Result<Self::Return> {
10601 <Self::ReturnTuple<
10602 '_,
10603 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10604 .map(Into::into)
10605 }
10606 }
10607 };
10608 #[derive(serde::Serialize, serde::Deserialize)]
10609 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10610 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10615 #[derive(Clone)]
10616 pub struct getQueuedWithdrawalRootsCall {
10617 #[allow(missing_docs)]
10618 pub staker: alloy::sol_types::private::Address,
10619 }
10620 #[derive(serde::Serialize, serde::Deserialize)]
10621 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10622 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10624 #[derive(Clone)]
10625 pub struct getQueuedWithdrawalRootsReturn {
10626 #[allow(missing_docs)]
10627 pub _0: alloy::sol_types::private::Vec<
10628 alloy::sol_types::private::FixedBytes<32>,
10629 >,
10630 }
10631 #[allow(
10632 non_camel_case_types,
10633 non_snake_case,
10634 clippy::pub_underscore_fields,
10635 clippy::style
10636 )]
10637 const _: () = {
10638 use alloy::sol_types as alloy_sol_types;
10639 {
10640 #[doc(hidden)]
10641 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
10642 #[doc(hidden)]
10643 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
10644 #[cfg(test)]
10645 #[allow(dead_code, unreachable_patterns)]
10646 fn _type_assertion(
10647 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10648 ) {
10649 match _t {
10650 alloy_sol_types::private::AssertTypeEq::<
10651 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10652 >(_) => {}
10653 }
10654 }
10655 #[automatically_derived]
10656 #[doc(hidden)]
10657 impl ::core::convert::From<getQueuedWithdrawalRootsCall>
10658 for UnderlyingRustTuple<'_> {
10659 fn from(value: getQueuedWithdrawalRootsCall) -> Self {
10660 (value.staker,)
10661 }
10662 }
10663 #[automatically_derived]
10664 #[doc(hidden)]
10665 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10666 for getQueuedWithdrawalRootsCall {
10667 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10668 Self { staker: tuple.0 }
10669 }
10670 }
10671 }
10672 {
10673 #[doc(hidden)]
10674 type UnderlyingSolTuple<'a> = (
10675 alloy::sol_types::sol_data::Array<
10676 alloy::sol_types::sol_data::FixedBytes<32>,
10677 >,
10678 );
10679 #[doc(hidden)]
10680 type UnderlyingRustTuple<'a> = (
10681 alloy::sol_types::private::Vec<
10682 alloy::sol_types::private::FixedBytes<32>,
10683 >,
10684 );
10685 #[cfg(test)]
10686 #[allow(dead_code, unreachable_patterns)]
10687 fn _type_assertion(
10688 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10689 ) {
10690 match _t {
10691 alloy_sol_types::private::AssertTypeEq::<
10692 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10693 >(_) => {}
10694 }
10695 }
10696 #[automatically_derived]
10697 #[doc(hidden)]
10698 impl ::core::convert::From<getQueuedWithdrawalRootsReturn>
10699 for UnderlyingRustTuple<'_> {
10700 fn from(value: getQueuedWithdrawalRootsReturn) -> Self {
10701 (value._0,)
10702 }
10703 }
10704 #[automatically_derived]
10705 #[doc(hidden)]
10706 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10707 for getQueuedWithdrawalRootsReturn {
10708 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10709 Self { _0: tuple.0 }
10710 }
10711 }
10712 }
10713 #[automatically_derived]
10714 impl alloy_sol_types::SolCall for getQueuedWithdrawalRootsCall {
10715 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
10716 type Token<'a> = <Self::Parameters<
10717 'a,
10718 > as alloy_sol_types::SolType>::Token<'a>;
10719 type Return = alloy::sol_types::private::Vec<
10720 alloy::sol_types::private::FixedBytes<32>,
10721 >;
10722 type ReturnTuple<'a> = (
10723 alloy::sol_types::sol_data::Array<
10724 alloy::sol_types::sol_data::FixedBytes<32>,
10725 >,
10726 );
10727 type ReturnToken<'a> = <Self::ReturnTuple<
10728 'a,
10729 > as alloy_sol_types::SolType>::Token<'a>;
10730 const SIGNATURE: &'static str = "getQueuedWithdrawalRoots(address)";
10731 const SELECTOR: [u8; 4] = [253u8, 138u8, 168u8, 141u8];
10732 #[inline]
10733 fn new<'a>(
10734 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10735 ) -> Self {
10736 tuple.into()
10737 }
10738 #[inline]
10739 fn tokenize(&self) -> Self::Token<'_> {
10740 (
10741 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
10742 &self.staker,
10743 ),
10744 )
10745 }
10746 #[inline]
10747 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10748 (
10749 <alloy::sol_types::sol_data::Array<
10750 alloy::sol_types::sol_data::FixedBytes<32>,
10751 > as alloy_sol_types::SolType>::tokenize(ret),
10752 )
10753 }
10754 #[inline]
10755 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10756 <Self::ReturnTuple<
10757 '_,
10758 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10759 .map(|r| {
10760 let r: getQueuedWithdrawalRootsReturn = r.into();
10761 r._0
10762 })
10763 }
10764 #[inline]
10765 fn abi_decode_returns_validate(
10766 data: &[u8],
10767 ) -> alloy_sol_types::Result<Self::Return> {
10768 <Self::ReturnTuple<
10769 '_,
10770 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10771 .map(|r| {
10772 let r: getQueuedWithdrawalRootsReturn = r.into();
10773 r._0
10774 })
10775 }
10776 }
10777 };
10778 #[derive(serde::Serialize, serde::Deserialize)]
10779 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10780 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10785 #[derive(Clone)]
10786 pub struct getQueuedWithdrawalsCall {
10787 #[allow(missing_docs)]
10788 pub staker: alloy::sol_types::private::Address,
10789 }
10790 #[derive(serde::Serialize, serde::Deserialize)]
10791 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10792 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10794 #[derive(Clone)]
10795 pub struct getQueuedWithdrawalsReturn {
10796 #[allow(missing_docs)]
10797 pub withdrawals: alloy::sol_types::private::Vec<
10798 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
10799 >,
10800 #[allow(missing_docs)]
10801 pub shares: alloy::sol_types::private::Vec<
10802 alloy::sol_types::private::Vec<
10803 alloy::sol_types::private::primitives::aliases::U256,
10804 >,
10805 >,
10806 }
10807 #[allow(
10808 non_camel_case_types,
10809 non_snake_case,
10810 clippy::pub_underscore_fields,
10811 clippy::style
10812 )]
10813 const _: () = {
10814 use alloy::sol_types as alloy_sol_types;
10815 {
10816 #[doc(hidden)]
10817 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
10818 #[doc(hidden)]
10819 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
10820 #[cfg(test)]
10821 #[allow(dead_code, unreachable_patterns)]
10822 fn _type_assertion(
10823 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10824 ) {
10825 match _t {
10826 alloy_sol_types::private::AssertTypeEq::<
10827 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10828 >(_) => {}
10829 }
10830 }
10831 #[automatically_derived]
10832 #[doc(hidden)]
10833 impl ::core::convert::From<getQueuedWithdrawalsCall>
10834 for UnderlyingRustTuple<'_> {
10835 fn from(value: getQueuedWithdrawalsCall) -> Self {
10836 (value.staker,)
10837 }
10838 }
10839 #[automatically_derived]
10840 #[doc(hidden)]
10841 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10842 for getQueuedWithdrawalsCall {
10843 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10844 Self { staker: tuple.0 }
10845 }
10846 }
10847 }
10848 {
10849 #[doc(hidden)]
10850 type UnderlyingSolTuple<'a> = (
10851 alloy::sol_types::sol_data::Array<IDelegationManagerTypes::Withdrawal>,
10852 alloy::sol_types::sol_data::Array<
10853 alloy::sol_types::sol_data::Array<
10854 alloy::sol_types::sol_data::Uint<256>,
10855 >,
10856 >,
10857 );
10858 #[doc(hidden)]
10859 type UnderlyingRustTuple<'a> = (
10860 alloy::sol_types::private::Vec<
10861 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
10862 >,
10863 alloy::sol_types::private::Vec<
10864 alloy::sol_types::private::Vec<
10865 alloy::sol_types::private::primitives::aliases::U256,
10866 >,
10867 >,
10868 );
10869 #[cfg(test)]
10870 #[allow(dead_code, unreachable_patterns)]
10871 fn _type_assertion(
10872 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
10873 ) {
10874 match _t {
10875 alloy_sol_types::private::AssertTypeEq::<
10876 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
10877 >(_) => {}
10878 }
10879 }
10880 #[automatically_derived]
10881 #[doc(hidden)]
10882 impl ::core::convert::From<getQueuedWithdrawalsReturn>
10883 for UnderlyingRustTuple<'_> {
10884 fn from(value: getQueuedWithdrawalsReturn) -> Self {
10885 (value.withdrawals, value.shares)
10886 }
10887 }
10888 #[automatically_derived]
10889 #[doc(hidden)]
10890 impl ::core::convert::From<UnderlyingRustTuple<'_>>
10891 for getQueuedWithdrawalsReturn {
10892 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
10893 Self {
10894 withdrawals: tuple.0,
10895 shares: tuple.1,
10896 }
10897 }
10898 }
10899 }
10900 impl getQueuedWithdrawalsReturn {
10901 fn _tokenize(
10902 &self,
10903 ) -> <getQueuedWithdrawalsCall as alloy_sol_types::SolCall>::ReturnToken<
10904 '_,
10905 > {
10906 (
10907 <alloy::sol_types::sol_data::Array<
10908 IDelegationManagerTypes::Withdrawal,
10909 > as alloy_sol_types::SolType>::tokenize(&self.withdrawals),
10910 <alloy::sol_types::sol_data::Array<
10911 alloy::sol_types::sol_data::Array<
10912 alloy::sol_types::sol_data::Uint<256>,
10913 >,
10914 > as alloy_sol_types::SolType>::tokenize(&self.shares),
10915 )
10916 }
10917 }
10918 #[automatically_derived]
10919 impl alloy_sol_types::SolCall for getQueuedWithdrawalsCall {
10920 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
10921 type Token<'a> = <Self::Parameters<
10922 'a,
10923 > as alloy_sol_types::SolType>::Token<'a>;
10924 type Return = getQueuedWithdrawalsReturn;
10925 type ReturnTuple<'a> = (
10926 alloy::sol_types::sol_data::Array<IDelegationManagerTypes::Withdrawal>,
10927 alloy::sol_types::sol_data::Array<
10928 alloy::sol_types::sol_data::Array<
10929 alloy::sol_types::sol_data::Uint<256>,
10930 >,
10931 >,
10932 );
10933 type ReturnToken<'a> = <Self::ReturnTuple<
10934 'a,
10935 > as alloy_sol_types::SolType>::Token<'a>;
10936 const SIGNATURE: &'static str = "getQueuedWithdrawals(address)";
10937 const SELECTOR: [u8; 4] = [93u8, 214u8, 133u8, 121u8];
10938 #[inline]
10939 fn new<'a>(
10940 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
10941 ) -> Self {
10942 tuple.into()
10943 }
10944 #[inline]
10945 fn tokenize(&self) -> Self::Token<'_> {
10946 (
10947 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
10948 &self.staker,
10949 ),
10950 )
10951 }
10952 #[inline]
10953 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
10954 getQueuedWithdrawalsReturn::_tokenize(ret)
10955 }
10956 #[inline]
10957 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
10958 <Self::ReturnTuple<
10959 '_,
10960 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
10961 .map(Into::into)
10962 }
10963 #[inline]
10964 fn abi_decode_returns_validate(
10965 data: &[u8],
10966 ) -> alloy_sol_types::Result<Self::Return> {
10967 <Self::ReturnTuple<
10968 '_,
10969 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
10970 .map(Into::into)
10971 }
10972 }
10973 };
10974 #[derive(serde::Serialize, serde::Deserialize)]
10975 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10976 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10981 #[derive(Clone)]
10982 pub struct getSlashableSharesInQueueCall {
10983 #[allow(missing_docs)]
10984 pub operator: alloy::sol_types::private::Address,
10985 #[allow(missing_docs)]
10986 pub strategy: alloy::sol_types::private::Address,
10987 }
10988 #[derive(serde::Serialize, serde::Deserialize)]
10989 #[derive(Default, Debug, PartialEq, Eq, Hash)]
10990 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
10992 #[derive(Clone)]
10993 pub struct getSlashableSharesInQueueReturn {
10994 #[allow(missing_docs)]
10995 pub _0: alloy::sol_types::private::primitives::aliases::U256,
10996 }
10997 #[allow(
10998 non_camel_case_types,
10999 non_snake_case,
11000 clippy::pub_underscore_fields,
11001 clippy::style
11002 )]
11003 const _: () = {
11004 use alloy::sol_types as alloy_sol_types;
11005 {
11006 #[doc(hidden)]
11007 type UnderlyingSolTuple<'a> = (
11008 alloy::sol_types::sol_data::Address,
11009 alloy::sol_types::sol_data::Address,
11010 );
11011 #[doc(hidden)]
11012 type UnderlyingRustTuple<'a> = (
11013 alloy::sol_types::private::Address,
11014 alloy::sol_types::private::Address,
11015 );
11016 #[cfg(test)]
11017 #[allow(dead_code, unreachable_patterns)]
11018 fn _type_assertion(
11019 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11020 ) {
11021 match _t {
11022 alloy_sol_types::private::AssertTypeEq::<
11023 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11024 >(_) => {}
11025 }
11026 }
11027 #[automatically_derived]
11028 #[doc(hidden)]
11029 impl ::core::convert::From<getSlashableSharesInQueueCall>
11030 for UnderlyingRustTuple<'_> {
11031 fn from(value: getSlashableSharesInQueueCall) -> Self {
11032 (value.operator, value.strategy)
11033 }
11034 }
11035 #[automatically_derived]
11036 #[doc(hidden)]
11037 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11038 for getSlashableSharesInQueueCall {
11039 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11040 Self {
11041 operator: tuple.0,
11042 strategy: tuple.1,
11043 }
11044 }
11045 }
11046 }
11047 {
11048 #[doc(hidden)]
11049 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
11050 #[doc(hidden)]
11051 type UnderlyingRustTuple<'a> = (
11052 alloy::sol_types::private::primitives::aliases::U256,
11053 );
11054 #[cfg(test)]
11055 #[allow(dead_code, unreachable_patterns)]
11056 fn _type_assertion(
11057 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11058 ) {
11059 match _t {
11060 alloy_sol_types::private::AssertTypeEq::<
11061 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11062 >(_) => {}
11063 }
11064 }
11065 #[automatically_derived]
11066 #[doc(hidden)]
11067 impl ::core::convert::From<getSlashableSharesInQueueReturn>
11068 for UnderlyingRustTuple<'_> {
11069 fn from(value: getSlashableSharesInQueueReturn) -> Self {
11070 (value._0,)
11071 }
11072 }
11073 #[automatically_derived]
11074 #[doc(hidden)]
11075 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11076 for getSlashableSharesInQueueReturn {
11077 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11078 Self { _0: tuple.0 }
11079 }
11080 }
11081 }
11082 #[automatically_derived]
11083 impl alloy_sol_types::SolCall for getSlashableSharesInQueueCall {
11084 type Parameters<'a> = (
11085 alloy::sol_types::sol_data::Address,
11086 alloy::sol_types::sol_data::Address,
11087 );
11088 type Token<'a> = <Self::Parameters<
11089 'a,
11090 > as alloy_sol_types::SolType>::Token<'a>;
11091 type Return = alloy::sol_types::private::primitives::aliases::U256;
11092 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
11093 type ReturnToken<'a> = <Self::ReturnTuple<
11094 'a,
11095 > as alloy_sol_types::SolType>::Token<'a>;
11096 const SIGNATURE: &'static str = "getSlashableSharesInQueue(address,address)";
11097 const SELECTOR: [u8; 4] = [110u8, 23u8, 68u8, 72u8];
11098 #[inline]
11099 fn new<'a>(
11100 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11101 ) -> Self {
11102 tuple.into()
11103 }
11104 #[inline]
11105 fn tokenize(&self) -> Self::Token<'_> {
11106 (
11107 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11108 &self.operator,
11109 ),
11110 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11111 &self.strategy,
11112 ),
11113 )
11114 }
11115 #[inline]
11116 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11117 (
11118 <alloy::sol_types::sol_data::Uint<
11119 256,
11120 > as alloy_sol_types::SolType>::tokenize(ret),
11121 )
11122 }
11123 #[inline]
11124 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11125 <Self::ReturnTuple<
11126 '_,
11127 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11128 .map(|r| {
11129 let r: getSlashableSharesInQueueReturn = r.into();
11130 r._0
11131 })
11132 }
11133 #[inline]
11134 fn abi_decode_returns_validate(
11135 data: &[u8],
11136 ) -> alloy_sol_types::Result<Self::Return> {
11137 <Self::ReturnTuple<
11138 '_,
11139 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11140 .map(|r| {
11141 let r: getSlashableSharesInQueueReturn = r.into();
11142 r._0
11143 })
11144 }
11145 }
11146 };
11147 #[derive(serde::Serialize, serde::Deserialize)]
11148 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11149 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11154 #[derive(Clone)]
11155 pub struct getWithdrawableSharesCall {
11156 #[allow(missing_docs)]
11157 pub staker: alloy::sol_types::private::Address,
11158 #[allow(missing_docs)]
11159 pub strategies: alloy::sol_types::private::Vec<
11160 alloy::sol_types::private::Address,
11161 >,
11162 }
11163 #[derive(serde::Serialize, serde::Deserialize)]
11164 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11165 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11167 #[derive(Clone)]
11168 pub struct getWithdrawableSharesReturn {
11169 #[allow(missing_docs)]
11170 pub withdrawableShares: alloy::sol_types::private::Vec<
11171 alloy::sol_types::private::primitives::aliases::U256,
11172 >,
11173 #[allow(missing_docs)]
11174 pub depositShares: alloy::sol_types::private::Vec<
11175 alloy::sol_types::private::primitives::aliases::U256,
11176 >,
11177 }
11178 #[allow(
11179 non_camel_case_types,
11180 non_snake_case,
11181 clippy::pub_underscore_fields,
11182 clippy::style
11183 )]
11184 const _: () = {
11185 use alloy::sol_types as alloy_sol_types;
11186 {
11187 #[doc(hidden)]
11188 type UnderlyingSolTuple<'a> = (
11189 alloy::sol_types::sol_data::Address,
11190 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
11191 );
11192 #[doc(hidden)]
11193 type UnderlyingRustTuple<'a> = (
11194 alloy::sol_types::private::Address,
11195 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
11196 );
11197 #[cfg(test)]
11198 #[allow(dead_code, unreachable_patterns)]
11199 fn _type_assertion(
11200 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11201 ) {
11202 match _t {
11203 alloy_sol_types::private::AssertTypeEq::<
11204 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11205 >(_) => {}
11206 }
11207 }
11208 #[automatically_derived]
11209 #[doc(hidden)]
11210 impl ::core::convert::From<getWithdrawableSharesCall>
11211 for UnderlyingRustTuple<'_> {
11212 fn from(value: getWithdrawableSharesCall) -> Self {
11213 (value.staker, value.strategies)
11214 }
11215 }
11216 #[automatically_derived]
11217 #[doc(hidden)]
11218 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11219 for getWithdrawableSharesCall {
11220 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11221 Self {
11222 staker: tuple.0,
11223 strategies: tuple.1,
11224 }
11225 }
11226 }
11227 }
11228 {
11229 #[doc(hidden)]
11230 type UnderlyingSolTuple<'a> = (
11231 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
11232 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
11233 );
11234 #[doc(hidden)]
11235 type UnderlyingRustTuple<'a> = (
11236 alloy::sol_types::private::Vec<
11237 alloy::sol_types::private::primitives::aliases::U256,
11238 >,
11239 alloy::sol_types::private::Vec<
11240 alloy::sol_types::private::primitives::aliases::U256,
11241 >,
11242 );
11243 #[cfg(test)]
11244 #[allow(dead_code, unreachable_patterns)]
11245 fn _type_assertion(
11246 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11247 ) {
11248 match _t {
11249 alloy_sol_types::private::AssertTypeEq::<
11250 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11251 >(_) => {}
11252 }
11253 }
11254 #[automatically_derived]
11255 #[doc(hidden)]
11256 impl ::core::convert::From<getWithdrawableSharesReturn>
11257 for UnderlyingRustTuple<'_> {
11258 fn from(value: getWithdrawableSharesReturn) -> Self {
11259 (value.withdrawableShares, value.depositShares)
11260 }
11261 }
11262 #[automatically_derived]
11263 #[doc(hidden)]
11264 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11265 for getWithdrawableSharesReturn {
11266 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11267 Self {
11268 withdrawableShares: tuple.0,
11269 depositShares: tuple.1,
11270 }
11271 }
11272 }
11273 }
11274 impl getWithdrawableSharesReturn {
11275 fn _tokenize(
11276 &self,
11277 ) -> <getWithdrawableSharesCall as alloy_sol_types::SolCall>::ReturnToken<
11278 '_,
11279 > {
11280 (
11281 <alloy::sol_types::sol_data::Array<
11282 alloy::sol_types::sol_data::Uint<256>,
11283 > as alloy_sol_types::SolType>::tokenize(&self.withdrawableShares),
11284 <alloy::sol_types::sol_data::Array<
11285 alloy::sol_types::sol_data::Uint<256>,
11286 > as alloy_sol_types::SolType>::tokenize(&self.depositShares),
11287 )
11288 }
11289 }
11290 #[automatically_derived]
11291 impl alloy_sol_types::SolCall for getWithdrawableSharesCall {
11292 type Parameters<'a> = (
11293 alloy::sol_types::sol_data::Address,
11294 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
11295 );
11296 type Token<'a> = <Self::Parameters<
11297 'a,
11298 > as alloy_sol_types::SolType>::Token<'a>;
11299 type Return = getWithdrawableSharesReturn;
11300 type ReturnTuple<'a> = (
11301 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
11302 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
11303 );
11304 type ReturnToken<'a> = <Self::ReturnTuple<
11305 'a,
11306 > as alloy_sol_types::SolType>::Token<'a>;
11307 const SIGNATURE: &'static str = "getWithdrawableShares(address,address[])";
11308 const SELECTOR: [u8; 4] = [201u8, 120u8, 247u8, 172u8];
11309 #[inline]
11310 fn new<'a>(
11311 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11312 ) -> Self {
11313 tuple.into()
11314 }
11315 #[inline]
11316 fn tokenize(&self) -> Self::Token<'_> {
11317 (
11318 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11319 &self.staker,
11320 ),
11321 <alloy::sol_types::sol_data::Array<
11322 alloy::sol_types::sol_data::Address,
11323 > as alloy_sol_types::SolType>::tokenize(&self.strategies),
11324 )
11325 }
11326 #[inline]
11327 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11328 getWithdrawableSharesReturn::_tokenize(ret)
11329 }
11330 #[inline]
11331 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11332 <Self::ReturnTuple<
11333 '_,
11334 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11335 .map(Into::into)
11336 }
11337 #[inline]
11338 fn abi_decode_returns_validate(
11339 data: &[u8],
11340 ) -> alloy_sol_types::Result<Self::Return> {
11341 <Self::ReturnTuple<
11342 '_,
11343 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11344 .map(Into::into)
11345 }
11346 }
11347 };
11348 #[derive(serde::Serialize, serde::Deserialize)]
11349 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11350 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11355 #[derive(Clone)]
11356 pub struct increaseDelegatedSharesCall {
11357 #[allow(missing_docs)]
11358 pub staker: alloy::sol_types::private::Address,
11359 #[allow(missing_docs)]
11360 pub strategy: alloy::sol_types::private::Address,
11361 #[allow(missing_docs)]
11362 pub prevDepositShares: alloy::sol_types::private::primitives::aliases::U256,
11363 #[allow(missing_docs)]
11364 pub addedShares: alloy::sol_types::private::primitives::aliases::U256,
11365 }
11366 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11368 #[derive(Clone)]
11369 pub struct increaseDelegatedSharesReturn {}
11370 #[allow(
11371 non_camel_case_types,
11372 non_snake_case,
11373 clippy::pub_underscore_fields,
11374 clippy::style
11375 )]
11376 const _: () = {
11377 use alloy::sol_types as alloy_sol_types;
11378 {
11379 #[doc(hidden)]
11380 type UnderlyingSolTuple<'a> = (
11381 alloy::sol_types::sol_data::Address,
11382 alloy::sol_types::sol_data::Address,
11383 alloy::sol_types::sol_data::Uint<256>,
11384 alloy::sol_types::sol_data::Uint<256>,
11385 );
11386 #[doc(hidden)]
11387 type UnderlyingRustTuple<'a> = (
11388 alloy::sol_types::private::Address,
11389 alloy::sol_types::private::Address,
11390 alloy::sol_types::private::primitives::aliases::U256,
11391 alloy::sol_types::private::primitives::aliases::U256,
11392 );
11393 #[cfg(test)]
11394 #[allow(dead_code, unreachable_patterns)]
11395 fn _type_assertion(
11396 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11397 ) {
11398 match _t {
11399 alloy_sol_types::private::AssertTypeEq::<
11400 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11401 >(_) => {}
11402 }
11403 }
11404 #[automatically_derived]
11405 #[doc(hidden)]
11406 impl ::core::convert::From<increaseDelegatedSharesCall>
11407 for UnderlyingRustTuple<'_> {
11408 fn from(value: increaseDelegatedSharesCall) -> Self {
11409 (
11410 value.staker,
11411 value.strategy,
11412 value.prevDepositShares,
11413 value.addedShares,
11414 )
11415 }
11416 }
11417 #[automatically_derived]
11418 #[doc(hidden)]
11419 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11420 for increaseDelegatedSharesCall {
11421 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11422 Self {
11423 staker: tuple.0,
11424 strategy: tuple.1,
11425 prevDepositShares: tuple.2,
11426 addedShares: tuple.3,
11427 }
11428 }
11429 }
11430 }
11431 {
11432 #[doc(hidden)]
11433 type UnderlyingSolTuple<'a> = ();
11434 #[doc(hidden)]
11435 type UnderlyingRustTuple<'a> = ();
11436 #[cfg(test)]
11437 #[allow(dead_code, unreachable_patterns)]
11438 fn _type_assertion(
11439 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11440 ) {
11441 match _t {
11442 alloy_sol_types::private::AssertTypeEq::<
11443 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11444 >(_) => {}
11445 }
11446 }
11447 #[automatically_derived]
11448 #[doc(hidden)]
11449 impl ::core::convert::From<increaseDelegatedSharesReturn>
11450 for UnderlyingRustTuple<'_> {
11451 fn from(value: increaseDelegatedSharesReturn) -> Self {
11452 ()
11453 }
11454 }
11455 #[automatically_derived]
11456 #[doc(hidden)]
11457 impl ::core::convert::From<UnderlyingRustTuple<'_>>
11458 for increaseDelegatedSharesReturn {
11459 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11460 Self {}
11461 }
11462 }
11463 }
11464 impl increaseDelegatedSharesReturn {
11465 fn _tokenize(
11466 &self,
11467 ) -> <increaseDelegatedSharesCall as alloy_sol_types::SolCall>::ReturnToken<
11468 '_,
11469 > {
11470 ()
11471 }
11472 }
11473 #[automatically_derived]
11474 impl alloy_sol_types::SolCall for increaseDelegatedSharesCall {
11475 type Parameters<'a> = (
11476 alloy::sol_types::sol_data::Address,
11477 alloy::sol_types::sol_data::Address,
11478 alloy::sol_types::sol_data::Uint<256>,
11479 alloy::sol_types::sol_data::Uint<256>,
11480 );
11481 type Token<'a> = <Self::Parameters<
11482 'a,
11483 > as alloy_sol_types::SolType>::Token<'a>;
11484 type Return = increaseDelegatedSharesReturn;
11485 type ReturnTuple<'a> = ();
11486 type ReturnToken<'a> = <Self::ReturnTuple<
11487 'a,
11488 > as alloy_sol_types::SolType>::Token<'a>;
11489 const SIGNATURE: &'static str = "increaseDelegatedShares(address,address,uint256,uint256)";
11490 const SELECTOR: [u8; 4] = [60u8, 101u8, 28u8, 242u8];
11491 #[inline]
11492 fn new<'a>(
11493 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11494 ) -> Self {
11495 tuple.into()
11496 }
11497 #[inline]
11498 fn tokenize(&self) -> Self::Token<'_> {
11499 (
11500 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11501 &self.staker,
11502 ),
11503 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11504 &self.strategy,
11505 ),
11506 <alloy::sol_types::sol_data::Uint<
11507 256,
11508 > as alloy_sol_types::SolType>::tokenize(&self.prevDepositShares),
11509 <alloy::sol_types::sol_data::Uint<
11510 256,
11511 > as alloy_sol_types::SolType>::tokenize(&self.addedShares),
11512 )
11513 }
11514 #[inline]
11515 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11516 increaseDelegatedSharesReturn::_tokenize(ret)
11517 }
11518 #[inline]
11519 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11520 <Self::ReturnTuple<
11521 '_,
11522 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11523 .map(Into::into)
11524 }
11525 #[inline]
11526 fn abi_decode_returns_validate(
11527 data: &[u8],
11528 ) -> alloy_sol_types::Result<Self::Return> {
11529 <Self::ReturnTuple<
11530 '_,
11531 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11532 .map(Into::into)
11533 }
11534 }
11535 };
11536 #[derive(serde::Serialize, serde::Deserialize)]
11537 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11538 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11543 #[derive(Clone)]
11544 pub struct initializeCall {
11545 #[allow(missing_docs)]
11546 pub initialOwner: alloy::sol_types::private::Address,
11547 #[allow(missing_docs)]
11548 pub initialPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
11549 }
11550 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11552 #[derive(Clone)]
11553 pub struct initializeReturn {}
11554 #[allow(
11555 non_camel_case_types,
11556 non_snake_case,
11557 clippy::pub_underscore_fields,
11558 clippy::style
11559 )]
11560 const _: () = {
11561 use alloy::sol_types as alloy_sol_types;
11562 {
11563 #[doc(hidden)]
11564 type UnderlyingSolTuple<'a> = (
11565 alloy::sol_types::sol_data::Address,
11566 alloy::sol_types::sol_data::Uint<256>,
11567 );
11568 #[doc(hidden)]
11569 type UnderlyingRustTuple<'a> = (
11570 alloy::sol_types::private::Address,
11571 alloy::sol_types::private::primitives::aliases::U256,
11572 );
11573 #[cfg(test)]
11574 #[allow(dead_code, unreachable_patterns)]
11575 fn _type_assertion(
11576 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11577 ) {
11578 match _t {
11579 alloy_sol_types::private::AssertTypeEq::<
11580 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11581 >(_) => {}
11582 }
11583 }
11584 #[automatically_derived]
11585 #[doc(hidden)]
11586 impl ::core::convert::From<initializeCall> for UnderlyingRustTuple<'_> {
11587 fn from(value: initializeCall) -> Self {
11588 (value.initialOwner, value.initialPausedStatus)
11589 }
11590 }
11591 #[automatically_derived]
11592 #[doc(hidden)]
11593 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeCall {
11594 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11595 Self {
11596 initialOwner: tuple.0,
11597 initialPausedStatus: tuple.1,
11598 }
11599 }
11600 }
11601 }
11602 {
11603 #[doc(hidden)]
11604 type UnderlyingSolTuple<'a> = ();
11605 #[doc(hidden)]
11606 type UnderlyingRustTuple<'a> = ();
11607 #[cfg(test)]
11608 #[allow(dead_code, unreachable_patterns)]
11609 fn _type_assertion(
11610 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11611 ) {
11612 match _t {
11613 alloy_sol_types::private::AssertTypeEq::<
11614 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11615 >(_) => {}
11616 }
11617 }
11618 #[automatically_derived]
11619 #[doc(hidden)]
11620 impl ::core::convert::From<initializeReturn> for UnderlyingRustTuple<'_> {
11621 fn from(value: initializeReturn) -> Self {
11622 ()
11623 }
11624 }
11625 #[automatically_derived]
11626 #[doc(hidden)]
11627 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeReturn {
11628 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11629 Self {}
11630 }
11631 }
11632 }
11633 impl initializeReturn {
11634 fn _tokenize(
11635 &self,
11636 ) -> <initializeCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
11637 ()
11638 }
11639 }
11640 #[automatically_derived]
11641 impl alloy_sol_types::SolCall for initializeCall {
11642 type Parameters<'a> = (
11643 alloy::sol_types::sol_data::Address,
11644 alloy::sol_types::sol_data::Uint<256>,
11645 );
11646 type Token<'a> = <Self::Parameters<
11647 'a,
11648 > as alloy_sol_types::SolType>::Token<'a>;
11649 type Return = initializeReturn;
11650 type ReturnTuple<'a> = ();
11651 type ReturnToken<'a> = <Self::ReturnTuple<
11652 'a,
11653 > as alloy_sol_types::SolType>::Token<'a>;
11654 const SIGNATURE: &'static str = "initialize(address,uint256)";
11655 const SELECTOR: [u8; 4] = [205u8, 109u8, 198u8, 135u8];
11656 #[inline]
11657 fn new<'a>(
11658 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11659 ) -> Self {
11660 tuple.into()
11661 }
11662 #[inline]
11663 fn tokenize(&self) -> Self::Token<'_> {
11664 (
11665 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11666 &self.initialOwner,
11667 ),
11668 <alloy::sol_types::sol_data::Uint<
11669 256,
11670 > as alloy_sol_types::SolType>::tokenize(&self.initialPausedStatus),
11671 )
11672 }
11673 #[inline]
11674 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11675 initializeReturn::_tokenize(ret)
11676 }
11677 #[inline]
11678 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11679 <Self::ReturnTuple<
11680 '_,
11681 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11682 .map(Into::into)
11683 }
11684 #[inline]
11685 fn abi_decode_returns_validate(
11686 data: &[u8],
11687 ) -> alloy_sol_types::Result<Self::Return> {
11688 <Self::ReturnTuple<
11689 '_,
11690 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11691 .map(Into::into)
11692 }
11693 }
11694 };
11695 #[derive(serde::Serialize, serde::Deserialize)]
11696 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11697 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11702 #[derive(Clone)]
11703 pub struct isDelegatedCall {
11704 #[allow(missing_docs)]
11705 pub staker: alloy::sol_types::private::Address,
11706 }
11707 #[derive(serde::Serialize, serde::Deserialize)]
11708 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11709 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11711 #[derive(Clone)]
11712 pub struct isDelegatedReturn {
11713 #[allow(missing_docs)]
11714 pub _0: bool,
11715 }
11716 #[allow(
11717 non_camel_case_types,
11718 non_snake_case,
11719 clippy::pub_underscore_fields,
11720 clippy::style
11721 )]
11722 const _: () = {
11723 use alloy::sol_types as alloy_sol_types;
11724 {
11725 #[doc(hidden)]
11726 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
11727 #[doc(hidden)]
11728 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
11729 #[cfg(test)]
11730 #[allow(dead_code, unreachable_patterns)]
11731 fn _type_assertion(
11732 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11733 ) {
11734 match _t {
11735 alloy_sol_types::private::AssertTypeEq::<
11736 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11737 >(_) => {}
11738 }
11739 }
11740 #[automatically_derived]
11741 #[doc(hidden)]
11742 impl ::core::convert::From<isDelegatedCall> for UnderlyingRustTuple<'_> {
11743 fn from(value: isDelegatedCall) -> Self {
11744 (value.staker,)
11745 }
11746 }
11747 #[automatically_derived]
11748 #[doc(hidden)]
11749 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isDelegatedCall {
11750 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11751 Self { staker: tuple.0 }
11752 }
11753 }
11754 }
11755 {
11756 #[doc(hidden)]
11757 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
11758 #[doc(hidden)]
11759 type UnderlyingRustTuple<'a> = (bool,);
11760 #[cfg(test)]
11761 #[allow(dead_code, unreachable_patterns)]
11762 fn _type_assertion(
11763 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11764 ) {
11765 match _t {
11766 alloy_sol_types::private::AssertTypeEq::<
11767 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11768 >(_) => {}
11769 }
11770 }
11771 #[automatically_derived]
11772 #[doc(hidden)]
11773 impl ::core::convert::From<isDelegatedReturn> for UnderlyingRustTuple<'_> {
11774 fn from(value: isDelegatedReturn) -> Self {
11775 (value._0,)
11776 }
11777 }
11778 #[automatically_derived]
11779 #[doc(hidden)]
11780 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isDelegatedReturn {
11781 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11782 Self { _0: tuple.0 }
11783 }
11784 }
11785 }
11786 #[automatically_derived]
11787 impl alloy_sol_types::SolCall for isDelegatedCall {
11788 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
11789 type Token<'a> = <Self::Parameters<
11790 'a,
11791 > as alloy_sol_types::SolType>::Token<'a>;
11792 type Return = bool;
11793 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
11794 type ReturnToken<'a> = <Self::ReturnTuple<
11795 'a,
11796 > as alloy_sol_types::SolType>::Token<'a>;
11797 const SIGNATURE: &'static str = "isDelegated(address)";
11798 const SELECTOR: [u8; 4] = [62u8, 40u8, 57u8, 29u8];
11799 #[inline]
11800 fn new<'a>(
11801 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11802 ) -> Self {
11803 tuple.into()
11804 }
11805 #[inline]
11806 fn tokenize(&self) -> Self::Token<'_> {
11807 (
11808 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11809 &self.staker,
11810 ),
11811 )
11812 }
11813 #[inline]
11814 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11815 (
11816 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
11817 ret,
11818 ),
11819 )
11820 }
11821 #[inline]
11822 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11823 <Self::ReturnTuple<
11824 '_,
11825 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11826 .map(|r| {
11827 let r: isDelegatedReturn = r.into();
11828 r._0
11829 })
11830 }
11831 #[inline]
11832 fn abi_decode_returns_validate(
11833 data: &[u8],
11834 ) -> alloy_sol_types::Result<Self::Return> {
11835 <Self::ReturnTuple<
11836 '_,
11837 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11838 .map(|r| {
11839 let r: isDelegatedReturn = r.into();
11840 r._0
11841 })
11842 }
11843 }
11844 };
11845 #[derive(serde::Serialize, serde::Deserialize)]
11846 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11847 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11852 #[derive(Clone)]
11853 pub struct isOperatorCall {
11854 #[allow(missing_docs)]
11855 pub operator: alloy::sol_types::private::Address,
11856 }
11857 #[derive(serde::Serialize, serde::Deserialize)]
11858 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11859 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
11861 #[derive(Clone)]
11862 pub struct isOperatorReturn {
11863 #[allow(missing_docs)]
11864 pub _0: bool,
11865 }
11866 #[allow(
11867 non_camel_case_types,
11868 non_snake_case,
11869 clippy::pub_underscore_fields,
11870 clippy::style
11871 )]
11872 const _: () = {
11873 use alloy::sol_types as alloy_sol_types;
11874 {
11875 #[doc(hidden)]
11876 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
11877 #[doc(hidden)]
11878 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
11879 #[cfg(test)]
11880 #[allow(dead_code, unreachable_patterns)]
11881 fn _type_assertion(
11882 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11883 ) {
11884 match _t {
11885 alloy_sol_types::private::AssertTypeEq::<
11886 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11887 >(_) => {}
11888 }
11889 }
11890 #[automatically_derived]
11891 #[doc(hidden)]
11892 impl ::core::convert::From<isOperatorCall> for UnderlyingRustTuple<'_> {
11893 fn from(value: isOperatorCall) -> Self {
11894 (value.operator,)
11895 }
11896 }
11897 #[automatically_derived]
11898 #[doc(hidden)]
11899 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isOperatorCall {
11900 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11901 Self { operator: tuple.0 }
11902 }
11903 }
11904 }
11905 {
11906 #[doc(hidden)]
11907 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
11908 #[doc(hidden)]
11909 type UnderlyingRustTuple<'a> = (bool,);
11910 #[cfg(test)]
11911 #[allow(dead_code, unreachable_patterns)]
11912 fn _type_assertion(
11913 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
11914 ) {
11915 match _t {
11916 alloy_sol_types::private::AssertTypeEq::<
11917 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
11918 >(_) => {}
11919 }
11920 }
11921 #[automatically_derived]
11922 #[doc(hidden)]
11923 impl ::core::convert::From<isOperatorReturn> for UnderlyingRustTuple<'_> {
11924 fn from(value: isOperatorReturn) -> Self {
11925 (value._0,)
11926 }
11927 }
11928 #[automatically_derived]
11929 #[doc(hidden)]
11930 impl ::core::convert::From<UnderlyingRustTuple<'_>> for isOperatorReturn {
11931 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
11932 Self { _0: tuple.0 }
11933 }
11934 }
11935 }
11936 #[automatically_derived]
11937 impl alloy_sol_types::SolCall for isOperatorCall {
11938 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
11939 type Token<'a> = <Self::Parameters<
11940 'a,
11941 > as alloy_sol_types::SolType>::Token<'a>;
11942 type Return = bool;
11943 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
11944 type ReturnToken<'a> = <Self::ReturnTuple<
11945 'a,
11946 > as alloy_sol_types::SolType>::Token<'a>;
11947 const SIGNATURE: &'static str = "isOperator(address)";
11948 const SELECTOR: [u8; 4] = [109u8, 112u8, 247u8, 174u8];
11949 #[inline]
11950 fn new<'a>(
11951 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
11952 ) -> Self {
11953 tuple.into()
11954 }
11955 #[inline]
11956 fn tokenize(&self) -> Self::Token<'_> {
11957 (
11958 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
11959 &self.operator,
11960 ),
11961 )
11962 }
11963 #[inline]
11964 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
11965 (
11966 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
11967 ret,
11968 ),
11969 )
11970 }
11971 #[inline]
11972 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
11973 <Self::ReturnTuple<
11974 '_,
11975 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
11976 .map(|r| {
11977 let r: isOperatorReturn = r.into();
11978 r._0
11979 })
11980 }
11981 #[inline]
11982 fn abi_decode_returns_validate(
11983 data: &[u8],
11984 ) -> alloy_sol_types::Result<Self::Return> {
11985 <Self::ReturnTuple<
11986 '_,
11987 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
11988 .map(|r| {
11989 let r: isOperatorReturn = r.into();
11990 r._0
11991 })
11992 }
11993 }
11994 };
11995 #[derive(serde::Serialize, serde::Deserialize)]
11996 #[derive(Default, Debug, PartialEq, Eq, Hash)]
11997 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12002 #[derive(Clone)]
12003 pub struct minWithdrawalDelayBlocksCall;
12004 #[derive(serde::Serialize, serde::Deserialize)]
12005 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12006 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12008 #[derive(Clone)]
12009 pub struct minWithdrawalDelayBlocksReturn {
12010 #[allow(missing_docs)]
12011 pub _0: u32,
12012 }
12013 #[allow(
12014 non_camel_case_types,
12015 non_snake_case,
12016 clippy::pub_underscore_fields,
12017 clippy::style
12018 )]
12019 const _: () = {
12020 use alloy::sol_types as alloy_sol_types;
12021 {
12022 #[doc(hidden)]
12023 type UnderlyingSolTuple<'a> = ();
12024 #[doc(hidden)]
12025 type UnderlyingRustTuple<'a> = ();
12026 #[cfg(test)]
12027 #[allow(dead_code, unreachable_patterns)]
12028 fn _type_assertion(
12029 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12030 ) {
12031 match _t {
12032 alloy_sol_types::private::AssertTypeEq::<
12033 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12034 >(_) => {}
12035 }
12036 }
12037 #[automatically_derived]
12038 #[doc(hidden)]
12039 impl ::core::convert::From<minWithdrawalDelayBlocksCall>
12040 for UnderlyingRustTuple<'_> {
12041 fn from(value: minWithdrawalDelayBlocksCall) -> Self {
12042 ()
12043 }
12044 }
12045 #[automatically_derived]
12046 #[doc(hidden)]
12047 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12048 for minWithdrawalDelayBlocksCall {
12049 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12050 Self
12051 }
12052 }
12053 }
12054 {
12055 #[doc(hidden)]
12056 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
12057 #[doc(hidden)]
12058 type UnderlyingRustTuple<'a> = (u32,);
12059 #[cfg(test)]
12060 #[allow(dead_code, unreachable_patterns)]
12061 fn _type_assertion(
12062 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12063 ) {
12064 match _t {
12065 alloy_sol_types::private::AssertTypeEq::<
12066 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12067 >(_) => {}
12068 }
12069 }
12070 #[automatically_derived]
12071 #[doc(hidden)]
12072 impl ::core::convert::From<minWithdrawalDelayBlocksReturn>
12073 for UnderlyingRustTuple<'_> {
12074 fn from(value: minWithdrawalDelayBlocksReturn) -> Self {
12075 (value._0,)
12076 }
12077 }
12078 #[automatically_derived]
12079 #[doc(hidden)]
12080 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12081 for minWithdrawalDelayBlocksReturn {
12082 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12083 Self { _0: tuple.0 }
12084 }
12085 }
12086 }
12087 #[automatically_derived]
12088 impl alloy_sol_types::SolCall for minWithdrawalDelayBlocksCall {
12089 type Parameters<'a> = ();
12090 type Token<'a> = <Self::Parameters<
12091 'a,
12092 > as alloy_sol_types::SolType>::Token<'a>;
12093 type Return = u32;
12094 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,);
12095 type ReturnToken<'a> = <Self::ReturnTuple<
12096 'a,
12097 > as alloy_sol_types::SolType>::Token<'a>;
12098 const SIGNATURE: &'static str = "minWithdrawalDelayBlocks()";
12099 const SELECTOR: [u8; 4] = [196u8, 72u8, 254u8, 184u8];
12100 #[inline]
12101 fn new<'a>(
12102 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12103 ) -> Self {
12104 tuple.into()
12105 }
12106 #[inline]
12107 fn tokenize(&self) -> Self::Token<'_> {
12108 ()
12109 }
12110 #[inline]
12111 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12112 (
12113 <alloy::sol_types::sol_data::Uint<
12114 32,
12115 > as alloy_sol_types::SolType>::tokenize(ret),
12116 )
12117 }
12118 #[inline]
12119 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12120 <Self::ReturnTuple<
12121 '_,
12122 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12123 .map(|r| {
12124 let r: minWithdrawalDelayBlocksReturn = r.into();
12125 r._0
12126 })
12127 }
12128 #[inline]
12129 fn abi_decode_returns_validate(
12130 data: &[u8],
12131 ) -> alloy_sol_types::Result<Self::Return> {
12132 <Self::ReturnTuple<
12133 '_,
12134 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12135 .map(|r| {
12136 let r: minWithdrawalDelayBlocksReturn = r.into();
12137 r._0
12138 })
12139 }
12140 }
12141 };
12142 #[derive(serde::Serialize, serde::Deserialize)]
12143 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12144 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12149 #[derive(Clone)]
12150 pub struct modifyOperatorDetailsCall {
12151 #[allow(missing_docs)]
12152 pub operator: alloy::sol_types::private::Address,
12153 #[allow(missing_docs)]
12154 pub newDelegationApprover: alloy::sol_types::private::Address,
12155 }
12156 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12158 #[derive(Clone)]
12159 pub struct modifyOperatorDetailsReturn {}
12160 #[allow(
12161 non_camel_case_types,
12162 non_snake_case,
12163 clippy::pub_underscore_fields,
12164 clippy::style
12165 )]
12166 const _: () = {
12167 use alloy::sol_types as alloy_sol_types;
12168 {
12169 #[doc(hidden)]
12170 type UnderlyingSolTuple<'a> = (
12171 alloy::sol_types::sol_data::Address,
12172 alloy::sol_types::sol_data::Address,
12173 );
12174 #[doc(hidden)]
12175 type UnderlyingRustTuple<'a> = (
12176 alloy::sol_types::private::Address,
12177 alloy::sol_types::private::Address,
12178 );
12179 #[cfg(test)]
12180 #[allow(dead_code, unreachable_patterns)]
12181 fn _type_assertion(
12182 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12183 ) {
12184 match _t {
12185 alloy_sol_types::private::AssertTypeEq::<
12186 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12187 >(_) => {}
12188 }
12189 }
12190 #[automatically_derived]
12191 #[doc(hidden)]
12192 impl ::core::convert::From<modifyOperatorDetailsCall>
12193 for UnderlyingRustTuple<'_> {
12194 fn from(value: modifyOperatorDetailsCall) -> Self {
12195 (value.operator, value.newDelegationApprover)
12196 }
12197 }
12198 #[automatically_derived]
12199 #[doc(hidden)]
12200 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12201 for modifyOperatorDetailsCall {
12202 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12203 Self {
12204 operator: tuple.0,
12205 newDelegationApprover: tuple.1,
12206 }
12207 }
12208 }
12209 }
12210 {
12211 #[doc(hidden)]
12212 type UnderlyingSolTuple<'a> = ();
12213 #[doc(hidden)]
12214 type UnderlyingRustTuple<'a> = ();
12215 #[cfg(test)]
12216 #[allow(dead_code, unreachable_patterns)]
12217 fn _type_assertion(
12218 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12219 ) {
12220 match _t {
12221 alloy_sol_types::private::AssertTypeEq::<
12222 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12223 >(_) => {}
12224 }
12225 }
12226 #[automatically_derived]
12227 #[doc(hidden)]
12228 impl ::core::convert::From<modifyOperatorDetailsReturn>
12229 for UnderlyingRustTuple<'_> {
12230 fn from(value: modifyOperatorDetailsReturn) -> Self {
12231 ()
12232 }
12233 }
12234 #[automatically_derived]
12235 #[doc(hidden)]
12236 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12237 for modifyOperatorDetailsReturn {
12238 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12239 Self {}
12240 }
12241 }
12242 }
12243 impl modifyOperatorDetailsReturn {
12244 fn _tokenize(
12245 &self,
12246 ) -> <modifyOperatorDetailsCall as alloy_sol_types::SolCall>::ReturnToken<
12247 '_,
12248 > {
12249 ()
12250 }
12251 }
12252 #[automatically_derived]
12253 impl alloy_sol_types::SolCall for modifyOperatorDetailsCall {
12254 type Parameters<'a> = (
12255 alloy::sol_types::sol_data::Address,
12256 alloy::sol_types::sol_data::Address,
12257 );
12258 type Token<'a> = <Self::Parameters<
12259 'a,
12260 > as alloy_sol_types::SolType>::Token<'a>;
12261 type Return = modifyOperatorDetailsReturn;
12262 type ReturnTuple<'a> = ();
12263 type ReturnToken<'a> = <Self::ReturnTuple<
12264 'a,
12265 > as alloy_sol_types::SolType>::Token<'a>;
12266 const SIGNATURE: &'static str = "modifyOperatorDetails(address,address)";
12267 const SELECTOR: [u8; 4] = [84u8, 183u8, 201u8, 108u8];
12268 #[inline]
12269 fn new<'a>(
12270 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12271 ) -> Self {
12272 tuple.into()
12273 }
12274 #[inline]
12275 fn tokenize(&self) -> Self::Token<'_> {
12276 (
12277 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
12278 &self.operator,
12279 ),
12280 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
12281 &self.newDelegationApprover,
12282 ),
12283 )
12284 }
12285 #[inline]
12286 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12287 modifyOperatorDetailsReturn::_tokenize(ret)
12288 }
12289 #[inline]
12290 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12291 <Self::ReturnTuple<
12292 '_,
12293 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12294 .map(Into::into)
12295 }
12296 #[inline]
12297 fn abi_decode_returns_validate(
12298 data: &[u8],
12299 ) -> alloy_sol_types::Result<Self::Return> {
12300 <Self::ReturnTuple<
12301 '_,
12302 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12303 .map(Into::into)
12304 }
12305 }
12306 };
12307 #[derive(serde::Serialize, serde::Deserialize)]
12308 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12309 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12314 #[derive(Clone)]
12315 pub struct operatorSharesCall {
12316 #[allow(missing_docs)]
12317 pub operator: alloy::sol_types::private::Address,
12318 #[allow(missing_docs)]
12319 pub strategy: alloy::sol_types::private::Address,
12320 }
12321 #[derive(serde::Serialize, serde::Deserialize)]
12322 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12323 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12325 #[derive(Clone)]
12326 pub struct operatorSharesReturn {
12327 #[allow(missing_docs)]
12328 pub shares: alloy::sol_types::private::primitives::aliases::U256,
12329 }
12330 #[allow(
12331 non_camel_case_types,
12332 non_snake_case,
12333 clippy::pub_underscore_fields,
12334 clippy::style
12335 )]
12336 const _: () = {
12337 use alloy::sol_types as alloy_sol_types;
12338 {
12339 #[doc(hidden)]
12340 type UnderlyingSolTuple<'a> = (
12341 alloy::sol_types::sol_data::Address,
12342 alloy::sol_types::sol_data::Address,
12343 );
12344 #[doc(hidden)]
12345 type UnderlyingRustTuple<'a> = (
12346 alloy::sol_types::private::Address,
12347 alloy::sol_types::private::Address,
12348 );
12349 #[cfg(test)]
12350 #[allow(dead_code, unreachable_patterns)]
12351 fn _type_assertion(
12352 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12353 ) {
12354 match _t {
12355 alloy_sol_types::private::AssertTypeEq::<
12356 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12357 >(_) => {}
12358 }
12359 }
12360 #[automatically_derived]
12361 #[doc(hidden)]
12362 impl ::core::convert::From<operatorSharesCall> for UnderlyingRustTuple<'_> {
12363 fn from(value: operatorSharesCall) -> Self {
12364 (value.operator, value.strategy)
12365 }
12366 }
12367 #[automatically_derived]
12368 #[doc(hidden)]
12369 impl ::core::convert::From<UnderlyingRustTuple<'_>> for operatorSharesCall {
12370 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12371 Self {
12372 operator: tuple.0,
12373 strategy: tuple.1,
12374 }
12375 }
12376 }
12377 }
12378 {
12379 #[doc(hidden)]
12380 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
12381 #[doc(hidden)]
12382 type UnderlyingRustTuple<'a> = (
12383 alloy::sol_types::private::primitives::aliases::U256,
12384 );
12385 #[cfg(test)]
12386 #[allow(dead_code, unreachable_patterns)]
12387 fn _type_assertion(
12388 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12389 ) {
12390 match _t {
12391 alloy_sol_types::private::AssertTypeEq::<
12392 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12393 >(_) => {}
12394 }
12395 }
12396 #[automatically_derived]
12397 #[doc(hidden)]
12398 impl ::core::convert::From<operatorSharesReturn>
12399 for UnderlyingRustTuple<'_> {
12400 fn from(value: operatorSharesReturn) -> Self {
12401 (value.shares,)
12402 }
12403 }
12404 #[automatically_derived]
12405 #[doc(hidden)]
12406 impl ::core::convert::From<UnderlyingRustTuple<'_>>
12407 for operatorSharesReturn {
12408 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12409 Self { shares: tuple.0 }
12410 }
12411 }
12412 }
12413 #[automatically_derived]
12414 impl alloy_sol_types::SolCall for operatorSharesCall {
12415 type Parameters<'a> = (
12416 alloy::sol_types::sol_data::Address,
12417 alloy::sol_types::sol_data::Address,
12418 );
12419 type Token<'a> = <Self::Parameters<
12420 'a,
12421 > as alloy_sol_types::SolType>::Token<'a>;
12422 type Return = alloy::sol_types::private::primitives::aliases::U256;
12423 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
12424 type ReturnToken<'a> = <Self::ReturnTuple<
12425 'a,
12426 > as alloy_sol_types::SolType>::Token<'a>;
12427 const SIGNATURE: &'static str = "operatorShares(address,address)";
12428 const SELECTOR: [u8; 4] = [119u8, 142u8, 85u8, 243u8];
12429 #[inline]
12430 fn new<'a>(
12431 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12432 ) -> Self {
12433 tuple.into()
12434 }
12435 #[inline]
12436 fn tokenize(&self) -> Self::Token<'_> {
12437 (
12438 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
12439 &self.operator,
12440 ),
12441 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
12442 &self.strategy,
12443 ),
12444 )
12445 }
12446 #[inline]
12447 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12448 (
12449 <alloy::sol_types::sol_data::Uint<
12450 256,
12451 > as alloy_sol_types::SolType>::tokenize(ret),
12452 )
12453 }
12454 #[inline]
12455 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12456 <Self::ReturnTuple<
12457 '_,
12458 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12459 .map(|r| {
12460 let r: operatorSharesReturn = r.into();
12461 r.shares
12462 })
12463 }
12464 #[inline]
12465 fn abi_decode_returns_validate(
12466 data: &[u8],
12467 ) -> alloy_sol_types::Result<Self::Return> {
12468 <Self::ReturnTuple<
12469 '_,
12470 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12471 .map(|r| {
12472 let r: operatorSharesReturn = r.into();
12473 r.shares
12474 })
12475 }
12476 }
12477 };
12478 #[derive(serde::Serialize, serde::Deserialize)]
12479 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12480 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12485 #[derive(Clone)]
12486 pub struct ownerCall;
12487 #[derive(serde::Serialize, serde::Deserialize)]
12488 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12489 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12491 #[derive(Clone)]
12492 pub struct ownerReturn {
12493 #[allow(missing_docs)]
12494 pub _0: alloy::sol_types::private::Address,
12495 }
12496 #[allow(
12497 non_camel_case_types,
12498 non_snake_case,
12499 clippy::pub_underscore_fields,
12500 clippy::style
12501 )]
12502 const _: () = {
12503 use alloy::sol_types as alloy_sol_types;
12504 {
12505 #[doc(hidden)]
12506 type UnderlyingSolTuple<'a> = ();
12507 #[doc(hidden)]
12508 type UnderlyingRustTuple<'a> = ();
12509 #[cfg(test)]
12510 #[allow(dead_code, unreachable_patterns)]
12511 fn _type_assertion(
12512 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12513 ) {
12514 match _t {
12515 alloy_sol_types::private::AssertTypeEq::<
12516 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12517 >(_) => {}
12518 }
12519 }
12520 #[automatically_derived]
12521 #[doc(hidden)]
12522 impl ::core::convert::From<ownerCall> for UnderlyingRustTuple<'_> {
12523 fn from(value: ownerCall) -> Self {
12524 ()
12525 }
12526 }
12527 #[automatically_derived]
12528 #[doc(hidden)]
12529 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerCall {
12530 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12531 Self
12532 }
12533 }
12534 }
12535 {
12536 #[doc(hidden)]
12537 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
12538 #[doc(hidden)]
12539 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
12540 #[cfg(test)]
12541 #[allow(dead_code, unreachable_patterns)]
12542 fn _type_assertion(
12543 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12544 ) {
12545 match _t {
12546 alloy_sol_types::private::AssertTypeEq::<
12547 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12548 >(_) => {}
12549 }
12550 }
12551 #[automatically_derived]
12552 #[doc(hidden)]
12553 impl ::core::convert::From<ownerReturn> for UnderlyingRustTuple<'_> {
12554 fn from(value: ownerReturn) -> Self {
12555 (value._0,)
12556 }
12557 }
12558 #[automatically_derived]
12559 #[doc(hidden)]
12560 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerReturn {
12561 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12562 Self { _0: tuple.0 }
12563 }
12564 }
12565 }
12566 #[automatically_derived]
12567 impl alloy_sol_types::SolCall for ownerCall {
12568 type Parameters<'a> = ();
12569 type Token<'a> = <Self::Parameters<
12570 'a,
12571 > as alloy_sol_types::SolType>::Token<'a>;
12572 type Return = alloy::sol_types::private::Address;
12573 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
12574 type ReturnToken<'a> = <Self::ReturnTuple<
12575 'a,
12576 > as alloy_sol_types::SolType>::Token<'a>;
12577 const SIGNATURE: &'static str = "owner()";
12578 const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8];
12579 #[inline]
12580 fn new<'a>(
12581 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12582 ) -> Self {
12583 tuple.into()
12584 }
12585 #[inline]
12586 fn tokenize(&self) -> Self::Token<'_> {
12587 ()
12588 }
12589 #[inline]
12590 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12591 (
12592 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
12593 ret,
12594 ),
12595 )
12596 }
12597 #[inline]
12598 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12599 <Self::ReturnTuple<
12600 '_,
12601 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12602 .map(|r| {
12603 let r: ownerReturn = r.into();
12604 r._0
12605 })
12606 }
12607 #[inline]
12608 fn abi_decode_returns_validate(
12609 data: &[u8],
12610 ) -> alloy_sol_types::Result<Self::Return> {
12611 <Self::ReturnTuple<
12612 '_,
12613 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12614 .map(|r| {
12615 let r: ownerReturn = r.into();
12616 r._0
12617 })
12618 }
12619 }
12620 };
12621 #[derive(serde::Serialize, serde::Deserialize)]
12622 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12623 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12628 #[derive(Clone)]
12629 pub struct pauseCall {
12630 #[allow(missing_docs)]
12631 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
12632 }
12633 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12635 #[derive(Clone)]
12636 pub struct pauseReturn {}
12637 #[allow(
12638 non_camel_case_types,
12639 non_snake_case,
12640 clippy::pub_underscore_fields,
12641 clippy::style
12642 )]
12643 const _: () = {
12644 use alloy::sol_types as alloy_sol_types;
12645 {
12646 #[doc(hidden)]
12647 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
12648 #[doc(hidden)]
12649 type UnderlyingRustTuple<'a> = (
12650 alloy::sol_types::private::primitives::aliases::U256,
12651 );
12652 #[cfg(test)]
12653 #[allow(dead_code, unreachable_patterns)]
12654 fn _type_assertion(
12655 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12656 ) {
12657 match _t {
12658 alloy_sol_types::private::AssertTypeEq::<
12659 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12660 >(_) => {}
12661 }
12662 }
12663 #[automatically_derived]
12664 #[doc(hidden)]
12665 impl ::core::convert::From<pauseCall> for UnderlyingRustTuple<'_> {
12666 fn from(value: pauseCall) -> Self {
12667 (value.newPausedStatus,)
12668 }
12669 }
12670 #[automatically_derived]
12671 #[doc(hidden)]
12672 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseCall {
12673 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12674 Self { newPausedStatus: tuple.0 }
12675 }
12676 }
12677 }
12678 {
12679 #[doc(hidden)]
12680 type UnderlyingSolTuple<'a> = ();
12681 #[doc(hidden)]
12682 type UnderlyingRustTuple<'a> = ();
12683 #[cfg(test)]
12684 #[allow(dead_code, unreachable_patterns)]
12685 fn _type_assertion(
12686 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12687 ) {
12688 match _t {
12689 alloy_sol_types::private::AssertTypeEq::<
12690 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12691 >(_) => {}
12692 }
12693 }
12694 #[automatically_derived]
12695 #[doc(hidden)]
12696 impl ::core::convert::From<pauseReturn> for UnderlyingRustTuple<'_> {
12697 fn from(value: pauseReturn) -> Self {
12698 ()
12699 }
12700 }
12701 #[automatically_derived]
12702 #[doc(hidden)]
12703 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseReturn {
12704 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12705 Self {}
12706 }
12707 }
12708 }
12709 impl pauseReturn {
12710 fn _tokenize(
12711 &self,
12712 ) -> <pauseCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
12713 ()
12714 }
12715 }
12716 #[automatically_derived]
12717 impl alloy_sol_types::SolCall for pauseCall {
12718 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
12719 type Token<'a> = <Self::Parameters<
12720 'a,
12721 > as alloy_sol_types::SolType>::Token<'a>;
12722 type Return = pauseReturn;
12723 type ReturnTuple<'a> = ();
12724 type ReturnToken<'a> = <Self::ReturnTuple<
12725 'a,
12726 > as alloy_sol_types::SolType>::Token<'a>;
12727 const SIGNATURE: &'static str = "pause(uint256)";
12728 const SELECTOR: [u8; 4] = [19u8, 100u8, 57u8, 221u8];
12729 #[inline]
12730 fn new<'a>(
12731 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12732 ) -> Self {
12733 tuple.into()
12734 }
12735 #[inline]
12736 fn tokenize(&self) -> Self::Token<'_> {
12737 (
12738 <alloy::sol_types::sol_data::Uint<
12739 256,
12740 > as alloy_sol_types::SolType>::tokenize(&self.newPausedStatus),
12741 )
12742 }
12743 #[inline]
12744 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12745 pauseReturn::_tokenize(ret)
12746 }
12747 #[inline]
12748 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12749 <Self::ReturnTuple<
12750 '_,
12751 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12752 .map(Into::into)
12753 }
12754 #[inline]
12755 fn abi_decode_returns_validate(
12756 data: &[u8],
12757 ) -> alloy_sol_types::Result<Self::Return> {
12758 <Self::ReturnTuple<
12759 '_,
12760 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12761 .map(Into::into)
12762 }
12763 }
12764 };
12765 #[derive(serde::Serialize, serde::Deserialize)]
12766 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12767 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12772 #[derive(Clone)]
12773 pub struct pauseAllCall;
12774 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12776 #[derive(Clone)]
12777 pub struct pauseAllReturn {}
12778 #[allow(
12779 non_camel_case_types,
12780 non_snake_case,
12781 clippy::pub_underscore_fields,
12782 clippy::style
12783 )]
12784 const _: () = {
12785 use alloy::sol_types as alloy_sol_types;
12786 {
12787 #[doc(hidden)]
12788 type UnderlyingSolTuple<'a> = ();
12789 #[doc(hidden)]
12790 type UnderlyingRustTuple<'a> = ();
12791 #[cfg(test)]
12792 #[allow(dead_code, unreachable_patterns)]
12793 fn _type_assertion(
12794 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12795 ) {
12796 match _t {
12797 alloy_sol_types::private::AssertTypeEq::<
12798 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12799 >(_) => {}
12800 }
12801 }
12802 #[automatically_derived]
12803 #[doc(hidden)]
12804 impl ::core::convert::From<pauseAllCall> for UnderlyingRustTuple<'_> {
12805 fn from(value: pauseAllCall) -> Self {
12806 ()
12807 }
12808 }
12809 #[automatically_derived]
12810 #[doc(hidden)]
12811 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseAllCall {
12812 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12813 Self
12814 }
12815 }
12816 }
12817 {
12818 #[doc(hidden)]
12819 type UnderlyingSolTuple<'a> = ();
12820 #[doc(hidden)]
12821 type UnderlyingRustTuple<'a> = ();
12822 #[cfg(test)]
12823 #[allow(dead_code, unreachable_patterns)]
12824 fn _type_assertion(
12825 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12826 ) {
12827 match _t {
12828 alloy_sol_types::private::AssertTypeEq::<
12829 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12830 >(_) => {}
12831 }
12832 }
12833 #[automatically_derived]
12834 #[doc(hidden)]
12835 impl ::core::convert::From<pauseAllReturn> for UnderlyingRustTuple<'_> {
12836 fn from(value: pauseAllReturn) -> Self {
12837 ()
12838 }
12839 }
12840 #[automatically_derived]
12841 #[doc(hidden)]
12842 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseAllReturn {
12843 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12844 Self {}
12845 }
12846 }
12847 }
12848 impl pauseAllReturn {
12849 fn _tokenize(
12850 &self,
12851 ) -> <pauseAllCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
12852 ()
12853 }
12854 }
12855 #[automatically_derived]
12856 impl alloy_sol_types::SolCall for pauseAllCall {
12857 type Parameters<'a> = ();
12858 type Token<'a> = <Self::Parameters<
12859 'a,
12860 > as alloy_sol_types::SolType>::Token<'a>;
12861 type Return = pauseAllReturn;
12862 type ReturnTuple<'a> = ();
12863 type ReturnToken<'a> = <Self::ReturnTuple<
12864 'a,
12865 > as alloy_sol_types::SolType>::Token<'a>;
12866 const SIGNATURE: &'static str = "pauseAll()";
12867 const SELECTOR: [u8; 4] = [89u8, 92u8, 106u8, 103u8];
12868 #[inline]
12869 fn new<'a>(
12870 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
12871 ) -> Self {
12872 tuple.into()
12873 }
12874 #[inline]
12875 fn tokenize(&self) -> Self::Token<'_> {
12876 ()
12877 }
12878 #[inline]
12879 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
12880 pauseAllReturn::_tokenize(ret)
12881 }
12882 #[inline]
12883 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
12884 <Self::ReturnTuple<
12885 '_,
12886 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
12887 .map(Into::into)
12888 }
12889 #[inline]
12890 fn abi_decode_returns_validate(
12891 data: &[u8],
12892 ) -> alloy_sol_types::Result<Self::Return> {
12893 <Self::ReturnTuple<
12894 '_,
12895 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
12896 .map(Into::into)
12897 }
12898 }
12899 };
12900 #[derive(serde::Serialize, serde::Deserialize)]
12901 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12902 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12907 #[derive(Clone)]
12908 pub struct paused_0Call {
12909 #[allow(missing_docs)]
12910 pub index: u8,
12911 }
12912 #[derive(serde::Serialize, serde::Deserialize)]
12913 #[derive(Default, Debug, PartialEq, Eq, Hash)]
12914 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
12916 #[derive(Clone)]
12917 pub struct paused_0Return {
12918 #[allow(missing_docs)]
12919 pub _0: bool,
12920 }
12921 #[allow(
12922 non_camel_case_types,
12923 non_snake_case,
12924 clippy::pub_underscore_fields,
12925 clippy::style
12926 )]
12927 const _: () = {
12928 use alloy::sol_types as alloy_sol_types;
12929 {
12930 #[doc(hidden)]
12931 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,);
12932 #[doc(hidden)]
12933 type UnderlyingRustTuple<'a> = (u8,);
12934 #[cfg(test)]
12935 #[allow(dead_code, unreachable_patterns)]
12936 fn _type_assertion(
12937 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12938 ) {
12939 match _t {
12940 alloy_sol_types::private::AssertTypeEq::<
12941 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12942 >(_) => {}
12943 }
12944 }
12945 #[automatically_derived]
12946 #[doc(hidden)]
12947 impl ::core::convert::From<paused_0Call> for UnderlyingRustTuple<'_> {
12948 fn from(value: paused_0Call) -> Self {
12949 (value.index,)
12950 }
12951 }
12952 #[automatically_derived]
12953 #[doc(hidden)]
12954 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_0Call {
12955 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12956 Self { index: tuple.0 }
12957 }
12958 }
12959 }
12960 {
12961 #[doc(hidden)]
12962 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
12963 #[doc(hidden)]
12964 type UnderlyingRustTuple<'a> = (bool,);
12965 #[cfg(test)]
12966 #[allow(dead_code, unreachable_patterns)]
12967 fn _type_assertion(
12968 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
12969 ) {
12970 match _t {
12971 alloy_sol_types::private::AssertTypeEq::<
12972 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
12973 >(_) => {}
12974 }
12975 }
12976 #[automatically_derived]
12977 #[doc(hidden)]
12978 impl ::core::convert::From<paused_0Return> for UnderlyingRustTuple<'_> {
12979 fn from(value: paused_0Return) -> Self {
12980 (value._0,)
12981 }
12982 }
12983 #[automatically_derived]
12984 #[doc(hidden)]
12985 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_0Return {
12986 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
12987 Self { _0: tuple.0 }
12988 }
12989 }
12990 }
12991 #[automatically_derived]
12992 impl alloy_sol_types::SolCall for paused_0Call {
12993 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<8>,);
12994 type Token<'a> = <Self::Parameters<
12995 'a,
12996 > as alloy_sol_types::SolType>::Token<'a>;
12997 type Return = bool;
12998 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
12999 type ReturnToken<'a> = <Self::ReturnTuple<
13000 'a,
13001 > as alloy_sol_types::SolType>::Token<'a>;
13002 const SIGNATURE: &'static str = "paused(uint8)";
13003 const SELECTOR: [u8; 4] = [90u8, 200u8, 106u8, 183u8];
13004 #[inline]
13005 fn new<'a>(
13006 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13007 ) -> Self {
13008 tuple.into()
13009 }
13010 #[inline]
13011 fn tokenize(&self) -> Self::Token<'_> {
13012 (
13013 <alloy::sol_types::sol_data::Uint<
13014 8,
13015 > as alloy_sol_types::SolType>::tokenize(&self.index),
13016 )
13017 }
13018 #[inline]
13019 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13020 (
13021 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
13022 ret,
13023 ),
13024 )
13025 }
13026 #[inline]
13027 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13028 <Self::ReturnTuple<
13029 '_,
13030 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13031 .map(|r| {
13032 let r: paused_0Return = r.into();
13033 r._0
13034 })
13035 }
13036 #[inline]
13037 fn abi_decode_returns_validate(
13038 data: &[u8],
13039 ) -> alloy_sol_types::Result<Self::Return> {
13040 <Self::ReturnTuple<
13041 '_,
13042 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13043 .map(|r| {
13044 let r: paused_0Return = r.into();
13045 r._0
13046 })
13047 }
13048 }
13049 };
13050 #[derive(serde::Serialize, serde::Deserialize)]
13051 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13052 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13057 #[derive(Clone)]
13058 pub struct paused_1Call;
13059 #[derive(serde::Serialize, serde::Deserialize)]
13060 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13061 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13063 #[derive(Clone)]
13064 pub struct paused_1Return {
13065 #[allow(missing_docs)]
13066 pub _0: alloy::sol_types::private::primitives::aliases::U256,
13067 }
13068 #[allow(
13069 non_camel_case_types,
13070 non_snake_case,
13071 clippy::pub_underscore_fields,
13072 clippy::style
13073 )]
13074 const _: () = {
13075 use alloy::sol_types as alloy_sol_types;
13076 {
13077 #[doc(hidden)]
13078 type UnderlyingSolTuple<'a> = ();
13079 #[doc(hidden)]
13080 type UnderlyingRustTuple<'a> = ();
13081 #[cfg(test)]
13082 #[allow(dead_code, unreachable_patterns)]
13083 fn _type_assertion(
13084 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13085 ) {
13086 match _t {
13087 alloy_sol_types::private::AssertTypeEq::<
13088 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13089 >(_) => {}
13090 }
13091 }
13092 #[automatically_derived]
13093 #[doc(hidden)]
13094 impl ::core::convert::From<paused_1Call> for UnderlyingRustTuple<'_> {
13095 fn from(value: paused_1Call) -> Self {
13096 ()
13097 }
13098 }
13099 #[automatically_derived]
13100 #[doc(hidden)]
13101 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_1Call {
13102 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13103 Self
13104 }
13105 }
13106 }
13107 {
13108 #[doc(hidden)]
13109 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
13110 #[doc(hidden)]
13111 type UnderlyingRustTuple<'a> = (
13112 alloy::sol_types::private::primitives::aliases::U256,
13113 );
13114 #[cfg(test)]
13115 #[allow(dead_code, unreachable_patterns)]
13116 fn _type_assertion(
13117 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13118 ) {
13119 match _t {
13120 alloy_sol_types::private::AssertTypeEq::<
13121 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13122 >(_) => {}
13123 }
13124 }
13125 #[automatically_derived]
13126 #[doc(hidden)]
13127 impl ::core::convert::From<paused_1Return> for UnderlyingRustTuple<'_> {
13128 fn from(value: paused_1Return) -> Self {
13129 (value._0,)
13130 }
13131 }
13132 #[automatically_derived]
13133 #[doc(hidden)]
13134 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_1Return {
13135 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13136 Self { _0: tuple.0 }
13137 }
13138 }
13139 }
13140 #[automatically_derived]
13141 impl alloy_sol_types::SolCall for paused_1Call {
13142 type Parameters<'a> = ();
13143 type Token<'a> = <Self::Parameters<
13144 'a,
13145 > as alloy_sol_types::SolType>::Token<'a>;
13146 type Return = alloy::sol_types::private::primitives::aliases::U256;
13147 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
13148 type ReturnToken<'a> = <Self::ReturnTuple<
13149 'a,
13150 > as alloy_sol_types::SolType>::Token<'a>;
13151 const SIGNATURE: &'static str = "paused()";
13152 const SELECTOR: [u8; 4] = [92u8, 151u8, 90u8, 187u8];
13153 #[inline]
13154 fn new<'a>(
13155 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13156 ) -> Self {
13157 tuple.into()
13158 }
13159 #[inline]
13160 fn tokenize(&self) -> Self::Token<'_> {
13161 ()
13162 }
13163 #[inline]
13164 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13165 (
13166 <alloy::sol_types::sol_data::Uint<
13167 256,
13168 > as alloy_sol_types::SolType>::tokenize(ret),
13169 )
13170 }
13171 #[inline]
13172 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13173 <Self::ReturnTuple<
13174 '_,
13175 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13176 .map(|r| {
13177 let r: paused_1Return = r.into();
13178 r._0
13179 })
13180 }
13181 #[inline]
13182 fn abi_decode_returns_validate(
13183 data: &[u8],
13184 ) -> alloy_sol_types::Result<Self::Return> {
13185 <Self::ReturnTuple<
13186 '_,
13187 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13188 .map(|r| {
13189 let r: paused_1Return = r.into();
13190 r._0
13191 })
13192 }
13193 }
13194 };
13195 #[derive(serde::Serialize, serde::Deserialize)]
13196 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13197 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13202 #[derive(Clone)]
13203 pub struct pauserRegistryCall;
13204 #[derive(serde::Serialize, serde::Deserialize)]
13205 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13206 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13208 #[derive(Clone)]
13209 pub struct pauserRegistryReturn {
13210 #[allow(missing_docs)]
13211 pub _0: alloy::sol_types::private::Address,
13212 }
13213 #[allow(
13214 non_camel_case_types,
13215 non_snake_case,
13216 clippy::pub_underscore_fields,
13217 clippy::style
13218 )]
13219 const _: () = {
13220 use alloy::sol_types as alloy_sol_types;
13221 {
13222 #[doc(hidden)]
13223 type UnderlyingSolTuple<'a> = ();
13224 #[doc(hidden)]
13225 type UnderlyingRustTuple<'a> = ();
13226 #[cfg(test)]
13227 #[allow(dead_code, unreachable_patterns)]
13228 fn _type_assertion(
13229 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13230 ) {
13231 match _t {
13232 alloy_sol_types::private::AssertTypeEq::<
13233 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13234 >(_) => {}
13235 }
13236 }
13237 #[automatically_derived]
13238 #[doc(hidden)]
13239 impl ::core::convert::From<pauserRegistryCall> for UnderlyingRustTuple<'_> {
13240 fn from(value: pauserRegistryCall) -> Self {
13241 ()
13242 }
13243 }
13244 #[automatically_derived]
13245 #[doc(hidden)]
13246 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauserRegistryCall {
13247 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13248 Self
13249 }
13250 }
13251 }
13252 {
13253 #[doc(hidden)]
13254 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
13255 #[doc(hidden)]
13256 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
13257 #[cfg(test)]
13258 #[allow(dead_code, unreachable_patterns)]
13259 fn _type_assertion(
13260 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13261 ) {
13262 match _t {
13263 alloy_sol_types::private::AssertTypeEq::<
13264 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13265 >(_) => {}
13266 }
13267 }
13268 #[automatically_derived]
13269 #[doc(hidden)]
13270 impl ::core::convert::From<pauserRegistryReturn>
13271 for UnderlyingRustTuple<'_> {
13272 fn from(value: pauserRegistryReturn) -> Self {
13273 (value._0,)
13274 }
13275 }
13276 #[automatically_derived]
13277 #[doc(hidden)]
13278 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13279 for pauserRegistryReturn {
13280 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13281 Self { _0: tuple.0 }
13282 }
13283 }
13284 }
13285 #[automatically_derived]
13286 impl alloy_sol_types::SolCall for pauserRegistryCall {
13287 type Parameters<'a> = ();
13288 type Token<'a> = <Self::Parameters<
13289 'a,
13290 > as alloy_sol_types::SolType>::Token<'a>;
13291 type Return = alloy::sol_types::private::Address;
13292 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
13293 type ReturnToken<'a> = <Self::ReturnTuple<
13294 'a,
13295 > as alloy_sol_types::SolType>::Token<'a>;
13296 const SIGNATURE: &'static str = "pauserRegistry()";
13297 const SELECTOR: [u8; 4] = [136u8, 111u8, 17u8, 149u8];
13298 #[inline]
13299 fn new<'a>(
13300 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13301 ) -> Self {
13302 tuple.into()
13303 }
13304 #[inline]
13305 fn tokenize(&self) -> Self::Token<'_> {
13306 ()
13307 }
13308 #[inline]
13309 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13310 (
13311 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
13312 ret,
13313 ),
13314 )
13315 }
13316 #[inline]
13317 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13318 <Self::ReturnTuple<
13319 '_,
13320 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13321 .map(|r| {
13322 let r: pauserRegistryReturn = r.into();
13323 r._0
13324 })
13325 }
13326 #[inline]
13327 fn abi_decode_returns_validate(
13328 data: &[u8],
13329 ) -> alloy_sol_types::Result<Self::Return> {
13330 <Self::ReturnTuple<
13331 '_,
13332 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13333 .map(|r| {
13334 let r: pauserRegistryReturn = r.into();
13335 r._0
13336 })
13337 }
13338 }
13339 };
13340 #[derive(serde::Serialize, serde::Deserialize)]
13341 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13342 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13347 #[derive(Clone)]
13348 pub struct pendingWithdrawalsCall {
13349 #[allow(missing_docs)]
13350 pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
13351 }
13352 #[derive(serde::Serialize, serde::Deserialize)]
13353 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13354 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13356 #[derive(Clone)]
13357 pub struct pendingWithdrawalsReturn {
13358 #[allow(missing_docs)]
13359 pub pending: bool,
13360 }
13361 #[allow(
13362 non_camel_case_types,
13363 non_snake_case,
13364 clippy::pub_underscore_fields,
13365 clippy::style
13366 )]
13367 const _: () = {
13368 use alloy::sol_types as alloy_sol_types;
13369 {
13370 #[doc(hidden)]
13371 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
13372 #[doc(hidden)]
13373 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
13374 #[cfg(test)]
13375 #[allow(dead_code, unreachable_patterns)]
13376 fn _type_assertion(
13377 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13378 ) {
13379 match _t {
13380 alloy_sol_types::private::AssertTypeEq::<
13381 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13382 >(_) => {}
13383 }
13384 }
13385 #[automatically_derived]
13386 #[doc(hidden)]
13387 impl ::core::convert::From<pendingWithdrawalsCall>
13388 for UnderlyingRustTuple<'_> {
13389 fn from(value: pendingWithdrawalsCall) -> Self {
13390 (value.withdrawalRoot,)
13391 }
13392 }
13393 #[automatically_derived]
13394 #[doc(hidden)]
13395 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13396 for pendingWithdrawalsCall {
13397 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13398 Self { withdrawalRoot: tuple.0 }
13399 }
13400 }
13401 }
13402 {
13403 #[doc(hidden)]
13404 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
13405 #[doc(hidden)]
13406 type UnderlyingRustTuple<'a> = (bool,);
13407 #[cfg(test)]
13408 #[allow(dead_code, unreachable_patterns)]
13409 fn _type_assertion(
13410 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13411 ) {
13412 match _t {
13413 alloy_sol_types::private::AssertTypeEq::<
13414 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13415 >(_) => {}
13416 }
13417 }
13418 #[automatically_derived]
13419 #[doc(hidden)]
13420 impl ::core::convert::From<pendingWithdrawalsReturn>
13421 for UnderlyingRustTuple<'_> {
13422 fn from(value: pendingWithdrawalsReturn) -> Self {
13423 (value.pending,)
13424 }
13425 }
13426 #[automatically_derived]
13427 #[doc(hidden)]
13428 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13429 for pendingWithdrawalsReturn {
13430 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13431 Self { pending: tuple.0 }
13432 }
13433 }
13434 }
13435 #[automatically_derived]
13436 impl alloy_sol_types::SolCall for pendingWithdrawalsCall {
13437 type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
13438 type Token<'a> = <Self::Parameters<
13439 'a,
13440 > as alloy_sol_types::SolType>::Token<'a>;
13441 type Return = bool;
13442 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
13443 type ReturnToken<'a> = <Self::ReturnTuple<
13444 'a,
13445 > as alloy_sol_types::SolType>::Token<'a>;
13446 const SIGNATURE: &'static str = "pendingWithdrawals(bytes32)";
13447 const SELECTOR: [u8; 4] = [183u8, 240u8, 110u8, 190u8];
13448 #[inline]
13449 fn new<'a>(
13450 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13451 ) -> Self {
13452 tuple.into()
13453 }
13454 #[inline]
13455 fn tokenize(&self) -> Self::Token<'_> {
13456 (
13457 <alloy::sol_types::sol_data::FixedBytes<
13458 32,
13459 > as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot),
13460 )
13461 }
13462 #[inline]
13463 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13464 (
13465 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
13466 ret,
13467 ),
13468 )
13469 }
13470 #[inline]
13471 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13472 <Self::ReturnTuple<
13473 '_,
13474 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13475 .map(|r| {
13476 let r: pendingWithdrawalsReturn = r.into();
13477 r.pending
13478 })
13479 }
13480 #[inline]
13481 fn abi_decode_returns_validate(
13482 data: &[u8],
13483 ) -> alloy_sol_types::Result<Self::Return> {
13484 <Self::ReturnTuple<
13485 '_,
13486 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13487 .map(|r| {
13488 let r: pendingWithdrawalsReturn = r.into();
13489 r.pending
13490 })
13491 }
13492 }
13493 };
13494 #[derive(serde::Serialize, serde::Deserialize)]
13495 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13496 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13501 #[derive(Clone)]
13502 pub struct permissionControllerCall;
13503 #[derive(serde::Serialize, serde::Deserialize)]
13504 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13505 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13507 #[derive(Clone)]
13508 pub struct permissionControllerReturn {
13509 #[allow(missing_docs)]
13510 pub _0: alloy::sol_types::private::Address,
13511 }
13512 #[allow(
13513 non_camel_case_types,
13514 non_snake_case,
13515 clippy::pub_underscore_fields,
13516 clippy::style
13517 )]
13518 const _: () = {
13519 use alloy::sol_types as alloy_sol_types;
13520 {
13521 #[doc(hidden)]
13522 type UnderlyingSolTuple<'a> = ();
13523 #[doc(hidden)]
13524 type UnderlyingRustTuple<'a> = ();
13525 #[cfg(test)]
13526 #[allow(dead_code, unreachable_patterns)]
13527 fn _type_assertion(
13528 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13529 ) {
13530 match _t {
13531 alloy_sol_types::private::AssertTypeEq::<
13532 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13533 >(_) => {}
13534 }
13535 }
13536 #[automatically_derived]
13537 #[doc(hidden)]
13538 impl ::core::convert::From<permissionControllerCall>
13539 for UnderlyingRustTuple<'_> {
13540 fn from(value: permissionControllerCall) -> Self {
13541 ()
13542 }
13543 }
13544 #[automatically_derived]
13545 #[doc(hidden)]
13546 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13547 for permissionControllerCall {
13548 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13549 Self
13550 }
13551 }
13552 }
13553 {
13554 #[doc(hidden)]
13555 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
13556 #[doc(hidden)]
13557 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
13558 #[cfg(test)]
13559 #[allow(dead_code, unreachable_patterns)]
13560 fn _type_assertion(
13561 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13562 ) {
13563 match _t {
13564 alloy_sol_types::private::AssertTypeEq::<
13565 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13566 >(_) => {}
13567 }
13568 }
13569 #[automatically_derived]
13570 #[doc(hidden)]
13571 impl ::core::convert::From<permissionControllerReturn>
13572 for UnderlyingRustTuple<'_> {
13573 fn from(value: permissionControllerReturn) -> Self {
13574 (value._0,)
13575 }
13576 }
13577 #[automatically_derived]
13578 #[doc(hidden)]
13579 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13580 for permissionControllerReturn {
13581 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13582 Self { _0: tuple.0 }
13583 }
13584 }
13585 }
13586 #[automatically_derived]
13587 impl alloy_sol_types::SolCall for permissionControllerCall {
13588 type Parameters<'a> = ();
13589 type Token<'a> = <Self::Parameters<
13590 'a,
13591 > as alloy_sol_types::SolType>::Token<'a>;
13592 type Return = alloy::sol_types::private::Address;
13593 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
13594 type ReturnToken<'a> = <Self::ReturnTuple<
13595 'a,
13596 > as alloy_sol_types::SolType>::Token<'a>;
13597 const SIGNATURE: &'static str = "permissionController()";
13598 const SELECTOR: [u8; 4] = [70u8, 87u8, 226u8, 106u8];
13599 #[inline]
13600 fn new<'a>(
13601 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13602 ) -> Self {
13603 tuple.into()
13604 }
13605 #[inline]
13606 fn tokenize(&self) -> Self::Token<'_> {
13607 ()
13608 }
13609 #[inline]
13610 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13611 (
13612 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
13613 ret,
13614 ),
13615 )
13616 }
13617 #[inline]
13618 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13619 <Self::ReturnTuple<
13620 '_,
13621 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13622 .map(|r| {
13623 let r: permissionControllerReturn = r.into();
13624 r._0
13625 })
13626 }
13627 #[inline]
13628 fn abi_decode_returns_validate(
13629 data: &[u8],
13630 ) -> alloy_sol_types::Result<Self::Return> {
13631 <Self::ReturnTuple<
13632 '_,
13633 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13634 .map(|r| {
13635 let r: permissionControllerReturn = r.into();
13636 r._0
13637 })
13638 }
13639 }
13640 };
13641 #[derive(serde::Serialize, serde::Deserialize)]
13642 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13643 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13648 #[derive(Clone)]
13649 pub struct queueWithdrawalsCall {
13650 #[allow(missing_docs)]
13651 pub params: alloy::sol_types::private::Vec<
13652 <IDelegationManagerTypes::QueuedWithdrawalParams as alloy::sol_types::SolType>::RustType,
13653 >,
13654 }
13655 #[derive(serde::Serialize, serde::Deserialize)]
13656 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13657 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13659 #[derive(Clone)]
13660 pub struct queueWithdrawalsReturn {
13661 #[allow(missing_docs)]
13662 pub _0: alloy::sol_types::private::Vec<
13663 alloy::sol_types::private::FixedBytes<32>,
13664 >,
13665 }
13666 #[allow(
13667 non_camel_case_types,
13668 non_snake_case,
13669 clippy::pub_underscore_fields,
13670 clippy::style
13671 )]
13672 const _: () = {
13673 use alloy::sol_types as alloy_sol_types;
13674 {
13675 #[doc(hidden)]
13676 type UnderlyingSolTuple<'a> = (
13677 alloy::sol_types::sol_data::Array<
13678 IDelegationManagerTypes::QueuedWithdrawalParams,
13679 >,
13680 );
13681 #[doc(hidden)]
13682 type UnderlyingRustTuple<'a> = (
13683 alloy::sol_types::private::Vec<
13684 <IDelegationManagerTypes::QueuedWithdrawalParams as alloy::sol_types::SolType>::RustType,
13685 >,
13686 );
13687 #[cfg(test)]
13688 #[allow(dead_code, unreachable_patterns)]
13689 fn _type_assertion(
13690 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13691 ) {
13692 match _t {
13693 alloy_sol_types::private::AssertTypeEq::<
13694 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13695 >(_) => {}
13696 }
13697 }
13698 #[automatically_derived]
13699 #[doc(hidden)]
13700 impl ::core::convert::From<queueWithdrawalsCall>
13701 for UnderlyingRustTuple<'_> {
13702 fn from(value: queueWithdrawalsCall) -> Self {
13703 (value.params,)
13704 }
13705 }
13706 #[automatically_derived]
13707 #[doc(hidden)]
13708 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13709 for queueWithdrawalsCall {
13710 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13711 Self { params: tuple.0 }
13712 }
13713 }
13714 }
13715 {
13716 #[doc(hidden)]
13717 type UnderlyingSolTuple<'a> = (
13718 alloy::sol_types::sol_data::Array<
13719 alloy::sol_types::sol_data::FixedBytes<32>,
13720 >,
13721 );
13722 #[doc(hidden)]
13723 type UnderlyingRustTuple<'a> = (
13724 alloy::sol_types::private::Vec<
13725 alloy::sol_types::private::FixedBytes<32>,
13726 >,
13727 );
13728 #[cfg(test)]
13729 #[allow(dead_code, unreachable_patterns)]
13730 fn _type_assertion(
13731 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13732 ) {
13733 match _t {
13734 alloy_sol_types::private::AssertTypeEq::<
13735 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13736 >(_) => {}
13737 }
13738 }
13739 #[automatically_derived]
13740 #[doc(hidden)]
13741 impl ::core::convert::From<queueWithdrawalsReturn>
13742 for UnderlyingRustTuple<'_> {
13743 fn from(value: queueWithdrawalsReturn) -> Self {
13744 (value._0,)
13745 }
13746 }
13747 #[automatically_derived]
13748 #[doc(hidden)]
13749 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13750 for queueWithdrawalsReturn {
13751 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13752 Self { _0: tuple.0 }
13753 }
13754 }
13755 }
13756 #[automatically_derived]
13757 impl alloy_sol_types::SolCall for queueWithdrawalsCall {
13758 type Parameters<'a> = (
13759 alloy::sol_types::sol_data::Array<
13760 IDelegationManagerTypes::QueuedWithdrawalParams,
13761 >,
13762 );
13763 type Token<'a> = <Self::Parameters<
13764 'a,
13765 > as alloy_sol_types::SolType>::Token<'a>;
13766 type Return = alloy::sol_types::private::Vec<
13767 alloy::sol_types::private::FixedBytes<32>,
13768 >;
13769 type ReturnTuple<'a> = (
13770 alloy::sol_types::sol_data::Array<
13771 alloy::sol_types::sol_data::FixedBytes<32>,
13772 >,
13773 );
13774 type ReturnToken<'a> = <Self::ReturnTuple<
13775 'a,
13776 > as alloy_sol_types::SolType>::Token<'a>;
13777 const SIGNATURE: &'static str = "queueWithdrawals((address[],uint256[],address)[])";
13778 const SELECTOR: [u8; 4] = [13u8, 216u8, 221u8, 2u8];
13779 #[inline]
13780 fn new<'a>(
13781 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13782 ) -> Self {
13783 tuple.into()
13784 }
13785 #[inline]
13786 fn tokenize(&self) -> Self::Token<'_> {
13787 (
13788 <alloy::sol_types::sol_data::Array<
13789 IDelegationManagerTypes::QueuedWithdrawalParams,
13790 > as alloy_sol_types::SolType>::tokenize(&self.params),
13791 )
13792 }
13793 #[inline]
13794 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13795 (
13796 <alloy::sol_types::sol_data::Array<
13797 alloy::sol_types::sol_data::FixedBytes<32>,
13798 > as alloy_sol_types::SolType>::tokenize(ret),
13799 )
13800 }
13801 #[inline]
13802 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13803 <Self::ReturnTuple<
13804 '_,
13805 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13806 .map(|r| {
13807 let r: queueWithdrawalsReturn = r.into();
13808 r._0
13809 })
13810 }
13811 #[inline]
13812 fn abi_decode_returns_validate(
13813 data: &[u8],
13814 ) -> alloy_sol_types::Result<Self::Return> {
13815 <Self::ReturnTuple<
13816 '_,
13817 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13818 .map(|r| {
13819 let r: queueWithdrawalsReturn = r.into();
13820 r._0
13821 })
13822 }
13823 }
13824 };
13825 #[derive(serde::Serialize, serde::Deserialize)]
13826 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13827 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13832 #[derive(Clone)]
13833 pub struct queuedWithdrawalsCall {
13834 #[allow(missing_docs)]
13835 pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
13836 }
13837 #[derive(serde::Serialize, serde::Deserialize)]
13838 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13839 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13841 #[derive(Clone)]
13842 pub struct queuedWithdrawalsReturn {
13843 #[allow(missing_docs)]
13844 pub withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
13845 }
13846 #[allow(
13847 non_camel_case_types,
13848 non_snake_case,
13849 clippy::pub_underscore_fields,
13850 clippy::style
13851 )]
13852 const _: () = {
13853 use alloy::sol_types as alloy_sol_types;
13854 {
13855 #[doc(hidden)]
13856 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
13857 #[doc(hidden)]
13858 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
13859 #[cfg(test)]
13860 #[allow(dead_code, unreachable_patterns)]
13861 fn _type_assertion(
13862 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13863 ) {
13864 match _t {
13865 alloy_sol_types::private::AssertTypeEq::<
13866 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13867 >(_) => {}
13868 }
13869 }
13870 #[automatically_derived]
13871 #[doc(hidden)]
13872 impl ::core::convert::From<queuedWithdrawalsCall>
13873 for UnderlyingRustTuple<'_> {
13874 fn from(value: queuedWithdrawalsCall) -> Self {
13875 (value.withdrawalRoot,)
13876 }
13877 }
13878 #[automatically_derived]
13879 #[doc(hidden)]
13880 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13881 for queuedWithdrawalsCall {
13882 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13883 Self { withdrawalRoot: tuple.0 }
13884 }
13885 }
13886 }
13887 {
13888 #[doc(hidden)]
13889 type UnderlyingSolTuple<'a> = (IDelegationManagerTypes::Withdrawal,);
13890 #[doc(hidden)]
13891 type UnderlyingRustTuple<'a> = (
13892 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
13893 );
13894 #[cfg(test)]
13895 #[allow(dead_code, unreachable_patterns)]
13896 fn _type_assertion(
13897 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
13898 ) {
13899 match _t {
13900 alloy_sol_types::private::AssertTypeEq::<
13901 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
13902 >(_) => {}
13903 }
13904 }
13905 #[automatically_derived]
13906 #[doc(hidden)]
13907 impl ::core::convert::From<queuedWithdrawalsReturn>
13908 for UnderlyingRustTuple<'_> {
13909 fn from(value: queuedWithdrawalsReturn) -> Self {
13910 (value.withdrawal,)
13911 }
13912 }
13913 #[automatically_derived]
13914 #[doc(hidden)]
13915 impl ::core::convert::From<UnderlyingRustTuple<'_>>
13916 for queuedWithdrawalsReturn {
13917 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
13918 Self { withdrawal: tuple.0 }
13919 }
13920 }
13921 }
13922 #[automatically_derived]
13923 impl alloy_sol_types::SolCall for queuedWithdrawalsCall {
13924 type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
13925 type Token<'a> = <Self::Parameters<
13926 'a,
13927 > as alloy_sol_types::SolType>::Token<'a>;
13928 type Return = <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType;
13929 type ReturnTuple<'a> = (IDelegationManagerTypes::Withdrawal,);
13930 type ReturnToken<'a> = <Self::ReturnTuple<
13931 'a,
13932 > as alloy_sol_types::SolType>::Token<'a>;
13933 const SIGNATURE: &'static str = "queuedWithdrawals(bytes32)";
13934 const SELECTOR: [u8; 4] = [153u8, 245u8, 55u8, 27u8];
13935 #[inline]
13936 fn new<'a>(
13937 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
13938 ) -> Self {
13939 tuple.into()
13940 }
13941 #[inline]
13942 fn tokenize(&self) -> Self::Token<'_> {
13943 (
13944 <alloy::sol_types::sol_data::FixedBytes<
13945 32,
13946 > as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot),
13947 )
13948 }
13949 #[inline]
13950 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
13951 (
13952 <IDelegationManagerTypes::Withdrawal as alloy_sol_types::SolType>::tokenize(
13953 ret,
13954 ),
13955 )
13956 }
13957 #[inline]
13958 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
13959 <Self::ReturnTuple<
13960 '_,
13961 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
13962 .map(|r| {
13963 let r: queuedWithdrawalsReturn = r.into();
13964 r.withdrawal
13965 })
13966 }
13967 #[inline]
13968 fn abi_decode_returns_validate(
13969 data: &[u8],
13970 ) -> alloy_sol_types::Result<Self::Return> {
13971 <Self::ReturnTuple<
13972 '_,
13973 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
13974 .map(|r| {
13975 let r: queuedWithdrawalsReturn = r.into();
13976 r.withdrawal
13977 })
13978 }
13979 }
13980 };
13981 #[derive(serde::Serialize, serde::Deserialize)]
13982 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13983 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
13988 #[derive(Clone)]
13989 pub struct redelegateCall {
13990 #[allow(missing_docs)]
13991 pub newOperator: alloy::sol_types::private::Address,
13992 #[allow(missing_docs)]
13993 pub newOperatorApproverSig: <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy::sol_types::SolType>::RustType,
13994 #[allow(missing_docs)]
13995 pub approverSalt: alloy::sol_types::private::FixedBytes<32>,
13996 }
13997 #[derive(serde::Serialize, serde::Deserialize)]
13998 #[derive(Default, Debug, PartialEq, Eq, Hash)]
13999 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14001 #[derive(Clone)]
14002 pub struct redelegateReturn {
14003 #[allow(missing_docs)]
14004 pub withdrawalRoots: alloy::sol_types::private::Vec<
14005 alloy::sol_types::private::FixedBytes<32>,
14006 >,
14007 }
14008 #[allow(
14009 non_camel_case_types,
14010 non_snake_case,
14011 clippy::pub_underscore_fields,
14012 clippy::style
14013 )]
14014 const _: () = {
14015 use alloy::sol_types as alloy_sol_types;
14016 {
14017 #[doc(hidden)]
14018 type UnderlyingSolTuple<'a> = (
14019 alloy::sol_types::sol_data::Address,
14020 ISignatureUtilsMixinTypes::SignatureWithExpiry,
14021 alloy::sol_types::sol_data::FixedBytes<32>,
14022 );
14023 #[doc(hidden)]
14024 type UnderlyingRustTuple<'a> = (
14025 alloy::sol_types::private::Address,
14026 <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy::sol_types::SolType>::RustType,
14027 alloy::sol_types::private::FixedBytes<32>,
14028 );
14029 #[cfg(test)]
14030 #[allow(dead_code, unreachable_patterns)]
14031 fn _type_assertion(
14032 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14033 ) {
14034 match _t {
14035 alloy_sol_types::private::AssertTypeEq::<
14036 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14037 >(_) => {}
14038 }
14039 }
14040 #[automatically_derived]
14041 #[doc(hidden)]
14042 impl ::core::convert::From<redelegateCall> for UnderlyingRustTuple<'_> {
14043 fn from(value: redelegateCall) -> Self {
14044 (value.newOperator, value.newOperatorApproverSig, value.approverSalt)
14045 }
14046 }
14047 #[automatically_derived]
14048 #[doc(hidden)]
14049 impl ::core::convert::From<UnderlyingRustTuple<'_>> for redelegateCall {
14050 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14051 Self {
14052 newOperator: tuple.0,
14053 newOperatorApproverSig: tuple.1,
14054 approverSalt: tuple.2,
14055 }
14056 }
14057 }
14058 }
14059 {
14060 #[doc(hidden)]
14061 type UnderlyingSolTuple<'a> = (
14062 alloy::sol_types::sol_data::Array<
14063 alloy::sol_types::sol_data::FixedBytes<32>,
14064 >,
14065 );
14066 #[doc(hidden)]
14067 type UnderlyingRustTuple<'a> = (
14068 alloy::sol_types::private::Vec<
14069 alloy::sol_types::private::FixedBytes<32>,
14070 >,
14071 );
14072 #[cfg(test)]
14073 #[allow(dead_code, unreachable_patterns)]
14074 fn _type_assertion(
14075 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14076 ) {
14077 match _t {
14078 alloy_sol_types::private::AssertTypeEq::<
14079 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14080 >(_) => {}
14081 }
14082 }
14083 #[automatically_derived]
14084 #[doc(hidden)]
14085 impl ::core::convert::From<redelegateReturn> for UnderlyingRustTuple<'_> {
14086 fn from(value: redelegateReturn) -> Self {
14087 (value.withdrawalRoots,)
14088 }
14089 }
14090 #[automatically_derived]
14091 #[doc(hidden)]
14092 impl ::core::convert::From<UnderlyingRustTuple<'_>> for redelegateReturn {
14093 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14094 Self { withdrawalRoots: tuple.0 }
14095 }
14096 }
14097 }
14098 #[automatically_derived]
14099 impl alloy_sol_types::SolCall for redelegateCall {
14100 type Parameters<'a> = (
14101 alloy::sol_types::sol_data::Address,
14102 ISignatureUtilsMixinTypes::SignatureWithExpiry,
14103 alloy::sol_types::sol_data::FixedBytes<32>,
14104 );
14105 type Token<'a> = <Self::Parameters<
14106 'a,
14107 > as alloy_sol_types::SolType>::Token<'a>;
14108 type Return = alloy::sol_types::private::Vec<
14109 alloy::sol_types::private::FixedBytes<32>,
14110 >;
14111 type ReturnTuple<'a> = (
14112 alloy::sol_types::sol_data::Array<
14113 alloy::sol_types::sol_data::FixedBytes<32>,
14114 >,
14115 );
14116 type ReturnToken<'a> = <Self::ReturnTuple<
14117 'a,
14118 > as alloy_sol_types::SolType>::Token<'a>;
14119 const SIGNATURE: &'static str = "redelegate(address,(bytes,uint256),bytes32)";
14120 const SELECTOR: [u8; 4] = [163u8, 58u8, 52u8, 51u8];
14121 #[inline]
14122 fn new<'a>(
14123 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
14124 ) -> Self {
14125 tuple.into()
14126 }
14127 #[inline]
14128 fn tokenize(&self) -> Self::Token<'_> {
14129 (
14130 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
14131 &self.newOperator,
14132 ),
14133 <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy_sol_types::SolType>::tokenize(
14134 &self.newOperatorApproverSig,
14135 ),
14136 <alloy::sol_types::sol_data::FixedBytes<
14137 32,
14138 > as alloy_sol_types::SolType>::tokenize(&self.approverSalt),
14139 )
14140 }
14141 #[inline]
14142 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
14143 (
14144 <alloy::sol_types::sol_data::Array<
14145 alloy::sol_types::sol_data::FixedBytes<32>,
14146 > as alloy_sol_types::SolType>::tokenize(ret),
14147 )
14148 }
14149 #[inline]
14150 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
14151 <Self::ReturnTuple<
14152 '_,
14153 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
14154 .map(|r| {
14155 let r: redelegateReturn = r.into();
14156 r.withdrawalRoots
14157 })
14158 }
14159 #[inline]
14160 fn abi_decode_returns_validate(
14161 data: &[u8],
14162 ) -> alloy_sol_types::Result<Self::Return> {
14163 <Self::ReturnTuple<
14164 '_,
14165 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
14166 .map(|r| {
14167 let r: redelegateReturn = r.into();
14168 r.withdrawalRoots
14169 })
14170 }
14171 }
14172 };
14173 #[derive(serde::Serialize, serde::Deserialize)]
14174 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14175 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14180 #[derive(Clone)]
14181 pub struct registerAsOperatorCall {
14182 #[allow(missing_docs)]
14183 pub initDelegationApprover: alloy::sol_types::private::Address,
14184 #[allow(missing_docs)]
14185 pub allocationDelay: u32,
14186 #[allow(missing_docs)]
14187 pub metadataURI: alloy::sol_types::private::String,
14188 }
14189 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14191 #[derive(Clone)]
14192 pub struct registerAsOperatorReturn {}
14193 #[allow(
14194 non_camel_case_types,
14195 non_snake_case,
14196 clippy::pub_underscore_fields,
14197 clippy::style
14198 )]
14199 const _: () = {
14200 use alloy::sol_types as alloy_sol_types;
14201 {
14202 #[doc(hidden)]
14203 type UnderlyingSolTuple<'a> = (
14204 alloy::sol_types::sol_data::Address,
14205 alloy::sol_types::sol_data::Uint<32>,
14206 alloy::sol_types::sol_data::String,
14207 );
14208 #[doc(hidden)]
14209 type UnderlyingRustTuple<'a> = (
14210 alloy::sol_types::private::Address,
14211 u32,
14212 alloy::sol_types::private::String,
14213 );
14214 #[cfg(test)]
14215 #[allow(dead_code, unreachable_patterns)]
14216 fn _type_assertion(
14217 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14218 ) {
14219 match _t {
14220 alloy_sol_types::private::AssertTypeEq::<
14221 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14222 >(_) => {}
14223 }
14224 }
14225 #[automatically_derived]
14226 #[doc(hidden)]
14227 impl ::core::convert::From<registerAsOperatorCall>
14228 for UnderlyingRustTuple<'_> {
14229 fn from(value: registerAsOperatorCall) -> Self {
14230 (
14231 value.initDelegationApprover,
14232 value.allocationDelay,
14233 value.metadataURI,
14234 )
14235 }
14236 }
14237 #[automatically_derived]
14238 #[doc(hidden)]
14239 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14240 for registerAsOperatorCall {
14241 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14242 Self {
14243 initDelegationApprover: tuple.0,
14244 allocationDelay: tuple.1,
14245 metadataURI: tuple.2,
14246 }
14247 }
14248 }
14249 }
14250 {
14251 #[doc(hidden)]
14252 type UnderlyingSolTuple<'a> = ();
14253 #[doc(hidden)]
14254 type UnderlyingRustTuple<'a> = ();
14255 #[cfg(test)]
14256 #[allow(dead_code, unreachable_patterns)]
14257 fn _type_assertion(
14258 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14259 ) {
14260 match _t {
14261 alloy_sol_types::private::AssertTypeEq::<
14262 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14263 >(_) => {}
14264 }
14265 }
14266 #[automatically_derived]
14267 #[doc(hidden)]
14268 impl ::core::convert::From<registerAsOperatorReturn>
14269 for UnderlyingRustTuple<'_> {
14270 fn from(value: registerAsOperatorReturn) -> Self {
14271 ()
14272 }
14273 }
14274 #[automatically_derived]
14275 #[doc(hidden)]
14276 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14277 for registerAsOperatorReturn {
14278 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14279 Self {}
14280 }
14281 }
14282 }
14283 impl registerAsOperatorReturn {
14284 fn _tokenize(
14285 &self,
14286 ) -> <registerAsOperatorCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
14287 ()
14288 }
14289 }
14290 #[automatically_derived]
14291 impl alloy_sol_types::SolCall for registerAsOperatorCall {
14292 type Parameters<'a> = (
14293 alloy::sol_types::sol_data::Address,
14294 alloy::sol_types::sol_data::Uint<32>,
14295 alloy::sol_types::sol_data::String,
14296 );
14297 type Token<'a> = <Self::Parameters<
14298 'a,
14299 > as alloy_sol_types::SolType>::Token<'a>;
14300 type Return = registerAsOperatorReturn;
14301 type ReturnTuple<'a> = ();
14302 type ReturnToken<'a> = <Self::ReturnTuple<
14303 'a,
14304 > as alloy_sol_types::SolType>::Token<'a>;
14305 const SIGNATURE: &'static str = "registerAsOperator(address,uint32,string)";
14306 const SELECTOR: [u8; 4] = [42u8, 166u8, 216u8, 136u8];
14307 #[inline]
14308 fn new<'a>(
14309 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
14310 ) -> Self {
14311 tuple.into()
14312 }
14313 #[inline]
14314 fn tokenize(&self) -> Self::Token<'_> {
14315 (
14316 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
14317 &self.initDelegationApprover,
14318 ),
14319 <alloy::sol_types::sol_data::Uint<
14320 32,
14321 > as alloy_sol_types::SolType>::tokenize(&self.allocationDelay),
14322 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
14323 &self.metadataURI,
14324 ),
14325 )
14326 }
14327 #[inline]
14328 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
14329 registerAsOperatorReturn::_tokenize(ret)
14330 }
14331 #[inline]
14332 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
14333 <Self::ReturnTuple<
14334 '_,
14335 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
14336 .map(Into::into)
14337 }
14338 #[inline]
14339 fn abi_decode_returns_validate(
14340 data: &[u8],
14341 ) -> alloy_sol_types::Result<Self::Return> {
14342 <Self::ReturnTuple<
14343 '_,
14344 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
14345 .map(Into::into)
14346 }
14347 }
14348 };
14349 #[derive(serde::Serialize, serde::Deserialize)]
14350 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14351 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14356 #[derive(Clone)]
14357 pub struct renounceOwnershipCall;
14358 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14360 #[derive(Clone)]
14361 pub struct renounceOwnershipReturn {}
14362 #[allow(
14363 non_camel_case_types,
14364 non_snake_case,
14365 clippy::pub_underscore_fields,
14366 clippy::style
14367 )]
14368 const _: () = {
14369 use alloy::sol_types as alloy_sol_types;
14370 {
14371 #[doc(hidden)]
14372 type UnderlyingSolTuple<'a> = ();
14373 #[doc(hidden)]
14374 type UnderlyingRustTuple<'a> = ();
14375 #[cfg(test)]
14376 #[allow(dead_code, unreachable_patterns)]
14377 fn _type_assertion(
14378 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14379 ) {
14380 match _t {
14381 alloy_sol_types::private::AssertTypeEq::<
14382 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14383 >(_) => {}
14384 }
14385 }
14386 #[automatically_derived]
14387 #[doc(hidden)]
14388 impl ::core::convert::From<renounceOwnershipCall>
14389 for UnderlyingRustTuple<'_> {
14390 fn from(value: renounceOwnershipCall) -> Self {
14391 ()
14392 }
14393 }
14394 #[automatically_derived]
14395 #[doc(hidden)]
14396 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14397 for renounceOwnershipCall {
14398 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14399 Self
14400 }
14401 }
14402 }
14403 {
14404 #[doc(hidden)]
14405 type UnderlyingSolTuple<'a> = ();
14406 #[doc(hidden)]
14407 type UnderlyingRustTuple<'a> = ();
14408 #[cfg(test)]
14409 #[allow(dead_code, unreachable_patterns)]
14410 fn _type_assertion(
14411 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14412 ) {
14413 match _t {
14414 alloy_sol_types::private::AssertTypeEq::<
14415 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14416 >(_) => {}
14417 }
14418 }
14419 #[automatically_derived]
14420 #[doc(hidden)]
14421 impl ::core::convert::From<renounceOwnershipReturn>
14422 for UnderlyingRustTuple<'_> {
14423 fn from(value: renounceOwnershipReturn) -> Self {
14424 ()
14425 }
14426 }
14427 #[automatically_derived]
14428 #[doc(hidden)]
14429 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14430 for renounceOwnershipReturn {
14431 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14432 Self {}
14433 }
14434 }
14435 }
14436 impl renounceOwnershipReturn {
14437 fn _tokenize(
14438 &self,
14439 ) -> <renounceOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
14440 ()
14441 }
14442 }
14443 #[automatically_derived]
14444 impl alloy_sol_types::SolCall for renounceOwnershipCall {
14445 type Parameters<'a> = ();
14446 type Token<'a> = <Self::Parameters<
14447 'a,
14448 > as alloy_sol_types::SolType>::Token<'a>;
14449 type Return = renounceOwnershipReturn;
14450 type ReturnTuple<'a> = ();
14451 type ReturnToken<'a> = <Self::ReturnTuple<
14452 'a,
14453 > as alloy_sol_types::SolType>::Token<'a>;
14454 const SIGNATURE: &'static str = "renounceOwnership()";
14455 const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8];
14456 #[inline]
14457 fn new<'a>(
14458 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
14459 ) -> Self {
14460 tuple.into()
14461 }
14462 #[inline]
14463 fn tokenize(&self) -> Self::Token<'_> {
14464 ()
14465 }
14466 #[inline]
14467 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
14468 renounceOwnershipReturn::_tokenize(ret)
14469 }
14470 #[inline]
14471 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
14472 <Self::ReturnTuple<
14473 '_,
14474 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
14475 .map(Into::into)
14476 }
14477 #[inline]
14478 fn abi_decode_returns_validate(
14479 data: &[u8],
14480 ) -> alloy_sol_types::Result<Self::Return> {
14481 <Self::ReturnTuple<
14482 '_,
14483 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
14484 .map(Into::into)
14485 }
14486 }
14487 };
14488 #[derive(serde::Serialize, serde::Deserialize)]
14489 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14490 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14495 #[derive(Clone)]
14496 pub struct slashOperatorSharesCall {
14497 #[allow(missing_docs)]
14498 pub operator: alloy::sol_types::private::Address,
14499 #[allow(missing_docs)]
14500 pub strategy: alloy::sol_types::private::Address,
14501 #[allow(missing_docs)]
14502 pub prevMaxMagnitude: u64,
14503 #[allow(missing_docs)]
14504 pub newMaxMagnitude: u64,
14505 }
14506 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14508 #[derive(Clone)]
14509 pub struct slashOperatorSharesReturn {}
14510 #[allow(
14511 non_camel_case_types,
14512 non_snake_case,
14513 clippy::pub_underscore_fields,
14514 clippy::style
14515 )]
14516 const _: () = {
14517 use alloy::sol_types as alloy_sol_types;
14518 {
14519 #[doc(hidden)]
14520 type UnderlyingSolTuple<'a> = (
14521 alloy::sol_types::sol_data::Address,
14522 alloy::sol_types::sol_data::Address,
14523 alloy::sol_types::sol_data::Uint<64>,
14524 alloy::sol_types::sol_data::Uint<64>,
14525 );
14526 #[doc(hidden)]
14527 type UnderlyingRustTuple<'a> = (
14528 alloy::sol_types::private::Address,
14529 alloy::sol_types::private::Address,
14530 u64,
14531 u64,
14532 );
14533 #[cfg(test)]
14534 #[allow(dead_code, unreachable_patterns)]
14535 fn _type_assertion(
14536 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14537 ) {
14538 match _t {
14539 alloy_sol_types::private::AssertTypeEq::<
14540 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14541 >(_) => {}
14542 }
14543 }
14544 #[automatically_derived]
14545 #[doc(hidden)]
14546 impl ::core::convert::From<slashOperatorSharesCall>
14547 for UnderlyingRustTuple<'_> {
14548 fn from(value: slashOperatorSharesCall) -> Self {
14549 (
14550 value.operator,
14551 value.strategy,
14552 value.prevMaxMagnitude,
14553 value.newMaxMagnitude,
14554 )
14555 }
14556 }
14557 #[automatically_derived]
14558 #[doc(hidden)]
14559 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14560 for slashOperatorSharesCall {
14561 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14562 Self {
14563 operator: tuple.0,
14564 strategy: tuple.1,
14565 prevMaxMagnitude: tuple.2,
14566 newMaxMagnitude: tuple.3,
14567 }
14568 }
14569 }
14570 }
14571 {
14572 #[doc(hidden)]
14573 type UnderlyingSolTuple<'a> = ();
14574 #[doc(hidden)]
14575 type UnderlyingRustTuple<'a> = ();
14576 #[cfg(test)]
14577 #[allow(dead_code, unreachable_patterns)]
14578 fn _type_assertion(
14579 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14580 ) {
14581 match _t {
14582 alloy_sol_types::private::AssertTypeEq::<
14583 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14584 >(_) => {}
14585 }
14586 }
14587 #[automatically_derived]
14588 #[doc(hidden)]
14589 impl ::core::convert::From<slashOperatorSharesReturn>
14590 for UnderlyingRustTuple<'_> {
14591 fn from(value: slashOperatorSharesReturn) -> Self {
14592 ()
14593 }
14594 }
14595 #[automatically_derived]
14596 #[doc(hidden)]
14597 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14598 for slashOperatorSharesReturn {
14599 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14600 Self {}
14601 }
14602 }
14603 }
14604 impl slashOperatorSharesReturn {
14605 fn _tokenize(
14606 &self,
14607 ) -> <slashOperatorSharesCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
14608 ()
14609 }
14610 }
14611 #[automatically_derived]
14612 impl alloy_sol_types::SolCall for slashOperatorSharesCall {
14613 type Parameters<'a> = (
14614 alloy::sol_types::sol_data::Address,
14615 alloy::sol_types::sol_data::Address,
14616 alloy::sol_types::sol_data::Uint<64>,
14617 alloy::sol_types::sol_data::Uint<64>,
14618 );
14619 type Token<'a> = <Self::Parameters<
14620 'a,
14621 > as alloy_sol_types::SolType>::Token<'a>;
14622 type Return = slashOperatorSharesReturn;
14623 type ReturnTuple<'a> = ();
14624 type ReturnToken<'a> = <Self::ReturnTuple<
14625 'a,
14626 > as alloy_sol_types::SolType>::Token<'a>;
14627 const SIGNATURE: &'static str = "slashOperatorShares(address,address,uint64,uint64)";
14628 const SELECTOR: [u8; 4] = [96u8, 27u8, 179u8, 111u8];
14629 #[inline]
14630 fn new<'a>(
14631 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
14632 ) -> Self {
14633 tuple.into()
14634 }
14635 #[inline]
14636 fn tokenize(&self) -> Self::Token<'_> {
14637 (
14638 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
14639 &self.operator,
14640 ),
14641 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
14642 &self.strategy,
14643 ),
14644 <alloy::sol_types::sol_data::Uint<
14645 64,
14646 > as alloy_sol_types::SolType>::tokenize(&self.prevMaxMagnitude),
14647 <alloy::sol_types::sol_data::Uint<
14648 64,
14649 > as alloy_sol_types::SolType>::tokenize(&self.newMaxMagnitude),
14650 )
14651 }
14652 #[inline]
14653 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
14654 slashOperatorSharesReturn::_tokenize(ret)
14655 }
14656 #[inline]
14657 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
14658 <Self::ReturnTuple<
14659 '_,
14660 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
14661 .map(Into::into)
14662 }
14663 #[inline]
14664 fn abi_decode_returns_validate(
14665 data: &[u8],
14666 ) -> alloy_sol_types::Result<Self::Return> {
14667 <Self::ReturnTuple<
14668 '_,
14669 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
14670 .map(Into::into)
14671 }
14672 }
14673 };
14674 #[derive(serde::Serialize, serde::Deserialize)]
14675 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14676 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14681 #[derive(Clone)]
14682 pub struct strategyManagerCall;
14683 #[derive(serde::Serialize, serde::Deserialize)]
14684 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14685 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14687 #[derive(Clone)]
14688 pub struct strategyManagerReturn {
14689 #[allow(missing_docs)]
14690 pub _0: alloy::sol_types::private::Address,
14691 }
14692 #[allow(
14693 non_camel_case_types,
14694 non_snake_case,
14695 clippy::pub_underscore_fields,
14696 clippy::style
14697 )]
14698 const _: () = {
14699 use alloy::sol_types as alloy_sol_types;
14700 {
14701 #[doc(hidden)]
14702 type UnderlyingSolTuple<'a> = ();
14703 #[doc(hidden)]
14704 type UnderlyingRustTuple<'a> = ();
14705 #[cfg(test)]
14706 #[allow(dead_code, unreachable_patterns)]
14707 fn _type_assertion(
14708 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14709 ) {
14710 match _t {
14711 alloy_sol_types::private::AssertTypeEq::<
14712 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14713 >(_) => {}
14714 }
14715 }
14716 #[automatically_derived]
14717 #[doc(hidden)]
14718 impl ::core::convert::From<strategyManagerCall> for UnderlyingRustTuple<'_> {
14719 fn from(value: strategyManagerCall) -> Self {
14720 ()
14721 }
14722 }
14723 #[automatically_derived]
14724 #[doc(hidden)]
14725 impl ::core::convert::From<UnderlyingRustTuple<'_>> for strategyManagerCall {
14726 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14727 Self
14728 }
14729 }
14730 }
14731 {
14732 #[doc(hidden)]
14733 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
14734 #[doc(hidden)]
14735 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
14736 #[cfg(test)]
14737 #[allow(dead_code, unreachable_patterns)]
14738 fn _type_assertion(
14739 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14740 ) {
14741 match _t {
14742 alloy_sol_types::private::AssertTypeEq::<
14743 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14744 >(_) => {}
14745 }
14746 }
14747 #[automatically_derived]
14748 #[doc(hidden)]
14749 impl ::core::convert::From<strategyManagerReturn>
14750 for UnderlyingRustTuple<'_> {
14751 fn from(value: strategyManagerReturn) -> Self {
14752 (value._0,)
14753 }
14754 }
14755 #[automatically_derived]
14756 #[doc(hidden)]
14757 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14758 for strategyManagerReturn {
14759 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14760 Self { _0: tuple.0 }
14761 }
14762 }
14763 }
14764 #[automatically_derived]
14765 impl alloy_sol_types::SolCall for strategyManagerCall {
14766 type Parameters<'a> = ();
14767 type Token<'a> = <Self::Parameters<
14768 'a,
14769 > as alloy_sol_types::SolType>::Token<'a>;
14770 type Return = alloy::sol_types::private::Address;
14771 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
14772 type ReturnToken<'a> = <Self::ReturnTuple<
14773 'a,
14774 > as alloy_sol_types::SolType>::Token<'a>;
14775 const SIGNATURE: &'static str = "strategyManager()";
14776 const SELECTOR: [u8; 4] = [57u8, 183u8, 14u8, 56u8];
14777 #[inline]
14778 fn new<'a>(
14779 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
14780 ) -> Self {
14781 tuple.into()
14782 }
14783 #[inline]
14784 fn tokenize(&self) -> Self::Token<'_> {
14785 ()
14786 }
14787 #[inline]
14788 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
14789 (
14790 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
14791 ret,
14792 ),
14793 )
14794 }
14795 #[inline]
14796 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
14797 <Self::ReturnTuple<
14798 '_,
14799 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
14800 .map(|r| {
14801 let r: strategyManagerReturn = r.into();
14802 r._0
14803 })
14804 }
14805 #[inline]
14806 fn abi_decode_returns_validate(
14807 data: &[u8],
14808 ) -> alloy_sol_types::Result<Self::Return> {
14809 <Self::ReturnTuple<
14810 '_,
14811 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
14812 .map(|r| {
14813 let r: strategyManagerReturn = r.into();
14814 r._0
14815 })
14816 }
14817 }
14818 };
14819 #[derive(serde::Serialize, serde::Deserialize)]
14820 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14821 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14826 #[derive(Clone)]
14827 pub struct transferOwnershipCall {
14828 #[allow(missing_docs)]
14829 pub newOwner: alloy::sol_types::private::Address,
14830 }
14831 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14833 #[derive(Clone)]
14834 pub struct transferOwnershipReturn {}
14835 #[allow(
14836 non_camel_case_types,
14837 non_snake_case,
14838 clippy::pub_underscore_fields,
14839 clippy::style
14840 )]
14841 const _: () = {
14842 use alloy::sol_types as alloy_sol_types;
14843 {
14844 #[doc(hidden)]
14845 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
14846 #[doc(hidden)]
14847 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
14848 #[cfg(test)]
14849 #[allow(dead_code, unreachable_patterns)]
14850 fn _type_assertion(
14851 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14852 ) {
14853 match _t {
14854 alloy_sol_types::private::AssertTypeEq::<
14855 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14856 >(_) => {}
14857 }
14858 }
14859 #[automatically_derived]
14860 #[doc(hidden)]
14861 impl ::core::convert::From<transferOwnershipCall>
14862 for UnderlyingRustTuple<'_> {
14863 fn from(value: transferOwnershipCall) -> Self {
14864 (value.newOwner,)
14865 }
14866 }
14867 #[automatically_derived]
14868 #[doc(hidden)]
14869 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14870 for transferOwnershipCall {
14871 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14872 Self { newOwner: tuple.0 }
14873 }
14874 }
14875 }
14876 {
14877 #[doc(hidden)]
14878 type UnderlyingSolTuple<'a> = ();
14879 #[doc(hidden)]
14880 type UnderlyingRustTuple<'a> = ();
14881 #[cfg(test)]
14882 #[allow(dead_code, unreachable_patterns)]
14883 fn _type_assertion(
14884 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
14885 ) {
14886 match _t {
14887 alloy_sol_types::private::AssertTypeEq::<
14888 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
14889 >(_) => {}
14890 }
14891 }
14892 #[automatically_derived]
14893 #[doc(hidden)]
14894 impl ::core::convert::From<transferOwnershipReturn>
14895 for UnderlyingRustTuple<'_> {
14896 fn from(value: transferOwnershipReturn) -> Self {
14897 ()
14898 }
14899 }
14900 #[automatically_derived]
14901 #[doc(hidden)]
14902 impl ::core::convert::From<UnderlyingRustTuple<'_>>
14903 for transferOwnershipReturn {
14904 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
14905 Self {}
14906 }
14907 }
14908 }
14909 impl transferOwnershipReturn {
14910 fn _tokenize(
14911 &self,
14912 ) -> <transferOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
14913 ()
14914 }
14915 }
14916 #[automatically_derived]
14917 impl alloy_sol_types::SolCall for transferOwnershipCall {
14918 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
14919 type Token<'a> = <Self::Parameters<
14920 'a,
14921 > as alloy_sol_types::SolType>::Token<'a>;
14922 type Return = transferOwnershipReturn;
14923 type ReturnTuple<'a> = ();
14924 type ReturnToken<'a> = <Self::ReturnTuple<
14925 'a,
14926 > as alloy_sol_types::SolType>::Token<'a>;
14927 const SIGNATURE: &'static str = "transferOwnership(address)";
14928 const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8];
14929 #[inline]
14930 fn new<'a>(
14931 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
14932 ) -> Self {
14933 tuple.into()
14934 }
14935 #[inline]
14936 fn tokenize(&self) -> Self::Token<'_> {
14937 (
14938 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
14939 &self.newOwner,
14940 ),
14941 )
14942 }
14943 #[inline]
14944 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
14945 transferOwnershipReturn::_tokenize(ret)
14946 }
14947 #[inline]
14948 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
14949 <Self::ReturnTuple<
14950 '_,
14951 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
14952 .map(Into::into)
14953 }
14954 #[inline]
14955 fn abi_decode_returns_validate(
14956 data: &[u8],
14957 ) -> alloy_sol_types::Result<Self::Return> {
14958 <Self::ReturnTuple<
14959 '_,
14960 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
14961 .map(Into::into)
14962 }
14963 }
14964 };
14965 #[derive(serde::Serialize, serde::Deserialize)]
14966 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14967 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14972 #[derive(Clone)]
14973 pub struct undelegateCall {
14974 #[allow(missing_docs)]
14975 pub staker: alloy::sol_types::private::Address,
14976 }
14977 #[derive(serde::Serialize, serde::Deserialize)]
14978 #[derive(Default, Debug, PartialEq, Eq, Hash)]
14979 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
14981 #[derive(Clone)]
14982 pub struct undelegateReturn {
14983 #[allow(missing_docs)]
14984 pub withdrawalRoots: alloy::sol_types::private::Vec<
14985 alloy::sol_types::private::FixedBytes<32>,
14986 >,
14987 }
14988 #[allow(
14989 non_camel_case_types,
14990 non_snake_case,
14991 clippy::pub_underscore_fields,
14992 clippy::style
14993 )]
14994 const _: () = {
14995 use alloy::sol_types as alloy_sol_types;
14996 {
14997 #[doc(hidden)]
14998 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
14999 #[doc(hidden)]
15000 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
15001 #[cfg(test)]
15002 #[allow(dead_code, unreachable_patterns)]
15003 fn _type_assertion(
15004 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15005 ) {
15006 match _t {
15007 alloy_sol_types::private::AssertTypeEq::<
15008 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15009 >(_) => {}
15010 }
15011 }
15012 #[automatically_derived]
15013 #[doc(hidden)]
15014 impl ::core::convert::From<undelegateCall> for UnderlyingRustTuple<'_> {
15015 fn from(value: undelegateCall) -> Self {
15016 (value.staker,)
15017 }
15018 }
15019 #[automatically_derived]
15020 #[doc(hidden)]
15021 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegateCall {
15022 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15023 Self { staker: tuple.0 }
15024 }
15025 }
15026 }
15027 {
15028 #[doc(hidden)]
15029 type UnderlyingSolTuple<'a> = (
15030 alloy::sol_types::sol_data::Array<
15031 alloy::sol_types::sol_data::FixedBytes<32>,
15032 >,
15033 );
15034 #[doc(hidden)]
15035 type UnderlyingRustTuple<'a> = (
15036 alloy::sol_types::private::Vec<
15037 alloy::sol_types::private::FixedBytes<32>,
15038 >,
15039 );
15040 #[cfg(test)]
15041 #[allow(dead_code, unreachable_patterns)]
15042 fn _type_assertion(
15043 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15044 ) {
15045 match _t {
15046 alloy_sol_types::private::AssertTypeEq::<
15047 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15048 >(_) => {}
15049 }
15050 }
15051 #[automatically_derived]
15052 #[doc(hidden)]
15053 impl ::core::convert::From<undelegateReturn> for UnderlyingRustTuple<'_> {
15054 fn from(value: undelegateReturn) -> Self {
15055 (value.withdrawalRoots,)
15056 }
15057 }
15058 #[automatically_derived]
15059 #[doc(hidden)]
15060 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegateReturn {
15061 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15062 Self { withdrawalRoots: tuple.0 }
15063 }
15064 }
15065 }
15066 #[automatically_derived]
15067 impl alloy_sol_types::SolCall for undelegateCall {
15068 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
15069 type Token<'a> = <Self::Parameters<
15070 'a,
15071 > as alloy_sol_types::SolType>::Token<'a>;
15072 type Return = alloy::sol_types::private::Vec<
15073 alloy::sol_types::private::FixedBytes<32>,
15074 >;
15075 type ReturnTuple<'a> = (
15076 alloy::sol_types::sol_data::Array<
15077 alloy::sol_types::sol_data::FixedBytes<32>,
15078 >,
15079 );
15080 type ReturnToken<'a> = <Self::ReturnTuple<
15081 'a,
15082 > as alloy_sol_types::SolType>::Token<'a>;
15083 const SIGNATURE: &'static str = "undelegate(address)";
15084 const SELECTOR: [u8; 4] = [218u8, 139u8, 232u8, 100u8];
15085 #[inline]
15086 fn new<'a>(
15087 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
15088 ) -> Self {
15089 tuple.into()
15090 }
15091 #[inline]
15092 fn tokenize(&self) -> Self::Token<'_> {
15093 (
15094 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
15095 &self.staker,
15096 ),
15097 )
15098 }
15099 #[inline]
15100 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
15101 (
15102 <alloy::sol_types::sol_data::Array<
15103 alloy::sol_types::sol_data::FixedBytes<32>,
15104 > as alloy_sol_types::SolType>::tokenize(ret),
15105 )
15106 }
15107 #[inline]
15108 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
15109 <Self::ReturnTuple<
15110 '_,
15111 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
15112 .map(|r| {
15113 let r: undelegateReturn = r.into();
15114 r.withdrawalRoots
15115 })
15116 }
15117 #[inline]
15118 fn abi_decode_returns_validate(
15119 data: &[u8],
15120 ) -> alloy_sol_types::Result<Self::Return> {
15121 <Self::ReturnTuple<
15122 '_,
15123 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
15124 .map(|r| {
15125 let r: undelegateReturn = r.into();
15126 r.withdrawalRoots
15127 })
15128 }
15129 }
15130 };
15131 #[derive(serde::Serialize, serde::Deserialize)]
15132 #[derive(Default, Debug, PartialEq, Eq, Hash)]
15133 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
15138 #[derive(Clone)]
15139 pub struct unpauseCall {
15140 #[allow(missing_docs)]
15141 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
15142 }
15143 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
15145 #[derive(Clone)]
15146 pub struct unpauseReturn {}
15147 #[allow(
15148 non_camel_case_types,
15149 non_snake_case,
15150 clippy::pub_underscore_fields,
15151 clippy::style
15152 )]
15153 const _: () = {
15154 use alloy::sol_types as alloy_sol_types;
15155 {
15156 #[doc(hidden)]
15157 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
15158 #[doc(hidden)]
15159 type UnderlyingRustTuple<'a> = (
15160 alloy::sol_types::private::primitives::aliases::U256,
15161 );
15162 #[cfg(test)]
15163 #[allow(dead_code, unreachable_patterns)]
15164 fn _type_assertion(
15165 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15166 ) {
15167 match _t {
15168 alloy_sol_types::private::AssertTypeEq::<
15169 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15170 >(_) => {}
15171 }
15172 }
15173 #[automatically_derived]
15174 #[doc(hidden)]
15175 impl ::core::convert::From<unpauseCall> for UnderlyingRustTuple<'_> {
15176 fn from(value: unpauseCall) -> Self {
15177 (value.newPausedStatus,)
15178 }
15179 }
15180 #[automatically_derived]
15181 #[doc(hidden)]
15182 impl ::core::convert::From<UnderlyingRustTuple<'_>> for unpauseCall {
15183 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15184 Self { newPausedStatus: tuple.0 }
15185 }
15186 }
15187 }
15188 {
15189 #[doc(hidden)]
15190 type UnderlyingSolTuple<'a> = ();
15191 #[doc(hidden)]
15192 type UnderlyingRustTuple<'a> = ();
15193 #[cfg(test)]
15194 #[allow(dead_code, unreachable_patterns)]
15195 fn _type_assertion(
15196 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15197 ) {
15198 match _t {
15199 alloy_sol_types::private::AssertTypeEq::<
15200 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15201 >(_) => {}
15202 }
15203 }
15204 #[automatically_derived]
15205 #[doc(hidden)]
15206 impl ::core::convert::From<unpauseReturn> for UnderlyingRustTuple<'_> {
15207 fn from(value: unpauseReturn) -> Self {
15208 ()
15209 }
15210 }
15211 #[automatically_derived]
15212 #[doc(hidden)]
15213 impl ::core::convert::From<UnderlyingRustTuple<'_>> for unpauseReturn {
15214 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15215 Self {}
15216 }
15217 }
15218 }
15219 impl unpauseReturn {
15220 fn _tokenize(
15221 &self,
15222 ) -> <unpauseCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
15223 ()
15224 }
15225 }
15226 #[automatically_derived]
15227 impl alloy_sol_types::SolCall for unpauseCall {
15228 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
15229 type Token<'a> = <Self::Parameters<
15230 'a,
15231 > as alloy_sol_types::SolType>::Token<'a>;
15232 type Return = unpauseReturn;
15233 type ReturnTuple<'a> = ();
15234 type ReturnToken<'a> = <Self::ReturnTuple<
15235 'a,
15236 > as alloy_sol_types::SolType>::Token<'a>;
15237 const SIGNATURE: &'static str = "unpause(uint256)";
15238 const SELECTOR: [u8; 4] = [250u8, 188u8, 28u8, 188u8];
15239 #[inline]
15240 fn new<'a>(
15241 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
15242 ) -> Self {
15243 tuple.into()
15244 }
15245 #[inline]
15246 fn tokenize(&self) -> Self::Token<'_> {
15247 (
15248 <alloy::sol_types::sol_data::Uint<
15249 256,
15250 > as alloy_sol_types::SolType>::tokenize(&self.newPausedStatus),
15251 )
15252 }
15253 #[inline]
15254 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
15255 unpauseReturn::_tokenize(ret)
15256 }
15257 #[inline]
15258 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
15259 <Self::ReturnTuple<
15260 '_,
15261 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
15262 .map(Into::into)
15263 }
15264 #[inline]
15265 fn abi_decode_returns_validate(
15266 data: &[u8],
15267 ) -> alloy_sol_types::Result<Self::Return> {
15268 <Self::ReturnTuple<
15269 '_,
15270 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
15271 .map(Into::into)
15272 }
15273 }
15274 };
15275 #[derive(serde::Serialize, serde::Deserialize)]
15276 #[derive(Default, Debug, PartialEq, Eq, Hash)]
15277 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
15282 #[derive(Clone)]
15283 pub struct updateOperatorMetadataURICall {
15284 #[allow(missing_docs)]
15285 pub operator: alloy::sol_types::private::Address,
15286 #[allow(missing_docs)]
15287 pub metadataURI: alloy::sol_types::private::String,
15288 }
15289 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
15291 #[derive(Clone)]
15292 pub struct updateOperatorMetadataURIReturn {}
15293 #[allow(
15294 non_camel_case_types,
15295 non_snake_case,
15296 clippy::pub_underscore_fields,
15297 clippy::style
15298 )]
15299 const _: () = {
15300 use alloy::sol_types as alloy_sol_types;
15301 {
15302 #[doc(hidden)]
15303 type UnderlyingSolTuple<'a> = (
15304 alloy::sol_types::sol_data::Address,
15305 alloy::sol_types::sol_data::String,
15306 );
15307 #[doc(hidden)]
15308 type UnderlyingRustTuple<'a> = (
15309 alloy::sol_types::private::Address,
15310 alloy::sol_types::private::String,
15311 );
15312 #[cfg(test)]
15313 #[allow(dead_code, unreachable_patterns)]
15314 fn _type_assertion(
15315 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15316 ) {
15317 match _t {
15318 alloy_sol_types::private::AssertTypeEq::<
15319 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15320 >(_) => {}
15321 }
15322 }
15323 #[automatically_derived]
15324 #[doc(hidden)]
15325 impl ::core::convert::From<updateOperatorMetadataURICall>
15326 for UnderlyingRustTuple<'_> {
15327 fn from(value: updateOperatorMetadataURICall) -> Self {
15328 (value.operator, value.metadataURI)
15329 }
15330 }
15331 #[automatically_derived]
15332 #[doc(hidden)]
15333 impl ::core::convert::From<UnderlyingRustTuple<'_>>
15334 for updateOperatorMetadataURICall {
15335 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15336 Self {
15337 operator: tuple.0,
15338 metadataURI: tuple.1,
15339 }
15340 }
15341 }
15342 }
15343 {
15344 #[doc(hidden)]
15345 type UnderlyingSolTuple<'a> = ();
15346 #[doc(hidden)]
15347 type UnderlyingRustTuple<'a> = ();
15348 #[cfg(test)]
15349 #[allow(dead_code, unreachable_patterns)]
15350 fn _type_assertion(
15351 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15352 ) {
15353 match _t {
15354 alloy_sol_types::private::AssertTypeEq::<
15355 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15356 >(_) => {}
15357 }
15358 }
15359 #[automatically_derived]
15360 #[doc(hidden)]
15361 impl ::core::convert::From<updateOperatorMetadataURIReturn>
15362 for UnderlyingRustTuple<'_> {
15363 fn from(value: updateOperatorMetadataURIReturn) -> Self {
15364 ()
15365 }
15366 }
15367 #[automatically_derived]
15368 #[doc(hidden)]
15369 impl ::core::convert::From<UnderlyingRustTuple<'_>>
15370 for updateOperatorMetadataURIReturn {
15371 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15372 Self {}
15373 }
15374 }
15375 }
15376 impl updateOperatorMetadataURIReturn {
15377 fn _tokenize(
15378 &self,
15379 ) -> <updateOperatorMetadataURICall as alloy_sol_types::SolCall>::ReturnToken<
15380 '_,
15381 > {
15382 ()
15383 }
15384 }
15385 #[automatically_derived]
15386 impl alloy_sol_types::SolCall for updateOperatorMetadataURICall {
15387 type Parameters<'a> = (
15388 alloy::sol_types::sol_data::Address,
15389 alloy::sol_types::sol_data::String,
15390 );
15391 type Token<'a> = <Self::Parameters<
15392 'a,
15393 > as alloy_sol_types::SolType>::Token<'a>;
15394 type Return = updateOperatorMetadataURIReturn;
15395 type ReturnTuple<'a> = ();
15396 type ReturnToken<'a> = <Self::ReturnTuple<
15397 'a,
15398 > as alloy_sol_types::SolType>::Token<'a>;
15399 const SIGNATURE: &'static str = "updateOperatorMetadataURI(address,string)";
15400 const SELECTOR: [u8; 4] = [120u8, 41u8, 110u8, 197u8];
15401 #[inline]
15402 fn new<'a>(
15403 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
15404 ) -> Self {
15405 tuple.into()
15406 }
15407 #[inline]
15408 fn tokenize(&self) -> Self::Token<'_> {
15409 (
15410 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
15411 &self.operator,
15412 ),
15413 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
15414 &self.metadataURI,
15415 ),
15416 )
15417 }
15418 #[inline]
15419 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
15420 updateOperatorMetadataURIReturn::_tokenize(ret)
15421 }
15422 #[inline]
15423 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
15424 <Self::ReturnTuple<
15425 '_,
15426 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
15427 .map(Into::into)
15428 }
15429 #[inline]
15430 fn abi_decode_returns_validate(
15431 data: &[u8],
15432 ) -> alloy_sol_types::Result<Self::Return> {
15433 <Self::ReturnTuple<
15434 '_,
15435 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
15436 .map(Into::into)
15437 }
15438 }
15439 };
15440 #[derive(serde::Serialize, serde::Deserialize)]
15441 #[derive(Default, Debug, PartialEq, Eq, Hash)]
15442 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
15447 #[derive(Clone)]
15448 pub struct versionCall;
15449 #[derive(serde::Serialize, serde::Deserialize)]
15450 #[derive(Default, Debug, PartialEq, Eq, Hash)]
15451 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
15453 #[derive(Clone)]
15454 pub struct versionReturn {
15455 #[allow(missing_docs)]
15456 pub _0: alloy::sol_types::private::String,
15457 }
15458 #[allow(
15459 non_camel_case_types,
15460 non_snake_case,
15461 clippy::pub_underscore_fields,
15462 clippy::style
15463 )]
15464 const _: () = {
15465 use alloy::sol_types as alloy_sol_types;
15466 {
15467 #[doc(hidden)]
15468 type UnderlyingSolTuple<'a> = ();
15469 #[doc(hidden)]
15470 type UnderlyingRustTuple<'a> = ();
15471 #[cfg(test)]
15472 #[allow(dead_code, unreachable_patterns)]
15473 fn _type_assertion(
15474 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15475 ) {
15476 match _t {
15477 alloy_sol_types::private::AssertTypeEq::<
15478 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15479 >(_) => {}
15480 }
15481 }
15482 #[automatically_derived]
15483 #[doc(hidden)]
15484 impl ::core::convert::From<versionCall> for UnderlyingRustTuple<'_> {
15485 fn from(value: versionCall) -> Self {
15486 ()
15487 }
15488 }
15489 #[automatically_derived]
15490 #[doc(hidden)]
15491 impl ::core::convert::From<UnderlyingRustTuple<'_>> for versionCall {
15492 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15493 Self
15494 }
15495 }
15496 }
15497 {
15498 #[doc(hidden)]
15499 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
15500 #[doc(hidden)]
15501 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
15502 #[cfg(test)]
15503 #[allow(dead_code, unreachable_patterns)]
15504 fn _type_assertion(
15505 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
15506 ) {
15507 match _t {
15508 alloy_sol_types::private::AssertTypeEq::<
15509 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
15510 >(_) => {}
15511 }
15512 }
15513 #[automatically_derived]
15514 #[doc(hidden)]
15515 impl ::core::convert::From<versionReturn> for UnderlyingRustTuple<'_> {
15516 fn from(value: versionReturn) -> Self {
15517 (value._0,)
15518 }
15519 }
15520 #[automatically_derived]
15521 #[doc(hidden)]
15522 impl ::core::convert::From<UnderlyingRustTuple<'_>> for versionReturn {
15523 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
15524 Self { _0: tuple.0 }
15525 }
15526 }
15527 }
15528 #[automatically_derived]
15529 impl alloy_sol_types::SolCall for versionCall {
15530 type Parameters<'a> = ();
15531 type Token<'a> = <Self::Parameters<
15532 'a,
15533 > as alloy_sol_types::SolType>::Token<'a>;
15534 type Return = alloy::sol_types::private::String;
15535 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
15536 type ReturnToken<'a> = <Self::ReturnTuple<
15537 'a,
15538 > as alloy_sol_types::SolType>::Token<'a>;
15539 const SIGNATURE: &'static str = "version()";
15540 const SELECTOR: [u8; 4] = [84u8, 253u8, 77u8, 80u8];
15541 #[inline]
15542 fn new<'a>(
15543 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
15544 ) -> Self {
15545 tuple.into()
15546 }
15547 #[inline]
15548 fn tokenize(&self) -> Self::Token<'_> {
15549 ()
15550 }
15551 #[inline]
15552 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
15553 (
15554 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
15555 ret,
15556 ),
15557 )
15558 }
15559 #[inline]
15560 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
15561 <Self::ReturnTuple<
15562 '_,
15563 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
15564 .map(|r| {
15565 let r: versionReturn = r.into();
15566 r._0
15567 })
15568 }
15569 #[inline]
15570 fn abi_decode_returns_validate(
15571 data: &[u8],
15572 ) -> alloy_sol_types::Result<Self::Return> {
15573 <Self::ReturnTuple<
15574 '_,
15575 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
15576 .map(|r| {
15577 let r: versionReturn = r.into();
15578 r._0
15579 })
15580 }
15581 }
15582 };
15583 #[derive(serde::Serialize, serde::Deserialize)]
15585 #[derive()]
15586 pub enum DelegationManagerCalls {
15587 #[allow(missing_docs)]
15588 DELEGATION_APPROVAL_TYPEHASH(DELEGATION_APPROVAL_TYPEHASHCall),
15589 #[allow(missing_docs)]
15590 allocationManager(allocationManagerCall),
15591 #[allow(missing_docs)]
15592 beaconChainETHStrategy(beaconChainETHStrategyCall),
15593 #[allow(missing_docs)]
15594 calculateDelegationApprovalDigestHash(calculateDelegationApprovalDigestHashCall),
15595 #[allow(missing_docs)]
15596 calculateWithdrawalRoot(calculateWithdrawalRootCall),
15597 #[allow(missing_docs)]
15598 completeQueuedWithdrawal(completeQueuedWithdrawalCall),
15599 #[allow(missing_docs)]
15600 completeQueuedWithdrawals(completeQueuedWithdrawalsCall),
15601 #[allow(missing_docs)]
15602 convertToDepositShares(convertToDepositSharesCall),
15603 #[allow(missing_docs)]
15604 cumulativeWithdrawalsQueued(cumulativeWithdrawalsQueuedCall),
15605 #[allow(missing_docs)]
15606 decreaseDelegatedShares(decreaseDelegatedSharesCall),
15607 #[allow(missing_docs)]
15608 delegateTo(delegateToCall),
15609 #[allow(missing_docs)]
15610 delegatedTo(delegatedToCall),
15611 #[allow(missing_docs)]
15612 delegationApprover(delegationApproverCall),
15613 #[allow(missing_docs)]
15614 delegationApproverSaltIsSpent(delegationApproverSaltIsSpentCall),
15615 #[allow(missing_docs)]
15616 depositScalingFactor(depositScalingFactorCall),
15617 #[allow(missing_docs)]
15618 domainSeparator(domainSeparatorCall),
15619 #[allow(missing_docs)]
15620 eigenPodManager(eigenPodManagerCall),
15621 #[allow(missing_docs)]
15622 getDepositedShares(getDepositedSharesCall),
15623 #[allow(missing_docs)]
15624 getOperatorShares(getOperatorSharesCall),
15625 #[allow(missing_docs)]
15626 getOperatorsShares(getOperatorsSharesCall),
15627 #[allow(missing_docs)]
15628 getQueuedWithdrawal(getQueuedWithdrawalCall),
15629 #[allow(missing_docs)]
15630 getQueuedWithdrawalRoots(getQueuedWithdrawalRootsCall),
15631 #[allow(missing_docs)]
15632 getQueuedWithdrawals(getQueuedWithdrawalsCall),
15633 #[allow(missing_docs)]
15634 getSlashableSharesInQueue(getSlashableSharesInQueueCall),
15635 #[allow(missing_docs)]
15636 getWithdrawableShares(getWithdrawableSharesCall),
15637 #[allow(missing_docs)]
15638 increaseDelegatedShares(increaseDelegatedSharesCall),
15639 #[allow(missing_docs)]
15640 initialize(initializeCall),
15641 #[allow(missing_docs)]
15642 isDelegated(isDelegatedCall),
15643 #[allow(missing_docs)]
15644 isOperator(isOperatorCall),
15645 #[allow(missing_docs)]
15646 minWithdrawalDelayBlocks(minWithdrawalDelayBlocksCall),
15647 #[allow(missing_docs)]
15648 modifyOperatorDetails(modifyOperatorDetailsCall),
15649 #[allow(missing_docs)]
15650 operatorShares(operatorSharesCall),
15651 #[allow(missing_docs)]
15652 owner(ownerCall),
15653 #[allow(missing_docs)]
15654 pause(pauseCall),
15655 #[allow(missing_docs)]
15656 pauseAll(pauseAllCall),
15657 #[allow(missing_docs)]
15658 paused_0(paused_0Call),
15659 #[allow(missing_docs)]
15660 paused_1(paused_1Call),
15661 #[allow(missing_docs)]
15662 pauserRegistry(pauserRegistryCall),
15663 #[allow(missing_docs)]
15664 pendingWithdrawals(pendingWithdrawalsCall),
15665 #[allow(missing_docs)]
15666 permissionController(permissionControllerCall),
15667 #[allow(missing_docs)]
15668 queueWithdrawals(queueWithdrawalsCall),
15669 #[allow(missing_docs)]
15670 queuedWithdrawals(queuedWithdrawalsCall),
15671 #[allow(missing_docs)]
15672 redelegate(redelegateCall),
15673 #[allow(missing_docs)]
15674 registerAsOperator(registerAsOperatorCall),
15675 #[allow(missing_docs)]
15676 renounceOwnership(renounceOwnershipCall),
15677 #[allow(missing_docs)]
15678 slashOperatorShares(slashOperatorSharesCall),
15679 #[allow(missing_docs)]
15680 strategyManager(strategyManagerCall),
15681 #[allow(missing_docs)]
15682 transferOwnership(transferOwnershipCall),
15683 #[allow(missing_docs)]
15684 undelegate(undelegateCall),
15685 #[allow(missing_docs)]
15686 unpause(unpauseCall),
15687 #[allow(missing_docs)]
15688 updateOperatorMetadataURI(updateOperatorMetadataURICall),
15689 #[allow(missing_docs)]
15690 version(versionCall),
15691 }
15692 #[automatically_derived]
15693 impl DelegationManagerCalls {
15694 pub const SELECTORS: &'static [[u8; 4usize]] = &[
15701 [4u8, 164u8, 249u8, 121u8],
15702 [11u8, 159u8, 72u8, 122u8],
15703 [13u8, 216u8, 221u8, 2u8],
15704 [19u8, 100u8, 57u8, 221u8],
15705 [37u8, 223u8, 146u8, 46u8],
15706 [42u8, 166u8, 216u8, 136u8],
15707 [57u8, 183u8, 14u8, 56u8],
15708 [60u8, 101u8, 28u8, 242u8],
15709 [60u8, 222u8, 181u8, 224u8],
15710 [62u8, 40u8, 57u8, 29u8],
15711 [70u8, 87u8, 226u8, 106u8],
15712 [70u8, 101u8, 188u8, 218u8],
15713 [84u8, 183u8, 201u8, 108u8],
15714 [84u8, 253u8, 77u8, 80u8],
15715 [89u8, 92u8, 106u8, 103u8],
15716 [89u8, 123u8, 54u8, 218u8],
15717 [90u8, 200u8, 106u8, 183u8],
15718 [92u8, 151u8, 90u8, 187u8],
15719 [93u8, 151u8, 94u8, 136u8],
15720 [93u8, 214u8, 133u8, 121u8],
15721 [96u8, 27u8, 179u8, 111u8],
15722 [96u8, 160u8, 209u8, 206u8],
15723 [101u8, 218u8, 18u8, 100u8],
15724 [102u8, 213u8, 186u8, 147u8],
15725 [109u8, 112u8, 247u8, 174u8],
15726 [110u8, 23u8, 68u8, 72u8],
15727 [113u8, 80u8, 24u8, 166u8],
15728 [119u8, 142u8, 85u8, 243u8],
15729 [120u8, 41u8, 110u8, 197u8],
15730 [136u8, 111u8, 17u8, 149u8],
15731 [141u8, 165u8, 203u8, 91u8],
15732 [144u8, 4u8, 19u8, 71u8],
15733 [145u8, 4u8, 195u8, 25u8],
15734 [148u8, 53u8, 187u8, 67u8],
15735 [153u8, 245u8, 55u8, 27u8],
15736 [161u8, 120u8, 132u8, 132u8],
15737 [163u8, 58u8, 52u8, 51u8],
15738 [183u8, 240u8, 110u8, 190u8],
15739 [187u8, 69u8, 254u8, 242u8],
15740 [191u8, 174u8, 63u8, 210u8],
15741 [196u8, 72u8, 254u8, 184u8],
15742 [201u8, 120u8, 247u8, 172u8],
15743 [202u8, 138u8, 167u8, 199u8],
15744 [205u8, 109u8, 198u8, 135u8],
15745 [218u8, 139u8, 232u8, 100u8],
15746 [228u8, 204u8, 63u8, 144u8],
15747 [238u8, 169u8, 6u8, 75u8],
15748 [240u8, 224u8, 230u8, 118u8],
15749 [242u8, 253u8, 227u8, 139u8],
15750 [246u8, 152u8, 218u8, 37u8],
15751 [250u8, 188u8, 28u8, 188u8],
15752 [253u8, 138u8, 168u8, 141u8],
15753 ];
15754 }
15755 #[automatically_derived]
15756 impl alloy_sol_types::SolInterface for DelegationManagerCalls {
15757 const NAME: &'static str = "DelegationManagerCalls";
15758 const MIN_DATA_LENGTH: usize = 0usize;
15759 const COUNT: usize = 52usize;
15760 #[inline]
15761 fn selector(&self) -> [u8; 4] {
15762 match self {
15763 Self::DELEGATION_APPROVAL_TYPEHASH(_) => {
15764 <DELEGATION_APPROVAL_TYPEHASHCall as alloy_sol_types::SolCall>::SELECTOR
15765 }
15766 Self::allocationManager(_) => {
15767 <allocationManagerCall as alloy_sol_types::SolCall>::SELECTOR
15768 }
15769 Self::beaconChainETHStrategy(_) => {
15770 <beaconChainETHStrategyCall as alloy_sol_types::SolCall>::SELECTOR
15771 }
15772 Self::calculateDelegationApprovalDigestHash(_) => {
15773 <calculateDelegationApprovalDigestHashCall as alloy_sol_types::SolCall>::SELECTOR
15774 }
15775 Self::calculateWithdrawalRoot(_) => {
15776 <calculateWithdrawalRootCall as alloy_sol_types::SolCall>::SELECTOR
15777 }
15778 Self::completeQueuedWithdrawal(_) => {
15779 <completeQueuedWithdrawalCall as alloy_sol_types::SolCall>::SELECTOR
15780 }
15781 Self::completeQueuedWithdrawals(_) => {
15782 <completeQueuedWithdrawalsCall as alloy_sol_types::SolCall>::SELECTOR
15783 }
15784 Self::convertToDepositShares(_) => {
15785 <convertToDepositSharesCall as alloy_sol_types::SolCall>::SELECTOR
15786 }
15787 Self::cumulativeWithdrawalsQueued(_) => {
15788 <cumulativeWithdrawalsQueuedCall as alloy_sol_types::SolCall>::SELECTOR
15789 }
15790 Self::decreaseDelegatedShares(_) => {
15791 <decreaseDelegatedSharesCall as alloy_sol_types::SolCall>::SELECTOR
15792 }
15793 Self::delegateTo(_) => {
15794 <delegateToCall as alloy_sol_types::SolCall>::SELECTOR
15795 }
15796 Self::delegatedTo(_) => {
15797 <delegatedToCall as alloy_sol_types::SolCall>::SELECTOR
15798 }
15799 Self::delegationApprover(_) => {
15800 <delegationApproverCall as alloy_sol_types::SolCall>::SELECTOR
15801 }
15802 Self::delegationApproverSaltIsSpent(_) => {
15803 <delegationApproverSaltIsSpentCall as alloy_sol_types::SolCall>::SELECTOR
15804 }
15805 Self::depositScalingFactor(_) => {
15806 <depositScalingFactorCall as alloy_sol_types::SolCall>::SELECTOR
15807 }
15808 Self::domainSeparator(_) => {
15809 <domainSeparatorCall as alloy_sol_types::SolCall>::SELECTOR
15810 }
15811 Self::eigenPodManager(_) => {
15812 <eigenPodManagerCall as alloy_sol_types::SolCall>::SELECTOR
15813 }
15814 Self::getDepositedShares(_) => {
15815 <getDepositedSharesCall as alloy_sol_types::SolCall>::SELECTOR
15816 }
15817 Self::getOperatorShares(_) => {
15818 <getOperatorSharesCall as alloy_sol_types::SolCall>::SELECTOR
15819 }
15820 Self::getOperatorsShares(_) => {
15821 <getOperatorsSharesCall as alloy_sol_types::SolCall>::SELECTOR
15822 }
15823 Self::getQueuedWithdrawal(_) => {
15824 <getQueuedWithdrawalCall as alloy_sol_types::SolCall>::SELECTOR
15825 }
15826 Self::getQueuedWithdrawalRoots(_) => {
15827 <getQueuedWithdrawalRootsCall as alloy_sol_types::SolCall>::SELECTOR
15828 }
15829 Self::getQueuedWithdrawals(_) => {
15830 <getQueuedWithdrawalsCall as alloy_sol_types::SolCall>::SELECTOR
15831 }
15832 Self::getSlashableSharesInQueue(_) => {
15833 <getSlashableSharesInQueueCall as alloy_sol_types::SolCall>::SELECTOR
15834 }
15835 Self::getWithdrawableShares(_) => {
15836 <getWithdrawableSharesCall as alloy_sol_types::SolCall>::SELECTOR
15837 }
15838 Self::increaseDelegatedShares(_) => {
15839 <increaseDelegatedSharesCall as alloy_sol_types::SolCall>::SELECTOR
15840 }
15841 Self::initialize(_) => {
15842 <initializeCall as alloy_sol_types::SolCall>::SELECTOR
15843 }
15844 Self::isDelegated(_) => {
15845 <isDelegatedCall as alloy_sol_types::SolCall>::SELECTOR
15846 }
15847 Self::isOperator(_) => {
15848 <isOperatorCall as alloy_sol_types::SolCall>::SELECTOR
15849 }
15850 Self::minWithdrawalDelayBlocks(_) => {
15851 <minWithdrawalDelayBlocksCall as alloy_sol_types::SolCall>::SELECTOR
15852 }
15853 Self::modifyOperatorDetails(_) => {
15854 <modifyOperatorDetailsCall as alloy_sol_types::SolCall>::SELECTOR
15855 }
15856 Self::operatorShares(_) => {
15857 <operatorSharesCall as alloy_sol_types::SolCall>::SELECTOR
15858 }
15859 Self::owner(_) => <ownerCall as alloy_sol_types::SolCall>::SELECTOR,
15860 Self::pause(_) => <pauseCall as alloy_sol_types::SolCall>::SELECTOR,
15861 Self::pauseAll(_) => <pauseAllCall as alloy_sol_types::SolCall>::SELECTOR,
15862 Self::paused_0(_) => <paused_0Call as alloy_sol_types::SolCall>::SELECTOR,
15863 Self::paused_1(_) => <paused_1Call as alloy_sol_types::SolCall>::SELECTOR,
15864 Self::pauserRegistry(_) => {
15865 <pauserRegistryCall as alloy_sol_types::SolCall>::SELECTOR
15866 }
15867 Self::pendingWithdrawals(_) => {
15868 <pendingWithdrawalsCall as alloy_sol_types::SolCall>::SELECTOR
15869 }
15870 Self::permissionController(_) => {
15871 <permissionControllerCall as alloy_sol_types::SolCall>::SELECTOR
15872 }
15873 Self::queueWithdrawals(_) => {
15874 <queueWithdrawalsCall as alloy_sol_types::SolCall>::SELECTOR
15875 }
15876 Self::queuedWithdrawals(_) => {
15877 <queuedWithdrawalsCall as alloy_sol_types::SolCall>::SELECTOR
15878 }
15879 Self::redelegate(_) => {
15880 <redelegateCall as alloy_sol_types::SolCall>::SELECTOR
15881 }
15882 Self::registerAsOperator(_) => {
15883 <registerAsOperatorCall as alloy_sol_types::SolCall>::SELECTOR
15884 }
15885 Self::renounceOwnership(_) => {
15886 <renounceOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
15887 }
15888 Self::slashOperatorShares(_) => {
15889 <slashOperatorSharesCall as alloy_sol_types::SolCall>::SELECTOR
15890 }
15891 Self::strategyManager(_) => {
15892 <strategyManagerCall as alloy_sol_types::SolCall>::SELECTOR
15893 }
15894 Self::transferOwnership(_) => {
15895 <transferOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
15896 }
15897 Self::undelegate(_) => {
15898 <undelegateCall as alloy_sol_types::SolCall>::SELECTOR
15899 }
15900 Self::unpause(_) => <unpauseCall as alloy_sol_types::SolCall>::SELECTOR,
15901 Self::updateOperatorMetadataURI(_) => {
15902 <updateOperatorMetadataURICall as alloy_sol_types::SolCall>::SELECTOR
15903 }
15904 Self::version(_) => <versionCall as alloy_sol_types::SolCall>::SELECTOR,
15905 }
15906 }
15907 #[inline]
15908 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
15909 Self::SELECTORS.get(i).copied()
15910 }
15911 #[inline]
15912 fn valid_selector(selector: [u8; 4]) -> bool {
15913 Self::SELECTORS.binary_search(&selector).is_ok()
15914 }
15915 #[inline]
15916 #[allow(non_snake_case)]
15917 fn abi_decode_raw(
15918 selector: [u8; 4],
15919 data: &[u8],
15920 ) -> alloy_sol_types::Result<Self> {
15921 static DECODE_SHIMS: &[fn(
15922 &[u8],
15923 ) -> alloy_sol_types::Result<DelegationManagerCalls>] = &[
15924 {
15925 fn DELEGATION_APPROVAL_TYPEHASH(
15926 data: &[u8],
15927 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15928 <DELEGATION_APPROVAL_TYPEHASHCall as alloy_sol_types::SolCall>::abi_decode_raw(
15929 data,
15930 )
15931 .map(DelegationManagerCalls::DELEGATION_APPROVAL_TYPEHASH)
15932 }
15933 DELEGATION_APPROVAL_TYPEHASH
15934 },
15935 {
15936 fn calculateDelegationApprovalDigestHash(
15937 data: &[u8],
15938 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15939 <calculateDelegationApprovalDigestHashCall as alloy_sol_types::SolCall>::abi_decode_raw(
15940 data,
15941 )
15942 .map(
15943 DelegationManagerCalls::calculateDelegationApprovalDigestHash,
15944 )
15945 }
15946 calculateDelegationApprovalDigestHash
15947 },
15948 {
15949 fn queueWithdrawals(
15950 data: &[u8],
15951 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15952 <queueWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw(
15953 data,
15954 )
15955 .map(DelegationManagerCalls::queueWithdrawals)
15956 }
15957 queueWithdrawals
15958 },
15959 {
15960 fn pause(
15961 data: &[u8],
15962 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15963 <pauseCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
15964 .map(DelegationManagerCalls::pause)
15965 }
15966 pause
15967 },
15968 {
15969 fn convertToDepositShares(
15970 data: &[u8],
15971 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15972 <convertToDepositSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
15973 data,
15974 )
15975 .map(DelegationManagerCalls::convertToDepositShares)
15976 }
15977 convertToDepositShares
15978 },
15979 {
15980 fn registerAsOperator(
15981 data: &[u8],
15982 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15983 <registerAsOperatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
15984 data,
15985 )
15986 .map(DelegationManagerCalls::registerAsOperator)
15987 }
15988 registerAsOperator
15989 },
15990 {
15991 fn strategyManager(
15992 data: &[u8],
15993 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
15994 <strategyManagerCall as alloy_sol_types::SolCall>::abi_decode_raw(
15995 data,
15996 )
15997 .map(DelegationManagerCalls::strategyManager)
15998 }
15999 strategyManager
16000 },
16001 {
16002 fn increaseDelegatedShares(
16003 data: &[u8],
16004 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16005 <increaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16006 data,
16007 )
16008 .map(DelegationManagerCalls::increaseDelegatedShares)
16009 }
16010 increaseDelegatedShares
16011 },
16012 {
16013 fn delegationApprover(
16014 data: &[u8],
16015 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16016 <delegationApproverCall as alloy_sol_types::SolCall>::abi_decode_raw(
16017 data,
16018 )
16019 .map(DelegationManagerCalls::delegationApprover)
16020 }
16021 delegationApprover
16022 },
16023 {
16024 fn isDelegated(
16025 data: &[u8],
16026 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16027 <isDelegatedCall as alloy_sol_types::SolCall>::abi_decode_raw(
16028 data,
16029 )
16030 .map(DelegationManagerCalls::isDelegated)
16031 }
16032 isDelegated
16033 },
16034 {
16035 fn permissionController(
16036 data: &[u8],
16037 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16038 <permissionControllerCall as alloy_sol_types::SolCall>::abi_decode_raw(
16039 data,
16040 )
16041 .map(DelegationManagerCalls::permissionController)
16042 }
16043 permissionController
16044 },
16045 {
16046 fn eigenPodManager(
16047 data: &[u8],
16048 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16049 <eigenPodManagerCall as alloy_sol_types::SolCall>::abi_decode_raw(
16050 data,
16051 )
16052 .map(DelegationManagerCalls::eigenPodManager)
16053 }
16054 eigenPodManager
16055 },
16056 {
16057 fn modifyOperatorDetails(
16058 data: &[u8],
16059 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16060 <modifyOperatorDetailsCall as alloy_sol_types::SolCall>::abi_decode_raw(
16061 data,
16062 )
16063 .map(DelegationManagerCalls::modifyOperatorDetails)
16064 }
16065 modifyOperatorDetails
16066 },
16067 {
16068 fn version(
16069 data: &[u8],
16070 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16071 <versionCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
16072 .map(DelegationManagerCalls::version)
16073 }
16074 version
16075 },
16076 {
16077 fn pauseAll(
16078 data: &[u8],
16079 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16080 <pauseAllCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
16081 .map(DelegationManagerCalls::pauseAll)
16082 }
16083 pauseAll
16084 },
16085 {
16086 fn calculateWithdrawalRoot(
16087 data: &[u8],
16088 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16089 <calculateWithdrawalRootCall as alloy_sol_types::SolCall>::abi_decode_raw(
16090 data,
16091 )
16092 .map(DelegationManagerCalls::calculateWithdrawalRoot)
16093 }
16094 calculateWithdrawalRoot
16095 },
16096 {
16097 fn paused_0(
16098 data: &[u8],
16099 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16100 <paused_0Call as alloy_sol_types::SolCall>::abi_decode_raw(data)
16101 .map(DelegationManagerCalls::paused_0)
16102 }
16103 paused_0
16104 },
16105 {
16106 fn paused_1(
16107 data: &[u8],
16108 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16109 <paused_1Call as alloy_sol_types::SolCall>::abi_decode_raw(data)
16110 .map(DelegationManagerCalls::paused_1)
16111 }
16112 paused_1
16113 },
16114 {
16115 fn getQueuedWithdrawal(
16116 data: &[u8],
16117 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16118 <getQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw(
16119 data,
16120 )
16121 .map(DelegationManagerCalls::getQueuedWithdrawal)
16122 }
16123 getQueuedWithdrawal
16124 },
16125 {
16126 fn getQueuedWithdrawals(
16127 data: &[u8],
16128 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16129 <getQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw(
16130 data,
16131 )
16132 .map(DelegationManagerCalls::getQueuedWithdrawals)
16133 }
16134 getQueuedWithdrawals
16135 },
16136 {
16137 fn slashOperatorShares(
16138 data: &[u8],
16139 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16140 <slashOperatorSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16141 data,
16142 )
16143 .map(DelegationManagerCalls::slashOperatorShares)
16144 }
16145 slashOperatorShares
16146 },
16147 {
16148 fn decreaseDelegatedShares(
16149 data: &[u8],
16150 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16151 <decreaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16152 data,
16153 )
16154 .map(DelegationManagerCalls::decreaseDelegatedShares)
16155 }
16156 decreaseDelegatedShares
16157 },
16158 {
16159 fn delegatedTo(
16160 data: &[u8],
16161 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16162 <delegatedToCall as alloy_sol_types::SolCall>::abi_decode_raw(
16163 data,
16164 )
16165 .map(DelegationManagerCalls::delegatedTo)
16166 }
16167 delegatedTo
16168 },
16169 {
16170 fn getDepositedShares(
16171 data: &[u8],
16172 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16173 <getDepositedSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16174 data,
16175 )
16176 .map(DelegationManagerCalls::getDepositedShares)
16177 }
16178 getDepositedShares
16179 },
16180 {
16181 fn isOperator(
16182 data: &[u8],
16183 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16184 <isOperatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
16185 data,
16186 )
16187 .map(DelegationManagerCalls::isOperator)
16188 }
16189 isOperator
16190 },
16191 {
16192 fn getSlashableSharesInQueue(
16193 data: &[u8],
16194 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16195 <getSlashableSharesInQueueCall as alloy_sol_types::SolCall>::abi_decode_raw(
16196 data,
16197 )
16198 .map(DelegationManagerCalls::getSlashableSharesInQueue)
16199 }
16200 getSlashableSharesInQueue
16201 },
16202 {
16203 fn renounceOwnership(
16204 data: &[u8],
16205 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16206 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
16207 data,
16208 )
16209 .map(DelegationManagerCalls::renounceOwnership)
16210 }
16211 renounceOwnership
16212 },
16213 {
16214 fn operatorShares(
16215 data: &[u8],
16216 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16217 <operatorSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16218 data,
16219 )
16220 .map(DelegationManagerCalls::operatorShares)
16221 }
16222 operatorShares
16223 },
16224 {
16225 fn updateOperatorMetadataURI(
16226 data: &[u8],
16227 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16228 <updateOperatorMetadataURICall as alloy_sol_types::SolCall>::abi_decode_raw(
16229 data,
16230 )
16231 .map(DelegationManagerCalls::updateOperatorMetadataURI)
16232 }
16233 updateOperatorMetadataURI
16234 },
16235 {
16236 fn pauserRegistry(
16237 data: &[u8],
16238 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16239 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_decode_raw(
16240 data,
16241 )
16242 .map(DelegationManagerCalls::pauserRegistry)
16243 }
16244 pauserRegistry
16245 },
16246 {
16247 fn owner(
16248 data: &[u8],
16249 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16250 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
16251 .map(DelegationManagerCalls::owner)
16252 }
16253 owner
16254 },
16255 {
16256 fn getOperatorShares(
16257 data: &[u8],
16258 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16259 <getOperatorSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16260 data,
16261 )
16262 .map(DelegationManagerCalls::getOperatorShares)
16263 }
16264 getOperatorShares
16265 },
16266 {
16267 fn beaconChainETHStrategy(
16268 data: &[u8],
16269 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16270 <beaconChainETHStrategyCall as alloy_sol_types::SolCall>::abi_decode_raw(
16271 data,
16272 )
16273 .map(DelegationManagerCalls::beaconChainETHStrategy)
16274 }
16275 beaconChainETHStrategy
16276 },
16277 {
16278 fn completeQueuedWithdrawals(
16279 data: &[u8],
16280 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16281 <completeQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw(
16282 data,
16283 )
16284 .map(DelegationManagerCalls::completeQueuedWithdrawals)
16285 }
16286 completeQueuedWithdrawals
16287 },
16288 {
16289 fn queuedWithdrawals(
16290 data: &[u8],
16291 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16292 <queuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw(
16293 data,
16294 )
16295 .map(DelegationManagerCalls::queuedWithdrawals)
16296 }
16297 queuedWithdrawals
16298 },
16299 {
16300 fn cumulativeWithdrawalsQueued(
16301 data: &[u8],
16302 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16303 <cumulativeWithdrawalsQueuedCall as alloy_sol_types::SolCall>::abi_decode_raw(
16304 data,
16305 )
16306 .map(DelegationManagerCalls::cumulativeWithdrawalsQueued)
16307 }
16308 cumulativeWithdrawalsQueued
16309 },
16310 {
16311 fn redelegate(
16312 data: &[u8],
16313 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16314 <redelegateCall as alloy_sol_types::SolCall>::abi_decode_raw(
16315 data,
16316 )
16317 .map(DelegationManagerCalls::redelegate)
16318 }
16319 redelegate
16320 },
16321 {
16322 fn pendingWithdrawals(
16323 data: &[u8],
16324 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16325 <pendingWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw(
16326 data,
16327 )
16328 .map(DelegationManagerCalls::pendingWithdrawals)
16329 }
16330 pendingWithdrawals
16331 },
16332 {
16333 fn delegationApproverSaltIsSpent(
16334 data: &[u8],
16335 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16336 <delegationApproverSaltIsSpentCall as alloy_sol_types::SolCall>::abi_decode_raw(
16337 data,
16338 )
16339 .map(DelegationManagerCalls::delegationApproverSaltIsSpent)
16340 }
16341 delegationApproverSaltIsSpent
16342 },
16343 {
16344 fn depositScalingFactor(
16345 data: &[u8],
16346 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16347 <depositScalingFactorCall as alloy_sol_types::SolCall>::abi_decode_raw(
16348 data,
16349 )
16350 .map(DelegationManagerCalls::depositScalingFactor)
16351 }
16352 depositScalingFactor
16353 },
16354 {
16355 fn minWithdrawalDelayBlocks(
16356 data: &[u8],
16357 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16358 <minWithdrawalDelayBlocksCall as alloy_sol_types::SolCall>::abi_decode_raw(
16359 data,
16360 )
16361 .map(DelegationManagerCalls::minWithdrawalDelayBlocks)
16362 }
16363 minWithdrawalDelayBlocks
16364 },
16365 {
16366 fn getWithdrawableShares(
16367 data: &[u8],
16368 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16369 <getWithdrawableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16370 data,
16371 )
16372 .map(DelegationManagerCalls::getWithdrawableShares)
16373 }
16374 getWithdrawableShares
16375 },
16376 {
16377 fn allocationManager(
16378 data: &[u8],
16379 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16380 <allocationManagerCall as alloy_sol_types::SolCall>::abi_decode_raw(
16381 data,
16382 )
16383 .map(DelegationManagerCalls::allocationManager)
16384 }
16385 allocationManager
16386 },
16387 {
16388 fn initialize(
16389 data: &[u8],
16390 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16391 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw(
16392 data,
16393 )
16394 .map(DelegationManagerCalls::initialize)
16395 }
16396 initialize
16397 },
16398 {
16399 fn undelegate(
16400 data: &[u8],
16401 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16402 <undelegateCall as alloy_sol_types::SolCall>::abi_decode_raw(
16403 data,
16404 )
16405 .map(DelegationManagerCalls::undelegate)
16406 }
16407 undelegate
16408 },
16409 {
16410 fn completeQueuedWithdrawal(
16411 data: &[u8],
16412 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16413 <completeQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw(
16414 data,
16415 )
16416 .map(DelegationManagerCalls::completeQueuedWithdrawal)
16417 }
16418 completeQueuedWithdrawal
16419 },
16420 {
16421 fn delegateTo(
16422 data: &[u8],
16423 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16424 <delegateToCall as alloy_sol_types::SolCall>::abi_decode_raw(
16425 data,
16426 )
16427 .map(DelegationManagerCalls::delegateTo)
16428 }
16429 delegateTo
16430 },
16431 {
16432 fn getOperatorsShares(
16433 data: &[u8],
16434 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16435 <getOperatorsSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
16436 data,
16437 )
16438 .map(DelegationManagerCalls::getOperatorsShares)
16439 }
16440 getOperatorsShares
16441 },
16442 {
16443 fn transferOwnership(
16444 data: &[u8],
16445 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16446 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
16447 data,
16448 )
16449 .map(DelegationManagerCalls::transferOwnership)
16450 }
16451 transferOwnership
16452 },
16453 {
16454 fn domainSeparator(
16455 data: &[u8],
16456 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16457 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
16458 data,
16459 )
16460 .map(DelegationManagerCalls::domainSeparator)
16461 }
16462 domainSeparator
16463 },
16464 {
16465 fn unpause(
16466 data: &[u8],
16467 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16468 <unpauseCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
16469 .map(DelegationManagerCalls::unpause)
16470 }
16471 unpause
16472 },
16473 {
16474 fn getQueuedWithdrawalRoots(
16475 data: &[u8],
16476 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16477 <getQueuedWithdrawalRootsCall as alloy_sol_types::SolCall>::abi_decode_raw(
16478 data,
16479 )
16480 .map(DelegationManagerCalls::getQueuedWithdrawalRoots)
16481 }
16482 getQueuedWithdrawalRoots
16483 },
16484 ];
16485 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
16486 return Err(
16487 alloy_sol_types::Error::unknown_selector(
16488 <Self as alloy_sol_types::SolInterface>::NAME,
16489 selector,
16490 ),
16491 );
16492 };
16493 DECODE_SHIMS[idx](data)
16494 }
16495 #[inline]
16496 #[allow(non_snake_case)]
16497 fn abi_decode_raw_validate(
16498 selector: [u8; 4],
16499 data: &[u8],
16500 ) -> alloy_sol_types::Result<Self> {
16501 static DECODE_VALIDATE_SHIMS: &[fn(
16502 &[u8],
16503 ) -> alloy_sol_types::Result<DelegationManagerCalls>] = &[
16504 {
16505 fn DELEGATION_APPROVAL_TYPEHASH(
16506 data: &[u8],
16507 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16508 <DELEGATION_APPROVAL_TYPEHASHCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16509 data,
16510 )
16511 .map(DelegationManagerCalls::DELEGATION_APPROVAL_TYPEHASH)
16512 }
16513 DELEGATION_APPROVAL_TYPEHASH
16514 },
16515 {
16516 fn calculateDelegationApprovalDigestHash(
16517 data: &[u8],
16518 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16519 <calculateDelegationApprovalDigestHashCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16520 data,
16521 )
16522 .map(
16523 DelegationManagerCalls::calculateDelegationApprovalDigestHash,
16524 )
16525 }
16526 calculateDelegationApprovalDigestHash
16527 },
16528 {
16529 fn queueWithdrawals(
16530 data: &[u8],
16531 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16532 <queueWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16533 data,
16534 )
16535 .map(DelegationManagerCalls::queueWithdrawals)
16536 }
16537 queueWithdrawals
16538 },
16539 {
16540 fn pause(
16541 data: &[u8],
16542 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16543 <pauseCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16544 data,
16545 )
16546 .map(DelegationManagerCalls::pause)
16547 }
16548 pause
16549 },
16550 {
16551 fn convertToDepositShares(
16552 data: &[u8],
16553 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16554 <convertToDepositSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16555 data,
16556 )
16557 .map(DelegationManagerCalls::convertToDepositShares)
16558 }
16559 convertToDepositShares
16560 },
16561 {
16562 fn registerAsOperator(
16563 data: &[u8],
16564 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16565 <registerAsOperatorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16566 data,
16567 )
16568 .map(DelegationManagerCalls::registerAsOperator)
16569 }
16570 registerAsOperator
16571 },
16572 {
16573 fn strategyManager(
16574 data: &[u8],
16575 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16576 <strategyManagerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16577 data,
16578 )
16579 .map(DelegationManagerCalls::strategyManager)
16580 }
16581 strategyManager
16582 },
16583 {
16584 fn increaseDelegatedShares(
16585 data: &[u8],
16586 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16587 <increaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16588 data,
16589 )
16590 .map(DelegationManagerCalls::increaseDelegatedShares)
16591 }
16592 increaseDelegatedShares
16593 },
16594 {
16595 fn delegationApprover(
16596 data: &[u8],
16597 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16598 <delegationApproverCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16599 data,
16600 )
16601 .map(DelegationManagerCalls::delegationApprover)
16602 }
16603 delegationApprover
16604 },
16605 {
16606 fn isDelegated(
16607 data: &[u8],
16608 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16609 <isDelegatedCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16610 data,
16611 )
16612 .map(DelegationManagerCalls::isDelegated)
16613 }
16614 isDelegated
16615 },
16616 {
16617 fn permissionController(
16618 data: &[u8],
16619 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16620 <permissionControllerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16621 data,
16622 )
16623 .map(DelegationManagerCalls::permissionController)
16624 }
16625 permissionController
16626 },
16627 {
16628 fn eigenPodManager(
16629 data: &[u8],
16630 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16631 <eigenPodManagerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16632 data,
16633 )
16634 .map(DelegationManagerCalls::eigenPodManager)
16635 }
16636 eigenPodManager
16637 },
16638 {
16639 fn modifyOperatorDetails(
16640 data: &[u8],
16641 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16642 <modifyOperatorDetailsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16643 data,
16644 )
16645 .map(DelegationManagerCalls::modifyOperatorDetails)
16646 }
16647 modifyOperatorDetails
16648 },
16649 {
16650 fn version(
16651 data: &[u8],
16652 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16653 <versionCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16654 data,
16655 )
16656 .map(DelegationManagerCalls::version)
16657 }
16658 version
16659 },
16660 {
16661 fn pauseAll(
16662 data: &[u8],
16663 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16664 <pauseAllCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16665 data,
16666 )
16667 .map(DelegationManagerCalls::pauseAll)
16668 }
16669 pauseAll
16670 },
16671 {
16672 fn calculateWithdrawalRoot(
16673 data: &[u8],
16674 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16675 <calculateWithdrawalRootCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16676 data,
16677 )
16678 .map(DelegationManagerCalls::calculateWithdrawalRoot)
16679 }
16680 calculateWithdrawalRoot
16681 },
16682 {
16683 fn paused_0(
16684 data: &[u8],
16685 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16686 <paused_0Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16687 data,
16688 )
16689 .map(DelegationManagerCalls::paused_0)
16690 }
16691 paused_0
16692 },
16693 {
16694 fn paused_1(
16695 data: &[u8],
16696 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16697 <paused_1Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16698 data,
16699 )
16700 .map(DelegationManagerCalls::paused_1)
16701 }
16702 paused_1
16703 },
16704 {
16705 fn getQueuedWithdrawal(
16706 data: &[u8],
16707 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16708 <getQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16709 data,
16710 )
16711 .map(DelegationManagerCalls::getQueuedWithdrawal)
16712 }
16713 getQueuedWithdrawal
16714 },
16715 {
16716 fn getQueuedWithdrawals(
16717 data: &[u8],
16718 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16719 <getQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16720 data,
16721 )
16722 .map(DelegationManagerCalls::getQueuedWithdrawals)
16723 }
16724 getQueuedWithdrawals
16725 },
16726 {
16727 fn slashOperatorShares(
16728 data: &[u8],
16729 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16730 <slashOperatorSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16731 data,
16732 )
16733 .map(DelegationManagerCalls::slashOperatorShares)
16734 }
16735 slashOperatorShares
16736 },
16737 {
16738 fn decreaseDelegatedShares(
16739 data: &[u8],
16740 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16741 <decreaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16742 data,
16743 )
16744 .map(DelegationManagerCalls::decreaseDelegatedShares)
16745 }
16746 decreaseDelegatedShares
16747 },
16748 {
16749 fn delegatedTo(
16750 data: &[u8],
16751 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16752 <delegatedToCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16753 data,
16754 )
16755 .map(DelegationManagerCalls::delegatedTo)
16756 }
16757 delegatedTo
16758 },
16759 {
16760 fn getDepositedShares(
16761 data: &[u8],
16762 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16763 <getDepositedSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16764 data,
16765 )
16766 .map(DelegationManagerCalls::getDepositedShares)
16767 }
16768 getDepositedShares
16769 },
16770 {
16771 fn isOperator(
16772 data: &[u8],
16773 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16774 <isOperatorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16775 data,
16776 )
16777 .map(DelegationManagerCalls::isOperator)
16778 }
16779 isOperator
16780 },
16781 {
16782 fn getSlashableSharesInQueue(
16783 data: &[u8],
16784 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16785 <getSlashableSharesInQueueCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16786 data,
16787 )
16788 .map(DelegationManagerCalls::getSlashableSharesInQueue)
16789 }
16790 getSlashableSharesInQueue
16791 },
16792 {
16793 fn renounceOwnership(
16794 data: &[u8],
16795 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16796 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16797 data,
16798 )
16799 .map(DelegationManagerCalls::renounceOwnership)
16800 }
16801 renounceOwnership
16802 },
16803 {
16804 fn operatorShares(
16805 data: &[u8],
16806 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16807 <operatorSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16808 data,
16809 )
16810 .map(DelegationManagerCalls::operatorShares)
16811 }
16812 operatorShares
16813 },
16814 {
16815 fn updateOperatorMetadataURI(
16816 data: &[u8],
16817 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16818 <updateOperatorMetadataURICall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16819 data,
16820 )
16821 .map(DelegationManagerCalls::updateOperatorMetadataURI)
16822 }
16823 updateOperatorMetadataURI
16824 },
16825 {
16826 fn pauserRegistry(
16827 data: &[u8],
16828 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16829 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16830 data,
16831 )
16832 .map(DelegationManagerCalls::pauserRegistry)
16833 }
16834 pauserRegistry
16835 },
16836 {
16837 fn owner(
16838 data: &[u8],
16839 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16840 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16841 data,
16842 )
16843 .map(DelegationManagerCalls::owner)
16844 }
16845 owner
16846 },
16847 {
16848 fn getOperatorShares(
16849 data: &[u8],
16850 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16851 <getOperatorSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16852 data,
16853 )
16854 .map(DelegationManagerCalls::getOperatorShares)
16855 }
16856 getOperatorShares
16857 },
16858 {
16859 fn beaconChainETHStrategy(
16860 data: &[u8],
16861 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16862 <beaconChainETHStrategyCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16863 data,
16864 )
16865 .map(DelegationManagerCalls::beaconChainETHStrategy)
16866 }
16867 beaconChainETHStrategy
16868 },
16869 {
16870 fn completeQueuedWithdrawals(
16871 data: &[u8],
16872 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16873 <completeQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16874 data,
16875 )
16876 .map(DelegationManagerCalls::completeQueuedWithdrawals)
16877 }
16878 completeQueuedWithdrawals
16879 },
16880 {
16881 fn queuedWithdrawals(
16882 data: &[u8],
16883 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16884 <queuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16885 data,
16886 )
16887 .map(DelegationManagerCalls::queuedWithdrawals)
16888 }
16889 queuedWithdrawals
16890 },
16891 {
16892 fn cumulativeWithdrawalsQueued(
16893 data: &[u8],
16894 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16895 <cumulativeWithdrawalsQueuedCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16896 data,
16897 )
16898 .map(DelegationManagerCalls::cumulativeWithdrawalsQueued)
16899 }
16900 cumulativeWithdrawalsQueued
16901 },
16902 {
16903 fn redelegate(
16904 data: &[u8],
16905 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16906 <redelegateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16907 data,
16908 )
16909 .map(DelegationManagerCalls::redelegate)
16910 }
16911 redelegate
16912 },
16913 {
16914 fn pendingWithdrawals(
16915 data: &[u8],
16916 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16917 <pendingWithdrawalsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16918 data,
16919 )
16920 .map(DelegationManagerCalls::pendingWithdrawals)
16921 }
16922 pendingWithdrawals
16923 },
16924 {
16925 fn delegationApproverSaltIsSpent(
16926 data: &[u8],
16927 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16928 <delegationApproverSaltIsSpentCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16929 data,
16930 )
16931 .map(DelegationManagerCalls::delegationApproverSaltIsSpent)
16932 }
16933 delegationApproverSaltIsSpent
16934 },
16935 {
16936 fn depositScalingFactor(
16937 data: &[u8],
16938 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16939 <depositScalingFactorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16940 data,
16941 )
16942 .map(DelegationManagerCalls::depositScalingFactor)
16943 }
16944 depositScalingFactor
16945 },
16946 {
16947 fn minWithdrawalDelayBlocks(
16948 data: &[u8],
16949 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16950 <minWithdrawalDelayBlocksCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16951 data,
16952 )
16953 .map(DelegationManagerCalls::minWithdrawalDelayBlocks)
16954 }
16955 minWithdrawalDelayBlocks
16956 },
16957 {
16958 fn getWithdrawableShares(
16959 data: &[u8],
16960 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16961 <getWithdrawableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16962 data,
16963 )
16964 .map(DelegationManagerCalls::getWithdrawableShares)
16965 }
16966 getWithdrawableShares
16967 },
16968 {
16969 fn allocationManager(
16970 data: &[u8],
16971 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16972 <allocationManagerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16973 data,
16974 )
16975 .map(DelegationManagerCalls::allocationManager)
16976 }
16977 allocationManager
16978 },
16979 {
16980 fn initialize(
16981 data: &[u8],
16982 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16983 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16984 data,
16985 )
16986 .map(DelegationManagerCalls::initialize)
16987 }
16988 initialize
16989 },
16990 {
16991 fn undelegate(
16992 data: &[u8],
16993 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
16994 <undelegateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
16995 data,
16996 )
16997 .map(DelegationManagerCalls::undelegate)
16998 }
16999 undelegate
17000 },
17001 {
17002 fn completeQueuedWithdrawal(
17003 data: &[u8],
17004 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17005 <completeQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17006 data,
17007 )
17008 .map(DelegationManagerCalls::completeQueuedWithdrawal)
17009 }
17010 completeQueuedWithdrawal
17011 },
17012 {
17013 fn delegateTo(
17014 data: &[u8],
17015 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17016 <delegateToCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17017 data,
17018 )
17019 .map(DelegationManagerCalls::delegateTo)
17020 }
17021 delegateTo
17022 },
17023 {
17024 fn getOperatorsShares(
17025 data: &[u8],
17026 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17027 <getOperatorsSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17028 data,
17029 )
17030 .map(DelegationManagerCalls::getOperatorsShares)
17031 }
17032 getOperatorsShares
17033 },
17034 {
17035 fn transferOwnership(
17036 data: &[u8],
17037 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17038 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17039 data,
17040 )
17041 .map(DelegationManagerCalls::transferOwnership)
17042 }
17043 transferOwnership
17044 },
17045 {
17046 fn domainSeparator(
17047 data: &[u8],
17048 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17049 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17050 data,
17051 )
17052 .map(DelegationManagerCalls::domainSeparator)
17053 }
17054 domainSeparator
17055 },
17056 {
17057 fn unpause(
17058 data: &[u8],
17059 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17060 <unpauseCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17061 data,
17062 )
17063 .map(DelegationManagerCalls::unpause)
17064 }
17065 unpause
17066 },
17067 {
17068 fn getQueuedWithdrawalRoots(
17069 data: &[u8],
17070 ) -> alloy_sol_types::Result<DelegationManagerCalls> {
17071 <getQueuedWithdrawalRootsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
17072 data,
17073 )
17074 .map(DelegationManagerCalls::getQueuedWithdrawalRoots)
17075 }
17076 getQueuedWithdrawalRoots
17077 },
17078 ];
17079 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
17080 return Err(
17081 alloy_sol_types::Error::unknown_selector(
17082 <Self as alloy_sol_types::SolInterface>::NAME,
17083 selector,
17084 ),
17085 );
17086 };
17087 DECODE_VALIDATE_SHIMS[idx](data)
17088 }
17089 #[inline]
17090 fn abi_encoded_size(&self) -> usize {
17091 match self {
17092 Self::DELEGATION_APPROVAL_TYPEHASH(inner) => {
17093 <DELEGATION_APPROVAL_TYPEHASHCall as alloy_sol_types::SolCall>::abi_encoded_size(
17094 inner,
17095 )
17096 }
17097 Self::allocationManager(inner) => {
17098 <allocationManagerCall as alloy_sol_types::SolCall>::abi_encoded_size(
17099 inner,
17100 )
17101 }
17102 Self::beaconChainETHStrategy(inner) => {
17103 <beaconChainETHStrategyCall as alloy_sol_types::SolCall>::abi_encoded_size(
17104 inner,
17105 )
17106 }
17107 Self::calculateDelegationApprovalDigestHash(inner) => {
17108 <calculateDelegationApprovalDigestHashCall as alloy_sol_types::SolCall>::abi_encoded_size(
17109 inner,
17110 )
17111 }
17112 Self::calculateWithdrawalRoot(inner) => {
17113 <calculateWithdrawalRootCall as alloy_sol_types::SolCall>::abi_encoded_size(
17114 inner,
17115 )
17116 }
17117 Self::completeQueuedWithdrawal(inner) => {
17118 <completeQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_encoded_size(
17119 inner,
17120 )
17121 }
17122 Self::completeQueuedWithdrawals(inner) => {
17123 <completeQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17124 inner,
17125 )
17126 }
17127 Self::convertToDepositShares(inner) => {
17128 <convertToDepositSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17129 inner,
17130 )
17131 }
17132 Self::cumulativeWithdrawalsQueued(inner) => {
17133 <cumulativeWithdrawalsQueuedCall as alloy_sol_types::SolCall>::abi_encoded_size(
17134 inner,
17135 )
17136 }
17137 Self::decreaseDelegatedShares(inner) => {
17138 <decreaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17139 inner,
17140 )
17141 }
17142 Self::delegateTo(inner) => {
17143 <delegateToCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17144 }
17145 Self::delegatedTo(inner) => {
17146 <delegatedToCall as alloy_sol_types::SolCall>::abi_encoded_size(
17147 inner,
17148 )
17149 }
17150 Self::delegationApprover(inner) => {
17151 <delegationApproverCall as alloy_sol_types::SolCall>::abi_encoded_size(
17152 inner,
17153 )
17154 }
17155 Self::delegationApproverSaltIsSpent(inner) => {
17156 <delegationApproverSaltIsSpentCall as alloy_sol_types::SolCall>::abi_encoded_size(
17157 inner,
17158 )
17159 }
17160 Self::depositScalingFactor(inner) => {
17161 <depositScalingFactorCall as alloy_sol_types::SolCall>::abi_encoded_size(
17162 inner,
17163 )
17164 }
17165 Self::domainSeparator(inner) => {
17166 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_encoded_size(
17167 inner,
17168 )
17169 }
17170 Self::eigenPodManager(inner) => {
17171 <eigenPodManagerCall as alloy_sol_types::SolCall>::abi_encoded_size(
17172 inner,
17173 )
17174 }
17175 Self::getDepositedShares(inner) => {
17176 <getDepositedSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17177 inner,
17178 )
17179 }
17180 Self::getOperatorShares(inner) => {
17181 <getOperatorSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17182 inner,
17183 )
17184 }
17185 Self::getOperatorsShares(inner) => {
17186 <getOperatorsSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17187 inner,
17188 )
17189 }
17190 Self::getQueuedWithdrawal(inner) => {
17191 <getQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_encoded_size(
17192 inner,
17193 )
17194 }
17195 Self::getQueuedWithdrawalRoots(inner) => {
17196 <getQueuedWithdrawalRootsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17197 inner,
17198 )
17199 }
17200 Self::getQueuedWithdrawals(inner) => {
17201 <getQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17202 inner,
17203 )
17204 }
17205 Self::getSlashableSharesInQueue(inner) => {
17206 <getSlashableSharesInQueueCall as alloy_sol_types::SolCall>::abi_encoded_size(
17207 inner,
17208 )
17209 }
17210 Self::getWithdrawableShares(inner) => {
17211 <getWithdrawableSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17212 inner,
17213 )
17214 }
17215 Self::increaseDelegatedShares(inner) => {
17216 <increaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17217 inner,
17218 )
17219 }
17220 Self::initialize(inner) => {
17221 <initializeCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17222 }
17223 Self::isDelegated(inner) => {
17224 <isDelegatedCall as alloy_sol_types::SolCall>::abi_encoded_size(
17225 inner,
17226 )
17227 }
17228 Self::isOperator(inner) => {
17229 <isOperatorCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17230 }
17231 Self::minWithdrawalDelayBlocks(inner) => {
17232 <minWithdrawalDelayBlocksCall as alloy_sol_types::SolCall>::abi_encoded_size(
17233 inner,
17234 )
17235 }
17236 Self::modifyOperatorDetails(inner) => {
17237 <modifyOperatorDetailsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17238 inner,
17239 )
17240 }
17241 Self::operatorShares(inner) => {
17242 <operatorSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17243 inner,
17244 )
17245 }
17246 Self::owner(inner) => {
17247 <ownerCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17248 }
17249 Self::pause(inner) => {
17250 <pauseCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17251 }
17252 Self::pauseAll(inner) => {
17253 <pauseAllCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17254 }
17255 Self::paused_0(inner) => {
17256 <paused_0Call as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17257 }
17258 Self::paused_1(inner) => {
17259 <paused_1Call as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17260 }
17261 Self::pauserRegistry(inner) => {
17262 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_encoded_size(
17263 inner,
17264 )
17265 }
17266 Self::pendingWithdrawals(inner) => {
17267 <pendingWithdrawalsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17268 inner,
17269 )
17270 }
17271 Self::permissionController(inner) => {
17272 <permissionControllerCall as alloy_sol_types::SolCall>::abi_encoded_size(
17273 inner,
17274 )
17275 }
17276 Self::queueWithdrawals(inner) => {
17277 <queueWithdrawalsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17278 inner,
17279 )
17280 }
17281 Self::queuedWithdrawals(inner) => {
17282 <queuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_encoded_size(
17283 inner,
17284 )
17285 }
17286 Self::redelegate(inner) => {
17287 <redelegateCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17288 }
17289 Self::registerAsOperator(inner) => {
17290 <registerAsOperatorCall as alloy_sol_types::SolCall>::abi_encoded_size(
17291 inner,
17292 )
17293 }
17294 Self::renounceOwnership(inner) => {
17295 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
17296 inner,
17297 )
17298 }
17299 Self::slashOperatorShares(inner) => {
17300 <slashOperatorSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
17301 inner,
17302 )
17303 }
17304 Self::strategyManager(inner) => {
17305 <strategyManagerCall as alloy_sol_types::SolCall>::abi_encoded_size(
17306 inner,
17307 )
17308 }
17309 Self::transferOwnership(inner) => {
17310 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
17311 inner,
17312 )
17313 }
17314 Self::undelegate(inner) => {
17315 <undelegateCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17316 }
17317 Self::unpause(inner) => {
17318 <unpauseCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17319 }
17320 Self::updateOperatorMetadataURI(inner) => {
17321 <updateOperatorMetadataURICall as alloy_sol_types::SolCall>::abi_encoded_size(
17322 inner,
17323 )
17324 }
17325 Self::version(inner) => {
17326 <versionCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
17327 }
17328 }
17329 }
17330 #[inline]
17331 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
17332 match self {
17333 Self::DELEGATION_APPROVAL_TYPEHASH(inner) => {
17334 <DELEGATION_APPROVAL_TYPEHASHCall as alloy_sol_types::SolCall>::abi_encode_raw(
17335 inner,
17336 out,
17337 )
17338 }
17339 Self::allocationManager(inner) => {
17340 <allocationManagerCall as alloy_sol_types::SolCall>::abi_encode_raw(
17341 inner,
17342 out,
17343 )
17344 }
17345 Self::beaconChainETHStrategy(inner) => {
17346 <beaconChainETHStrategyCall as alloy_sol_types::SolCall>::abi_encode_raw(
17347 inner,
17348 out,
17349 )
17350 }
17351 Self::calculateDelegationApprovalDigestHash(inner) => {
17352 <calculateDelegationApprovalDigestHashCall as alloy_sol_types::SolCall>::abi_encode_raw(
17353 inner,
17354 out,
17355 )
17356 }
17357 Self::calculateWithdrawalRoot(inner) => {
17358 <calculateWithdrawalRootCall as alloy_sol_types::SolCall>::abi_encode_raw(
17359 inner,
17360 out,
17361 )
17362 }
17363 Self::completeQueuedWithdrawal(inner) => {
17364 <completeQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_encode_raw(
17365 inner,
17366 out,
17367 )
17368 }
17369 Self::completeQueuedWithdrawals(inner) => {
17370 <completeQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17371 inner,
17372 out,
17373 )
17374 }
17375 Self::convertToDepositShares(inner) => {
17376 <convertToDepositSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17377 inner,
17378 out,
17379 )
17380 }
17381 Self::cumulativeWithdrawalsQueued(inner) => {
17382 <cumulativeWithdrawalsQueuedCall as alloy_sol_types::SolCall>::abi_encode_raw(
17383 inner,
17384 out,
17385 )
17386 }
17387 Self::decreaseDelegatedShares(inner) => {
17388 <decreaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17389 inner,
17390 out,
17391 )
17392 }
17393 Self::delegateTo(inner) => {
17394 <delegateToCall as alloy_sol_types::SolCall>::abi_encode_raw(
17395 inner,
17396 out,
17397 )
17398 }
17399 Self::delegatedTo(inner) => {
17400 <delegatedToCall as alloy_sol_types::SolCall>::abi_encode_raw(
17401 inner,
17402 out,
17403 )
17404 }
17405 Self::delegationApprover(inner) => {
17406 <delegationApproverCall as alloy_sol_types::SolCall>::abi_encode_raw(
17407 inner,
17408 out,
17409 )
17410 }
17411 Self::delegationApproverSaltIsSpent(inner) => {
17412 <delegationApproverSaltIsSpentCall as alloy_sol_types::SolCall>::abi_encode_raw(
17413 inner,
17414 out,
17415 )
17416 }
17417 Self::depositScalingFactor(inner) => {
17418 <depositScalingFactorCall as alloy_sol_types::SolCall>::abi_encode_raw(
17419 inner,
17420 out,
17421 )
17422 }
17423 Self::domainSeparator(inner) => {
17424 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
17425 inner,
17426 out,
17427 )
17428 }
17429 Self::eigenPodManager(inner) => {
17430 <eigenPodManagerCall as alloy_sol_types::SolCall>::abi_encode_raw(
17431 inner,
17432 out,
17433 )
17434 }
17435 Self::getDepositedShares(inner) => {
17436 <getDepositedSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17437 inner,
17438 out,
17439 )
17440 }
17441 Self::getOperatorShares(inner) => {
17442 <getOperatorSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17443 inner,
17444 out,
17445 )
17446 }
17447 Self::getOperatorsShares(inner) => {
17448 <getOperatorsSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17449 inner,
17450 out,
17451 )
17452 }
17453 Self::getQueuedWithdrawal(inner) => {
17454 <getQueuedWithdrawalCall as alloy_sol_types::SolCall>::abi_encode_raw(
17455 inner,
17456 out,
17457 )
17458 }
17459 Self::getQueuedWithdrawalRoots(inner) => {
17460 <getQueuedWithdrawalRootsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17461 inner,
17462 out,
17463 )
17464 }
17465 Self::getQueuedWithdrawals(inner) => {
17466 <getQueuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17467 inner,
17468 out,
17469 )
17470 }
17471 Self::getSlashableSharesInQueue(inner) => {
17472 <getSlashableSharesInQueueCall as alloy_sol_types::SolCall>::abi_encode_raw(
17473 inner,
17474 out,
17475 )
17476 }
17477 Self::getWithdrawableShares(inner) => {
17478 <getWithdrawableSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17479 inner,
17480 out,
17481 )
17482 }
17483 Self::increaseDelegatedShares(inner) => {
17484 <increaseDelegatedSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17485 inner,
17486 out,
17487 )
17488 }
17489 Self::initialize(inner) => {
17490 <initializeCall as alloy_sol_types::SolCall>::abi_encode_raw(
17491 inner,
17492 out,
17493 )
17494 }
17495 Self::isDelegated(inner) => {
17496 <isDelegatedCall as alloy_sol_types::SolCall>::abi_encode_raw(
17497 inner,
17498 out,
17499 )
17500 }
17501 Self::isOperator(inner) => {
17502 <isOperatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
17503 inner,
17504 out,
17505 )
17506 }
17507 Self::minWithdrawalDelayBlocks(inner) => {
17508 <minWithdrawalDelayBlocksCall as alloy_sol_types::SolCall>::abi_encode_raw(
17509 inner,
17510 out,
17511 )
17512 }
17513 Self::modifyOperatorDetails(inner) => {
17514 <modifyOperatorDetailsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17515 inner,
17516 out,
17517 )
17518 }
17519 Self::operatorShares(inner) => {
17520 <operatorSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17521 inner,
17522 out,
17523 )
17524 }
17525 Self::owner(inner) => {
17526 <ownerCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
17527 }
17528 Self::pause(inner) => {
17529 <pauseCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
17530 }
17531 Self::pauseAll(inner) => {
17532 <pauseAllCall as alloy_sol_types::SolCall>::abi_encode_raw(
17533 inner,
17534 out,
17535 )
17536 }
17537 Self::paused_0(inner) => {
17538 <paused_0Call as alloy_sol_types::SolCall>::abi_encode_raw(
17539 inner,
17540 out,
17541 )
17542 }
17543 Self::paused_1(inner) => {
17544 <paused_1Call as alloy_sol_types::SolCall>::abi_encode_raw(
17545 inner,
17546 out,
17547 )
17548 }
17549 Self::pauserRegistry(inner) => {
17550 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_encode_raw(
17551 inner,
17552 out,
17553 )
17554 }
17555 Self::pendingWithdrawals(inner) => {
17556 <pendingWithdrawalsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17557 inner,
17558 out,
17559 )
17560 }
17561 Self::permissionController(inner) => {
17562 <permissionControllerCall as alloy_sol_types::SolCall>::abi_encode_raw(
17563 inner,
17564 out,
17565 )
17566 }
17567 Self::queueWithdrawals(inner) => {
17568 <queueWithdrawalsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17569 inner,
17570 out,
17571 )
17572 }
17573 Self::queuedWithdrawals(inner) => {
17574 <queuedWithdrawalsCall as alloy_sol_types::SolCall>::abi_encode_raw(
17575 inner,
17576 out,
17577 )
17578 }
17579 Self::redelegate(inner) => {
17580 <redelegateCall as alloy_sol_types::SolCall>::abi_encode_raw(
17581 inner,
17582 out,
17583 )
17584 }
17585 Self::registerAsOperator(inner) => {
17586 <registerAsOperatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
17587 inner,
17588 out,
17589 )
17590 }
17591 Self::renounceOwnership(inner) => {
17592 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
17593 inner,
17594 out,
17595 )
17596 }
17597 Self::slashOperatorShares(inner) => {
17598 <slashOperatorSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
17599 inner,
17600 out,
17601 )
17602 }
17603 Self::strategyManager(inner) => {
17604 <strategyManagerCall as alloy_sol_types::SolCall>::abi_encode_raw(
17605 inner,
17606 out,
17607 )
17608 }
17609 Self::transferOwnership(inner) => {
17610 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
17611 inner,
17612 out,
17613 )
17614 }
17615 Self::undelegate(inner) => {
17616 <undelegateCall as alloy_sol_types::SolCall>::abi_encode_raw(
17617 inner,
17618 out,
17619 )
17620 }
17621 Self::unpause(inner) => {
17622 <unpauseCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
17623 }
17624 Self::updateOperatorMetadataURI(inner) => {
17625 <updateOperatorMetadataURICall as alloy_sol_types::SolCall>::abi_encode_raw(
17626 inner,
17627 out,
17628 )
17629 }
17630 Self::version(inner) => {
17631 <versionCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
17632 }
17633 }
17634 }
17635 }
17636 #[derive(serde::Serialize, serde::Deserialize)]
17638 #[derive(Debug, PartialEq, Eq, Hash)]
17639 pub enum DelegationManagerErrors {
17640 #[allow(missing_docs)]
17641 ActivelyDelegated(ActivelyDelegated),
17642 #[allow(missing_docs)]
17643 CallerCannotUndelegate(CallerCannotUndelegate),
17644 #[allow(missing_docs)]
17645 CurrentlyPaused(CurrentlyPaused),
17646 #[allow(missing_docs)]
17647 FullySlashed(FullySlashed),
17648 #[allow(missing_docs)]
17649 InputAddressZero(InputAddressZero),
17650 #[allow(missing_docs)]
17651 InputArrayLengthMismatch(InputArrayLengthMismatch),
17652 #[allow(missing_docs)]
17653 InputArrayLengthZero(InputArrayLengthZero),
17654 #[allow(missing_docs)]
17655 InvalidNewPausedStatus(InvalidNewPausedStatus),
17656 #[allow(missing_docs)]
17657 InvalidPermissions(InvalidPermissions),
17658 #[allow(missing_docs)]
17659 InvalidShortString(InvalidShortString),
17660 #[allow(missing_docs)]
17661 InvalidSignature(InvalidSignature),
17662 #[allow(missing_docs)]
17663 InvalidSnapshotOrdering(InvalidSnapshotOrdering),
17664 #[allow(missing_docs)]
17665 NotActivelyDelegated(NotActivelyDelegated),
17666 #[allow(missing_docs)]
17667 OnlyAllocationManager(OnlyAllocationManager),
17668 #[allow(missing_docs)]
17669 OnlyEigenPodManager(OnlyEigenPodManager),
17670 #[allow(missing_docs)]
17671 OnlyPauser(OnlyPauser),
17672 #[allow(missing_docs)]
17673 OnlyStrategyManagerOrEigenPodManager(OnlyStrategyManagerOrEigenPodManager),
17674 #[allow(missing_docs)]
17675 OnlyUnpauser(OnlyUnpauser),
17676 #[allow(missing_docs)]
17677 OperatorNotRegistered(OperatorNotRegistered),
17678 #[allow(missing_docs)]
17679 OperatorsCannotUndelegate(OperatorsCannotUndelegate),
17680 #[allow(missing_docs)]
17681 SaltSpent(SaltSpent),
17682 #[allow(missing_docs)]
17683 SignatureExpired(SignatureExpired),
17684 #[allow(missing_docs)]
17685 StringTooLong(StringTooLong),
17686 #[allow(missing_docs)]
17687 WithdrawalDelayNotElapsed(WithdrawalDelayNotElapsed),
17688 #[allow(missing_docs)]
17689 WithdrawalNotQueued(WithdrawalNotQueued),
17690 #[allow(missing_docs)]
17691 WithdrawerNotCaller(WithdrawerNotCaller),
17692 }
17693 #[automatically_derived]
17694 impl DelegationManagerErrors {
17695 pub const SELECTORS: &'static [[u8; 4usize]] = &[
17702 [8u8, 25u8, 189u8, 205u8],
17703 [17u8, 72u8, 26u8, 148u8],
17704 [35u8, 216u8, 113u8, 165u8],
17705 [37u8, 236u8, 108u8, 31u8],
17706 [40u8, 206u8, 241u8, 164u8],
17707 [42u8, 55u8, 28u8, 126u8],
17708 [48u8, 90u8, 39u8, 169u8],
17709 [53u8, 49u8, 50u8, 68u8],
17710 [60u8, 147u8, 52u8, 70u8],
17711 [67u8, 113u8, 74u8, 253u8],
17712 [88u8, 68u8, 52u8, 212u8],
17713 [115u8, 99u8, 33u8, 118u8],
17714 [117u8, 223u8, 81u8, 220u8],
17715 [119u8, 229u8, 106u8, 6u8],
17716 [121u8, 72u8, 33u8, 255u8],
17717 [121u8, 108u8, 197u8, 37u8],
17718 [132u8, 10u8, 72u8, 213u8],
17719 [135u8, 201u8, 210u8, 25u8],
17720 [139u8, 170u8, 87u8, 159u8],
17721 [142u8, 81u8, 153u8, 168u8],
17722 [147u8, 45u8, 148u8, 247u8],
17723 [165u8, 199u8, 196u8, 69u8],
17724 [179u8, 81u8, 43u8, 12u8],
17725 [198u8, 29u8, 202u8, 93u8],
17726 [200u8, 78u8, 153u8, 132u8],
17727 [241u8, 236u8, 245u8, 194u8],
17728 ];
17729 }
17730 #[automatically_derived]
17731 impl alloy_sol_types::SolInterface for DelegationManagerErrors {
17732 const NAME: &'static str = "DelegationManagerErrors";
17733 const MIN_DATA_LENGTH: usize = 0usize;
17734 const COUNT: usize = 26usize;
17735 #[inline]
17736 fn selector(&self) -> [u8; 4] {
17737 match self {
17738 Self::ActivelyDelegated(_) => {
17739 <ActivelyDelegated as alloy_sol_types::SolError>::SELECTOR
17740 }
17741 Self::CallerCannotUndelegate(_) => {
17742 <CallerCannotUndelegate as alloy_sol_types::SolError>::SELECTOR
17743 }
17744 Self::CurrentlyPaused(_) => {
17745 <CurrentlyPaused as alloy_sol_types::SolError>::SELECTOR
17746 }
17747 Self::FullySlashed(_) => {
17748 <FullySlashed as alloy_sol_types::SolError>::SELECTOR
17749 }
17750 Self::InputAddressZero(_) => {
17751 <InputAddressZero as alloy_sol_types::SolError>::SELECTOR
17752 }
17753 Self::InputArrayLengthMismatch(_) => {
17754 <InputArrayLengthMismatch as alloy_sol_types::SolError>::SELECTOR
17755 }
17756 Self::InputArrayLengthZero(_) => {
17757 <InputArrayLengthZero as alloy_sol_types::SolError>::SELECTOR
17758 }
17759 Self::InvalidNewPausedStatus(_) => {
17760 <InvalidNewPausedStatus as alloy_sol_types::SolError>::SELECTOR
17761 }
17762 Self::InvalidPermissions(_) => {
17763 <InvalidPermissions as alloy_sol_types::SolError>::SELECTOR
17764 }
17765 Self::InvalidShortString(_) => {
17766 <InvalidShortString as alloy_sol_types::SolError>::SELECTOR
17767 }
17768 Self::InvalidSignature(_) => {
17769 <InvalidSignature as alloy_sol_types::SolError>::SELECTOR
17770 }
17771 Self::InvalidSnapshotOrdering(_) => {
17772 <InvalidSnapshotOrdering as alloy_sol_types::SolError>::SELECTOR
17773 }
17774 Self::NotActivelyDelegated(_) => {
17775 <NotActivelyDelegated as alloy_sol_types::SolError>::SELECTOR
17776 }
17777 Self::OnlyAllocationManager(_) => {
17778 <OnlyAllocationManager as alloy_sol_types::SolError>::SELECTOR
17779 }
17780 Self::OnlyEigenPodManager(_) => {
17781 <OnlyEigenPodManager as alloy_sol_types::SolError>::SELECTOR
17782 }
17783 Self::OnlyPauser(_) => {
17784 <OnlyPauser as alloy_sol_types::SolError>::SELECTOR
17785 }
17786 Self::OnlyStrategyManagerOrEigenPodManager(_) => {
17787 <OnlyStrategyManagerOrEigenPodManager as alloy_sol_types::SolError>::SELECTOR
17788 }
17789 Self::OnlyUnpauser(_) => {
17790 <OnlyUnpauser as alloy_sol_types::SolError>::SELECTOR
17791 }
17792 Self::OperatorNotRegistered(_) => {
17793 <OperatorNotRegistered as alloy_sol_types::SolError>::SELECTOR
17794 }
17795 Self::OperatorsCannotUndelegate(_) => {
17796 <OperatorsCannotUndelegate as alloy_sol_types::SolError>::SELECTOR
17797 }
17798 Self::SaltSpent(_) => <SaltSpent as alloy_sol_types::SolError>::SELECTOR,
17799 Self::SignatureExpired(_) => {
17800 <SignatureExpired as alloy_sol_types::SolError>::SELECTOR
17801 }
17802 Self::StringTooLong(_) => {
17803 <StringTooLong as alloy_sol_types::SolError>::SELECTOR
17804 }
17805 Self::WithdrawalDelayNotElapsed(_) => {
17806 <WithdrawalDelayNotElapsed as alloy_sol_types::SolError>::SELECTOR
17807 }
17808 Self::WithdrawalNotQueued(_) => {
17809 <WithdrawalNotQueued as alloy_sol_types::SolError>::SELECTOR
17810 }
17811 Self::WithdrawerNotCaller(_) => {
17812 <WithdrawerNotCaller as alloy_sol_types::SolError>::SELECTOR
17813 }
17814 }
17815 }
17816 #[inline]
17817 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
17818 Self::SELECTORS.get(i).copied()
17819 }
17820 #[inline]
17821 fn valid_selector(selector: [u8; 4]) -> bool {
17822 Self::SELECTORS.binary_search(&selector).is_ok()
17823 }
17824 #[inline]
17825 #[allow(non_snake_case)]
17826 fn abi_decode_raw(
17827 selector: [u8; 4],
17828 data: &[u8],
17829 ) -> alloy_sol_types::Result<Self> {
17830 static DECODE_SHIMS: &[fn(
17831 &[u8],
17832 ) -> alloy_sol_types::Result<DelegationManagerErrors>] = &[
17833 {
17834 fn SignatureExpired(
17835 data: &[u8],
17836 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17837 <SignatureExpired as alloy_sol_types::SolError>::abi_decode_raw(
17838 data,
17839 )
17840 .map(DelegationManagerErrors::SignatureExpired)
17841 }
17842 SignatureExpired
17843 },
17844 {
17845 fn OnlyStrategyManagerOrEigenPodManager(
17846 data: &[u8],
17847 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17848 <OnlyStrategyManagerOrEigenPodManager as alloy_sol_types::SolError>::abi_decode_raw(
17849 data,
17850 )
17851 .map(
17852 DelegationManagerErrors::OnlyStrategyManagerOrEigenPodManager,
17853 )
17854 }
17855 OnlyStrategyManagerOrEigenPodManager
17856 },
17857 {
17858 fn OnlyAllocationManager(
17859 data: &[u8],
17860 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17861 <OnlyAllocationManager as alloy_sol_types::SolError>::abi_decode_raw(
17862 data,
17863 )
17864 .map(DelegationManagerErrors::OnlyAllocationManager)
17865 }
17866 OnlyAllocationManager
17867 },
17868 {
17869 fn OperatorNotRegistered(
17870 data: &[u8],
17871 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17872 <OperatorNotRegistered as alloy_sol_types::SolError>::abi_decode_raw(
17873 data,
17874 )
17875 .map(DelegationManagerErrors::OperatorNotRegistered)
17876 }
17877 OperatorNotRegistered
17878 },
17879 {
17880 fn FullySlashed(
17881 data: &[u8],
17882 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17883 <FullySlashed as alloy_sol_types::SolError>::abi_decode_raw(data)
17884 .map(DelegationManagerErrors::FullySlashed)
17885 }
17886 FullySlashed
17887 },
17888 {
17889 fn InvalidSnapshotOrdering(
17890 data: &[u8],
17891 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17892 <InvalidSnapshotOrdering as alloy_sol_types::SolError>::abi_decode_raw(
17893 data,
17894 )
17895 .map(DelegationManagerErrors::InvalidSnapshotOrdering)
17896 }
17897 InvalidSnapshotOrdering
17898 },
17899 {
17900 fn StringTooLong(
17901 data: &[u8],
17902 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17903 <StringTooLong as alloy_sol_types::SolError>::abi_decode_raw(
17904 data,
17905 )
17906 .map(DelegationManagerErrors::StringTooLong)
17907 }
17908 StringTooLong
17909 },
17910 {
17911 fn SaltSpent(
17912 data: &[u8],
17913 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17914 <SaltSpent as alloy_sol_types::SolError>::abi_decode_raw(data)
17915 .map(DelegationManagerErrors::SaltSpent)
17916 }
17917 SaltSpent
17918 },
17919 {
17920 fn CallerCannotUndelegate(
17921 data: &[u8],
17922 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17923 <CallerCannotUndelegate as alloy_sol_types::SolError>::abi_decode_raw(
17924 data,
17925 )
17926 .map(DelegationManagerErrors::CallerCannotUndelegate)
17927 }
17928 CallerCannotUndelegate
17929 },
17930 {
17931 fn InputArrayLengthMismatch(
17932 data: &[u8],
17933 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17934 <InputArrayLengthMismatch as alloy_sol_types::SolError>::abi_decode_raw(
17935 data,
17936 )
17937 .map(DelegationManagerErrors::InputArrayLengthMismatch)
17938 }
17939 InputArrayLengthMismatch
17940 },
17941 {
17942 fn WithdrawerNotCaller(
17943 data: &[u8],
17944 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17945 <WithdrawerNotCaller as alloy_sol_types::SolError>::abi_decode_raw(
17946 data,
17947 )
17948 .map(DelegationManagerErrors::WithdrawerNotCaller)
17949 }
17950 WithdrawerNotCaller
17951 },
17952 {
17953 fn InputAddressZero(
17954 data: &[u8],
17955 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17956 <InputAddressZero as alloy_sol_types::SolError>::abi_decode_raw(
17957 data,
17958 )
17959 .map(DelegationManagerErrors::InputAddressZero)
17960 }
17961 InputAddressZero
17962 },
17963 {
17964 fn OnlyPauser(
17965 data: &[u8],
17966 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17967 <OnlyPauser as alloy_sol_types::SolError>::abi_decode_raw(data)
17968 .map(DelegationManagerErrors::OnlyPauser)
17969 }
17970 OnlyPauser
17971 },
17972 {
17973 fn ActivelyDelegated(
17974 data: &[u8],
17975 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17976 <ActivelyDelegated as alloy_sol_types::SolError>::abi_decode_raw(
17977 data,
17978 )
17979 .map(DelegationManagerErrors::ActivelyDelegated)
17980 }
17981 ActivelyDelegated
17982 },
17983 {
17984 fn OnlyUnpauser(
17985 data: &[u8],
17986 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17987 <OnlyUnpauser as alloy_sol_types::SolError>::abi_decode_raw(data)
17988 .map(DelegationManagerErrors::OnlyUnpauser)
17989 }
17990 OnlyUnpauser
17991 },
17992 {
17993 fn InputArrayLengthZero(
17994 data: &[u8],
17995 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
17996 <InputArrayLengthZero as alloy_sol_types::SolError>::abi_decode_raw(
17997 data,
17998 )
17999 .map(DelegationManagerErrors::InputArrayLengthZero)
18000 }
18001 InputArrayLengthZero
18002 },
18003 {
18004 fn CurrentlyPaused(
18005 data: &[u8],
18006 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18007 <CurrentlyPaused as alloy_sol_types::SolError>::abi_decode_raw(
18008 data,
18009 )
18010 .map(DelegationManagerErrors::CurrentlyPaused)
18011 }
18012 CurrentlyPaused
18013 },
18014 {
18015 fn WithdrawalNotQueued(
18016 data: &[u8],
18017 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18018 <WithdrawalNotQueued as alloy_sol_types::SolError>::abi_decode_raw(
18019 data,
18020 )
18021 .map(DelegationManagerErrors::WithdrawalNotQueued)
18022 }
18023 WithdrawalNotQueued
18024 },
18025 {
18026 fn InvalidSignature(
18027 data: &[u8],
18028 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18029 <InvalidSignature as alloy_sol_types::SolError>::abi_decode_raw(
18030 data,
18031 )
18032 .map(DelegationManagerErrors::InvalidSignature)
18033 }
18034 InvalidSignature
18035 },
18036 {
18037 fn OperatorsCannotUndelegate(
18038 data: &[u8],
18039 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18040 <OperatorsCannotUndelegate as alloy_sol_types::SolError>::abi_decode_raw(
18041 data,
18042 )
18043 .map(DelegationManagerErrors::OperatorsCannotUndelegate)
18044 }
18045 OperatorsCannotUndelegate
18046 },
18047 {
18048 fn InvalidPermissions(
18049 data: &[u8],
18050 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18051 <InvalidPermissions as alloy_sol_types::SolError>::abi_decode_raw(
18052 data,
18053 )
18054 .map(DelegationManagerErrors::InvalidPermissions)
18055 }
18056 InvalidPermissions
18057 },
18058 {
18059 fn NotActivelyDelegated(
18060 data: &[u8],
18061 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18062 <NotActivelyDelegated as alloy_sol_types::SolError>::abi_decode_raw(
18063 data,
18064 )
18065 .map(DelegationManagerErrors::NotActivelyDelegated)
18066 }
18067 NotActivelyDelegated
18068 },
18069 {
18070 fn InvalidShortString(
18071 data: &[u8],
18072 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18073 <InvalidShortString as alloy_sol_types::SolError>::abi_decode_raw(
18074 data,
18075 )
18076 .map(DelegationManagerErrors::InvalidShortString)
18077 }
18078 InvalidShortString
18079 },
18080 {
18081 fn InvalidNewPausedStatus(
18082 data: &[u8],
18083 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18084 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_decode_raw(
18085 data,
18086 )
18087 .map(DelegationManagerErrors::InvalidNewPausedStatus)
18088 }
18089 InvalidNewPausedStatus
18090 },
18091 {
18092 fn OnlyEigenPodManager(
18093 data: &[u8],
18094 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18095 <OnlyEigenPodManager as alloy_sol_types::SolError>::abi_decode_raw(
18096 data,
18097 )
18098 .map(DelegationManagerErrors::OnlyEigenPodManager)
18099 }
18100 OnlyEigenPodManager
18101 },
18102 {
18103 fn WithdrawalDelayNotElapsed(
18104 data: &[u8],
18105 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18106 <WithdrawalDelayNotElapsed as alloy_sol_types::SolError>::abi_decode_raw(
18107 data,
18108 )
18109 .map(DelegationManagerErrors::WithdrawalDelayNotElapsed)
18110 }
18111 WithdrawalDelayNotElapsed
18112 },
18113 ];
18114 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
18115 return Err(
18116 alloy_sol_types::Error::unknown_selector(
18117 <Self as alloy_sol_types::SolInterface>::NAME,
18118 selector,
18119 ),
18120 );
18121 };
18122 DECODE_SHIMS[idx](data)
18123 }
18124 #[inline]
18125 #[allow(non_snake_case)]
18126 fn abi_decode_raw_validate(
18127 selector: [u8; 4],
18128 data: &[u8],
18129 ) -> alloy_sol_types::Result<Self> {
18130 static DECODE_VALIDATE_SHIMS: &[fn(
18131 &[u8],
18132 ) -> alloy_sol_types::Result<DelegationManagerErrors>] = &[
18133 {
18134 fn SignatureExpired(
18135 data: &[u8],
18136 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18137 <SignatureExpired as alloy_sol_types::SolError>::abi_decode_raw_validate(
18138 data,
18139 )
18140 .map(DelegationManagerErrors::SignatureExpired)
18141 }
18142 SignatureExpired
18143 },
18144 {
18145 fn OnlyStrategyManagerOrEigenPodManager(
18146 data: &[u8],
18147 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18148 <OnlyStrategyManagerOrEigenPodManager as alloy_sol_types::SolError>::abi_decode_raw_validate(
18149 data,
18150 )
18151 .map(
18152 DelegationManagerErrors::OnlyStrategyManagerOrEigenPodManager,
18153 )
18154 }
18155 OnlyStrategyManagerOrEigenPodManager
18156 },
18157 {
18158 fn OnlyAllocationManager(
18159 data: &[u8],
18160 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18161 <OnlyAllocationManager as alloy_sol_types::SolError>::abi_decode_raw_validate(
18162 data,
18163 )
18164 .map(DelegationManagerErrors::OnlyAllocationManager)
18165 }
18166 OnlyAllocationManager
18167 },
18168 {
18169 fn OperatorNotRegistered(
18170 data: &[u8],
18171 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18172 <OperatorNotRegistered as alloy_sol_types::SolError>::abi_decode_raw_validate(
18173 data,
18174 )
18175 .map(DelegationManagerErrors::OperatorNotRegistered)
18176 }
18177 OperatorNotRegistered
18178 },
18179 {
18180 fn FullySlashed(
18181 data: &[u8],
18182 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18183 <FullySlashed as alloy_sol_types::SolError>::abi_decode_raw_validate(
18184 data,
18185 )
18186 .map(DelegationManagerErrors::FullySlashed)
18187 }
18188 FullySlashed
18189 },
18190 {
18191 fn InvalidSnapshotOrdering(
18192 data: &[u8],
18193 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18194 <InvalidSnapshotOrdering as alloy_sol_types::SolError>::abi_decode_raw_validate(
18195 data,
18196 )
18197 .map(DelegationManagerErrors::InvalidSnapshotOrdering)
18198 }
18199 InvalidSnapshotOrdering
18200 },
18201 {
18202 fn StringTooLong(
18203 data: &[u8],
18204 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18205 <StringTooLong as alloy_sol_types::SolError>::abi_decode_raw_validate(
18206 data,
18207 )
18208 .map(DelegationManagerErrors::StringTooLong)
18209 }
18210 StringTooLong
18211 },
18212 {
18213 fn SaltSpent(
18214 data: &[u8],
18215 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18216 <SaltSpent as alloy_sol_types::SolError>::abi_decode_raw_validate(
18217 data,
18218 )
18219 .map(DelegationManagerErrors::SaltSpent)
18220 }
18221 SaltSpent
18222 },
18223 {
18224 fn CallerCannotUndelegate(
18225 data: &[u8],
18226 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18227 <CallerCannotUndelegate as alloy_sol_types::SolError>::abi_decode_raw_validate(
18228 data,
18229 )
18230 .map(DelegationManagerErrors::CallerCannotUndelegate)
18231 }
18232 CallerCannotUndelegate
18233 },
18234 {
18235 fn InputArrayLengthMismatch(
18236 data: &[u8],
18237 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18238 <InputArrayLengthMismatch as alloy_sol_types::SolError>::abi_decode_raw_validate(
18239 data,
18240 )
18241 .map(DelegationManagerErrors::InputArrayLengthMismatch)
18242 }
18243 InputArrayLengthMismatch
18244 },
18245 {
18246 fn WithdrawerNotCaller(
18247 data: &[u8],
18248 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18249 <WithdrawerNotCaller as alloy_sol_types::SolError>::abi_decode_raw_validate(
18250 data,
18251 )
18252 .map(DelegationManagerErrors::WithdrawerNotCaller)
18253 }
18254 WithdrawerNotCaller
18255 },
18256 {
18257 fn InputAddressZero(
18258 data: &[u8],
18259 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18260 <InputAddressZero as alloy_sol_types::SolError>::abi_decode_raw_validate(
18261 data,
18262 )
18263 .map(DelegationManagerErrors::InputAddressZero)
18264 }
18265 InputAddressZero
18266 },
18267 {
18268 fn OnlyPauser(
18269 data: &[u8],
18270 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18271 <OnlyPauser as alloy_sol_types::SolError>::abi_decode_raw_validate(
18272 data,
18273 )
18274 .map(DelegationManagerErrors::OnlyPauser)
18275 }
18276 OnlyPauser
18277 },
18278 {
18279 fn ActivelyDelegated(
18280 data: &[u8],
18281 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18282 <ActivelyDelegated as alloy_sol_types::SolError>::abi_decode_raw_validate(
18283 data,
18284 )
18285 .map(DelegationManagerErrors::ActivelyDelegated)
18286 }
18287 ActivelyDelegated
18288 },
18289 {
18290 fn OnlyUnpauser(
18291 data: &[u8],
18292 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18293 <OnlyUnpauser as alloy_sol_types::SolError>::abi_decode_raw_validate(
18294 data,
18295 )
18296 .map(DelegationManagerErrors::OnlyUnpauser)
18297 }
18298 OnlyUnpauser
18299 },
18300 {
18301 fn InputArrayLengthZero(
18302 data: &[u8],
18303 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18304 <InputArrayLengthZero as alloy_sol_types::SolError>::abi_decode_raw_validate(
18305 data,
18306 )
18307 .map(DelegationManagerErrors::InputArrayLengthZero)
18308 }
18309 InputArrayLengthZero
18310 },
18311 {
18312 fn CurrentlyPaused(
18313 data: &[u8],
18314 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18315 <CurrentlyPaused as alloy_sol_types::SolError>::abi_decode_raw_validate(
18316 data,
18317 )
18318 .map(DelegationManagerErrors::CurrentlyPaused)
18319 }
18320 CurrentlyPaused
18321 },
18322 {
18323 fn WithdrawalNotQueued(
18324 data: &[u8],
18325 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18326 <WithdrawalNotQueued as alloy_sol_types::SolError>::abi_decode_raw_validate(
18327 data,
18328 )
18329 .map(DelegationManagerErrors::WithdrawalNotQueued)
18330 }
18331 WithdrawalNotQueued
18332 },
18333 {
18334 fn InvalidSignature(
18335 data: &[u8],
18336 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18337 <InvalidSignature as alloy_sol_types::SolError>::abi_decode_raw_validate(
18338 data,
18339 )
18340 .map(DelegationManagerErrors::InvalidSignature)
18341 }
18342 InvalidSignature
18343 },
18344 {
18345 fn OperatorsCannotUndelegate(
18346 data: &[u8],
18347 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18348 <OperatorsCannotUndelegate as alloy_sol_types::SolError>::abi_decode_raw_validate(
18349 data,
18350 )
18351 .map(DelegationManagerErrors::OperatorsCannotUndelegate)
18352 }
18353 OperatorsCannotUndelegate
18354 },
18355 {
18356 fn InvalidPermissions(
18357 data: &[u8],
18358 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18359 <InvalidPermissions as alloy_sol_types::SolError>::abi_decode_raw_validate(
18360 data,
18361 )
18362 .map(DelegationManagerErrors::InvalidPermissions)
18363 }
18364 InvalidPermissions
18365 },
18366 {
18367 fn NotActivelyDelegated(
18368 data: &[u8],
18369 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18370 <NotActivelyDelegated as alloy_sol_types::SolError>::abi_decode_raw_validate(
18371 data,
18372 )
18373 .map(DelegationManagerErrors::NotActivelyDelegated)
18374 }
18375 NotActivelyDelegated
18376 },
18377 {
18378 fn InvalidShortString(
18379 data: &[u8],
18380 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18381 <InvalidShortString as alloy_sol_types::SolError>::abi_decode_raw_validate(
18382 data,
18383 )
18384 .map(DelegationManagerErrors::InvalidShortString)
18385 }
18386 InvalidShortString
18387 },
18388 {
18389 fn InvalidNewPausedStatus(
18390 data: &[u8],
18391 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18392 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_decode_raw_validate(
18393 data,
18394 )
18395 .map(DelegationManagerErrors::InvalidNewPausedStatus)
18396 }
18397 InvalidNewPausedStatus
18398 },
18399 {
18400 fn OnlyEigenPodManager(
18401 data: &[u8],
18402 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18403 <OnlyEigenPodManager as alloy_sol_types::SolError>::abi_decode_raw_validate(
18404 data,
18405 )
18406 .map(DelegationManagerErrors::OnlyEigenPodManager)
18407 }
18408 OnlyEigenPodManager
18409 },
18410 {
18411 fn WithdrawalDelayNotElapsed(
18412 data: &[u8],
18413 ) -> alloy_sol_types::Result<DelegationManagerErrors> {
18414 <WithdrawalDelayNotElapsed as alloy_sol_types::SolError>::abi_decode_raw_validate(
18415 data,
18416 )
18417 .map(DelegationManagerErrors::WithdrawalDelayNotElapsed)
18418 }
18419 WithdrawalDelayNotElapsed
18420 },
18421 ];
18422 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
18423 return Err(
18424 alloy_sol_types::Error::unknown_selector(
18425 <Self as alloy_sol_types::SolInterface>::NAME,
18426 selector,
18427 ),
18428 );
18429 };
18430 DECODE_VALIDATE_SHIMS[idx](data)
18431 }
18432 #[inline]
18433 fn abi_encoded_size(&self) -> usize {
18434 match self {
18435 Self::ActivelyDelegated(inner) => {
18436 <ActivelyDelegated as alloy_sol_types::SolError>::abi_encoded_size(
18437 inner,
18438 )
18439 }
18440 Self::CallerCannotUndelegate(inner) => {
18441 <CallerCannotUndelegate as alloy_sol_types::SolError>::abi_encoded_size(
18442 inner,
18443 )
18444 }
18445 Self::CurrentlyPaused(inner) => {
18446 <CurrentlyPaused as alloy_sol_types::SolError>::abi_encoded_size(
18447 inner,
18448 )
18449 }
18450 Self::FullySlashed(inner) => {
18451 <FullySlashed as alloy_sol_types::SolError>::abi_encoded_size(inner)
18452 }
18453 Self::InputAddressZero(inner) => {
18454 <InputAddressZero as alloy_sol_types::SolError>::abi_encoded_size(
18455 inner,
18456 )
18457 }
18458 Self::InputArrayLengthMismatch(inner) => {
18459 <InputArrayLengthMismatch as alloy_sol_types::SolError>::abi_encoded_size(
18460 inner,
18461 )
18462 }
18463 Self::InputArrayLengthZero(inner) => {
18464 <InputArrayLengthZero as alloy_sol_types::SolError>::abi_encoded_size(
18465 inner,
18466 )
18467 }
18468 Self::InvalidNewPausedStatus(inner) => {
18469 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_encoded_size(
18470 inner,
18471 )
18472 }
18473 Self::InvalidPermissions(inner) => {
18474 <InvalidPermissions as alloy_sol_types::SolError>::abi_encoded_size(
18475 inner,
18476 )
18477 }
18478 Self::InvalidShortString(inner) => {
18479 <InvalidShortString as alloy_sol_types::SolError>::abi_encoded_size(
18480 inner,
18481 )
18482 }
18483 Self::InvalidSignature(inner) => {
18484 <InvalidSignature as alloy_sol_types::SolError>::abi_encoded_size(
18485 inner,
18486 )
18487 }
18488 Self::InvalidSnapshotOrdering(inner) => {
18489 <InvalidSnapshotOrdering as alloy_sol_types::SolError>::abi_encoded_size(
18490 inner,
18491 )
18492 }
18493 Self::NotActivelyDelegated(inner) => {
18494 <NotActivelyDelegated as alloy_sol_types::SolError>::abi_encoded_size(
18495 inner,
18496 )
18497 }
18498 Self::OnlyAllocationManager(inner) => {
18499 <OnlyAllocationManager as alloy_sol_types::SolError>::abi_encoded_size(
18500 inner,
18501 )
18502 }
18503 Self::OnlyEigenPodManager(inner) => {
18504 <OnlyEigenPodManager as alloy_sol_types::SolError>::abi_encoded_size(
18505 inner,
18506 )
18507 }
18508 Self::OnlyPauser(inner) => {
18509 <OnlyPauser as alloy_sol_types::SolError>::abi_encoded_size(inner)
18510 }
18511 Self::OnlyStrategyManagerOrEigenPodManager(inner) => {
18512 <OnlyStrategyManagerOrEigenPodManager as alloy_sol_types::SolError>::abi_encoded_size(
18513 inner,
18514 )
18515 }
18516 Self::OnlyUnpauser(inner) => {
18517 <OnlyUnpauser as alloy_sol_types::SolError>::abi_encoded_size(inner)
18518 }
18519 Self::OperatorNotRegistered(inner) => {
18520 <OperatorNotRegistered as alloy_sol_types::SolError>::abi_encoded_size(
18521 inner,
18522 )
18523 }
18524 Self::OperatorsCannotUndelegate(inner) => {
18525 <OperatorsCannotUndelegate as alloy_sol_types::SolError>::abi_encoded_size(
18526 inner,
18527 )
18528 }
18529 Self::SaltSpent(inner) => {
18530 <SaltSpent as alloy_sol_types::SolError>::abi_encoded_size(inner)
18531 }
18532 Self::SignatureExpired(inner) => {
18533 <SignatureExpired as alloy_sol_types::SolError>::abi_encoded_size(
18534 inner,
18535 )
18536 }
18537 Self::StringTooLong(inner) => {
18538 <StringTooLong as alloy_sol_types::SolError>::abi_encoded_size(inner)
18539 }
18540 Self::WithdrawalDelayNotElapsed(inner) => {
18541 <WithdrawalDelayNotElapsed as alloy_sol_types::SolError>::abi_encoded_size(
18542 inner,
18543 )
18544 }
18545 Self::WithdrawalNotQueued(inner) => {
18546 <WithdrawalNotQueued as alloy_sol_types::SolError>::abi_encoded_size(
18547 inner,
18548 )
18549 }
18550 Self::WithdrawerNotCaller(inner) => {
18551 <WithdrawerNotCaller as alloy_sol_types::SolError>::abi_encoded_size(
18552 inner,
18553 )
18554 }
18555 }
18556 }
18557 #[inline]
18558 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
18559 match self {
18560 Self::ActivelyDelegated(inner) => {
18561 <ActivelyDelegated as alloy_sol_types::SolError>::abi_encode_raw(
18562 inner,
18563 out,
18564 )
18565 }
18566 Self::CallerCannotUndelegate(inner) => {
18567 <CallerCannotUndelegate as alloy_sol_types::SolError>::abi_encode_raw(
18568 inner,
18569 out,
18570 )
18571 }
18572 Self::CurrentlyPaused(inner) => {
18573 <CurrentlyPaused as alloy_sol_types::SolError>::abi_encode_raw(
18574 inner,
18575 out,
18576 )
18577 }
18578 Self::FullySlashed(inner) => {
18579 <FullySlashed as alloy_sol_types::SolError>::abi_encode_raw(
18580 inner,
18581 out,
18582 )
18583 }
18584 Self::InputAddressZero(inner) => {
18585 <InputAddressZero as alloy_sol_types::SolError>::abi_encode_raw(
18586 inner,
18587 out,
18588 )
18589 }
18590 Self::InputArrayLengthMismatch(inner) => {
18591 <InputArrayLengthMismatch as alloy_sol_types::SolError>::abi_encode_raw(
18592 inner,
18593 out,
18594 )
18595 }
18596 Self::InputArrayLengthZero(inner) => {
18597 <InputArrayLengthZero as alloy_sol_types::SolError>::abi_encode_raw(
18598 inner,
18599 out,
18600 )
18601 }
18602 Self::InvalidNewPausedStatus(inner) => {
18603 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_encode_raw(
18604 inner,
18605 out,
18606 )
18607 }
18608 Self::InvalidPermissions(inner) => {
18609 <InvalidPermissions as alloy_sol_types::SolError>::abi_encode_raw(
18610 inner,
18611 out,
18612 )
18613 }
18614 Self::InvalidShortString(inner) => {
18615 <InvalidShortString as alloy_sol_types::SolError>::abi_encode_raw(
18616 inner,
18617 out,
18618 )
18619 }
18620 Self::InvalidSignature(inner) => {
18621 <InvalidSignature as alloy_sol_types::SolError>::abi_encode_raw(
18622 inner,
18623 out,
18624 )
18625 }
18626 Self::InvalidSnapshotOrdering(inner) => {
18627 <InvalidSnapshotOrdering as alloy_sol_types::SolError>::abi_encode_raw(
18628 inner,
18629 out,
18630 )
18631 }
18632 Self::NotActivelyDelegated(inner) => {
18633 <NotActivelyDelegated as alloy_sol_types::SolError>::abi_encode_raw(
18634 inner,
18635 out,
18636 )
18637 }
18638 Self::OnlyAllocationManager(inner) => {
18639 <OnlyAllocationManager as alloy_sol_types::SolError>::abi_encode_raw(
18640 inner,
18641 out,
18642 )
18643 }
18644 Self::OnlyEigenPodManager(inner) => {
18645 <OnlyEigenPodManager as alloy_sol_types::SolError>::abi_encode_raw(
18646 inner,
18647 out,
18648 )
18649 }
18650 Self::OnlyPauser(inner) => {
18651 <OnlyPauser as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
18652 }
18653 Self::OnlyStrategyManagerOrEigenPodManager(inner) => {
18654 <OnlyStrategyManagerOrEigenPodManager as alloy_sol_types::SolError>::abi_encode_raw(
18655 inner,
18656 out,
18657 )
18658 }
18659 Self::OnlyUnpauser(inner) => {
18660 <OnlyUnpauser as alloy_sol_types::SolError>::abi_encode_raw(
18661 inner,
18662 out,
18663 )
18664 }
18665 Self::OperatorNotRegistered(inner) => {
18666 <OperatorNotRegistered as alloy_sol_types::SolError>::abi_encode_raw(
18667 inner,
18668 out,
18669 )
18670 }
18671 Self::OperatorsCannotUndelegate(inner) => {
18672 <OperatorsCannotUndelegate as alloy_sol_types::SolError>::abi_encode_raw(
18673 inner,
18674 out,
18675 )
18676 }
18677 Self::SaltSpent(inner) => {
18678 <SaltSpent as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
18679 }
18680 Self::SignatureExpired(inner) => {
18681 <SignatureExpired as alloy_sol_types::SolError>::abi_encode_raw(
18682 inner,
18683 out,
18684 )
18685 }
18686 Self::StringTooLong(inner) => {
18687 <StringTooLong as alloy_sol_types::SolError>::abi_encode_raw(
18688 inner,
18689 out,
18690 )
18691 }
18692 Self::WithdrawalDelayNotElapsed(inner) => {
18693 <WithdrawalDelayNotElapsed as alloy_sol_types::SolError>::abi_encode_raw(
18694 inner,
18695 out,
18696 )
18697 }
18698 Self::WithdrawalNotQueued(inner) => {
18699 <WithdrawalNotQueued as alloy_sol_types::SolError>::abi_encode_raw(
18700 inner,
18701 out,
18702 )
18703 }
18704 Self::WithdrawerNotCaller(inner) => {
18705 <WithdrawerNotCaller as alloy_sol_types::SolError>::abi_encode_raw(
18706 inner,
18707 out,
18708 )
18709 }
18710 }
18711 }
18712 }
18713 #[derive(serde::Serialize, serde::Deserialize)]
18715 #[derive(Debug, PartialEq, Eq, Hash)]
18716 pub enum DelegationManagerEvents {
18717 #[allow(missing_docs)]
18718 DelegationApproverUpdated(DelegationApproverUpdated),
18719 #[allow(missing_docs)]
18720 DepositScalingFactorUpdated(DepositScalingFactorUpdated),
18721 #[allow(missing_docs)]
18722 Initialized(Initialized),
18723 #[allow(missing_docs)]
18724 OperatorMetadataURIUpdated(OperatorMetadataURIUpdated),
18725 #[allow(missing_docs)]
18726 OperatorRegistered(OperatorRegistered),
18727 #[allow(missing_docs)]
18728 OperatorSharesDecreased(OperatorSharesDecreased),
18729 #[allow(missing_docs)]
18730 OperatorSharesIncreased(OperatorSharesIncreased),
18731 #[allow(missing_docs)]
18732 OperatorSharesSlashed(OperatorSharesSlashed),
18733 #[allow(missing_docs)]
18734 OwnershipTransferred(OwnershipTransferred),
18735 #[allow(missing_docs)]
18736 Paused(Paused),
18737 #[allow(missing_docs)]
18738 SlashingWithdrawalCompleted(SlashingWithdrawalCompleted),
18739 #[allow(missing_docs)]
18740 SlashingWithdrawalQueued(SlashingWithdrawalQueued),
18741 #[allow(missing_docs)]
18742 StakerDelegated(StakerDelegated),
18743 #[allow(missing_docs)]
18744 StakerForceUndelegated(StakerForceUndelegated),
18745 #[allow(missing_docs)]
18746 StakerUndelegated(StakerUndelegated),
18747 #[allow(missing_docs)]
18748 Unpaused(Unpaused),
18749 }
18750 #[automatically_derived]
18751 impl DelegationManagerEvents {
18752 pub const SELECTORS: &'static [[u8; 32usize]] = &[
18759 [
18760 2u8, 169u8, 25u8, 237u8, 14u8, 42u8, 202u8, 209u8, 221u8, 144u8, 241u8,
18761 126u8, 242u8, 250u8, 74u8, 229u8, 70u8, 46u8, 225u8, 51u8, 145u8, 112u8,
18762 3u8, 74u8, 133u8, 49u8, 204u8, 164u8, 182u8, 112u8, 128u8, 144u8,
18763 ],
18764 [
18765 30u8, 192u8, 66u8, 201u8, 101u8, 226u8, 237u8, 215u8, 16u8, 123u8, 81u8,
18766 24u8, 142u8, 224u8, 243u8, 131u8, 226u8, 46u8, 118u8, 23u8, 144u8, 65u8,
18767 171u8, 58u8, 157u8, 24u8, 255u8, 21u8, 20u8, 5u8, 22u8, 108u8,
18768 ],
18769 [
18770 31u8, 64u8, 64u8, 8u8, 137u8, 39u8, 78u8, 208u8, 123u8, 36u8, 132u8,
18771 94u8, 80u8, 84u8, 168u8, 122u8, 12u8, 171u8, 150u8, 158u8, 177u8, 39u8,
18772 122u8, 175u8, 230u8, 26u8, 227u8, 82u8, 231u8, 195u8, 42u8, 0u8,
18773 ],
18774 [
18775 38u8, 178u8, 170u8, 226u8, 101u8, 22u8, 232u8, 113u8, 158u8, 245u8, 14u8,
18776 162u8, 246u8, 131u8, 26u8, 46u8, 251u8, 212u8, 227u8, 125u8, 204u8,
18777 223u8, 15u8, 105u8, 54u8, 178u8, 123u8, 192u8, 142u8, 121u8, 62u8, 48u8,
18778 ],
18779 [
18780 53u8, 130u8, 209u8, 130u8, 142u8, 38u8, 191u8, 86u8, 189u8, 128u8, 21u8,
18781 2u8, 188u8, 2u8, 26u8, 192u8, 188u8, 138u8, 251u8, 87u8, 200u8, 38u8,
18782 228u8, 152u8, 107u8, 69u8, 89u8, 60u8, 143u8, 173u8, 56u8, 156u8,
18783 ],
18784 [
18785 105u8, 9u8, 96u8, 0u8, 55u8, 183u8, 93u8, 123u8, 71u8, 51u8, 174u8,
18786 221u8, 129u8, 84u8, 66u8, 181u8, 236u8, 1u8, 138u8, 130u8, 119u8, 81u8,
18787 200u8, 50u8, 170u8, 255u8, 100u8, 235u8, 165u8, 214u8, 210u8, 221u8,
18788 ],
18789 [
18790 119u8, 59u8, 84u8, 192u8, 77u8, 117u8, 111u8, 204u8, 94u8, 103u8, 129u8,
18791 17u8, 247u8, 215u8, 48u8, 222u8, 59u8, 233u8, 129u8, 146u8, 0u8, 7u8,
18792 153u8, 238u8, 227u8, 214u8, 55u8, 22u8, 5u8, 90u8, 135u8, 198u8,
18793 ],
18794 [
18795 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8,
18796 19u8, 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8,
18797 146u8, 20u8, 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8,
18798 ],
18799 [
18800 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8,
18801 31u8, 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8,
18802 218u8, 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
18803 ],
18804 [
18805 139u8, 233u8, 50u8, 186u8, 197u8, 69u8, 97u8, 242u8, 114u8, 96u8, 249u8,
18806 84u8, 99u8, 217u8, 184u8, 171u8, 55u8, 224u8, 107u8, 40u8, 66u8, 229u8,
18807 238u8, 36u8, 4u8, 21u8, 124u8, 193u8, 61u8, 246u8, 235u8, 143u8,
18808 ],
18809 [
18810 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8,
18811 146u8, 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8,
18812 183u8, 183u8, 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8,
18813 ],
18814 [
18815 171u8, 64u8, 163u8, 116u8, 188u8, 81u8, 222u8, 55u8, 34u8, 0u8, 168u8,
18816 188u8, 152u8, 26u8, 248u8, 201u8, 236u8, 220u8, 8u8, 223u8, 218u8, 239u8,
18817 11u8, 182u8, 224u8, 159u8, 136u8, 243u8, 198u8, 22u8, 239u8, 61u8,
18818 ],
18819 [
18820 195u8, 238u8, 159u8, 46u8, 95u8, 218u8, 152u8, 232u8, 6u8, 106u8, 31u8,
18821 116u8, 91u8, 45u8, 249u8, 40u8, 95u8, 65u8, 111u8, 233u8, 140u8, 242u8,
18822 85u8, 156u8, 210u8, 20u8, 132u8, 179u8, 216u8, 116u8, 51u8, 4u8,
18823 ],
18824 [
18825 221u8, 97u8, 31u8, 78u8, 246u8, 63u8, 67u8, 133u8, 241u8, 117u8, 108u8,
18826 134u8, 206u8, 31u8, 31u8, 56u8, 154u8, 144u8, 19u8, 186u8, 111u8, 160u8,
18827 125u8, 171u8, 168u8, 82u8, 130u8, 145u8, 188u8, 45u8, 60u8, 48u8,
18828 ],
18829 [
18830 240u8, 237u8, 223u8, 7u8, 230u8, 234u8, 20u8, 243u8, 136u8, 180u8, 126u8,
18831 30u8, 148u8, 160u8, 244u8, 100u8, 236u8, 189u8, 158u8, 237u8, 65u8,
18832 113u8, 19u8, 14u8, 15u8, 192u8, 233u8, 159u8, 180u8, 3u8, 10u8, 138u8,
18833 ],
18834 [
18835 254u8, 227u8, 9u8, 102u8, 162u8, 86u8, 183u8, 30u8, 20u8, 188u8, 14u8,
18836 191u8, 201u8, 67u8, 21u8, 226u8, 142u8, 244u8, 169u8, 122u8, 113u8, 49u8,
18837 169u8, 226u8, 183u8, 163u8, 16u8, 167u8, 58u8, 244u8, 70u8, 118u8,
18838 ],
18839 ];
18840 }
18841 #[automatically_derived]
18842 impl alloy_sol_types::SolEventInterface for DelegationManagerEvents {
18843 const NAME: &'static str = "DelegationManagerEvents";
18844 const COUNT: usize = 16usize;
18845 fn decode_raw_log(
18846 topics: &[alloy_sol_types::Word],
18847 data: &[u8],
18848 ) -> alloy_sol_types::Result<Self> {
18849 match topics.first().copied() {
18850 Some(
18851 <DelegationApproverUpdated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18852 ) => {
18853 <DelegationApproverUpdated as alloy_sol_types::SolEvent>::decode_raw_log(
18854 topics,
18855 data,
18856 )
18857 .map(Self::DelegationApproverUpdated)
18858 }
18859 Some(
18860 <DepositScalingFactorUpdated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18861 ) => {
18862 <DepositScalingFactorUpdated as alloy_sol_types::SolEvent>::decode_raw_log(
18863 topics,
18864 data,
18865 )
18866 .map(Self::DepositScalingFactorUpdated)
18867 }
18868 Some(<Initialized as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
18869 <Initialized as alloy_sol_types::SolEvent>::decode_raw_log(
18870 topics,
18871 data,
18872 )
18873 .map(Self::Initialized)
18874 }
18875 Some(
18876 <OperatorMetadataURIUpdated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18877 ) => {
18878 <OperatorMetadataURIUpdated as alloy_sol_types::SolEvent>::decode_raw_log(
18879 topics,
18880 data,
18881 )
18882 .map(Self::OperatorMetadataURIUpdated)
18883 }
18884 Some(
18885 <OperatorRegistered as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18886 ) => {
18887 <OperatorRegistered as alloy_sol_types::SolEvent>::decode_raw_log(
18888 topics,
18889 data,
18890 )
18891 .map(Self::OperatorRegistered)
18892 }
18893 Some(
18894 <OperatorSharesDecreased as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18895 ) => {
18896 <OperatorSharesDecreased as alloy_sol_types::SolEvent>::decode_raw_log(
18897 topics,
18898 data,
18899 )
18900 .map(Self::OperatorSharesDecreased)
18901 }
18902 Some(
18903 <OperatorSharesIncreased as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18904 ) => {
18905 <OperatorSharesIncreased as alloy_sol_types::SolEvent>::decode_raw_log(
18906 topics,
18907 data,
18908 )
18909 .map(Self::OperatorSharesIncreased)
18910 }
18911 Some(
18912 <OperatorSharesSlashed as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18913 ) => {
18914 <OperatorSharesSlashed as alloy_sol_types::SolEvent>::decode_raw_log(
18915 topics,
18916 data,
18917 )
18918 .map(Self::OperatorSharesSlashed)
18919 }
18920 Some(
18921 <OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18922 ) => {
18923 <OwnershipTransferred as alloy_sol_types::SolEvent>::decode_raw_log(
18924 topics,
18925 data,
18926 )
18927 .map(Self::OwnershipTransferred)
18928 }
18929 Some(<Paused as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
18930 <Paused as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
18931 .map(Self::Paused)
18932 }
18933 Some(
18934 <SlashingWithdrawalCompleted as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18935 ) => {
18936 <SlashingWithdrawalCompleted as alloy_sol_types::SolEvent>::decode_raw_log(
18937 topics,
18938 data,
18939 )
18940 .map(Self::SlashingWithdrawalCompleted)
18941 }
18942 Some(
18943 <SlashingWithdrawalQueued as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18944 ) => {
18945 <SlashingWithdrawalQueued as alloy_sol_types::SolEvent>::decode_raw_log(
18946 topics,
18947 data,
18948 )
18949 .map(Self::SlashingWithdrawalQueued)
18950 }
18951 Some(<StakerDelegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
18952 <StakerDelegated as alloy_sol_types::SolEvent>::decode_raw_log(
18953 topics,
18954 data,
18955 )
18956 .map(Self::StakerDelegated)
18957 }
18958 Some(
18959 <StakerForceUndelegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18960 ) => {
18961 <StakerForceUndelegated as alloy_sol_types::SolEvent>::decode_raw_log(
18962 topics,
18963 data,
18964 )
18965 .map(Self::StakerForceUndelegated)
18966 }
18967 Some(
18968 <StakerUndelegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
18969 ) => {
18970 <StakerUndelegated as alloy_sol_types::SolEvent>::decode_raw_log(
18971 topics,
18972 data,
18973 )
18974 .map(Self::StakerUndelegated)
18975 }
18976 Some(<Unpaused as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
18977 <Unpaused as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
18978 .map(Self::Unpaused)
18979 }
18980 _ => {
18981 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
18982 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
18983 log: alloy_sol_types::private::Box::new(
18984 alloy_sol_types::private::LogData::new_unchecked(
18985 topics.to_vec(),
18986 data.to_vec().into(),
18987 ),
18988 ),
18989 })
18990 }
18991 }
18992 }
18993 }
18994 #[automatically_derived]
18995 impl alloy_sol_types::private::IntoLogData for DelegationManagerEvents {
18996 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
18997 match self {
18998 Self::DelegationApproverUpdated(inner) => {
18999 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19000 }
19001 Self::DepositScalingFactorUpdated(inner) => {
19002 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19003 }
19004 Self::Initialized(inner) => {
19005 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19006 }
19007 Self::OperatorMetadataURIUpdated(inner) => {
19008 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19009 }
19010 Self::OperatorRegistered(inner) => {
19011 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19012 }
19013 Self::OperatorSharesDecreased(inner) => {
19014 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19015 }
19016 Self::OperatorSharesIncreased(inner) => {
19017 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19018 }
19019 Self::OperatorSharesSlashed(inner) => {
19020 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19021 }
19022 Self::OwnershipTransferred(inner) => {
19023 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19024 }
19025 Self::Paused(inner) => {
19026 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19027 }
19028 Self::SlashingWithdrawalCompleted(inner) => {
19029 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19030 }
19031 Self::SlashingWithdrawalQueued(inner) => {
19032 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19033 }
19034 Self::StakerDelegated(inner) => {
19035 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19036 }
19037 Self::StakerForceUndelegated(inner) => {
19038 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19039 }
19040 Self::StakerUndelegated(inner) => {
19041 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19042 }
19043 Self::Unpaused(inner) => {
19044 alloy_sol_types::private::IntoLogData::to_log_data(inner)
19045 }
19046 }
19047 }
19048 fn into_log_data(self) -> alloy_sol_types::private::LogData {
19049 match self {
19050 Self::DelegationApproverUpdated(inner) => {
19051 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19052 }
19053 Self::DepositScalingFactorUpdated(inner) => {
19054 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19055 }
19056 Self::Initialized(inner) => {
19057 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19058 }
19059 Self::OperatorMetadataURIUpdated(inner) => {
19060 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19061 }
19062 Self::OperatorRegistered(inner) => {
19063 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19064 }
19065 Self::OperatorSharesDecreased(inner) => {
19066 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19067 }
19068 Self::OperatorSharesIncreased(inner) => {
19069 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19070 }
19071 Self::OperatorSharesSlashed(inner) => {
19072 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19073 }
19074 Self::OwnershipTransferred(inner) => {
19075 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19076 }
19077 Self::Paused(inner) => {
19078 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19079 }
19080 Self::SlashingWithdrawalCompleted(inner) => {
19081 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19082 }
19083 Self::SlashingWithdrawalQueued(inner) => {
19084 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19085 }
19086 Self::StakerDelegated(inner) => {
19087 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19088 }
19089 Self::StakerForceUndelegated(inner) => {
19090 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19091 }
19092 Self::StakerUndelegated(inner) => {
19093 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19094 }
19095 Self::Unpaused(inner) => {
19096 alloy_sol_types::private::IntoLogData::into_log_data(inner)
19097 }
19098 }
19099 }
19100 }
19101 use alloy::contract as alloy_contract;
19102 #[inline]
19106 pub const fn new<
19107 P: alloy_contract::private::Provider<N>,
19108 N: alloy_contract::private::Network,
19109 >(
19110 address: alloy_sol_types::private::Address,
19111 provider: P,
19112 ) -> DelegationManagerInstance<P, N> {
19113 DelegationManagerInstance::<P, N>::new(address, provider)
19114 }
19115 #[inline]
19121 pub fn deploy<
19122 P: alloy_contract::private::Provider<N>,
19123 N: alloy_contract::private::Network,
19124 >(
19125 provider: P,
19126 _strategyManager: alloy::sol_types::private::Address,
19127 _eigenPodManager: alloy::sol_types::private::Address,
19128 _allocationManager: alloy::sol_types::private::Address,
19129 _pauserRegistry: alloy::sol_types::private::Address,
19130 _permissionController: alloy::sol_types::private::Address,
19131 _MIN_WITHDRAWAL_DELAY: u32,
19132 _version: alloy::sol_types::private::String,
19133 ) -> impl ::core::future::Future<
19134 Output = alloy_contract::Result<DelegationManagerInstance<P, N>>,
19135 > {
19136 DelegationManagerInstance::<
19137 P,
19138 N,
19139 >::deploy(
19140 provider,
19141 _strategyManager,
19142 _eigenPodManager,
19143 _allocationManager,
19144 _pauserRegistry,
19145 _permissionController,
19146 _MIN_WITHDRAWAL_DELAY,
19147 _version,
19148 )
19149 }
19150 #[inline]
19156 pub fn deploy_builder<
19157 P: alloy_contract::private::Provider<N>,
19158 N: alloy_contract::private::Network,
19159 >(
19160 provider: P,
19161 _strategyManager: alloy::sol_types::private::Address,
19162 _eigenPodManager: alloy::sol_types::private::Address,
19163 _allocationManager: alloy::sol_types::private::Address,
19164 _pauserRegistry: alloy::sol_types::private::Address,
19165 _permissionController: alloy::sol_types::private::Address,
19166 _MIN_WITHDRAWAL_DELAY: u32,
19167 _version: alloy::sol_types::private::String,
19168 ) -> alloy_contract::RawCallBuilder<P, N> {
19169 DelegationManagerInstance::<
19170 P,
19171 N,
19172 >::deploy_builder(
19173 provider,
19174 _strategyManager,
19175 _eigenPodManager,
19176 _allocationManager,
19177 _pauserRegistry,
19178 _permissionController,
19179 _MIN_WITHDRAWAL_DELAY,
19180 _version,
19181 )
19182 }
19183 #[derive(Clone)]
19195 pub struct DelegationManagerInstance<P, N = alloy_contract::private::Ethereum> {
19196 address: alloy_sol_types::private::Address,
19197 provider: P,
19198 _network: ::core::marker::PhantomData<N>,
19199 }
19200 #[automatically_derived]
19201 impl<P, N> ::core::fmt::Debug for DelegationManagerInstance<P, N> {
19202 #[inline]
19203 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
19204 f.debug_tuple("DelegationManagerInstance").field(&self.address).finish()
19205 }
19206 }
19207 #[automatically_derived]
19209 impl<
19210 P: alloy_contract::private::Provider<N>,
19211 N: alloy_contract::private::Network,
19212 > DelegationManagerInstance<P, N> {
19213 #[inline]
19217 pub const fn new(
19218 address: alloy_sol_types::private::Address,
19219 provider: P,
19220 ) -> Self {
19221 Self {
19222 address,
19223 provider,
19224 _network: ::core::marker::PhantomData,
19225 }
19226 }
19227 #[inline]
19233 pub async fn deploy(
19234 provider: P,
19235 _strategyManager: alloy::sol_types::private::Address,
19236 _eigenPodManager: alloy::sol_types::private::Address,
19237 _allocationManager: alloy::sol_types::private::Address,
19238 _pauserRegistry: alloy::sol_types::private::Address,
19239 _permissionController: alloy::sol_types::private::Address,
19240 _MIN_WITHDRAWAL_DELAY: u32,
19241 _version: alloy::sol_types::private::String,
19242 ) -> alloy_contract::Result<DelegationManagerInstance<P, N>> {
19243 let call_builder = Self::deploy_builder(
19244 provider,
19245 _strategyManager,
19246 _eigenPodManager,
19247 _allocationManager,
19248 _pauserRegistry,
19249 _permissionController,
19250 _MIN_WITHDRAWAL_DELAY,
19251 _version,
19252 );
19253 let contract_address = call_builder.deploy().await?;
19254 Ok(Self::new(contract_address, call_builder.provider))
19255 }
19256 #[inline]
19262 pub fn deploy_builder(
19263 provider: P,
19264 _strategyManager: alloy::sol_types::private::Address,
19265 _eigenPodManager: alloy::sol_types::private::Address,
19266 _allocationManager: alloy::sol_types::private::Address,
19267 _pauserRegistry: alloy::sol_types::private::Address,
19268 _permissionController: alloy::sol_types::private::Address,
19269 _MIN_WITHDRAWAL_DELAY: u32,
19270 _version: alloy::sol_types::private::String,
19271 ) -> alloy_contract::RawCallBuilder<P, N> {
19272 alloy_contract::RawCallBuilder::new_raw_deploy(
19273 provider,
19274 [
19275 &BYTECODE[..],
19276 &alloy_sol_types::SolConstructor::abi_encode(
19277 &constructorCall {
19278 _strategyManager,
19279 _eigenPodManager,
19280 _allocationManager,
19281 _pauserRegistry,
19282 _permissionController,
19283 _MIN_WITHDRAWAL_DELAY,
19284 _version,
19285 },
19286 )[..],
19287 ]
19288 .concat()
19289 .into(),
19290 )
19291 }
19292 #[inline]
19294 pub const fn address(&self) -> &alloy_sol_types::private::Address {
19295 &self.address
19296 }
19297 #[inline]
19299 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
19300 self.address = address;
19301 }
19302 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
19304 self.set_address(address);
19305 self
19306 }
19307 #[inline]
19309 pub const fn provider(&self) -> &P {
19310 &self.provider
19311 }
19312 }
19313 impl<P: ::core::clone::Clone, N> DelegationManagerInstance<&P, N> {
19314 #[inline]
19316 pub fn with_cloned_provider(self) -> DelegationManagerInstance<P, N> {
19317 DelegationManagerInstance {
19318 address: self.address,
19319 provider: ::core::clone::Clone::clone(&self.provider),
19320 _network: ::core::marker::PhantomData,
19321 }
19322 }
19323 }
19324 #[automatically_derived]
19326 impl<
19327 P: alloy_contract::private::Provider<N>,
19328 N: alloy_contract::private::Network,
19329 > DelegationManagerInstance<P, N> {
19330 pub fn call_builder<C: alloy_sol_types::SolCall>(
19335 &self,
19336 call: &C,
19337 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
19338 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
19339 }
19340 pub fn DELEGATION_APPROVAL_TYPEHASH(
19342 &self,
19343 ) -> alloy_contract::SolCallBuilder<&P, DELEGATION_APPROVAL_TYPEHASHCall, N> {
19344 self.call_builder(&DELEGATION_APPROVAL_TYPEHASHCall)
19345 }
19346 pub fn allocationManager(
19348 &self,
19349 ) -> alloy_contract::SolCallBuilder<&P, allocationManagerCall, N> {
19350 self.call_builder(&allocationManagerCall)
19351 }
19352 pub fn beaconChainETHStrategy(
19354 &self,
19355 ) -> alloy_contract::SolCallBuilder<&P, beaconChainETHStrategyCall, N> {
19356 self.call_builder(&beaconChainETHStrategyCall)
19357 }
19358 pub fn calculateDelegationApprovalDigestHash(
19360 &self,
19361 staker: alloy::sol_types::private::Address,
19362 operator: alloy::sol_types::private::Address,
19363 approver: alloy::sol_types::private::Address,
19364 approverSalt: alloy::sol_types::private::FixedBytes<32>,
19365 expiry: alloy::sol_types::private::primitives::aliases::U256,
19366 ) -> alloy_contract::SolCallBuilder<
19367 &P,
19368 calculateDelegationApprovalDigestHashCall,
19369 N,
19370 > {
19371 self.call_builder(
19372 &calculateDelegationApprovalDigestHashCall {
19373 staker,
19374 operator,
19375 approver,
19376 approverSalt,
19377 expiry,
19378 },
19379 )
19380 }
19381 pub fn calculateWithdrawalRoot(
19383 &self,
19384 withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
19385 ) -> alloy_contract::SolCallBuilder<&P, calculateWithdrawalRootCall, N> {
19386 self.call_builder(
19387 &calculateWithdrawalRootCall {
19388 withdrawal,
19389 },
19390 )
19391 }
19392 pub fn completeQueuedWithdrawal(
19394 &self,
19395 withdrawal: <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
19396 tokens: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
19397 receiveAsTokens: bool,
19398 ) -> alloy_contract::SolCallBuilder<&P, completeQueuedWithdrawalCall, N> {
19399 self.call_builder(
19400 &completeQueuedWithdrawalCall {
19401 withdrawal,
19402 tokens,
19403 receiveAsTokens,
19404 },
19405 )
19406 }
19407 pub fn completeQueuedWithdrawals(
19409 &self,
19410 withdrawals: alloy::sol_types::private::Vec<
19411 <IDelegationManagerTypes::Withdrawal as alloy::sol_types::SolType>::RustType,
19412 >,
19413 tokens: alloy::sol_types::private::Vec<
19414 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
19415 >,
19416 receiveAsTokens: alloy::sol_types::private::Vec<bool>,
19417 ) -> alloy_contract::SolCallBuilder<&P, completeQueuedWithdrawalsCall, N> {
19418 self.call_builder(
19419 &completeQueuedWithdrawalsCall {
19420 withdrawals,
19421 tokens,
19422 receiveAsTokens,
19423 },
19424 )
19425 }
19426 pub fn convertToDepositShares(
19428 &self,
19429 staker: alloy::sol_types::private::Address,
19430 strategies: alloy::sol_types::private::Vec<
19431 alloy::sol_types::private::Address,
19432 >,
19433 withdrawableShares: alloy::sol_types::private::Vec<
19434 alloy::sol_types::private::primitives::aliases::U256,
19435 >,
19436 ) -> alloy_contract::SolCallBuilder<&P, convertToDepositSharesCall, N> {
19437 self.call_builder(
19438 &convertToDepositSharesCall {
19439 staker,
19440 strategies,
19441 withdrawableShares,
19442 },
19443 )
19444 }
19445 pub fn cumulativeWithdrawalsQueued(
19447 &self,
19448 staker: alloy::sol_types::private::Address,
19449 ) -> alloy_contract::SolCallBuilder<&P, cumulativeWithdrawalsQueuedCall, N> {
19450 self.call_builder(
19451 &cumulativeWithdrawalsQueuedCall {
19452 staker,
19453 },
19454 )
19455 }
19456 pub fn decreaseDelegatedShares(
19458 &self,
19459 staker: alloy::sol_types::private::Address,
19460 curDepositShares: alloy::sol_types::private::primitives::aliases::U256,
19461 beaconChainSlashingFactorDecrease: u64,
19462 ) -> alloy_contract::SolCallBuilder<&P, decreaseDelegatedSharesCall, N> {
19463 self.call_builder(
19464 &decreaseDelegatedSharesCall {
19465 staker,
19466 curDepositShares,
19467 beaconChainSlashingFactorDecrease,
19468 },
19469 )
19470 }
19471 pub fn delegateTo(
19473 &self,
19474 operator: alloy::sol_types::private::Address,
19475 approverSignatureAndExpiry: <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy::sol_types::SolType>::RustType,
19476 approverSalt: alloy::sol_types::private::FixedBytes<32>,
19477 ) -> alloy_contract::SolCallBuilder<&P, delegateToCall, N> {
19478 self.call_builder(
19479 &delegateToCall {
19480 operator,
19481 approverSignatureAndExpiry,
19482 approverSalt,
19483 },
19484 )
19485 }
19486 pub fn delegatedTo(
19488 &self,
19489 staker: alloy::sol_types::private::Address,
19490 ) -> alloy_contract::SolCallBuilder<&P, delegatedToCall, N> {
19491 self.call_builder(&delegatedToCall { staker })
19492 }
19493 pub fn delegationApprover(
19495 &self,
19496 operator: alloy::sol_types::private::Address,
19497 ) -> alloy_contract::SolCallBuilder<&P, delegationApproverCall, N> {
19498 self.call_builder(&delegationApproverCall { operator })
19499 }
19500 pub fn delegationApproverSaltIsSpent(
19502 &self,
19503 delegationApprover: alloy::sol_types::private::Address,
19504 salt: alloy::sol_types::private::FixedBytes<32>,
19505 ) -> alloy_contract::SolCallBuilder<&P, delegationApproverSaltIsSpentCall, N> {
19506 self.call_builder(
19507 &delegationApproverSaltIsSpentCall {
19508 delegationApprover,
19509 salt,
19510 },
19511 )
19512 }
19513 pub fn depositScalingFactor(
19515 &self,
19516 staker: alloy::sol_types::private::Address,
19517 strategy: alloy::sol_types::private::Address,
19518 ) -> alloy_contract::SolCallBuilder<&P, depositScalingFactorCall, N> {
19519 self.call_builder(
19520 &depositScalingFactorCall {
19521 staker,
19522 strategy,
19523 },
19524 )
19525 }
19526 pub fn domainSeparator(
19528 &self,
19529 ) -> alloy_contract::SolCallBuilder<&P, domainSeparatorCall, N> {
19530 self.call_builder(&domainSeparatorCall)
19531 }
19532 pub fn eigenPodManager(
19534 &self,
19535 ) -> alloy_contract::SolCallBuilder<&P, eigenPodManagerCall, N> {
19536 self.call_builder(&eigenPodManagerCall)
19537 }
19538 pub fn getDepositedShares(
19540 &self,
19541 staker: alloy::sol_types::private::Address,
19542 ) -> alloy_contract::SolCallBuilder<&P, getDepositedSharesCall, N> {
19543 self.call_builder(&getDepositedSharesCall { staker })
19544 }
19545 pub fn getOperatorShares(
19547 &self,
19548 operator: alloy::sol_types::private::Address,
19549 strategies: alloy::sol_types::private::Vec<
19550 alloy::sol_types::private::Address,
19551 >,
19552 ) -> alloy_contract::SolCallBuilder<&P, getOperatorSharesCall, N> {
19553 self.call_builder(
19554 &getOperatorSharesCall {
19555 operator,
19556 strategies,
19557 },
19558 )
19559 }
19560 pub fn getOperatorsShares(
19562 &self,
19563 operators: alloy::sol_types::private::Vec<
19564 alloy::sol_types::private::Address,
19565 >,
19566 strategies: alloy::sol_types::private::Vec<
19567 alloy::sol_types::private::Address,
19568 >,
19569 ) -> alloy_contract::SolCallBuilder<&P, getOperatorsSharesCall, N> {
19570 self.call_builder(
19571 &getOperatorsSharesCall {
19572 operators,
19573 strategies,
19574 },
19575 )
19576 }
19577 pub fn getQueuedWithdrawal(
19579 &self,
19580 withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
19581 ) -> alloy_contract::SolCallBuilder<&P, getQueuedWithdrawalCall, N> {
19582 self.call_builder(
19583 &getQueuedWithdrawalCall {
19584 withdrawalRoot,
19585 },
19586 )
19587 }
19588 pub fn getQueuedWithdrawalRoots(
19590 &self,
19591 staker: alloy::sol_types::private::Address,
19592 ) -> alloy_contract::SolCallBuilder<&P, getQueuedWithdrawalRootsCall, N> {
19593 self.call_builder(
19594 &getQueuedWithdrawalRootsCall {
19595 staker,
19596 },
19597 )
19598 }
19599 pub fn getQueuedWithdrawals(
19601 &self,
19602 staker: alloy::sol_types::private::Address,
19603 ) -> alloy_contract::SolCallBuilder<&P, getQueuedWithdrawalsCall, N> {
19604 self.call_builder(&getQueuedWithdrawalsCall { staker })
19605 }
19606 pub fn getSlashableSharesInQueue(
19608 &self,
19609 operator: alloy::sol_types::private::Address,
19610 strategy: alloy::sol_types::private::Address,
19611 ) -> alloy_contract::SolCallBuilder<&P, getSlashableSharesInQueueCall, N> {
19612 self.call_builder(
19613 &getSlashableSharesInQueueCall {
19614 operator,
19615 strategy,
19616 },
19617 )
19618 }
19619 pub fn getWithdrawableShares(
19621 &self,
19622 staker: alloy::sol_types::private::Address,
19623 strategies: alloy::sol_types::private::Vec<
19624 alloy::sol_types::private::Address,
19625 >,
19626 ) -> alloy_contract::SolCallBuilder<&P, getWithdrawableSharesCall, N> {
19627 self.call_builder(
19628 &getWithdrawableSharesCall {
19629 staker,
19630 strategies,
19631 },
19632 )
19633 }
19634 pub fn increaseDelegatedShares(
19636 &self,
19637 staker: alloy::sol_types::private::Address,
19638 strategy: alloy::sol_types::private::Address,
19639 prevDepositShares: alloy::sol_types::private::primitives::aliases::U256,
19640 addedShares: alloy::sol_types::private::primitives::aliases::U256,
19641 ) -> alloy_contract::SolCallBuilder<&P, increaseDelegatedSharesCall, N> {
19642 self.call_builder(
19643 &increaseDelegatedSharesCall {
19644 staker,
19645 strategy,
19646 prevDepositShares,
19647 addedShares,
19648 },
19649 )
19650 }
19651 pub fn initialize(
19653 &self,
19654 initialOwner: alloy::sol_types::private::Address,
19655 initialPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
19656 ) -> alloy_contract::SolCallBuilder<&P, initializeCall, N> {
19657 self.call_builder(
19658 &initializeCall {
19659 initialOwner,
19660 initialPausedStatus,
19661 },
19662 )
19663 }
19664 pub fn isDelegated(
19666 &self,
19667 staker: alloy::sol_types::private::Address,
19668 ) -> alloy_contract::SolCallBuilder<&P, isDelegatedCall, N> {
19669 self.call_builder(&isDelegatedCall { staker })
19670 }
19671 pub fn isOperator(
19673 &self,
19674 operator: alloy::sol_types::private::Address,
19675 ) -> alloy_contract::SolCallBuilder<&P, isOperatorCall, N> {
19676 self.call_builder(&isOperatorCall { operator })
19677 }
19678 pub fn minWithdrawalDelayBlocks(
19680 &self,
19681 ) -> alloy_contract::SolCallBuilder<&P, minWithdrawalDelayBlocksCall, N> {
19682 self.call_builder(&minWithdrawalDelayBlocksCall)
19683 }
19684 pub fn modifyOperatorDetails(
19686 &self,
19687 operator: alloy::sol_types::private::Address,
19688 newDelegationApprover: alloy::sol_types::private::Address,
19689 ) -> alloy_contract::SolCallBuilder<&P, modifyOperatorDetailsCall, N> {
19690 self.call_builder(
19691 &modifyOperatorDetailsCall {
19692 operator,
19693 newDelegationApprover,
19694 },
19695 )
19696 }
19697 pub fn operatorShares(
19699 &self,
19700 operator: alloy::sol_types::private::Address,
19701 strategy: alloy::sol_types::private::Address,
19702 ) -> alloy_contract::SolCallBuilder<&P, operatorSharesCall, N> {
19703 self.call_builder(
19704 &operatorSharesCall {
19705 operator,
19706 strategy,
19707 },
19708 )
19709 }
19710 pub fn owner(&self) -> alloy_contract::SolCallBuilder<&P, ownerCall, N> {
19712 self.call_builder(&ownerCall)
19713 }
19714 pub fn pause(
19716 &self,
19717 newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
19718 ) -> alloy_contract::SolCallBuilder<&P, pauseCall, N> {
19719 self.call_builder(&pauseCall { newPausedStatus })
19720 }
19721 pub fn pauseAll(&self) -> alloy_contract::SolCallBuilder<&P, pauseAllCall, N> {
19723 self.call_builder(&pauseAllCall)
19724 }
19725 pub fn paused_0(
19727 &self,
19728 index: u8,
19729 ) -> alloy_contract::SolCallBuilder<&P, paused_0Call, N> {
19730 self.call_builder(&paused_0Call { index })
19731 }
19732 pub fn paused_1(&self) -> alloy_contract::SolCallBuilder<&P, paused_1Call, N> {
19734 self.call_builder(&paused_1Call)
19735 }
19736 pub fn pauserRegistry(
19738 &self,
19739 ) -> alloy_contract::SolCallBuilder<&P, pauserRegistryCall, N> {
19740 self.call_builder(&pauserRegistryCall)
19741 }
19742 pub fn pendingWithdrawals(
19744 &self,
19745 withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
19746 ) -> alloy_contract::SolCallBuilder<&P, pendingWithdrawalsCall, N> {
19747 self.call_builder(
19748 &pendingWithdrawalsCall {
19749 withdrawalRoot,
19750 },
19751 )
19752 }
19753 pub fn permissionController(
19755 &self,
19756 ) -> alloy_contract::SolCallBuilder<&P, permissionControllerCall, N> {
19757 self.call_builder(&permissionControllerCall)
19758 }
19759 pub fn queueWithdrawals(
19761 &self,
19762 params: alloy::sol_types::private::Vec<
19763 <IDelegationManagerTypes::QueuedWithdrawalParams as alloy::sol_types::SolType>::RustType,
19764 >,
19765 ) -> alloy_contract::SolCallBuilder<&P, queueWithdrawalsCall, N> {
19766 self.call_builder(&queueWithdrawalsCall { params })
19767 }
19768 pub fn queuedWithdrawals(
19770 &self,
19771 withdrawalRoot: alloy::sol_types::private::FixedBytes<32>,
19772 ) -> alloy_contract::SolCallBuilder<&P, queuedWithdrawalsCall, N> {
19773 self.call_builder(
19774 &queuedWithdrawalsCall {
19775 withdrawalRoot,
19776 },
19777 )
19778 }
19779 pub fn redelegate(
19781 &self,
19782 newOperator: alloy::sol_types::private::Address,
19783 newOperatorApproverSig: <ISignatureUtilsMixinTypes::SignatureWithExpiry as alloy::sol_types::SolType>::RustType,
19784 approverSalt: alloy::sol_types::private::FixedBytes<32>,
19785 ) -> alloy_contract::SolCallBuilder<&P, redelegateCall, N> {
19786 self.call_builder(
19787 &redelegateCall {
19788 newOperator,
19789 newOperatorApproverSig,
19790 approverSalt,
19791 },
19792 )
19793 }
19794 pub fn registerAsOperator(
19796 &self,
19797 initDelegationApprover: alloy::sol_types::private::Address,
19798 allocationDelay: u32,
19799 metadataURI: alloy::sol_types::private::String,
19800 ) -> alloy_contract::SolCallBuilder<&P, registerAsOperatorCall, N> {
19801 self.call_builder(
19802 ®isterAsOperatorCall {
19803 initDelegationApprover,
19804 allocationDelay,
19805 metadataURI,
19806 },
19807 )
19808 }
19809 pub fn renounceOwnership(
19811 &self,
19812 ) -> alloy_contract::SolCallBuilder<&P, renounceOwnershipCall, N> {
19813 self.call_builder(&renounceOwnershipCall)
19814 }
19815 pub fn slashOperatorShares(
19817 &self,
19818 operator: alloy::sol_types::private::Address,
19819 strategy: alloy::sol_types::private::Address,
19820 prevMaxMagnitude: u64,
19821 newMaxMagnitude: u64,
19822 ) -> alloy_contract::SolCallBuilder<&P, slashOperatorSharesCall, N> {
19823 self.call_builder(
19824 &slashOperatorSharesCall {
19825 operator,
19826 strategy,
19827 prevMaxMagnitude,
19828 newMaxMagnitude,
19829 },
19830 )
19831 }
19832 pub fn strategyManager(
19834 &self,
19835 ) -> alloy_contract::SolCallBuilder<&P, strategyManagerCall, N> {
19836 self.call_builder(&strategyManagerCall)
19837 }
19838 pub fn transferOwnership(
19840 &self,
19841 newOwner: alloy::sol_types::private::Address,
19842 ) -> alloy_contract::SolCallBuilder<&P, transferOwnershipCall, N> {
19843 self.call_builder(&transferOwnershipCall { newOwner })
19844 }
19845 pub fn undelegate(
19847 &self,
19848 staker: alloy::sol_types::private::Address,
19849 ) -> alloy_contract::SolCallBuilder<&P, undelegateCall, N> {
19850 self.call_builder(&undelegateCall { staker })
19851 }
19852 pub fn unpause(
19854 &self,
19855 newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
19856 ) -> alloy_contract::SolCallBuilder<&P, unpauseCall, N> {
19857 self.call_builder(&unpauseCall { newPausedStatus })
19858 }
19859 pub fn updateOperatorMetadataURI(
19861 &self,
19862 operator: alloy::sol_types::private::Address,
19863 metadataURI: alloy::sol_types::private::String,
19864 ) -> alloy_contract::SolCallBuilder<&P, updateOperatorMetadataURICall, N> {
19865 self.call_builder(
19866 &updateOperatorMetadataURICall {
19867 operator,
19868 metadataURI,
19869 },
19870 )
19871 }
19872 pub fn version(&self) -> alloy_contract::SolCallBuilder<&P, versionCall, N> {
19874 self.call_builder(&versionCall)
19875 }
19876 }
19877 #[automatically_derived]
19879 impl<
19880 P: alloy_contract::private::Provider<N>,
19881 N: alloy_contract::private::Network,
19882 > DelegationManagerInstance<P, N> {
19883 pub fn event_filter<E: alloy_sol_types::SolEvent>(
19888 &self,
19889 ) -> alloy_contract::Event<&P, E, N> {
19890 alloy_contract::Event::new_sol(&self.provider, &self.address)
19891 }
19892 pub fn DelegationApproverUpdated_filter(
19894 &self,
19895 ) -> alloy_contract::Event<&P, DelegationApproverUpdated, N> {
19896 self.event_filter::<DelegationApproverUpdated>()
19897 }
19898 pub fn DepositScalingFactorUpdated_filter(
19900 &self,
19901 ) -> alloy_contract::Event<&P, DepositScalingFactorUpdated, N> {
19902 self.event_filter::<DepositScalingFactorUpdated>()
19903 }
19904 pub fn Initialized_filter(&self) -> alloy_contract::Event<&P, Initialized, N> {
19906 self.event_filter::<Initialized>()
19907 }
19908 pub fn OperatorMetadataURIUpdated_filter(
19910 &self,
19911 ) -> alloy_contract::Event<&P, OperatorMetadataURIUpdated, N> {
19912 self.event_filter::<OperatorMetadataURIUpdated>()
19913 }
19914 pub fn OperatorRegistered_filter(
19916 &self,
19917 ) -> alloy_contract::Event<&P, OperatorRegistered, N> {
19918 self.event_filter::<OperatorRegistered>()
19919 }
19920 pub fn OperatorSharesDecreased_filter(
19922 &self,
19923 ) -> alloy_contract::Event<&P, OperatorSharesDecreased, N> {
19924 self.event_filter::<OperatorSharesDecreased>()
19925 }
19926 pub fn OperatorSharesIncreased_filter(
19928 &self,
19929 ) -> alloy_contract::Event<&P, OperatorSharesIncreased, N> {
19930 self.event_filter::<OperatorSharesIncreased>()
19931 }
19932 pub fn OperatorSharesSlashed_filter(
19934 &self,
19935 ) -> alloy_contract::Event<&P, OperatorSharesSlashed, N> {
19936 self.event_filter::<OperatorSharesSlashed>()
19937 }
19938 pub fn OwnershipTransferred_filter(
19940 &self,
19941 ) -> alloy_contract::Event<&P, OwnershipTransferred, N> {
19942 self.event_filter::<OwnershipTransferred>()
19943 }
19944 pub fn Paused_filter(&self) -> alloy_contract::Event<&P, Paused, N> {
19946 self.event_filter::<Paused>()
19947 }
19948 pub fn SlashingWithdrawalCompleted_filter(
19950 &self,
19951 ) -> alloy_contract::Event<&P, SlashingWithdrawalCompleted, N> {
19952 self.event_filter::<SlashingWithdrawalCompleted>()
19953 }
19954 pub fn SlashingWithdrawalQueued_filter(
19956 &self,
19957 ) -> alloy_contract::Event<&P, SlashingWithdrawalQueued, N> {
19958 self.event_filter::<SlashingWithdrawalQueued>()
19959 }
19960 pub fn StakerDelegated_filter(
19962 &self,
19963 ) -> alloy_contract::Event<&P, StakerDelegated, N> {
19964 self.event_filter::<StakerDelegated>()
19965 }
19966 pub fn StakerForceUndelegated_filter(
19968 &self,
19969 ) -> alloy_contract::Event<&P, StakerForceUndelegated, N> {
19970 self.event_filter::<StakerForceUndelegated>()
19971 }
19972 pub fn StakerUndelegated_filter(
19974 &self,
19975 ) -> alloy_contract::Event<&P, StakerUndelegated, N> {
19976 self.event_filter::<StakerUndelegated>()
19977 }
19978 pub fn Unpaused_filter(&self) -> alloy_contract::Event<&P, Unpaused, N> {
19980 self.event_filter::<Unpaused>()
19981 }
19982 }
19983}