1pub use weth::*;
2#[allow(
5 clippy::enum_variant_names,
6 clippy::too_many_arguments,
7 clippy::upper_case_acronyms,
8 clippy::type_complexity,
9 dead_code,
10 non_camel_case_types,
11)]
12pub mod weth {
13 #[allow(deprecated)]
14 fn __abi() -> ::ethers::core::abi::Abi {
15 ::ethers::core::abi::ethabi::Contract {
16 constructor: ::core::option::Option::None,
17 functions: ::core::convert::From::from([
18 (
19 ::std::borrow::ToOwned::to_owned("DOMAIN_SEPARATOR"),
20 ::std::vec![
21 ::ethers::core::abi::ethabi::Function {
22 name: ::std::borrow::ToOwned::to_owned("DOMAIN_SEPARATOR"),
23 inputs: ::std::vec![],
24 outputs: ::std::vec![
25 ::ethers::core::abi::ethabi::Param {
26 name: ::std::string::String::new(),
27 kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
28 32usize,
29 ),
30 internal_type: ::core::option::Option::Some(
31 ::std::borrow::ToOwned::to_owned("bytes32"),
32 ),
33 },
34 ],
35 constant: ::core::option::Option::None,
36 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
37 },
38 ],
39 ),
40 (
41 ::std::borrow::ToOwned::to_owned("allowance"),
42 ::std::vec![
43 ::ethers::core::abi::ethabi::Function {
44 name: ::std::borrow::ToOwned::to_owned("allowance"),
45 inputs: ::std::vec![
46 ::ethers::core::abi::ethabi::Param {
47 name: ::std::string::String::new(),
48 kind: ::ethers::core::abi::ethabi::ParamType::Address,
49 internal_type: ::core::option::Option::Some(
50 ::std::borrow::ToOwned::to_owned("address"),
51 ),
52 },
53 ::ethers::core::abi::ethabi::Param {
54 name: ::std::string::String::new(),
55 kind: ::ethers::core::abi::ethabi::ParamType::Address,
56 internal_type: ::core::option::Option::Some(
57 ::std::borrow::ToOwned::to_owned("address"),
58 ),
59 },
60 ],
61 outputs: ::std::vec![
62 ::ethers::core::abi::ethabi::Param {
63 name: ::std::string::String::new(),
64 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
65 256usize,
66 ),
67 internal_type: ::core::option::Option::Some(
68 ::std::borrow::ToOwned::to_owned("uint256"),
69 ),
70 },
71 ],
72 constant: ::core::option::Option::None,
73 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
74 },
75 ],
76 ),
77 (
78 ::std::borrow::ToOwned::to_owned("approve"),
79 ::std::vec![
80 ::ethers::core::abi::ethabi::Function {
81 name: ::std::borrow::ToOwned::to_owned("approve"),
82 inputs: ::std::vec![
83 ::ethers::core::abi::ethabi::Param {
84 name: ::std::borrow::ToOwned::to_owned("spender"),
85 kind: ::ethers::core::abi::ethabi::ParamType::Address,
86 internal_type: ::core::option::Option::Some(
87 ::std::borrow::ToOwned::to_owned("address"),
88 ),
89 },
90 ::ethers::core::abi::ethabi::Param {
91 name: ::std::borrow::ToOwned::to_owned("amount"),
92 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
93 256usize,
94 ),
95 internal_type: ::core::option::Option::Some(
96 ::std::borrow::ToOwned::to_owned("uint256"),
97 ),
98 },
99 ],
100 outputs: ::std::vec![
101 ::ethers::core::abi::ethabi::Param {
102 name: ::std::string::String::new(),
103 kind: ::ethers::core::abi::ethabi::ParamType::Bool,
104 internal_type: ::core::option::Option::Some(
105 ::std::borrow::ToOwned::to_owned("bool"),
106 ),
107 },
108 ],
109 constant: ::core::option::Option::None,
110 state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
111 },
112 ],
113 ),
114 (
115 ::std::borrow::ToOwned::to_owned("balanceOf"),
116 ::std::vec![
117 ::ethers::core::abi::ethabi::Function {
118 name: ::std::borrow::ToOwned::to_owned("balanceOf"),
119 inputs: ::std::vec![
120 ::ethers::core::abi::ethabi::Param {
121 name: ::std::string::String::new(),
122 kind: ::ethers::core::abi::ethabi::ParamType::Address,
123 internal_type: ::core::option::Option::Some(
124 ::std::borrow::ToOwned::to_owned("address"),
125 ),
126 },
127 ],
128 outputs: ::std::vec![
129 ::ethers::core::abi::ethabi::Param {
130 name: ::std::string::String::new(),
131 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
132 256usize,
133 ),
134 internal_type: ::core::option::Option::Some(
135 ::std::borrow::ToOwned::to_owned("uint256"),
136 ),
137 },
138 ],
139 constant: ::core::option::Option::None,
140 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
141 },
142 ],
143 ),
144 (
145 ::std::borrow::ToOwned::to_owned("decimals"),
146 ::std::vec![
147 ::ethers::core::abi::ethabi::Function {
148 name: ::std::borrow::ToOwned::to_owned("decimals"),
149 inputs: ::std::vec![],
150 outputs: ::std::vec![
151 ::ethers::core::abi::ethabi::Param {
152 name: ::std::string::String::new(),
153 kind: ::ethers::core::abi::ethabi::ParamType::Uint(8usize),
154 internal_type: ::core::option::Option::Some(
155 ::std::borrow::ToOwned::to_owned("uint8"),
156 ),
157 },
158 ],
159 constant: ::core::option::Option::None,
160 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
161 },
162 ],
163 ),
164 (
165 ::std::borrow::ToOwned::to_owned("deposit"),
166 ::std::vec![
167 ::ethers::core::abi::ethabi::Function {
168 name: ::std::borrow::ToOwned::to_owned("deposit"),
169 inputs: ::std::vec![],
170 outputs: ::std::vec![],
171 constant: ::core::option::Option::None,
172 state_mutability: ::ethers::core::abi::ethabi::StateMutability::Payable,
173 },
174 ],
175 ),
176 (
177 ::std::borrow::ToOwned::to_owned("name"),
178 ::std::vec![
179 ::ethers::core::abi::ethabi::Function {
180 name: ::std::borrow::ToOwned::to_owned("name"),
181 inputs: ::std::vec![],
182 outputs: ::std::vec![
183 ::ethers::core::abi::ethabi::Param {
184 name: ::std::string::String::new(),
185 kind: ::ethers::core::abi::ethabi::ParamType::String,
186 internal_type: ::core::option::Option::Some(
187 ::std::borrow::ToOwned::to_owned("string"),
188 ),
189 },
190 ],
191 constant: ::core::option::Option::None,
192 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
193 },
194 ],
195 ),
196 (
197 ::std::borrow::ToOwned::to_owned("nonces"),
198 ::std::vec![
199 ::ethers::core::abi::ethabi::Function {
200 name: ::std::borrow::ToOwned::to_owned("nonces"),
201 inputs: ::std::vec![
202 ::ethers::core::abi::ethabi::Param {
203 name: ::std::string::String::new(),
204 kind: ::ethers::core::abi::ethabi::ParamType::Address,
205 internal_type: ::core::option::Option::Some(
206 ::std::borrow::ToOwned::to_owned("address"),
207 ),
208 },
209 ],
210 outputs: ::std::vec![
211 ::ethers::core::abi::ethabi::Param {
212 name: ::std::string::String::new(),
213 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
214 256usize,
215 ),
216 internal_type: ::core::option::Option::Some(
217 ::std::borrow::ToOwned::to_owned("uint256"),
218 ),
219 },
220 ],
221 constant: ::core::option::Option::None,
222 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
223 },
224 ],
225 ),
226 (
227 ::std::borrow::ToOwned::to_owned("permit"),
228 ::std::vec![
229 ::ethers::core::abi::ethabi::Function {
230 name: ::std::borrow::ToOwned::to_owned("permit"),
231 inputs: ::std::vec![
232 ::ethers::core::abi::ethabi::Param {
233 name: ::std::borrow::ToOwned::to_owned("owner"),
234 kind: ::ethers::core::abi::ethabi::ParamType::Address,
235 internal_type: ::core::option::Option::Some(
236 ::std::borrow::ToOwned::to_owned("address"),
237 ),
238 },
239 ::ethers::core::abi::ethabi::Param {
240 name: ::std::borrow::ToOwned::to_owned("spender"),
241 kind: ::ethers::core::abi::ethabi::ParamType::Address,
242 internal_type: ::core::option::Option::Some(
243 ::std::borrow::ToOwned::to_owned("address"),
244 ),
245 },
246 ::ethers::core::abi::ethabi::Param {
247 name: ::std::borrow::ToOwned::to_owned("value"),
248 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
249 256usize,
250 ),
251 internal_type: ::core::option::Option::Some(
252 ::std::borrow::ToOwned::to_owned("uint256"),
253 ),
254 },
255 ::ethers::core::abi::ethabi::Param {
256 name: ::std::borrow::ToOwned::to_owned("deadline"),
257 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
258 256usize,
259 ),
260 internal_type: ::core::option::Option::Some(
261 ::std::borrow::ToOwned::to_owned("uint256"),
262 ),
263 },
264 ::ethers::core::abi::ethabi::Param {
265 name: ::std::borrow::ToOwned::to_owned("v"),
266 kind: ::ethers::core::abi::ethabi::ParamType::Uint(8usize),
267 internal_type: ::core::option::Option::Some(
268 ::std::borrow::ToOwned::to_owned("uint8"),
269 ),
270 },
271 ::ethers::core::abi::ethabi::Param {
272 name: ::std::borrow::ToOwned::to_owned("r"),
273 kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
274 32usize,
275 ),
276 internal_type: ::core::option::Option::Some(
277 ::std::borrow::ToOwned::to_owned("bytes32"),
278 ),
279 },
280 ::ethers::core::abi::ethabi::Param {
281 name: ::std::borrow::ToOwned::to_owned("s"),
282 kind: ::ethers::core::abi::ethabi::ParamType::FixedBytes(
283 32usize,
284 ),
285 internal_type: ::core::option::Option::Some(
286 ::std::borrow::ToOwned::to_owned("bytes32"),
287 ),
288 },
289 ],
290 outputs: ::std::vec![],
291 constant: ::core::option::Option::None,
292 state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
293 },
294 ],
295 ),
296 (
297 ::std::borrow::ToOwned::to_owned("symbol"),
298 ::std::vec![
299 ::ethers::core::abi::ethabi::Function {
300 name: ::std::borrow::ToOwned::to_owned("symbol"),
301 inputs: ::std::vec![],
302 outputs: ::std::vec![
303 ::ethers::core::abi::ethabi::Param {
304 name: ::std::string::String::new(),
305 kind: ::ethers::core::abi::ethabi::ParamType::String,
306 internal_type: ::core::option::Option::Some(
307 ::std::borrow::ToOwned::to_owned("string"),
308 ),
309 },
310 ],
311 constant: ::core::option::Option::None,
312 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
313 },
314 ],
315 ),
316 (
317 ::std::borrow::ToOwned::to_owned("totalSupply"),
318 ::std::vec![
319 ::ethers::core::abi::ethabi::Function {
320 name: ::std::borrow::ToOwned::to_owned("totalSupply"),
321 inputs: ::std::vec![],
322 outputs: ::std::vec![
323 ::ethers::core::abi::ethabi::Param {
324 name: ::std::string::String::new(),
325 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
326 256usize,
327 ),
328 internal_type: ::core::option::Option::Some(
329 ::std::borrow::ToOwned::to_owned("uint256"),
330 ),
331 },
332 ],
333 constant: ::core::option::Option::None,
334 state_mutability: ::ethers::core::abi::ethabi::StateMutability::View,
335 },
336 ],
337 ),
338 (
339 ::std::borrow::ToOwned::to_owned("transfer"),
340 ::std::vec![
341 ::ethers::core::abi::ethabi::Function {
342 name: ::std::borrow::ToOwned::to_owned("transfer"),
343 inputs: ::std::vec![
344 ::ethers::core::abi::ethabi::Param {
345 name: ::std::borrow::ToOwned::to_owned("to"),
346 kind: ::ethers::core::abi::ethabi::ParamType::Address,
347 internal_type: ::core::option::Option::Some(
348 ::std::borrow::ToOwned::to_owned("address"),
349 ),
350 },
351 ::ethers::core::abi::ethabi::Param {
352 name: ::std::borrow::ToOwned::to_owned("amount"),
353 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
354 256usize,
355 ),
356 internal_type: ::core::option::Option::Some(
357 ::std::borrow::ToOwned::to_owned("uint256"),
358 ),
359 },
360 ],
361 outputs: ::std::vec![
362 ::ethers::core::abi::ethabi::Param {
363 name: ::std::string::String::new(),
364 kind: ::ethers::core::abi::ethabi::ParamType::Bool,
365 internal_type: ::core::option::Option::Some(
366 ::std::borrow::ToOwned::to_owned("bool"),
367 ),
368 },
369 ],
370 constant: ::core::option::Option::None,
371 state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
372 },
373 ],
374 ),
375 (
376 ::std::borrow::ToOwned::to_owned("transferFrom"),
377 ::std::vec![
378 ::ethers::core::abi::ethabi::Function {
379 name: ::std::borrow::ToOwned::to_owned("transferFrom"),
380 inputs: ::std::vec![
381 ::ethers::core::abi::ethabi::Param {
382 name: ::std::borrow::ToOwned::to_owned("from"),
383 kind: ::ethers::core::abi::ethabi::ParamType::Address,
384 internal_type: ::core::option::Option::Some(
385 ::std::borrow::ToOwned::to_owned("address"),
386 ),
387 },
388 ::ethers::core::abi::ethabi::Param {
389 name: ::std::borrow::ToOwned::to_owned("to"),
390 kind: ::ethers::core::abi::ethabi::ParamType::Address,
391 internal_type: ::core::option::Option::Some(
392 ::std::borrow::ToOwned::to_owned("address"),
393 ),
394 },
395 ::ethers::core::abi::ethabi::Param {
396 name: ::std::borrow::ToOwned::to_owned("amount"),
397 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
398 256usize,
399 ),
400 internal_type: ::core::option::Option::Some(
401 ::std::borrow::ToOwned::to_owned("uint256"),
402 ),
403 },
404 ],
405 outputs: ::std::vec![
406 ::ethers::core::abi::ethabi::Param {
407 name: ::std::string::String::new(),
408 kind: ::ethers::core::abi::ethabi::ParamType::Bool,
409 internal_type: ::core::option::Option::Some(
410 ::std::borrow::ToOwned::to_owned("bool"),
411 ),
412 },
413 ],
414 constant: ::core::option::Option::None,
415 state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
416 },
417 ],
418 ),
419 (
420 ::std::borrow::ToOwned::to_owned("withdraw"),
421 ::std::vec![
422 ::ethers::core::abi::ethabi::Function {
423 name: ::std::borrow::ToOwned::to_owned("withdraw"),
424 inputs: ::std::vec![
425 ::ethers::core::abi::ethabi::Param {
426 name: ::std::borrow::ToOwned::to_owned("amount"),
427 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
428 256usize,
429 ),
430 internal_type: ::core::option::Option::Some(
431 ::std::borrow::ToOwned::to_owned("uint256"),
432 ),
433 },
434 ],
435 outputs: ::std::vec![],
436 constant: ::core::option::Option::None,
437 state_mutability: ::ethers::core::abi::ethabi::StateMutability::NonPayable,
438 },
439 ],
440 ),
441 ]),
442 events: ::core::convert::From::from([
443 (
444 ::std::borrow::ToOwned::to_owned("Approval"),
445 ::std::vec![
446 ::ethers::core::abi::ethabi::Event {
447 name: ::std::borrow::ToOwned::to_owned("Approval"),
448 inputs: ::std::vec![
449 ::ethers::core::abi::ethabi::EventParam {
450 name: ::std::borrow::ToOwned::to_owned("owner"),
451 kind: ::ethers::core::abi::ethabi::ParamType::Address,
452 indexed: true,
453 },
454 ::ethers::core::abi::ethabi::EventParam {
455 name: ::std::borrow::ToOwned::to_owned("spender"),
456 kind: ::ethers::core::abi::ethabi::ParamType::Address,
457 indexed: true,
458 },
459 ::ethers::core::abi::ethabi::EventParam {
460 name: ::std::borrow::ToOwned::to_owned("amount"),
461 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
462 256usize,
463 ),
464 indexed: false,
465 },
466 ],
467 anonymous: false,
468 },
469 ],
470 ),
471 (
472 ::std::borrow::ToOwned::to_owned("Deposit"),
473 ::std::vec![
474 ::ethers::core::abi::ethabi::Event {
475 name: ::std::borrow::ToOwned::to_owned("Deposit"),
476 inputs: ::std::vec![
477 ::ethers::core::abi::ethabi::EventParam {
478 name: ::std::borrow::ToOwned::to_owned("from"),
479 kind: ::ethers::core::abi::ethabi::ParamType::Address,
480 indexed: true,
481 },
482 ::ethers::core::abi::ethabi::EventParam {
483 name: ::std::borrow::ToOwned::to_owned("amount"),
484 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
485 256usize,
486 ),
487 indexed: false,
488 },
489 ],
490 anonymous: false,
491 },
492 ],
493 ),
494 (
495 ::std::borrow::ToOwned::to_owned("Transfer"),
496 ::std::vec![
497 ::ethers::core::abi::ethabi::Event {
498 name: ::std::borrow::ToOwned::to_owned("Transfer"),
499 inputs: ::std::vec![
500 ::ethers::core::abi::ethabi::EventParam {
501 name: ::std::borrow::ToOwned::to_owned("from"),
502 kind: ::ethers::core::abi::ethabi::ParamType::Address,
503 indexed: true,
504 },
505 ::ethers::core::abi::ethabi::EventParam {
506 name: ::std::borrow::ToOwned::to_owned("to"),
507 kind: ::ethers::core::abi::ethabi::ParamType::Address,
508 indexed: true,
509 },
510 ::ethers::core::abi::ethabi::EventParam {
511 name: ::std::borrow::ToOwned::to_owned("amount"),
512 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
513 256usize,
514 ),
515 indexed: false,
516 },
517 ],
518 anonymous: false,
519 },
520 ],
521 ),
522 (
523 ::std::borrow::ToOwned::to_owned("Withdrawal"),
524 ::std::vec![
525 ::ethers::core::abi::ethabi::Event {
526 name: ::std::borrow::ToOwned::to_owned("Withdrawal"),
527 inputs: ::std::vec![
528 ::ethers::core::abi::ethabi::EventParam {
529 name: ::std::borrow::ToOwned::to_owned("to"),
530 kind: ::ethers::core::abi::ethabi::ParamType::Address,
531 indexed: true,
532 },
533 ::ethers::core::abi::ethabi::EventParam {
534 name: ::std::borrow::ToOwned::to_owned("amount"),
535 kind: ::ethers::core::abi::ethabi::ParamType::Uint(
536 256usize,
537 ),
538 indexed: false,
539 },
540 ],
541 anonymous: false,
542 },
543 ],
544 ),
545 ]),
546 errors: ::std::collections::BTreeMap::new(),
547 receive: true,
548 fallback: false,
549 }
550 }
551 pub static WETH_ABI: ::ethers::contract::Lazy<::ethers::core::abi::Abi> = ::ethers::contract::Lazy::new(
553 __abi,
554 );
555 #[rustfmt::skip]
556 const __BYTECODE: &[u8] = b"`\xE0`@R4\x80\x15b\0\0^W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FEther sent to non-payable functi`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[P`@Q\x80`@\x01`@R\x80`\r\x81R` \x01l+\xB90\xB882\xB2\x10\"\xBA42\xB9`\x99\x1B\x81RP`@Q\x80`@\x01`@R\x80`\x04\x81R` \x01c\n\xE8\xAA\x89`\xE3\x1B\x81RP`\x12\x82`\0\x90\x81b\0\0\xB5\x91\x90b\0\x02(V[P`\x01b\0\0\xC4\x83\x82b\0\x02(V[P`\xFF\x81\x16`\x80RF`\xA0Rb\0\0\xDAb\0\0\xE7V[`\xC0RPb\0\x03r\x91PPV[`\0\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F`\0`@Qb\0\x01\x1B\x91\x90b\0\x02\xF4V[`@\x80Q\x91\x82\x90\x03\x82 ` \x83\x01\x93\x90\x93R\x81\x01\x91\x90\x91R\x7F\xC8\x9E\xFD\xAAT\xC0\xF2\x0Cz\xDFa(\x82\xDF\tP\xF5\xA9Qc~\x03\x07\xCD\xCBLg/)\x8B\x8B\xC6``\x82\x01RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[`\x01\x81\x81\x1C\x90\x82\x16\x80b\0\x01\xAEW`\x7F\x82\x16\x91P[` \x82\x10\x81\x03b\0\x01\xCFWcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[`\x1F\x82\x11\x15b\0\x02#W`\0\x81\x81R` \x81 `\x1F\x85\x01`\x05\x1C\x81\x01` \x86\x10\x15b\0\x01\xFEWP\x80[`\x1F\x85\x01`\x05\x1C\x82\x01\x91P[\x81\x81\x10\x15b\0\x02\x1FW\x82\x81U`\x01\x01b\0\x02\nV[PPP[PPPV[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15b\0\x02DWb\0\x02Db\0\x01\x83V[b\0\x02\\\x81b\0\x02U\x84Tb\0\x01\x99V[\x84b\0\x01\xD5V[` \x80`\x1F\x83\x11`\x01\x81\x14b\0\x02\x94W`\0\x84\x15b\0\x02{WP\x85\x83\x01Q[`\0\x19`\x03\x86\x90\x1B\x1C\x19\x16`\x01\x85\x90\x1B\x17\x85Ub\0\x02\x1FV[`\0\x85\x81R` \x81 `\x1F\x19\x86\x16\x91[\x82\x81\x10\x15b\0\x02\xC5W\x88\x86\x01Q\x82U\x94\x84\x01\x94`\x01\x90\x91\x01\x90\x84\x01b\0\x02\xA4V[P\x85\x82\x10\x15b\0\x02\xE4W\x87\x85\x01Q`\0\x19`\x03\x88\x90\x1B`\xF8\x16\x1C\x19\x16\x81U[PPPPP`\x01\x90\x81\x1B\x01\x90UPV[`\0\x80\x83Tb\0\x03\x04\x81b\0\x01\x99V[`\x01\x82\x81\x16\x80\x15b\0\x03\x1FW`\x01\x81\x14b\0\x035Wb\0\x03fV[`\xFF\x19\x84\x16\x87R\x82\x15\x15\x83\x02\x87\x01\x94Pb\0\x03fV[\x87`\0R` \x80`\0 `\0[\x85\x81\x10\x15b\0\x03]W\x81T\x8A\x82\x01R\x90\x84\x01\x90\x82\x01b\0\x03BV[PPP\x82\x87\x01\x94P[P\x92\x96\x95PPPPPPV[`\x80Q`\xA0Q`\xC0Qa\x10\xE5b\0\x03\xA2`\09`\0a\x08\xF2\x01R`\0a\x08\xBD\x01R`\0a\x03|\x01Ra\x10\xE5`\0\xF3\xFE`\x80`@R`\x046\x10a\0\xE1W`\x005`\xE0\x1C\x80cp\xA0\x821\x11a\0\x7FW\x80c\xA9\x05\x9C\xBB\x11a\0YW\x80c\xA9\x05\x9C\xBB\x14a\x05 W\x80c\xD0\xE3\r\xB0\x14a\x05{W\x80c\xD5\x05\xAC\xCF\x14a\x05\x83W\x80c\xDDb\xED>\x14a\x05\xDEWa\0\xF0V[\x80cp\xA0\x821\x14a\x04\0W\x80c~\xCE\xBE\0\x14a\x04hW\x80c\x95\xD8\x9BA\x14a\x04\xD0Wa\0\xF0V[\x80c#\xB8r\xDD\x11a\0\xBBW\x80c#\xB8r\xDD\x14a\x02yW\x80c.\x1A}M\x14a\x02\xD4W\x80c1<\xE5g\x14a\x03/W\x80c6D\xE5\x15\x14a\x03\xB0Wa\0\xF0V[\x80c\x06\xFD\xDE\x03\x14a\x01IW\x80c\t^\xA7\xB3\x14a\x01\xAFW\x80c\x18\x16\r\xDD\x14a\x02\x1AWa\0\xF0V[6a\0\xF0Wa\0\xEEa\x06QV[\0[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`)`$\x82\x01R\x7FUnknown signature and no fallbac`D\x82\x01\x90\x81Rh\x1A\xC8\x19\x19Y\x9A[\x99Y`\xBA\x1B`d\x83\x01R`\x84\x82\xFD[4\x80\x15a\x01\x90W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x01\x99a\x06\x92V[`@Qa\x01\xA6\x91\x90a\r|V[`@Q\x80\x91\x03\x90\xF3[4\x80\x15a\x01\xF6W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02\na\x02\x056`\x04a\x0E6V[a\x07 V[`@Q\x90\x15\x15\x81R` \x01a\x01\xA6V[4\x80\x15a\x02aW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02k`\x02T\x81V[`@Q\x90\x81R` \x01a\x01\xA6V[4\x80\x15a\x02\xC0W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02\na\x02\xCF6`\x04a\x0EcV[a\x07\x8DV[4\x80\x15a\x03\x1BW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\0\xEEa\x03*6`\x04a\x0E\xA2V[a\x08mV[4\x80\x15a\x03vW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x03\x9E\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`\xFF\x90\x91\x16\x81R` \x01a\x01\xA6V[4\x80\x15a\x03\xF7W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x08\xB9V[4\x80\x15a\x04GW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x04V6`\x04a\x0E\xBEV[`\x03` R`\0\x90\x81R`@\x90 T\x81V[4\x80\x15a\x04\xAFW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x04\xBE6`\x04a\x0E\xBEV[`\x05` R`\0\x90\x81R`@\x90 T\x81V[4\x80\x15a\x05\x17W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x01\x99a\t\x14V[4\x80\x15a\x05gW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02\na\x05v6`\x04a\x0E6V[a\t!V[a\0\xEEa\x06QV[4\x80\x15a\x05\xCAW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\0\xEEa\x05\xD96`\x04a\x0E\xE3V[a\t\x87V[4\x80\x15a\x06%W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x0646`\x04a\x0FYV[`\x04` \x90\x81R`\0\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[a\x06[34a\x0B\xD0V[`@Q4\x81R3\x90\x7F\xE1\xFF\xFC\xC4\x92=\x04\xB5Y\xF4\xD2\x9A\x8B\xFCl\xDA\x04\xEB[\r<F\x07Q\xC2@,\\\\\xC9\x10\x9C\x90` \x01`@Q\x80\x91\x03\x90\xA2V[`\0\x80Ta\x06\x9F\x90a\x0F\x8FV[\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80Ta\x06\xCB\x90a\x0F\x8FV[\x80\x15a\x07\x18W\x80`\x1F\x10a\x06\xEDWa\x01\0\x80\x83T\x04\x02\x83R\x91` \x01\x91a\x07\x18V[\x82\x01\x91\x90`\0R` `\0 \x90[\x81T\x81R\x90`\x01\x01\x90` \x01\x80\x83\x11a\x06\xFBW\x82\x90\x03`\x1F\x16\x82\x01\x91[PPPPP\x81V[3`\0\x81\x81R`\x04` \x90\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x87\x16\x80\x85R\x92R\x80\x83 \x85\x90UQ\x91\x92\x90\x91\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x90a\x07{\x90\x86\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3P`\x01[\x92\x91PPV[`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x90\x81R`\x04` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x81 T`\0\x19\x81\x14a\x07\xE9Wa\x07\xC4\x83\x82a\x0F\xDFV[`\x01`\x01`\xA0\x1B\x03\x86\x16`\0\x90\x81R`\x04` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x90 U[`\x01`\x01`\xA0\x1B\x03\x85\x16`\0\x90\x81R`\x03` R`@\x81 \x80T\x85\x92\x90a\x08\x11\x90\x84\x90a\x0F\xDFV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x80\x85\x16`\0\x81\x81R`\x03` R`@\x90\x81\x90 \x80T\x87\x01\x90UQ\x90\x91\x87\x16\x90`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x90a\x08Z\x90\x87\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3P`\x01\x94\x93PPPPV[a\x08w3\x82a\x0C*V[`@Q\x81\x81R3\x90\x7F\x7F\xCFS,\x15\xF0\xA6\xDB\x0B\xD6\xD0\xE08\xBE\xA7\x1D0\xD8\x08\xC7\xD9\x8C\xB3\xBFrh\xA9[\xF5\x08\x1Be\x90` \x01`@Q\x80\x91\x03\x90\xA2a\x08\xB63\x82a\x0C\x8CV[PV[`\0\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\0F\x14a\x08\xEFWa\x08\xEAa\x0C\xE2V[\x90P\x90V[P\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\x90V[`\x01\x80Ta\x06\x9F\x90a\x0F\x8FV[3`\0\x90\x81R`\x03` R`@\x81 \x80T\x83\x91\x90\x83\x90a\tB\x90\x84\x90a\x0F\xDFV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x81\x81R`\x03` R`@\x90\x81\x90 \x80T\x85\x01\x90UQ3\x90`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x90a\x07{\x90\x86\x81R` \x01\x90V[B\x84\x10\x15a\t\xDCW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FPERMIT_DEADLINE_EXPIRED\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[`\0`\x01a\t\xE8a\x08\xB9V[`\x01`\x01`\xA0\x1B\x03\x8A\x81\x16`\0\x81\x81R`\x05` \x90\x81R`@\x91\x82\x90 \x80T`\x01\x81\x01\x90\x91U\x82Q\x7Fnq\xED\xAE\x12\xB1\xB9\x7FM\x1F`7\x0F\xEF\x10\x10_\xA2\xFA\xAE\x01&\x11J\x16\x9Cd\x84]a&\xC9\x81\x84\x01R\x80\x84\x01\x94\x90\x94R\x93\x8D\x16``\x84\x01R`\x80\x83\x01\x8C\x90R`\xA0\x83\x01\x93\x90\x93R`\xC0\x80\x83\x01\x8B\x90R\x81Q\x80\x84\x03\x90\x91\x01\x81R`\xE0\x83\x01\x90\x91R\x80Q\x92\x01\x91\x90\x91 a\x19\x01`\xF0\x1Ba\x01\0\x83\x01Ra\x01\x02\x82\x01\x92\x90\x92Ra\x01\"\x81\x01\x91\x90\x91Ra\x01B\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x82\x82R\x80Q` \x91\x82\x01 `\0\x84R\x90\x83\x01\x80\x83RR`\xFF\x87\x16\x90\x82\x01R``\x81\x01\x85\x90R`\x80\x81\x01\x84\x90R`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15a\n\xF4W=`\0\x80>=`\0\xFD[PP`@Q`\x1F\x19\x01Q\x91PP`\x01`\x01`\xA0\x1B\x03\x81\x16\x15\x80\x15\x90a\x0B*WP\x87`\x01`\x01`\xA0\x1B\x03\x16\x81`\x01`\x01`\xA0\x1B\x03\x16\x14[a\x0BgW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0E`$\x82\x01Rm$\xA7+ \xA6$\xA2/\xA9\xA4\xA3\xA7\"\xA9`\x91\x1B`D\x82\x01R`d\x01a\t\xD3V[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16`\0\x90\x81R`\x04` \x90\x81R`@\x80\x83 \x8A\x85\x16\x80\x85R\x90\x83R\x92\x81\x90 \x89\x90UQ\x88\x81R\x91\x92\x8A\x16\x91\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91\x01`@Q\x80\x91\x03\x90\xA3PPPPPPPV[\x80`\x02`\0\x82\x82Ta\x0B\xE2\x91\x90a\x0F\xF2V[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x81\x81R`\x03` \x90\x81R`@\x80\x83 \x80T\x86\x01\x90UQ\x84\x81R`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x91\x01[`@Q\x80\x91\x03\x90\xA3PPV[`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x90\x81R`\x03` R`@\x81 \x80T\x83\x92\x90a\x0CR\x90\x84\x90a\x0F\xDFV[\x90\x91UPP`\x02\x80T\x82\x90\x03\x90U`@Q\x81\x81R`\0\x90`\x01`\x01`\xA0\x1B\x03\x84\x16\x90`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x90` \x01a\x0C\x1EV[`\0\x80`\0\x80`\0\x85\x87Z\xF1\x90P\x80a\x0C\xDDW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x13`$\x82\x01Rr\x11U\x12\x17\xD5\x14\x90S\x94\xD1\x91T\x97\xD1\x90RS\x11Q`j\x1B`D\x82\x01R`d\x01a\t\xD3V[PPPV[`\0\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F`\0`@Qa\r\x14\x91\x90a\x10\x05V[`@\x80Q\x91\x82\x90\x03\x82 ` \x83\x01\x93\x90\x93R\x81\x01\x91\x90\x91R\x7F\xC8\x9E\xFD\xAAT\xC0\xF2\x0Cz\xDFa(\x82\xDF\tP\xF5\xA9Qc~\x03\x07\xCD\xCBLg/)\x8B\x8B\xC6``\x82\x01RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[`\0` \x80\x83R\x83Q\x80\x82\x85\x01R`\0[\x81\x81\x10\x15a\r\xA9W\x85\x81\x01\x83\x01Q\x85\x82\x01`@\x01R\x82\x01a\r\x8DV[P`\0`@\x82\x86\x01\x01R`@`\x1F\x19`\x1F\x83\x01\x16\x85\x01\x01\x92PPP\x92\x91PPV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FABI decoding: tuple data too sho`D\x82\x01Ra\x1C\x9D`\xF2\x1B`d\x82\x01R`\x84\x81\xFD[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x0E1W`\0\x80\xFD[\x91\x90PV[`\0\x80`@\x83\x85\x03\x12\x15a\x0ELWa\x0ELa\r\xCAV[a\x0EU\x83a\x0E\x1AV[\x94` \x93\x90\x93\x015\x93PPPV[`\0\x80`\0``\x84\x86\x03\x12\x15a\x0E{Wa\x0E{a\r\xCAV[a\x0E\x84\x84a\x0E\x1AV[\x92Pa\x0E\x92` \x85\x01a\x0E\x1AV[\x91P`@\x84\x015\x90P\x92P\x92P\x92V[`\0` \x82\x84\x03\x12\x15a\x0E\xB7Wa\x0E\xB7a\r\xCAV[P5\x91\x90PV[`\0` \x82\x84\x03\x12\x15a\x0E\xD3Wa\x0E\xD3a\r\xCAV[a\x0E\xDC\x82a\x0E\x1AV[\x93\x92PPPV[`\0\x80`\0\x80`\0\x80`\0`\xE0\x88\x8A\x03\x12\x15a\x0F\x01Wa\x0F\x01a\r\xCAV[a\x0F\n\x88a\x0E\x1AV[\x96Pa\x0F\x18` \x89\x01a\x0E\x1AV[\x95P`@\x88\x015\x94P``\x88\x015\x93P`\x80\x88\x015`\xFF\x81\x16\x81\x14a\x0F<W`\0\x80\xFD[\x96\x99\x95\x98P\x93\x96\x92\x95\x94`\xA0\x84\x015\x94P`\xC0\x90\x93\x015\x92\x91PPV[`\0\x80`@\x83\x85\x03\x12\x15a\x0FoWa\x0Foa\r\xCAV[a\x0Fx\x83a\x0E\x1AV[\x91Pa\x0F\x86` \x84\x01a\x0E\x1AV[\x90P\x92P\x92\x90PV[`\x01\x81\x81\x1C\x90\x82\x16\x80a\x0F\xA3W`\x7F\x82\x16\x91P[` \x82\x10\x81\x03a\x0F\xC3WcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[cNH{q`\xE0\x1B`\0R`\x11`\x04R`$`\0\xFD[\x81\x81\x03\x81\x81\x11\x15a\x07\x87Wa\x07\x87a\x0F\xC9V[\x80\x82\x01\x80\x82\x11\x15a\x07\x87Wa\x07\x87a\x0F\xC9V[`\0\x80\x83T\x81`\x01\x82\x81\x1C\x91P\x80\x83\x16\x80a\x10!W`\x7F\x83\x16\x92P[` \x80\x84\x10\x82\x03a\x10@WcNH{q`\xE0\x1B\x86R`\"`\x04R`$\x86\xFD[\x81\x80\x15a\x10TW`\x01\x81\x14a\x10iWa\x10\x96V[`\xFF\x19\x86\x16\x89R\x84\x15\x15\x85\x02\x89\x01\x96Pa\x10\x96V[`\0\x8A\x81R` \x90 `\0[\x86\x81\x10\x15a\x10\x8EW\x81T\x8B\x82\x01R\x90\x85\x01\x90\x83\x01a\x10uV[PP\x84\x89\x01\x96P[P\x94\x98\x97PPPPPPPPV\xFEEther sent to non-payable functi\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF";
557 pub static WETH_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from_static(
559 __BYTECODE,
560 );
561 #[rustfmt::skip]
562 const __DEPLOYED_BYTECODE: &[u8] = b"`\x80`@R`\x046\x10a\0\xE1W`\x005`\xE0\x1C\x80cp\xA0\x821\x11a\0\x7FW\x80c\xA9\x05\x9C\xBB\x11a\0YW\x80c\xA9\x05\x9C\xBB\x14a\x05 W\x80c\xD0\xE3\r\xB0\x14a\x05{W\x80c\xD5\x05\xAC\xCF\x14a\x05\x83W\x80c\xDDb\xED>\x14a\x05\xDEWa\0\xF0V[\x80cp\xA0\x821\x14a\x04\0W\x80c~\xCE\xBE\0\x14a\x04hW\x80c\x95\xD8\x9BA\x14a\x04\xD0Wa\0\xF0V[\x80c#\xB8r\xDD\x11a\0\xBBW\x80c#\xB8r\xDD\x14a\x02yW\x80c.\x1A}M\x14a\x02\xD4W\x80c1<\xE5g\x14a\x03/W\x80c6D\xE5\x15\x14a\x03\xB0Wa\0\xF0V[\x80c\x06\xFD\xDE\x03\x14a\x01IW\x80c\t^\xA7\xB3\x14a\x01\xAFW\x80c\x18\x16\r\xDD\x14a\x02\x1AWa\0\xF0V[6a\0\xF0Wa\0\xEEa\x06QV[\0[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`)`$\x82\x01R\x7FUnknown signature and no fallbac`D\x82\x01\x90\x81Rh\x1A\xC8\x19\x19Y\x9A[\x99Y`\xBA\x1B`d\x83\x01R`\x84\x82\xFD[4\x80\x15a\x01\x90W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x01\x99a\x06\x92V[`@Qa\x01\xA6\x91\x90a\r|V[`@Q\x80\x91\x03\x90\xF3[4\x80\x15a\x01\xF6W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02\na\x02\x056`\x04a\x0E6V[a\x07 V[`@Q\x90\x15\x15\x81R` \x01a\x01\xA6V[4\x80\x15a\x02aW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02k`\x02T\x81V[`@Q\x90\x81R` \x01a\x01\xA6V[4\x80\x15a\x02\xC0W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02\na\x02\xCF6`\x04a\x0EcV[a\x07\x8DV[4\x80\x15a\x03\x1BW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\0\xEEa\x03*6`\x04a\x0E\xA2V[a\x08mV[4\x80\x15a\x03vW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x03\x9E\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`\xFF\x90\x91\x16\x81R` \x01a\x01\xA6V[4\x80\x15a\x03\xF7W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x08\xB9V[4\x80\x15a\x04GW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x04V6`\x04a\x0E\xBEV[`\x03` R`\0\x90\x81R`@\x90 T\x81V[4\x80\x15a\x04\xAFW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x04\xBE6`\x04a\x0E\xBEV[`\x05` R`\0\x90\x81R`@\x90 T\x81V[4\x80\x15a\x05\x17W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x01\x99a\t\x14V[4\x80\x15a\x05gW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02\na\x05v6`\x04a\x0E6V[a\t!V[a\0\xEEa\x06QV[4\x80\x15a\x05\xCAW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\0\xEEa\x05\xD96`\x04a\x0E\xE3V[a\t\x87V[4\x80\x15a\x06%W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R`\0\x80Q` a\x10\xA5\x839\x81Q\x91R`D\x82\x01\x90\x81Ra7\xB7`\xF1\x1B`d\x83\x01R`\x84\x82\xFD[Pa\x02ka\x0646`\x04a\x0FYV[`\x04` \x90\x81R`\0\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[a\x06[34a\x0B\xD0V[`@Q4\x81R3\x90\x7F\xE1\xFF\xFC\xC4\x92=\x04\xB5Y\xF4\xD2\x9A\x8B\xFCl\xDA\x04\xEB[\r<F\x07Q\xC2@,\\\\\xC9\x10\x9C\x90` \x01`@Q\x80\x91\x03\x90\xA2V[`\0\x80Ta\x06\x9F\x90a\x0F\x8FV[\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80Ta\x06\xCB\x90a\x0F\x8FV[\x80\x15a\x07\x18W\x80`\x1F\x10a\x06\xEDWa\x01\0\x80\x83T\x04\x02\x83R\x91` \x01\x91a\x07\x18V[\x82\x01\x91\x90`\0R` `\0 \x90[\x81T\x81R\x90`\x01\x01\x90` \x01\x80\x83\x11a\x06\xFBW\x82\x90\x03`\x1F\x16\x82\x01\x91[PPPPP\x81V[3`\0\x81\x81R`\x04` \x90\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x87\x16\x80\x85R\x92R\x80\x83 \x85\x90UQ\x91\x92\x90\x91\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x90a\x07{\x90\x86\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3P`\x01[\x92\x91PPV[`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x90\x81R`\x04` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x81 T`\0\x19\x81\x14a\x07\xE9Wa\x07\xC4\x83\x82a\x0F\xDFV[`\x01`\x01`\xA0\x1B\x03\x86\x16`\0\x90\x81R`\x04` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x90 U[`\x01`\x01`\xA0\x1B\x03\x85\x16`\0\x90\x81R`\x03` R`@\x81 \x80T\x85\x92\x90a\x08\x11\x90\x84\x90a\x0F\xDFV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x80\x85\x16`\0\x81\x81R`\x03` R`@\x90\x81\x90 \x80T\x87\x01\x90UQ\x90\x91\x87\x16\x90`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x90a\x08Z\x90\x87\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3P`\x01\x94\x93PPPPV[a\x08w3\x82a\x0C*V[`@Q\x81\x81R3\x90\x7F\x7F\xCFS,\x15\xF0\xA6\xDB\x0B\xD6\xD0\xE08\xBE\xA7\x1D0\xD8\x08\xC7\xD9\x8C\xB3\xBFrh\xA9[\xF5\x08\x1Be\x90` \x01`@Q\x80\x91\x03\x90\xA2a\x08\xB63\x82a\x0C\x8CV[PV[`\0\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\0F\x14a\x08\xEFWa\x08\xEAa\x0C\xE2V[\x90P\x90V[P\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\x90V[`\x01\x80Ta\x06\x9F\x90a\x0F\x8FV[3`\0\x90\x81R`\x03` R`@\x81 \x80T\x83\x91\x90\x83\x90a\tB\x90\x84\x90a\x0F\xDFV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x83\x16`\0\x81\x81R`\x03` R`@\x90\x81\x90 \x80T\x85\x01\x90UQ3\x90`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x90a\x07{\x90\x86\x81R` \x01\x90V[B\x84\x10\x15a\t\xDCW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FPERMIT_DEADLINE_EXPIRED\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[`\0`\x01a\t\xE8a\x08\xB9V[`\x01`\x01`\xA0\x1B\x03\x8A\x81\x16`\0\x81\x81R`\x05` \x90\x81R`@\x91\x82\x90 \x80T`\x01\x81\x01\x90\x91U\x82Q\x7Fnq\xED\xAE\x12\xB1\xB9\x7FM\x1F`7\x0F\xEF\x10\x10_\xA2\xFA\xAE\x01&\x11J\x16\x9Cd\x84]a&\xC9\x81\x84\x01R\x80\x84\x01\x94\x90\x94R\x93\x8D\x16``\x84\x01R`\x80\x83\x01\x8C\x90R`\xA0\x83\x01\x93\x90\x93R`\xC0\x80\x83\x01\x8B\x90R\x81Q\x80\x84\x03\x90\x91\x01\x81R`\xE0\x83\x01\x90\x91R\x80Q\x92\x01\x91\x90\x91 a\x19\x01`\xF0\x1Ba\x01\0\x83\x01Ra\x01\x02\x82\x01\x92\x90\x92Ra\x01\"\x81\x01\x91\x90\x91Ra\x01B\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x82\x82R\x80Q` \x91\x82\x01 `\0\x84R\x90\x83\x01\x80\x83RR`\xFF\x87\x16\x90\x82\x01R``\x81\x01\x85\x90R`\x80\x81\x01\x84\x90R`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15a\n\xF4W=`\0\x80>=`\0\xFD[PP`@Q`\x1F\x19\x01Q\x91PP`\x01`\x01`\xA0\x1B\x03\x81\x16\x15\x80\x15\x90a\x0B*WP\x87`\x01`\x01`\xA0\x1B\x03\x16\x81`\x01`\x01`\xA0\x1B\x03\x16\x14[a\x0BgW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0E`$\x82\x01Rm$\xA7+ \xA6$\xA2/\xA9\xA4\xA3\xA7\"\xA9`\x91\x1B`D\x82\x01R`d\x01a\t\xD3V[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16`\0\x90\x81R`\x04` \x90\x81R`@\x80\x83 \x8A\x85\x16\x80\x85R\x90\x83R\x92\x81\x90 \x89\x90UQ\x88\x81R\x91\x92\x8A\x16\x91\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91\x01`@Q\x80\x91\x03\x90\xA3PPPPPPPV[\x80`\x02`\0\x82\x82Ta\x0B\xE2\x91\x90a\x0F\xF2V[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x81\x81R`\x03` \x90\x81R`@\x80\x83 \x80T\x86\x01\x90UQ\x84\x81R`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x91\x01[`@Q\x80\x91\x03\x90\xA3PPV[`\x01`\x01`\xA0\x1B\x03\x82\x16`\0\x90\x81R`\x03` R`@\x81 \x80T\x83\x92\x90a\x0CR\x90\x84\x90a\x0F\xDFV[\x90\x91UPP`\x02\x80T\x82\x90\x03\x90U`@Q\x81\x81R`\0\x90`\x01`\x01`\xA0\x1B\x03\x84\x16\x90`\0\x80Q` a\x10\xC5\x839\x81Q\x91R\x90` \x01a\x0C\x1EV[`\0\x80`\0\x80`\0\x85\x87Z\xF1\x90P\x80a\x0C\xDDW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x13`$\x82\x01Rr\x11U\x12\x17\xD5\x14\x90S\x94\xD1\x91T\x97\xD1\x90RS\x11Q`j\x1B`D\x82\x01R`d\x01a\t\xD3V[PPPV[`\0\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F`\0`@Qa\r\x14\x91\x90a\x10\x05V[`@\x80Q\x91\x82\x90\x03\x82 ` \x83\x01\x93\x90\x93R\x81\x01\x91\x90\x91R\x7F\xC8\x9E\xFD\xAAT\xC0\xF2\x0Cz\xDFa(\x82\xDF\tP\xF5\xA9Qc~\x03\x07\xCD\xCBLg/)\x8B\x8B\xC6``\x82\x01RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[`\0` \x80\x83R\x83Q\x80\x82\x85\x01R`\0[\x81\x81\x10\x15a\r\xA9W\x85\x81\x01\x83\x01Q\x85\x82\x01`@\x01R\x82\x01a\r\x8DV[P`\0`@\x82\x86\x01\x01R`@`\x1F\x19`\x1F\x83\x01\x16\x85\x01\x01\x92PPP\x92\x91PPV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\"`$\x82\x01R\x7FABI decoding: tuple data too sho`D\x82\x01Ra\x1C\x9D`\xF2\x1B`d\x82\x01R`\x84\x81\xFD[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x0E1W`\0\x80\xFD[\x91\x90PV[`\0\x80`@\x83\x85\x03\x12\x15a\x0ELWa\x0ELa\r\xCAV[a\x0EU\x83a\x0E\x1AV[\x94` \x93\x90\x93\x015\x93PPPV[`\0\x80`\0``\x84\x86\x03\x12\x15a\x0E{Wa\x0E{a\r\xCAV[a\x0E\x84\x84a\x0E\x1AV[\x92Pa\x0E\x92` \x85\x01a\x0E\x1AV[\x91P`@\x84\x015\x90P\x92P\x92P\x92V[`\0` \x82\x84\x03\x12\x15a\x0E\xB7Wa\x0E\xB7a\r\xCAV[P5\x91\x90PV[`\0` \x82\x84\x03\x12\x15a\x0E\xD3Wa\x0E\xD3a\r\xCAV[a\x0E\xDC\x82a\x0E\x1AV[\x93\x92PPPV[`\0\x80`\0\x80`\0\x80`\0`\xE0\x88\x8A\x03\x12\x15a\x0F\x01Wa\x0F\x01a\r\xCAV[a\x0F\n\x88a\x0E\x1AV[\x96Pa\x0F\x18` \x89\x01a\x0E\x1AV[\x95P`@\x88\x015\x94P``\x88\x015\x93P`\x80\x88\x015`\xFF\x81\x16\x81\x14a\x0F<W`\0\x80\xFD[\x96\x99\x95\x98P\x93\x96\x92\x95\x94`\xA0\x84\x015\x94P`\xC0\x90\x93\x015\x92\x91PPV[`\0\x80`@\x83\x85\x03\x12\x15a\x0FoWa\x0Foa\r\xCAV[a\x0Fx\x83a\x0E\x1AV[\x91Pa\x0F\x86` \x84\x01a\x0E\x1AV[\x90P\x92P\x92\x90PV[`\x01\x81\x81\x1C\x90\x82\x16\x80a\x0F\xA3W`\x7F\x82\x16\x91P[` \x82\x10\x81\x03a\x0F\xC3WcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[cNH{q`\xE0\x1B`\0R`\x11`\x04R`$`\0\xFD[\x81\x81\x03\x81\x81\x11\x15a\x07\x87Wa\x07\x87a\x0F\xC9V[\x80\x82\x01\x80\x82\x11\x15a\x07\x87Wa\x07\x87a\x0F\xC9V[`\0\x80\x83T\x81`\x01\x82\x81\x1C\x91P\x80\x83\x16\x80a\x10!W`\x7F\x83\x16\x92P[` \x80\x84\x10\x82\x03a\x10@WcNH{q`\xE0\x1B\x86R`\"`\x04R`$\x86\xFD[\x81\x80\x15a\x10TW`\x01\x81\x14a\x10iWa\x10\x96V[`\xFF\x19\x86\x16\x89R\x84\x15\x15\x85\x02\x89\x01\x96Pa\x10\x96V[`\0\x8A\x81R` \x90 `\0[\x86\x81\x10\x15a\x10\x8EW\x81T\x8B\x82\x01R\x90\x85\x01\x90\x83\x01a\x10uV[PP\x84\x89\x01\x96P[P\x94\x98\x97PPPPPPPPV\xFEEther sent to non-payable functi\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF";
563 pub static WETH_DEPLOYED_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from_static(
565 __DEPLOYED_BYTECODE,
566 );
567 pub struct WETH<M>(::ethers::contract::Contract<M>);
568 impl<M> ::core::clone::Clone for WETH<M> {
569 fn clone(&self) -> Self {
570 Self(::core::clone::Clone::clone(&self.0))
571 }
572 }
573 impl<M> ::core::ops::Deref for WETH<M> {
574 type Target = ::ethers::contract::Contract<M>;
575 fn deref(&self) -> &Self::Target {
576 &self.0
577 }
578 }
579 impl<M> ::core::ops::DerefMut for WETH<M> {
580 fn deref_mut(&mut self) -> &mut Self::Target {
581 &mut self.0
582 }
583 }
584 impl<M> ::core::fmt::Debug for WETH<M> {
585 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
586 f.debug_tuple(::core::stringify!(WETH)).field(&self.address()).finish()
587 }
588 }
589 impl<M: ::ethers::providers::Middleware> WETH<M> {
590 pub fn new<T: Into<::ethers::core::types::Address>>(
593 address: T,
594 client: ::std::sync::Arc<M>,
595 ) -> Self {
596 Self(
597 ::ethers::contract::Contract::new(
598 address.into(),
599 WETH_ABI.clone(),
600 client,
601 ),
602 )
603 }
604 pub fn deploy<T: ::ethers::core::abi::Tokenize>(
628 client: ::std::sync::Arc<M>,
629 constructor_args: T,
630 ) -> ::core::result::Result<
631 ::ethers::contract::builders::ContractDeployer<M, Self>,
632 ::ethers::contract::ContractError<M>,
633 > {
634 let factory = ::ethers::contract::ContractFactory::new(
635 WETH_ABI.clone(),
636 WETH_BYTECODE.clone().into(),
637 client,
638 );
639 let deployer = factory.deploy(constructor_args)?;
640 let deployer = ::ethers::contract::ContractDeployer::new(deployer);
641 Ok(deployer)
642 }
643 pub fn domain_separator(
645 &self,
646 ) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
647 self.0
648 .method_hash([54, 68, 229, 21], ())
649 .expect("method not found (this should never happen)")
650 }
651 pub fn allowance(
653 &self,
654 p0: ::ethers::core::types::Address,
655 p1: ::ethers::core::types::Address,
656 ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
657 self.0
658 .method_hash([221, 98, 237, 62], (p0, p1))
659 .expect("method not found (this should never happen)")
660 }
661 pub fn approve(
663 &self,
664 spender: ::ethers::core::types::Address,
665 amount: ::ethers::core::types::U256,
666 ) -> ::ethers::contract::builders::ContractCall<M, bool> {
667 self.0
668 .method_hash([9, 94, 167, 179], (spender, amount))
669 .expect("method not found (this should never happen)")
670 }
671 pub fn balance_of(
673 &self,
674 p0: ::ethers::core::types::Address,
675 ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
676 self.0
677 .method_hash([112, 160, 130, 49], p0)
678 .expect("method not found (this should never happen)")
679 }
680 pub fn decimals(&self) -> ::ethers::contract::builders::ContractCall<M, u8> {
682 self.0
683 .method_hash([49, 60, 229, 103], ())
684 .expect("method not found (this should never happen)")
685 }
686 pub fn deposit(&self) -> ::ethers::contract::builders::ContractCall<M, ()> {
688 self.0
689 .method_hash([208, 227, 13, 176], ())
690 .expect("method not found (this should never happen)")
691 }
692 pub fn name(
694 &self,
695 ) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
696 self.0
697 .method_hash([6, 253, 222, 3], ())
698 .expect("method not found (this should never happen)")
699 }
700 pub fn nonces(
702 &self,
703 p0: ::ethers::core::types::Address,
704 ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
705 self.0
706 .method_hash([126, 206, 190, 0], p0)
707 .expect("method not found (this should never happen)")
708 }
709 pub fn permit(
711 &self,
712 owner: ::ethers::core::types::Address,
713 spender: ::ethers::core::types::Address,
714 value: ::ethers::core::types::U256,
715 deadline: ::ethers::core::types::U256,
716 v: u8,
717 r: [u8; 32],
718 s: [u8; 32],
719 ) -> ::ethers::contract::builders::ContractCall<M, ()> {
720 self.0
721 .method_hash(
722 [213, 5, 172, 207],
723 (owner, spender, value, deadline, v, r, s),
724 )
725 .expect("method not found (this should never happen)")
726 }
727 pub fn symbol(
729 &self,
730 ) -> ::ethers::contract::builders::ContractCall<M, ::std::string::String> {
731 self.0
732 .method_hash([149, 216, 155, 65], ())
733 .expect("method not found (this should never happen)")
734 }
735 pub fn total_supply(
737 &self,
738 ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
739 self.0
740 .method_hash([24, 22, 13, 221], ())
741 .expect("method not found (this should never happen)")
742 }
743 pub fn transfer(
745 &self,
746 to: ::ethers::core::types::Address,
747 amount: ::ethers::core::types::U256,
748 ) -> ::ethers::contract::builders::ContractCall<M, bool> {
749 self.0
750 .method_hash([169, 5, 156, 187], (to, amount))
751 .expect("method not found (this should never happen)")
752 }
753 pub fn transfer_from(
755 &self,
756 from: ::ethers::core::types::Address,
757 to: ::ethers::core::types::Address,
758 amount: ::ethers::core::types::U256,
759 ) -> ::ethers::contract::builders::ContractCall<M, bool> {
760 self.0
761 .method_hash([35, 184, 114, 221], (from, to, amount))
762 .expect("method not found (this should never happen)")
763 }
764 pub fn withdraw(
766 &self,
767 amount: ::ethers::core::types::U256,
768 ) -> ::ethers::contract::builders::ContractCall<M, ()> {
769 self.0
770 .method_hash([46, 26, 125, 77], amount)
771 .expect("method not found (this should never happen)")
772 }
773 pub fn approval_filter(
775 &self,
776 ) -> ::ethers::contract::builders::Event<
777 ::std::sync::Arc<M>,
778 M,
779 ApprovalFilter,
780 > {
781 self.0.event()
782 }
783 pub fn deposit_filter(
785 &self,
786 ) -> ::ethers::contract::builders::Event<::std::sync::Arc<M>, M, DepositFilter> {
787 self.0.event()
788 }
789 pub fn transfer_filter(
791 &self,
792 ) -> ::ethers::contract::builders::Event<
793 ::std::sync::Arc<M>,
794 M,
795 TransferFilter,
796 > {
797 self.0.event()
798 }
799 pub fn withdrawal_filter(
801 &self,
802 ) -> ::ethers::contract::builders::Event<
803 ::std::sync::Arc<M>,
804 M,
805 WithdrawalFilter,
806 > {
807 self.0.event()
808 }
809 pub fn events(
811 &self,
812 ) -> ::ethers::contract::builders::Event<::std::sync::Arc<M>, M, WETHEvents> {
813 self.0.event_with_filter(::core::default::Default::default())
814 }
815 }
816 impl<M: ::ethers::providers::Middleware> From<::ethers::contract::Contract<M>>
817 for WETH<M> {
818 fn from(contract: ::ethers::contract::Contract<M>) -> Self {
819 Self::new(contract.address(), contract.client())
820 }
821 }
822 #[derive(
823 Clone,
824 ::ethers::contract::EthEvent,
825 ::ethers::contract::EthDisplay,
826 serde::Serialize,
827 serde::Deserialize,
828 Default,
829 Debug,
830 PartialEq,
831 Eq,
832 Hash
833 )]
834 #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")]
835 pub struct ApprovalFilter {
836 #[ethevent(indexed)]
837 pub owner: ::ethers::core::types::Address,
838 #[ethevent(indexed)]
839 pub spender: ::ethers::core::types::Address,
840 pub amount: ::ethers::core::types::U256,
841 }
842 #[derive(
843 Clone,
844 ::ethers::contract::EthEvent,
845 ::ethers::contract::EthDisplay,
846 serde::Serialize,
847 serde::Deserialize,
848 Default,
849 Debug,
850 PartialEq,
851 Eq,
852 Hash
853 )]
854 #[ethevent(name = "Deposit", abi = "Deposit(address,uint256)")]
855 pub struct DepositFilter {
856 #[ethevent(indexed)]
857 pub from: ::ethers::core::types::Address,
858 pub amount: ::ethers::core::types::U256,
859 }
860 #[derive(
861 Clone,
862 ::ethers::contract::EthEvent,
863 ::ethers::contract::EthDisplay,
864 serde::Serialize,
865 serde::Deserialize,
866 Default,
867 Debug,
868 PartialEq,
869 Eq,
870 Hash
871 )]
872 #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")]
873 pub struct TransferFilter {
874 #[ethevent(indexed)]
875 pub from: ::ethers::core::types::Address,
876 #[ethevent(indexed)]
877 pub to: ::ethers::core::types::Address,
878 pub amount: ::ethers::core::types::U256,
879 }
880 #[derive(
881 Clone,
882 ::ethers::contract::EthEvent,
883 ::ethers::contract::EthDisplay,
884 serde::Serialize,
885 serde::Deserialize,
886 Default,
887 Debug,
888 PartialEq,
889 Eq,
890 Hash
891 )]
892 #[ethevent(name = "Withdrawal", abi = "Withdrawal(address,uint256)")]
893 pub struct WithdrawalFilter {
894 #[ethevent(indexed)]
895 pub to: ::ethers::core::types::Address,
896 pub amount: ::ethers::core::types::U256,
897 }
898 #[derive(
900 Clone,
901 ::ethers::contract::EthAbiType,
902 serde::Serialize,
903 serde::Deserialize,
904 Debug,
905 PartialEq,
906 Eq,
907 Hash
908 )]
909 pub enum WETHEvents {
910 ApprovalFilter(ApprovalFilter),
911 DepositFilter(DepositFilter),
912 TransferFilter(TransferFilter),
913 WithdrawalFilter(WithdrawalFilter),
914 }
915 impl ::ethers::contract::EthLogDecode for WETHEvents {
916 fn decode_log(
917 log: &::ethers::core::abi::RawLog,
918 ) -> ::core::result::Result<Self, ::ethers::core::abi::Error> {
919 if let Ok(decoded) = ApprovalFilter::decode_log(log) {
920 return Ok(WETHEvents::ApprovalFilter(decoded));
921 }
922 if let Ok(decoded) = DepositFilter::decode_log(log) {
923 return Ok(WETHEvents::DepositFilter(decoded));
924 }
925 if let Ok(decoded) = TransferFilter::decode_log(log) {
926 return Ok(WETHEvents::TransferFilter(decoded));
927 }
928 if let Ok(decoded) = WithdrawalFilter::decode_log(log) {
929 return Ok(WETHEvents::WithdrawalFilter(decoded));
930 }
931 Err(::ethers::core::abi::Error::InvalidData)
932 }
933 }
934 impl ::core::fmt::Display for WETHEvents {
935 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
936 match self {
937 Self::ApprovalFilter(element) => ::core::fmt::Display::fmt(element, f),
938 Self::DepositFilter(element) => ::core::fmt::Display::fmt(element, f),
939 Self::TransferFilter(element) => ::core::fmt::Display::fmt(element, f),
940 Self::WithdrawalFilter(element) => ::core::fmt::Display::fmt(element, f),
941 }
942 }
943 }
944 impl ::core::convert::From<ApprovalFilter> for WETHEvents {
945 fn from(value: ApprovalFilter) -> Self {
946 Self::ApprovalFilter(value)
947 }
948 }
949 impl ::core::convert::From<DepositFilter> for WETHEvents {
950 fn from(value: DepositFilter) -> Self {
951 Self::DepositFilter(value)
952 }
953 }
954 impl ::core::convert::From<TransferFilter> for WETHEvents {
955 fn from(value: TransferFilter) -> Self {
956 Self::TransferFilter(value)
957 }
958 }
959 impl ::core::convert::From<WithdrawalFilter> for WETHEvents {
960 fn from(value: WithdrawalFilter) -> Self {
961 Self::WithdrawalFilter(value)
962 }
963 }
964 #[derive(
966 Clone,
967 ::ethers::contract::EthCall,
968 ::ethers::contract::EthDisplay,
969 serde::Serialize,
970 serde::Deserialize,
971 Default,
972 Debug,
973 PartialEq,
974 Eq,
975 Hash
976 )]
977 #[ethcall(name = "DOMAIN_SEPARATOR", abi = "DOMAIN_SEPARATOR()")]
978 pub struct DomainSeparatorCall;
979 #[derive(
981 Clone,
982 ::ethers::contract::EthCall,
983 ::ethers::contract::EthDisplay,
984 serde::Serialize,
985 serde::Deserialize,
986 Default,
987 Debug,
988 PartialEq,
989 Eq,
990 Hash
991 )]
992 #[ethcall(name = "allowance", abi = "allowance(address,address)")]
993 pub struct AllowanceCall(
994 pub ::ethers::core::types::Address,
995 pub ::ethers::core::types::Address,
996 );
997 #[derive(
999 Clone,
1000 ::ethers::contract::EthCall,
1001 ::ethers::contract::EthDisplay,
1002 serde::Serialize,
1003 serde::Deserialize,
1004 Default,
1005 Debug,
1006 PartialEq,
1007 Eq,
1008 Hash
1009 )]
1010 #[ethcall(name = "approve", abi = "approve(address,uint256)")]
1011 pub struct ApproveCall {
1012 pub spender: ::ethers::core::types::Address,
1013 pub amount: ::ethers::core::types::U256,
1014 }
1015 #[derive(
1017 Clone,
1018 ::ethers::contract::EthCall,
1019 ::ethers::contract::EthDisplay,
1020 serde::Serialize,
1021 serde::Deserialize,
1022 Default,
1023 Debug,
1024 PartialEq,
1025 Eq,
1026 Hash
1027 )]
1028 #[ethcall(name = "balanceOf", abi = "balanceOf(address)")]
1029 pub struct BalanceOfCall(pub ::ethers::core::types::Address);
1030 #[derive(
1032 Clone,
1033 ::ethers::contract::EthCall,
1034 ::ethers::contract::EthDisplay,
1035 serde::Serialize,
1036 serde::Deserialize,
1037 Default,
1038 Debug,
1039 PartialEq,
1040 Eq,
1041 Hash
1042 )]
1043 #[ethcall(name = "decimals", abi = "decimals()")]
1044 pub struct DecimalsCall;
1045 #[derive(
1047 Clone,
1048 ::ethers::contract::EthCall,
1049 ::ethers::contract::EthDisplay,
1050 serde::Serialize,
1051 serde::Deserialize,
1052 Default,
1053 Debug,
1054 PartialEq,
1055 Eq,
1056 Hash
1057 )]
1058 #[ethcall(name = "deposit", abi = "deposit()")]
1059 pub struct DepositCall;
1060 #[derive(
1062 Clone,
1063 ::ethers::contract::EthCall,
1064 ::ethers::contract::EthDisplay,
1065 serde::Serialize,
1066 serde::Deserialize,
1067 Default,
1068 Debug,
1069 PartialEq,
1070 Eq,
1071 Hash
1072 )]
1073 #[ethcall(name = "name", abi = "name()")]
1074 pub struct NameCall;
1075 #[derive(
1077 Clone,
1078 ::ethers::contract::EthCall,
1079 ::ethers::contract::EthDisplay,
1080 serde::Serialize,
1081 serde::Deserialize,
1082 Default,
1083 Debug,
1084 PartialEq,
1085 Eq,
1086 Hash
1087 )]
1088 #[ethcall(name = "nonces", abi = "nonces(address)")]
1089 pub struct NoncesCall(pub ::ethers::core::types::Address);
1090 #[derive(
1092 Clone,
1093 ::ethers::contract::EthCall,
1094 ::ethers::contract::EthDisplay,
1095 serde::Serialize,
1096 serde::Deserialize,
1097 Default,
1098 Debug,
1099 PartialEq,
1100 Eq,
1101 Hash
1102 )]
1103 #[ethcall(
1104 name = "permit",
1105 abi = "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)"
1106 )]
1107 pub struct PermitCall {
1108 pub owner: ::ethers::core::types::Address,
1109 pub spender: ::ethers::core::types::Address,
1110 pub value: ::ethers::core::types::U256,
1111 pub deadline: ::ethers::core::types::U256,
1112 pub v: u8,
1113 pub r: [u8; 32],
1114 pub s: [u8; 32],
1115 }
1116 #[derive(
1118 Clone,
1119 ::ethers::contract::EthCall,
1120 ::ethers::contract::EthDisplay,
1121 serde::Serialize,
1122 serde::Deserialize,
1123 Default,
1124 Debug,
1125 PartialEq,
1126 Eq,
1127 Hash
1128 )]
1129 #[ethcall(name = "symbol", abi = "symbol()")]
1130 pub struct SymbolCall;
1131 #[derive(
1133 Clone,
1134 ::ethers::contract::EthCall,
1135 ::ethers::contract::EthDisplay,
1136 serde::Serialize,
1137 serde::Deserialize,
1138 Default,
1139 Debug,
1140 PartialEq,
1141 Eq,
1142 Hash
1143 )]
1144 #[ethcall(name = "totalSupply", abi = "totalSupply()")]
1145 pub struct TotalSupplyCall;
1146 #[derive(
1148 Clone,
1149 ::ethers::contract::EthCall,
1150 ::ethers::contract::EthDisplay,
1151 serde::Serialize,
1152 serde::Deserialize,
1153 Default,
1154 Debug,
1155 PartialEq,
1156 Eq,
1157 Hash
1158 )]
1159 #[ethcall(name = "transfer", abi = "transfer(address,uint256)")]
1160 pub struct TransferCall {
1161 pub to: ::ethers::core::types::Address,
1162 pub amount: ::ethers::core::types::U256,
1163 }
1164 #[derive(
1166 Clone,
1167 ::ethers::contract::EthCall,
1168 ::ethers::contract::EthDisplay,
1169 serde::Serialize,
1170 serde::Deserialize,
1171 Default,
1172 Debug,
1173 PartialEq,
1174 Eq,
1175 Hash
1176 )]
1177 #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")]
1178 pub struct TransferFromCall {
1179 pub from: ::ethers::core::types::Address,
1180 pub to: ::ethers::core::types::Address,
1181 pub amount: ::ethers::core::types::U256,
1182 }
1183 #[derive(
1185 Clone,
1186 ::ethers::contract::EthCall,
1187 ::ethers::contract::EthDisplay,
1188 serde::Serialize,
1189 serde::Deserialize,
1190 Default,
1191 Debug,
1192 PartialEq,
1193 Eq,
1194 Hash
1195 )]
1196 #[ethcall(name = "withdraw", abi = "withdraw(uint256)")]
1197 pub struct WithdrawCall {
1198 pub amount: ::ethers::core::types::U256,
1199 }
1200 #[derive(
1202 Clone,
1203 ::ethers::contract::EthAbiType,
1204 serde::Serialize,
1205 serde::Deserialize,
1206 Debug,
1207 PartialEq,
1208 Eq,
1209 Hash
1210 )]
1211 pub enum WETHCalls {
1212 DomainSeparator(DomainSeparatorCall),
1213 Allowance(AllowanceCall),
1214 Approve(ApproveCall),
1215 BalanceOf(BalanceOfCall),
1216 Decimals(DecimalsCall),
1217 Deposit(DepositCall),
1218 Name(NameCall),
1219 Nonces(NoncesCall),
1220 Permit(PermitCall),
1221 Symbol(SymbolCall),
1222 TotalSupply(TotalSupplyCall),
1223 Transfer(TransferCall),
1224 TransferFrom(TransferFromCall),
1225 Withdraw(WithdrawCall),
1226 }
1227 impl ::ethers::core::abi::AbiDecode for WETHCalls {
1228 fn decode(
1229 data: impl AsRef<[u8]>,
1230 ) -> ::core::result::Result<Self, ::ethers::core::abi::AbiError> {
1231 let data = data.as_ref();
1232 if let Ok(decoded) = <DomainSeparatorCall as ::ethers::core::abi::AbiDecode>::decode(
1233 data,
1234 ) {
1235 return Ok(Self::DomainSeparator(decoded));
1236 }
1237 if let Ok(decoded) = <AllowanceCall as ::ethers::core::abi::AbiDecode>::decode(
1238 data,
1239 ) {
1240 return Ok(Self::Allowance(decoded));
1241 }
1242 if let Ok(decoded) = <ApproveCall as ::ethers::core::abi::AbiDecode>::decode(
1243 data,
1244 ) {
1245 return Ok(Self::Approve(decoded));
1246 }
1247 if let Ok(decoded) = <BalanceOfCall as ::ethers::core::abi::AbiDecode>::decode(
1248 data,
1249 ) {
1250 return Ok(Self::BalanceOf(decoded));
1251 }
1252 if let Ok(decoded) = <DecimalsCall as ::ethers::core::abi::AbiDecode>::decode(
1253 data,
1254 ) {
1255 return Ok(Self::Decimals(decoded));
1256 }
1257 if let Ok(decoded) = <DepositCall as ::ethers::core::abi::AbiDecode>::decode(
1258 data,
1259 ) {
1260 return Ok(Self::Deposit(decoded));
1261 }
1262 if let Ok(decoded) = <NameCall as ::ethers::core::abi::AbiDecode>::decode(
1263 data,
1264 ) {
1265 return Ok(Self::Name(decoded));
1266 }
1267 if let Ok(decoded) = <NoncesCall as ::ethers::core::abi::AbiDecode>::decode(
1268 data,
1269 ) {
1270 return Ok(Self::Nonces(decoded));
1271 }
1272 if let Ok(decoded) = <PermitCall as ::ethers::core::abi::AbiDecode>::decode(
1273 data,
1274 ) {
1275 return Ok(Self::Permit(decoded));
1276 }
1277 if let Ok(decoded) = <SymbolCall as ::ethers::core::abi::AbiDecode>::decode(
1278 data,
1279 ) {
1280 return Ok(Self::Symbol(decoded));
1281 }
1282 if let Ok(decoded) = <TotalSupplyCall as ::ethers::core::abi::AbiDecode>::decode(
1283 data,
1284 ) {
1285 return Ok(Self::TotalSupply(decoded));
1286 }
1287 if let Ok(decoded) = <TransferCall as ::ethers::core::abi::AbiDecode>::decode(
1288 data,
1289 ) {
1290 return Ok(Self::Transfer(decoded));
1291 }
1292 if let Ok(decoded) = <TransferFromCall as ::ethers::core::abi::AbiDecode>::decode(
1293 data,
1294 ) {
1295 return Ok(Self::TransferFrom(decoded));
1296 }
1297 if let Ok(decoded) = <WithdrawCall as ::ethers::core::abi::AbiDecode>::decode(
1298 data,
1299 ) {
1300 return Ok(Self::Withdraw(decoded));
1301 }
1302 Err(::ethers::core::abi::Error::InvalidData.into())
1303 }
1304 }
1305 impl ::ethers::core::abi::AbiEncode for WETHCalls {
1306 fn encode(self) -> Vec<u8> {
1307 match self {
1308 Self::DomainSeparator(element) => {
1309 ::ethers::core::abi::AbiEncode::encode(element)
1310 }
1311 Self::Allowance(element) => {
1312 ::ethers::core::abi::AbiEncode::encode(element)
1313 }
1314 Self::Approve(element) => ::ethers::core::abi::AbiEncode::encode(element),
1315 Self::BalanceOf(element) => {
1316 ::ethers::core::abi::AbiEncode::encode(element)
1317 }
1318 Self::Decimals(element) => {
1319 ::ethers::core::abi::AbiEncode::encode(element)
1320 }
1321 Self::Deposit(element) => ::ethers::core::abi::AbiEncode::encode(element),
1322 Self::Name(element) => ::ethers::core::abi::AbiEncode::encode(element),
1323 Self::Nonces(element) => ::ethers::core::abi::AbiEncode::encode(element),
1324 Self::Permit(element) => ::ethers::core::abi::AbiEncode::encode(element),
1325 Self::Symbol(element) => ::ethers::core::abi::AbiEncode::encode(element),
1326 Self::TotalSupply(element) => {
1327 ::ethers::core::abi::AbiEncode::encode(element)
1328 }
1329 Self::Transfer(element) => {
1330 ::ethers::core::abi::AbiEncode::encode(element)
1331 }
1332 Self::TransferFrom(element) => {
1333 ::ethers::core::abi::AbiEncode::encode(element)
1334 }
1335 Self::Withdraw(element) => {
1336 ::ethers::core::abi::AbiEncode::encode(element)
1337 }
1338 }
1339 }
1340 }
1341 impl ::core::fmt::Display for WETHCalls {
1342 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1343 match self {
1344 Self::DomainSeparator(element) => ::core::fmt::Display::fmt(element, f),
1345 Self::Allowance(element) => ::core::fmt::Display::fmt(element, f),
1346 Self::Approve(element) => ::core::fmt::Display::fmt(element, f),
1347 Self::BalanceOf(element) => ::core::fmt::Display::fmt(element, f),
1348 Self::Decimals(element) => ::core::fmt::Display::fmt(element, f),
1349 Self::Deposit(element) => ::core::fmt::Display::fmt(element, f),
1350 Self::Name(element) => ::core::fmt::Display::fmt(element, f),
1351 Self::Nonces(element) => ::core::fmt::Display::fmt(element, f),
1352 Self::Permit(element) => ::core::fmt::Display::fmt(element, f),
1353 Self::Symbol(element) => ::core::fmt::Display::fmt(element, f),
1354 Self::TotalSupply(element) => ::core::fmt::Display::fmt(element, f),
1355 Self::Transfer(element) => ::core::fmt::Display::fmt(element, f),
1356 Self::TransferFrom(element) => ::core::fmt::Display::fmt(element, f),
1357 Self::Withdraw(element) => ::core::fmt::Display::fmt(element, f),
1358 }
1359 }
1360 }
1361 impl ::core::convert::From<DomainSeparatorCall> for WETHCalls {
1362 fn from(value: DomainSeparatorCall) -> Self {
1363 Self::DomainSeparator(value)
1364 }
1365 }
1366 impl ::core::convert::From<AllowanceCall> for WETHCalls {
1367 fn from(value: AllowanceCall) -> Self {
1368 Self::Allowance(value)
1369 }
1370 }
1371 impl ::core::convert::From<ApproveCall> for WETHCalls {
1372 fn from(value: ApproveCall) -> Self {
1373 Self::Approve(value)
1374 }
1375 }
1376 impl ::core::convert::From<BalanceOfCall> for WETHCalls {
1377 fn from(value: BalanceOfCall) -> Self {
1378 Self::BalanceOf(value)
1379 }
1380 }
1381 impl ::core::convert::From<DecimalsCall> for WETHCalls {
1382 fn from(value: DecimalsCall) -> Self {
1383 Self::Decimals(value)
1384 }
1385 }
1386 impl ::core::convert::From<DepositCall> for WETHCalls {
1387 fn from(value: DepositCall) -> Self {
1388 Self::Deposit(value)
1389 }
1390 }
1391 impl ::core::convert::From<NameCall> for WETHCalls {
1392 fn from(value: NameCall) -> Self {
1393 Self::Name(value)
1394 }
1395 }
1396 impl ::core::convert::From<NoncesCall> for WETHCalls {
1397 fn from(value: NoncesCall) -> Self {
1398 Self::Nonces(value)
1399 }
1400 }
1401 impl ::core::convert::From<PermitCall> for WETHCalls {
1402 fn from(value: PermitCall) -> Self {
1403 Self::Permit(value)
1404 }
1405 }
1406 impl ::core::convert::From<SymbolCall> for WETHCalls {
1407 fn from(value: SymbolCall) -> Self {
1408 Self::Symbol(value)
1409 }
1410 }
1411 impl ::core::convert::From<TotalSupplyCall> for WETHCalls {
1412 fn from(value: TotalSupplyCall) -> Self {
1413 Self::TotalSupply(value)
1414 }
1415 }
1416 impl ::core::convert::From<TransferCall> for WETHCalls {
1417 fn from(value: TransferCall) -> Self {
1418 Self::Transfer(value)
1419 }
1420 }
1421 impl ::core::convert::From<TransferFromCall> for WETHCalls {
1422 fn from(value: TransferFromCall) -> Self {
1423 Self::TransferFrom(value)
1424 }
1425 }
1426 impl ::core::convert::From<WithdrawCall> for WETHCalls {
1427 fn from(value: WithdrawCall) -> Self {
1428 Self::Withdraw(value)
1429 }
1430 }
1431 #[derive(
1433 Clone,
1434 ::ethers::contract::EthAbiType,
1435 ::ethers::contract::EthAbiCodec,
1436 serde::Serialize,
1437 serde::Deserialize,
1438 Default,
1439 Debug,
1440 PartialEq,
1441 Eq,
1442 Hash
1443 )]
1444 pub struct DomainSeparatorReturn(pub [u8; 32]);
1445 #[derive(
1447 Clone,
1448 ::ethers::contract::EthAbiType,
1449 ::ethers::contract::EthAbiCodec,
1450 serde::Serialize,
1451 serde::Deserialize,
1452 Default,
1453 Debug,
1454 PartialEq,
1455 Eq,
1456 Hash
1457 )]
1458 pub struct AllowanceReturn(pub ::ethers::core::types::U256);
1459 #[derive(
1461 Clone,
1462 ::ethers::contract::EthAbiType,
1463 ::ethers::contract::EthAbiCodec,
1464 serde::Serialize,
1465 serde::Deserialize,
1466 Default,
1467 Debug,
1468 PartialEq,
1469 Eq,
1470 Hash
1471 )]
1472 pub struct ApproveReturn(pub bool);
1473 #[derive(
1475 Clone,
1476 ::ethers::contract::EthAbiType,
1477 ::ethers::contract::EthAbiCodec,
1478 serde::Serialize,
1479 serde::Deserialize,
1480 Default,
1481 Debug,
1482 PartialEq,
1483 Eq,
1484 Hash
1485 )]
1486 pub struct BalanceOfReturn(pub ::ethers::core::types::U256);
1487 #[derive(
1489 Clone,
1490 ::ethers::contract::EthAbiType,
1491 ::ethers::contract::EthAbiCodec,
1492 serde::Serialize,
1493 serde::Deserialize,
1494 Default,
1495 Debug,
1496 PartialEq,
1497 Eq,
1498 Hash
1499 )]
1500 pub struct DecimalsReturn(pub u8);
1501 #[derive(
1503 Clone,
1504 ::ethers::contract::EthAbiType,
1505 ::ethers::contract::EthAbiCodec,
1506 serde::Serialize,
1507 serde::Deserialize,
1508 Default,
1509 Debug,
1510 PartialEq,
1511 Eq,
1512 Hash
1513 )]
1514 pub struct NameReturn(pub ::std::string::String);
1515 #[derive(
1517 Clone,
1518 ::ethers::contract::EthAbiType,
1519 ::ethers::contract::EthAbiCodec,
1520 serde::Serialize,
1521 serde::Deserialize,
1522 Default,
1523 Debug,
1524 PartialEq,
1525 Eq,
1526 Hash
1527 )]
1528 pub struct NoncesReturn(pub ::ethers::core::types::U256);
1529 #[derive(
1531 Clone,
1532 ::ethers::contract::EthAbiType,
1533 ::ethers::contract::EthAbiCodec,
1534 serde::Serialize,
1535 serde::Deserialize,
1536 Default,
1537 Debug,
1538 PartialEq,
1539 Eq,
1540 Hash
1541 )]
1542 pub struct SymbolReturn(pub ::std::string::String);
1543 #[derive(
1545 Clone,
1546 ::ethers::contract::EthAbiType,
1547 ::ethers::contract::EthAbiCodec,
1548 serde::Serialize,
1549 serde::Deserialize,
1550 Default,
1551 Debug,
1552 PartialEq,
1553 Eq,
1554 Hash
1555 )]
1556 pub struct TotalSupplyReturn(pub ::ethers::core::types::U256);
1557 #[derive(
1559 Clone,
1560 ::ethers::contract::EthAbiType,
1561 ::ethers::contract::EthAbiCodec,
1562 serde::Serialize,
1563 serde::Deserialize,
1564 Default,
1565 Debug,
1566 PartialEq,
1567 Eq,
1568 Hash
1569 )]
1570 pub struct TransferReturn(pub bool);
1571 #[derive(
1573 Clone,
1574 ::ethers::contract::EthAbiType,
1575 ::ethers::contract::EthAbiCodec,
1576 serde::Serialize,
1577 serde::Deserialize,
1578 Default,
1579 Debug,
1580 PartialEq,
1581 Eq,
1582 Hash
1583 )]
1584 pub struct TransferFromReturn(pub bool);
1585}