ve_orn_bindings/
weth.rs

1pub use weth::*;
2#[allow(
3    clippy::too_many_arguments,
4    non_camel_case_types,
5    clippy::upper_case_acronyms
6)]
7pub mod weth {
8    #![allow(clippy::enum_variant_names)]
9    #![allow(dead_code)]
10    #![allow(clippy::type_complexity)]
11    #![allow(unused_imports)]
12    //!WETH was auto-generated with ethers-rs Abigen. More information at: <https://github.com/gakonst/ethers-rs>
13    use ::ethers::contract::{
14        builders::{ContractCall, Event},
15        Contract, Lazy,
16    };
17    use ::ethers::core::{
18        abi::{Abi, Detokenize, InvalidOutputType, Token, Tokenizable},
19        types::*,
20    };
21    use ::ethers::providers::Middleware;
22    use std::sync::Arc;
23    #[rustfmt::skip]
24    const __ABI: &str = "[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dst\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Deposit\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[],\"indexed\":true},{\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\",\"components\":[],\"indexed\":true},{\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"RoleAdminChanged\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"RoleGranted\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"RoleRevoked\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"src\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"Withdrawal\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"MINTER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newMinter\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"addMinter\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"cap\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\",\"name\":\"deposit\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"grantRole\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isMinter\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"mint\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"renounceRole\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"revokeRole\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"wad\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"withdraw\",\"outputs\":[]},{\"inputs\":[],\"stateMutability\":\"payable\",\"type\":\"receive\",\"outputs\":[]}]";
25    ///The parsed JSON ABI of the contract.
26    pub static WETH_ABI: ::ethers::contract::Lazy<::ethers::core::abi::Abi> =
27        ::ethers::contract::Lazy::new(|| {
28            ::ethers::core::utils::__serde_json::from_str(__ABI).expect("ABI is always valid")
29        });
30    #[rustfmt::skip]
31    const __BYTECODE: &[u8] = &[
32        96,
33        192,
34        96,
35        64,
36        82,
37        52,
38        128,
39        21,
40        98,
41        0,
42        0,
43        17,
44        87,
45        96,
46        0,
47        128,
48        253,
49        91,
50        80,
51        96,
52        18,
53        106,
54        82,
55        183,
56        210,
57        220,
58        200,
59        12,
60        210,
61        228,
62        0,
63        0,
64        0,
65        96,
66        64,
67        81,
68        128,
69        96,
70        64,
71        1,
72        96,
73        64,
74        82,
75        128,
76        96,
77        13,
78        129,
79        82,
80        96,
81        32,
82        1,
83        108,
84        43,
85        185,
86        48,
87        184,
88        56,
89        50,
90        178,
91        16,
92        34,
93        186,
94        52,
95        50,
96        185,
97        96,
98        153,
99        27,
100        129,
101        82,
102        80,
103        96,
104        64,
105        81,
106        128,
107        96,
108        64,
109        1,
110        96,
111        64,
112        82,
113        128,
114        96,
115        4,
116        129,
117        82,
118        96,
119        32,
120        1,
121        99,
122        10,
123        232,
124        170,
125        137,
126        96,
127        227,
128        27,
129        129,
130        82,
131        80,
132        129,
133        96,
134        3,
135        144,
136        129,
137        98,
138        0,
139        0,
140        116,
141        145,
142        144,
143        98,
144        0,
145        2,
146        113,
147        86,
148        91,
149        80,
150        96,
151        4,
152        98,
153        0,
154        0,
155        131,
156        130,
157        130,
158        98,
159        0,
160        2,
161        113,
162        86,
163        91,
164        80,
165        80,
166        80,
167        96,
168        0,
169        129,
170        17,
171        98,
172        0,
173        0,
174        219,
175        87,
176        96,
177        64,
178        81,
179        98,
180        70,
181        27,
182        205,
183        96,
184        229,
185        27,
186        129,
187        82,
188        96,
189        32,
190        96,
191        4,
192        130,
193        1,
194        82,
195        96,
196        21,
197        96,
198        36,
199        130,
200        1,
201        82,
202        127,
203        69,
204        82,
205        67,
206        50,
207        48,
208        67,
209        97,
210        112,
211        112,
212        101,
213        100,
214        58,
215        32,
216        99,
217        97,
218        112,
219        32,
220        105,
221        115,
222        32,
223        48,
224        0,
225        0,
226        0,
227        0,
228        0,
229        0,
230        0,
231        0,
232        0,
233        0,
234        0,
235        96,
236        68,
237        130,
238        1,
239        82,
240        96,
241        100,
242        1,
243        96,
244        64,
245        81,
246        128,
247        145,
248        3,
249        144,
250        253,
251        91,
252        96,
253        128,
254        82,
255        96,
256        255,
257        129,
258        22,
259        96,
260        160,
261        82,
262        98,
263        0,
264        1,
265        17,
266        127,
267        159,
268        45,
269        240,
270        254,
271        210,
272        199,
273        118,
274        72,
275        222,
276        88,
277        96,
278        164,
279        204,
280        80,
281        140,
282        208,
283        129,
284        140,
285        133,
286        184,
287        184,
288        161,
289        171,
290        76,
291        238,
292        239,
293        141,
294        152,
295        28,
296        137,
297        86,
298        166,
299        51,
300        98,
301        0,
302        1,
303        24,
304        86,
305        91,
306        80,
307        98,
308        0,
309        3,
310        61,
311        86,
312        91,
313        98,
314        0,
315        1,
316        36,
317        130,
318        130,
319        98,
320        0,
321        1,
322        40,
323        86,
324        91,
325        80,
326        80,
327        86,
328        91,
329        96,
330        0,
331        130,
332        129,
333        82,
334        96,
335        5,
336        96,
337        32,
338        144,
339        129,
340        82,
341        96,
342        64,
343        128,
344        131,
345        32,
346        96,
347        1,
348        96,
349        1,
350        96,
351        160,
352        27,
353        3,
354        133,
355        22,
356        132,
357        82,
358        144,
359        145,
360        82,
361        144,
362        32,
363        84,
364        96,
365        255,
366        22,
367        98,
368        0,
369        1,
370        36,
371        87,
372        96,
373        0,
374        130,
375        129,
376        82,
377        96,
378        5,
379        96,
380        32,
381        144,
382        129,
383        82,
384        96,
385        64,
386        128,
387        131,
388        32,
389        96,
390        1,
391        96,
392        1,
393        96,
394        160,
395        27,
396        3,
397        133,
398        22,
399        132,
400        82,
401        144,
402        145,
403        82,
404        144,
405        32,
406        128,
407        84,
408        96,
409        255,
410        25,
411        22,
412        96,
413        1,
414        23,
415        144,
416        85,
417        98,
418        0,
419        1,
420        136,
421        51,
422        144,
423        86,
424        91,
425        96,
426        1,
427        96,
428        1,
429        96,
430        160,
431        27,
432        3,
433        22,
434        129,
435        96,
436        1,
437        96,
438        1,
439        96,
440        160,
441        27,
442        3,
443        22,
444        131,
445        127,
446        47,
447        135,
448        136,
449        17,
450        126,
451        126,
452        255,
453        29,
454        130,
455        233,
456        38,
457        236,
458        121,
459        73,
460        1,
461        209,
462        124,
463        120,
464        2,
465        74,
466        80,
467        39,
468        9,
469        64,
470        48,
471        69,
472        64,
473        167,
474        51,
475        101,
476        111,
477        13,
478        96,
479        64,
480        81,
481        96,
482        64,
483        81,
484        128,
485        145,
486        3,
487        144,
488        164,
489        80,
490        80,
491        86,
492        91,
493        99,
494        78,
495        72,
496        123,
497        113,
498        96,
499        224,
500        27,
501        96,
502        0,
503        82,
504        96,
505        65,
506        96,
507        4,
508        82,
509        96,
510        36,
511        96,
512        0,
513        253,
514        91,
515        96,
516        1,
517        129,
518        129,
519        28,
520        144,
521        130,
522        22,
523        128,
524        98,
525        0,
526        1,
527        247,
528        87,
529        96,
530        127,
531        130,
532        22,
533        145,
534        80,
535        91,
536        96,
537        32,
538        130,
539        16,
540        129,
541        3,
542        98,
543        0,
544        2,
545        24,
546        87,
547        99,
548        78,
549        72,
550        123,
551        113,
552        96,
553        224,
554        27,
555        96,
556        0,
557        82,
558        96,
559        34,
560        96,
561        4,
562        82,
563        96,
564        36,
565        96,
566        0,
567        253,
568        91,
569        80,
570        145,
571        144,
572        80,
573        86,
574        91,
575        96,
576        31,
577        130,
578        17,
579        21,
580        98,
581        0,
582        2,
583        108,
584        87,
585        96,
586        0,
587        129,
588        129,
589        82,
590        96,
591        32,
592        129,
593        32,
594        96,
595        31,
596        133,
597        1,
598        96,
599        5,
600        28,
601        129,
602        1,
603        96,
604        32,
605        134,
606        16,
607        21,
608        98,
609        0,
610        2,
611        71,
612        87,
613        80,
614        128,
615        91,
616        96,
617        31,
618        133,
619        1,
620        96,
621        5,
622        28,
623        130,
624        1,
625        145,
626        80,
627        91,
628        129,
629        129,
630        16,
631        21,
632        98,
633        0,
634        2,
635        104,
636        87,
637        130,
638        129,
639        85,
640        96,
641        1,
642        1,
643        98,
644        0,
645        2,
646        83,
647        86,
648        91,
649        80,
650        80,
651        80,
652        91,
653        80,
654        80,
655        80,
656        86,
657        91,
658        129,
659        81,
660        96,
661        1,
662        96,
663        1,
664        96,
665        64,
666        27,
667        3,
668        129,
669        17,
670        21,
671        98,
672        0,
673        2,
674        141,
675        87,
676        98,
677        0,
678        2,
679        141,
680        98,
681        0,
682        1,
683        204,
684        86,
685        91,
686        98,
687        0,
688        2,
689        165,
690        129,
691        98,
692        0,
693        2,
694        158,
695        132,
696        84,
697        98,
698        0,
699        1,
700        226,
701        86,
702        91,
703        132,
704        98,
705        0,
706        2,
707        30,
708        86,
709        91,
710        96,
711        32,
712        128,
713        96,
714        31,
715        131,
716        17,
717        96,
718        1,
719        129,
720        20,
721        98,
722        0,
723        2,
724        221,
725        87,
726        96,
727        0,
728        132,
729        21,
730        98,
731        0,
732        2,
733        196,
734        87,
735        80,
736        133,
737        131,
738        1,
739        81,
740        91,
741        96,
742        0,
743        25,
744        96,
745        3,
746        134,
747        144,
748        27,
749        28,
750        25,
751        22,
752        96,
753        1,
754        133,
755        144,
756        27,
757        23,
758        133,
759        85,
760        98,
761        0,
762        2,
763        104,
764        86,
765        91,
766        96,
767        0,
768        133,
769        129,
770        82,
771        96,
772        32,
773        129,
774        32,
775        96,
776        31,
777        25,
778        134,
779        22,
780        145,
781        91,
782        130,
783        129,
784        16,
785        21,
786        98,
787        0,
788        3,
789        14,
790        87,
791        136,
792        134,
793        1,
794        81,
795        130,
796        85,
797        148,
798        132,
799        1,
800        148,
801        96,
802        1,
803        144,
804        145,
805        1,
806        144,
807        132,
808        1,
809        98,
810        0,
811        2,
812        237,
813        86,
814        91,
815        80,
816        133,
817        130,
818        16,
819        21,
820        98,
821        0,
822        3,
823        45,
824        87,
825        135,
826        133,
827        1,
828        81,
829        96,
830        0,
831        25,
832        96,
833        3,
834        136,
835        144,
836        27,
837        96,
838        248,
839        22,
840        28,
841        25,
842        22,
843        129,
844        85,
845        91,
846        80,
847        80,
848        80,
849        80,
850        80,
851        96,
852        1,
853        144,
854        129,
855        27,
856        1,
857        144,
858        85,
859        80,
860        86,
861        91,
862        96,
863        128,
864        81,
865        96,
866        160,
867        81,
868        97,
869        23,
870        123,
871        98,
872        0,
873        3,
874        106,
875        96,
876        0,
877        57,
878        96,
879        0,
880        97,
881        2,
882        184,
883        1,
884        82,
885        96,
886        0,
887        129,
888        129,
889        97,
890        2,
891        241,
892        1,
893        82,
894        97,
895        10,
896        168,
897        1,
898        82,
899        97,
900        23,
901        123,
902        96,
903        0,
904        243,
905        254,
906        96,
907        128,
908        96,
909        64,
910        82,
911        96,
912        4,
913        54,
914        16,
915        97,
916        1,
917        106,
918        87,
919        96,
920        0,
921        53,
922        96,
923        224,
924        28,
925        128,
926        99,
927        64,
928        193,
929        15,
930        25,
931        17,
932        97,
933        0,
934        209,
935        87,
936        128,
937        99,
938        164,
939        87,
940        194,
941        215,
942        17,
943        97,
944        0,
945        138,
946        87,
947        128,
948        99,
949        208,
950        227,
951        13,
952        176,
953        17,
954        97,
955        0,
956        100,
957        87,
958        128,
959        99,
960        208,
961        227,
962        13,
963        176,
964        20,
965        97,
966        4,
967        117,
968        87,
969        128,
970        99,
971        213,
972        57,
973        19,
974        147,
975        20,
976        97,
977        4,
978        125,
979        87,
980        128,
981        99,
982        213,
983        71,
984        116,
985        31,
986        20,
987        97,
988        4,
989        159,
990        87,
991        128,
992        99,
993        221,
994        98,
995        237,
996        62,
997        20,
998        97,
999        4,
1000        191,
1001        87,
1002        96,
1003        0,
1004        128,
1005        253,
1006        91,
1007        128,
1008        99,
1009        164,
1010        87,
1011        194,
1012        215,
1013        20,
1014        97,
1015        4,
1016        21,
1017        87,
1018        128,
1019        99,
1020        169,
1021        5,
1022        156,
1023        187,
1024        20,
1025        97,
1026        4,
1027        53,
1028        87,
1029        128,
1030        99,
1031        170,
1032        39,
1033        30,
1034        26,
1035        20,
1036        97,
1037        4,
1038        85,
1039        87,
1040        96,
1041        0,
1042        128,
1043        253,
1044        91,
1045        128,
1046        99,
1047        64,
1048        193,
1049        15,
1050        25,
1051        20,
1052        97,
1053        3,
1054        85,
1055        87,
1056        128,
1057        99,
1058        112,
1059        160,
1060        130,
1061        49,
1062        20,
1063        97,
1064        3,
1065        117,
1066        87,
1067        128,
1068        99,
1069        145,
1070        209,
1071        72,
1072        84,
1073        20,
1074        97,
1075        3,
1076        171,
1077        87,
1078        128,
1079        99,
1080        149,
1081        216,
1082        155,
1083        65,
1084        20,
1085        97,
1086        3,
1087        203,
1088        87,
1089        128,
1090        99,
1091        152,
1092        59,
1093        45,
1094        86,
1095        20,
1096        97,
1097        3,
1098        224,
1099        87,
1100        128,
1101        99,
1102        162,
1103        23,
1104        253,
1105        223,
1106        20,
1107        97,
1108        4,
1109        0,
1110        87,
1111        96,
1112        0,
1113        128,
1114        253,
1115        91,
1116        128,
1117        99,
1118        46,
1119        26,
1120        125,
1121        77,
1122        17,
1123        97,
1124        1,
1125        35,
1126        87,
1127        128,
1128        99,
1129        46,
1130        26,
1131        125,
1132        77,
1133        20,
1134        97,
1135        2,
1136        100,
1137        87,
1138        128,
1139        99,
1140        47,
1141        47,
1142        241,
1143        93,
1144        20,
1145        97,
1146        2,
1147        132,
1148        87,
1149        128,
1150        99,
1151        49,
1152        60,
1153        229,
1154        103,
1155        20,
1156        97,
1157        2,
1158        164,
1159        87,
1160        128,
1161        99,
1162        53,
1163        82,
1164        116,
1165        234,
1166        20,
1167        97,
1168        2,
1169        226,
1170        87,
1171        128,
1172        99,
1173        54,
1174        86,
1175        138,
1176        190,
1177        20,
1178        97,
1179        3,
1180        21,
1181        87,
1182        128,
1183        99,
1184        57,
1185        80,
1186        147,
1187        81,
1188        20,
1189        97,
1190        3,
1191        53,
1192        87,
1193        96,
1194        0,
1195        128,
1196        253,
1197        91,
1198        128,
1199        99,
1200        1,
1201        255,
1202        201,
1203        167,
1204        20,
1205        97,
1206        1,
1207        126,
1208        87,
1209        128,
1210        99,
1211        6,
1212        253,
1213        222,
1214        3,
1215        20,
1216        97,
1217        1,
1218        179,
1219        87,
1220        128,
1221        99,
1222        9,
1223        94,
1224        167,
1225        179,
1226        20,
1227        97,
1228        1,
1229        213,
1230        87,
1231        128,
1232        99,
1233        24,
1234        22,
1235        13,
1236        221,
1237        20,
1238        97,
1239        1,
1240        245,
1241        87,
1242        128,
1243        99,
1244        35,
1245        184,
1246        114,
1247        221,
1248        20,
1249        97,
1250        2,
1251        20,
1252        87,
1253        128,
1254        99,
1255        36,
1256        138,
1257        156,
1258        163,
1259        20,
1260        97,
1261        2,
1262        52,
1263        87,
1264        96,
1265        0,
1266        128,
1267        253,
1268        91,
1269        54,
1270        97,
1271        1,
1272        121,
1273        87,
1274        97,
1275        1,
1276        119,
1277        97,
1278        4,
1279        223,
1280        86,
1281        91,
1282        0,
1283        91,
1284        96,
1285        0,
1286        128,
1287        253,
1288        91,
1289        52,
1290        128,
1291        21,
1292        97,
1293        1,
1294        138,
1295        87,
1296        96,
1297        0,
1298        128,
1299        253,
1300        91,
1301        80,
1302        97,
1303        1,
1304        158,
1305        97,
1306        1,
1307        153,
1308        54,
1309        96,
1310        4,
1311        97,
1312        19,
1313        223,
1314        86,
1315        91,
1316        97,
1317        5,
1318        85,
1319        86,
1320        91,
1321        96,
1322        64,
1323        81,
1324        144,
1325        21,
1326        21,
1327        129,
1328        82,
1329        96,
1330        32,
1331        1,
1332        91,
1333        96,
1334        64,
1335        81,
1336        128,
1337        145,
1338        3,
1339        144,
1340        243,
1341        91,
1342        52,
1343        128,
1344        21,
1345        97,
1346        1,
1347        191,
1348        87,
1349        96,
1350        0,
1351        128,
1352        253,
1353        91,
1354        80,
1355        97,
1356        1,
1357        200,
1358        97,
1359        5,
1360        140,
1361        86,
1362        91,
1363        96,
1364        64,
1365        81,
1366        97,
1367        1,
1368        170,
1369        145,
1370        144,
1371        97,
1372        20,
1373        97,
1374        86,
1375        91,
1376        52,
1377        128,
1378        21,
1379        97,
1380        1,
1381        225,
1382        87,
1383        96,
1384        0,
1385        128,
1386        253,
1387        91,
1388        80,
1389        97,
1390        1,
1391        158,
1392        97,
1393        1,
1394        240,
1395        54,
1396        96,
1397        4,
1398        97,
1399        20,
1400        144,
1401        86,
1402        91,
1403        97,
1404        6,
1405        30,
1406        86,
1407        91,
1408        52,
1409        128,
1410        21,
1411        97,
1412        2,
1413        1,
1414        87,
1415        96,
1416        0,
1417        128,
1418        253,
1419        91,
1420        80,
1421        96,
1422        2,
1423        84,
1424        91,
1425        96,
1426        64,
1427        81,
1428        144,
1429        129,
1430        82,
1431        96,
1432        32,
1433        1,
1434        97,
1435        1,
1436        170,
1437        86,
1438        91,
1439        52,
1440        128,
1441        21,
1442        97,
1443        2,
1444        32,
1445        87,
1446        96,
1447        0,
1448        128,
1449        253,
1450        91,
1451        80,
1452        97,
1453        1,
1454        158,
1455        97,
1456        2,
1457        47,
1458        54,
1459        96,
1460        4,
1461        97,
1462        20,
1463        186,
1464        86,
1465        91,
1466        97,
1467        6,
1468        54,
1469        86,
1470        91,
1471        52,
1472        128,
1473        21,
1474        97,
1475        2,
1476        64,
1477        87,
1478        96,
1479        0,
1480        128,
1481        253,
1482        91,
1483        80,
1484        97,
1485        2,
1486        6,
1487        97,
1488        2,
1489        79,
1490        54,
1491        96,
1492        4,
1493        97,
1494        20,
1495        246,
1496        86,
1497        91,
1498        96,
1499        0,
1500        144,
1501        129,
1502        82,
1503        96,
1504        5,
1505        96,
1506        32,
1507        82,
1508        96,
1509        64,
1510        144,
1511        32,
1512        96,
1513        1,
1514        1,
1515        84,
1516        144,
1517        86,
1518        91,
1519        52,
1520        128,
1521        21,
1522        97,
1523        2,
1524        112,
1525        87,
1526        96,
1527        0,
1528        128,
1529        253,
1530        91,
1531        80,
1532        97,
1533        1,
1534        119,
1535        97,
1536        2,
1537        127,
1538        54,
1539        96,
1540        4,
1541        97,
1542        20,
1543        246,
1544        86,
1545        91,
1546        97,
1547        6,
1548        90,
1549        86,
1550        91,
1551        52,
1552        128,
1553        21,
1554        97,
1555        2,
1556        144,
1557        87,
1558        96,
1559        0,
1560        128,
1561        253,
1562        91,
1563        80,
1564        97,
1565        1,
1566        119,
1567        97,
1568        2,
1569        159,
1570        54,
1571        96,
1572        4,
1573        97,
1574        21,
1575        15,
1576        86,
1577        91,
1578        97,
1579        7,
1580        129,
1581        86,
1582        91,
1583        52,
1584        128,
1585        21,
1586        97,
1587        2,
1588        176,
1589        87,
1590        96,
1591        0,
1592        128,
1593        253,
1594        91,
1595        80,
1596        96,
1597        64,
1598        81,
1599        96,
1600        255,
1601        127,
1602        0,
1603        0,
1604        0,
1605        0,
1606        0,
1607        0,
1608        0,
1609        0,
1610        0,
1611        0,
1612        0,
1613        0,
1614        0,
1615        0,
1616        0,
1617        0,
1618        0,
1619        0,
1620        0,
1621        0,
1622        0,
1623        0,
1624        0,
1625        0,
1626        0,
1627        0,
1628        0,
1629        0,
1630        0,
1631        0,
1632        0,
1633        0,
1634        22,
1635        129,
1636        82,
1637        96,
1638        32,
1639        1,
1640        97,
1641        1,
1642        170,
1643        86,
1644        91,
1645        52,
1646        128,
1647        21,
1648        97,
1649        2,
1650        238,
1651        87,
1652        96,
1653        0,
1654        128,
1655        253,
1656        91,
1657        80,
1658        127,
1659        0,
1660        0,
1661        0,
1662        0,
1663        0,
1664        0,
1665        0,
1666        0,
1667        0,
1668        0,
1669        0,
1670        0,
1671        0,
1672        0,
1673        0,
1674        0,
1675        0,
1676        0,
1677        0,
1678        0,
1679        0,
1680        0,
1681        0,
1682        0,
1683        0,
1684        0,
1685        0,
1686        0,
1687        0,
1688        0,
1689        0,
1690        0,
1691        97,
1692        2,
1693        6,
1694        86,
1695        91,
1696        52,
1697        128,
1698        21,
1699        97,
1700        3,
1701        33,
1702        87,
1703        96,
1704        0,
1705        128,
1706        253,
1707        91,
1708        80,
1709        97,
1710        1,
1711        119,
1712        97,
1713        3,
1714        48,
1715        54,
1716        96,
1717        4,
1718        97,
1719        21,
1720        15,
1721        86,
1722        91,
1723        97,
1724        7,
1725        171,
1726        86,
1727        91,
1728        52,
1729        128,
1730        21,
1731        97,
1732        3,
1733        65,
1734        87,
1735        96,
1736        0,
1737        128,
1738        253,
1739        91,
1740        80,
1741        97,
1742        1,
1743        158,
1744        97,
1745        3,
1746        80,
1747        54,
1748        96,
1749        4,
1750        97,
1751        20,
1752        144,
1753        86,
1754        91,
1755        97,
1756        8,
1757        41,
1758        86,
1759        91,
1760        52,
1761        128,
1762        21,
1763        97,
1764        3,
1765        97,
1766        87,
1767        96,
1768        0,
1769        128,
1770        253,
1771        91,
1772        80,
1773        97,
1774        1,
1775        119,
1776        97,
1777        3,
1778        112,
1779        54,
1780        96,
1781        4,
1782        97,
1783        20,
1784        144,
1785        86,
1786        91,
1787        97,
1788        8,
1789        75,
1790        86,
1791        91,
1792        52,
1793        128,
1794        21,
1795        97,
1796        3,
1797        129,
1798        87,
1799        96,
1800        0,
1801        128,
1802        253,
1803        91,
1804        80,
1805        97,
1806        2,
1807        6,
1808        97,
1809        3,
1810        144,
1811        54,
1812        96,
1813        4,
1814        97,
1815        21,
1816        59,
1817        86,
1818        91,
1819        96,
1820        1,
1821        96,
1822        1,
1823        96,
1824        160,
1825        27,
1826        3,
1827        22,
1828        96,
1829        0,
1830        144,
1831        129,
1832        82,
1833        96,
1834        32,
1835        129,
1836        144,
1837        82,
1838        96,
1839        64,
1840        144,
1841        32,
1842        84,
1843        144,
1844        86,
1845        91,
1846        52,
1847        128,
1848        21,
1849        97,
1850        3,
1851        183,
1852        87,
1853        96,
1854        0,
1855        128,
1856        253,
1857        91,
1858        80,
1859        97,
1860        1,
1861        158,
1862        97,
1863        3,
1864        198,
1865        54,
1866        96,
1867        4,
1868        97,
1869        21,
1870        15,
1871        86,
1872        91,
1873        97,
1874        8,
1875        178,
1876        86,
1877        91,
1878        52,
1879        128,
1880        21,
1881        97,
1882        3,
1883        215,
1884        87,
1885        96,
1886        0,
1887        128,
1888        253,
1889        91,
1890        80,
1891        97,
1892        1,
1893        200,
1894        97,
1895        8,
1896        221,
1897        86,
1898        91,
1899        52,
1900        128,
1901        21,
1902        97,
1903        3,
1904        236,
1905        87,
1906        96,
1907        0,
1908        128,
1909        253,
1910        91,
1911        80,
1912        97,
1913        1,
1914        119,
1915        97,
1916        3,
1917        251,
1918        54,
1919        96,
1920        4,
1921        97,
1922        21,
1923        59,
1924        86,
1925        91,
1926        97,
1927        8,
1928        236,
1929        86,
1930        91,
1931        52,
1932        128,
1933        21,
1934        97,
1935        4,
1936        12,
1937        87,
1938        96,
1939        0,
1940        128,
1941        253,
1942        91,
1943        80,
1944        97,
1945        2,
1946        6,
1947        96,
1948        0,
1949        129,
1950        86,
1951        91,
1952        52,
1953        128,
1954        21,
1955        97,
1956        4,
1957        33,
1958        87,
1959        96,
1960        0,
1961        128,
1962        253,
1963        91,
1964        80,
1965        97,
1966        1,
1967        158,
1968        97,
1969        4,
1970        48,
1971        54,
1972        96,
1973        4,
1974        97,
1975        20,
1976        144,
1977        86,
1978        91,
1979        97,
1980        9,
1981        100,
1982        86,
1983        91,
1984        52,
1985        128,
1986        21,
1987        97,
1988        4,
1989        65,
1990        87,
1991        96,
1992        0,
1993        128,
1994        253,
1995        91,
1996        80,
1997        97,
1998        1,
1999        158,
2000        97,
2001        4,
2002        80,
2003        54,
2004        96,
2005        4,
2006        97,
2007        20,
2008        144,
2009        86,
2010        91,
2011        97,
2012        9,
2013        223,
2014        86,
2015        91,
2016        52,
2017        128,
2018        21,
2019        97,
2020        4,
2021        97,
2022        87,
2023        96,
2024        0,
2025        128,
2026        253,
2027        91,
2028        80,
2029        97,
2030        1,
2031        158,
2032        97,
2033        4,
2034        112,
2035        54,
2036        96,
2037        4,
2038        97,
2039        21,
2040        59,
2041        86,
2042        91,
2043        97,
2044        9,
2045        245,
2046        86,
2047        91,
2048        97,
2049        1,
2050        119,
2051        97,
2052        4,
2053        223,
2054        86,
2055        91,
2056        52,
2057        128,
2058        21,
2059        97,
2060        4,
2061        137,
2062        87,
2063        96,
2064        0,
2065        128,
2066        253,
2067        91,
2068        80,
2069        97,
2070        2,
2071        6,
2072        96,
2073        0,
2074        128,
2075        81,
2076        96,
2077        32,
2078        97,
2079        23,
2080        38,
2081        131,
2082        57,
2083        129,
2084        81,
2085        145,
2086        82,
2087        129,
2088        86,
2089        91,
2090        52,
2091        128,
2092        21,
2093        97,
2094        4,
2095        171,
2096        87,
2097        96,
2098        0,
2099        128,
2100        253,
2101        91,
2102        80,
2103        97,
2104        1,
2105        119,
2106        97,
2107        4,
2108        186,
2109        54,
2110        96,
2111        4,
2112        97,
2113        21,
2114        15,
2115        86,
2116        91,
2117        97,
2118        10,
2119        15,
2120        86,
2121        91,
2122        52,
2123        128,
2124        21,
2125        97,
2126        4,
2127        203,
2128        87,
2129        96,
2130        0,
2131        128,
2132        253,
2133        91,
2134        80,
2135        97,
2136        2,
2137        6,
2138        97,
2139        4,
2140        218,
2141        54,
2142        96,
2143        4,
2144        97,
2145        21,
2146        86,
2147        86,
2148        91,
2149        97,
2150        10,
2151        52,
2152        86,
2153        91,
2154        97,
2155        5,
2156        20,
2157        96,
2158        64,
2159        81,
2160        128,
2161        96,
2162        64,
2163        1,
2164        96,
2165        64,
2166        82,
2167        128,
2168        96,
2169        18,
2170        129,
2171        82,
2172        96,
2173        32,
2174        1,
2175        113,
2176        87,
2177        69,
2178        84,
2179        72,
2180        32,
2181        100,
2182        101,
2183        112,
2184        111,
2185        115,
2186        105,
2187        116,
2188        32,
2189        37,
2190        115,
2191        32,
2192        37,
2193        115,
2194        96,
2195        112,
2196        27,
2197        129,
2198        82,
2199        80,
2200        51,
2201        52,
2202        97,
2203        10,
2204        95,
2205        86,
2206        91,
2207        97,
2208        5,
2209        30,
2210        51,
2211        52,
2212        97,
2213        10,
2214        166,
2215        86,
2216        91,
2217        96,
2218        64,
2219        81,
2220        52,
2221        129,
2222        82,
2223        51,
2224        144,
2225        127,
2226        225,
2227        255,
2228        252,
2229        196,
2230        146,
2231        61,
2232        4,
2233        181,
2234        89,
2235        244,
2236        210,
2237        154,
2238        139,
2239        252,
2240        108,
2241        218,
2242        4,
2243        235,
2244        91,
2245        13,
2246        60,
2247        70,
2248        7,
2249        81,
2250        194,
2251        64,
2252        44,
2253        92,
2254        92,
2255        201,
2256        16,
2257        156,
2258        144,
2259        96,
2260        32,
2261        1,
2262        96,
2263        64,
2264        81,
2265        128,
2266        145,
2267        3,
2268        144,
2269        162,
2270        86,
2271        91,
2272        96,
2273        0,
2274        96,
2275        1,
2276        96,
2277        1,
2278        96,
2279        224,
2280        27,
2281        3,
2282        25,
2283        130,
2284        22,
2285        99,
2286        121,
2287        101,
2288        219,
2289        11,
2290        96,
2291        224,
2292        27,
2293        20,
2294        128,
2295        97,
2296        5,
2297        134,
2298        87,
2299        80,
2300        99,
2301        1,
2302        255,
2303        201,
2304        167,
2305        96,
2306        224,
2307        27,
2308        96,
2309        1,
2310        96,
2311        1,
2312        96,
2313        224,
2314        27,
2315        3,
2316        25,
2317        131,
2318        22,
2319        20,
2320        91,
2321        146,
2322        145,
2323        80,
2324        80,
2325        86,
2326        91,
2327        96,
2328        96,
2329        96,
2330        3,
2331        128,
2332        84,
2333        97,
2334        5,
2335        155,
2336        144,
2337        97,
2338        21,
2339        128,
2340        86,
2341        91,
2342        128,
2343        96,
2344        31,
2345        1,
2346        96,
2347        32,
2348        128,
2349        145,
2350        4,
2351        2,
2352        96,
2353        32,
2354        1,
2355        96,
2356        64,
2357        81,
2358        144,
2359        129,
2360        1,
2361        96,
2362        64,
2363        82,
2364        128,
2365        146,
2366        145,
2367        144,
2368        129,
2369        129,
2370        82,
2371        96,
2372        32,
2373        1,
2374        130,
2375        128,
2376        84,
2377        97,
2378        5,
2379        199,
2380        144,
2381        97,
2382        21,
2383        128,
2384        86,
2385        91,
2386        128,
2387        21,
2388        97,
2389        6,
2390        20,
2391        87,
2392        128,
2393        96,
2394        31,
2395        16,
2396        97,
2397        5,
2398        233,
2399        87,
2400        97,
2401        1,
2402        0,
2403        128,
2404        131,
2405        84,
2406        4,
2407        2,
2408        131,
2409        82,
2410        145,
2411        96,
2412        32,
2413        1,
2414        145,
2415        97,
2416        6,
2417        20,
2418        86,
2419        91,
2420        130,
2421        1,
2422        145,
2423        144,
2424        96,
2425        0,
2426        82,
2427        96,
2428        32,
2429        96,
2430        0,
2431        32,
2432        144,
2433        91,
2434        129,
2435        84,
2436        129,
2437        82,
2438        144,
2439        96,
2440        1,
2441        1,
2442        144,
2443        96,
2444        32,
2445        1,
2446        128,
2447        131,
2448        17,
2449        97,
2450        5,
2451        247,
2452        87,
2453        130,
2454        144,
2455        3,
2456        96,
2457        31,
2458        22,
2459        130,
2460        1,
2461        145,
2462        91,
2463        80,
2464        80,
2465        80,
2466        80,
2467        80,
2468        144,
2469        80,
2470        144,
2471        86,
2472        91,
2473        96,
2474        0,
2475        51,
2476        97,
2477        6,
2478        44,
2479        129,
2480        133,
2481        133,
2482        97,
2483        11,
2484        51,
2485        86,
2486        91,
2487        80,
2488        96,
2489        1,
2490        147,
2491        146,
2492        80,
2493        80,
2494        80,
2495        86,
2496        91,
2497        96,
2498        0,
2499        51,
2500        97,
2501        6,
2502        68,
2503        133,
2504        130,
2505        133,
2506        97,
2507        12,
2508        87,
2509        86,
2510        91,
2511        97,
2512        6,
2513        79,
2514        133,
2515        133,
2516        133,
2517        97,
2518        12,
2519        209,
2520        86,
2521        91,
2522        80,
2523        96,
2524        1,
2525        148,
2526        147,
2527        80,
2528        80,
2529        80,
2530        80,
2531        86,
2532        91,
2533        51,
2534        96,
2535        0,
2536        144,
2537        129,
2538        82,
2539        96,
2540        32,
2541        129,
2542        144,
2543        82,
2544        96,
2545        64,
2546        144,
2547        32,
2548        84,
2549        129,
2550        17,
2551        21,
2552        97,
2553        6,
2554        118,
2555        87,
2556        96,
2557        0,
2558        128,
2559        253,
2560        91,
2561        97,
2562        6,
2563        176,
2564        96,
2565        64,
2566        81,
2567        128,
2568        96,
2569        64,
2570        1,
2571        96,
2572        64,
2573        82,
2574        128,
2575        96,
2576        22,
2577        129,
2578        82,
2579        96,
2580        32,
2581        1,
2582        117,
2583        87,
2584        69,
2585        84,
2586        72,
2587        32,
2588        119,
2589        105,
2590        116,
2591        104,
2592        100,
2593        114,
2594        97,
2595        119,
2596        32,
2597        37,
2598        115,
2599        32,
2600        37,
2601        115,
2602        32,
2603        37,
2604        115,
2605        96,
2606        80,
2607        27,
2608        129,
2609        82,
2610        80,
2611        51,
2612        131,
2613        71,
2614        97,
2615        14,
2616        117,
2617        86,
2618        91,
2619        97,
2620        6,
2621        186,
2622        51,
2623        130,
2624        97,
2625        14,
2626        190,
2627        86,
2628        91,
2629        96,
2630        64,
2631        81,
2632        96,
2633        0,
2634        144,
2635        51,
2636        144,
2637        131,
2638        144,
2639        131,
2640        129,
2641        129,
2642        129,
2643        133,
2644        135,
2645        90,
2646        241,
2647        146,
2648        80,
2649        80,
2650        80,
2651        61,
2652        128,
2653        96,
2654        0,
2655        129,
2656        20,
2657        97,
2658        6,
2659        252,
2660        87,
2661        96,
2662        64,
2663        81,
2664        145,
2665        80,
2666        96,
2667        31,
2668        25,
2669        96,
2670        63,
2671        61,
2672        1,
2673        22,
2674        130,
2675        1,
2676        96,
2677        64,
2678        82,
2679        61,
2680        130,
2681        82,
2682        61,
2683        96,
2684        0,
2685        96,
2686        32,
2687        132,
2688        1,
2689        62,
2690        97,
2691        7,
2692        1,
2693        86,
2694        91,
2695        96,
2696        96,
2697        145,
2698        80,
2699        91,
2700        80,
2701        80,
2702        144,
2703        80,
2704        128,
2705        97,
2706        7,
2707        72,
2708        87,
2709        96,
2710        64,
2711        81,
2712        98,
2713        70,
2714        27,
2715        205,
2716        96,
2717        229,
2718        27,
2719        129,
2720        82,
2721        96,
2722        32,
2723        96,
2724        4,
2725        130,
2726        1,
2727        82,
2728        96,
2729        14,
2730        96,
2731        36,
2732        130,
2733        1,
2734        82,
2735        109,
2736        9,
2737        205,
2738        238,
2739        132,
2740        12,
2741        173,
2742        205,
2743        238,
2744        172,
2745        237,
2746        4,
2747        8,
2748        170,
2749        137,
2750        96,
2751        147,
2752        27,
2753        96,
2754        68,
2755        130,
2756        1,
2757        82,
2758        96,
2759        100,
2760        1,
2761        91,
2762        96,
2763        64,
2764        81,
2765        128,
2766        145,
2767        3,
2768        144,
2769        253,
2770        91,
2771        96,
2772        64,
2773        81,
2774        130,
2775        129,
2776        82,
2777        51,
2778        144,
2779        127,
2780        127,
2781        207,
2782        83,
2783        44,
2784        21,
2785        240,
2786        166,
2787        219,
2788        11,
2789        214,
2790        208,
2791        224,
2792        56,
2793        190,
2794        167,
2795        29,
2796        48,
2797        216,
2798        8,
2799        199,
2800        217,
2801        140,
2802        179,
2803        191,
2804        114,
2805        104,
2806        169,
2807        91,
2808        245,
2809        8,
2810        27,
2811        101,
2812        144,
2813        96,
2814        32,
2815        1,
2816        96,
2817        64,
2818        81,
2819        128,
2820        145,
2821        3,
2822        144,
2823        162,
2824        80,
2825        80,
2826        86,
2827        91,
2828        96,
2829        0,
2830        130,
2831        129,
2832        82,
2833        96,
2834        5,
2835        96,
2836        32,
2837        82,
2838        96,
2839        64,
2840        144,
2841        32,
2842        96,
2843        1,
2844        1,
2845        84,
2846        97,
2847        7,
2848        156,
2849        129,
2850        97,
2851        15,
2852        240,
2853        86,
2854        91,
2855        97,
2856        7,
2857        166,
2858        131,
2859        131,
2860        97,
2861        15,
2862        250,
2863        86,
2864        91,
2865        80,
2866        80,
2867        80,
2868        86,
2869        91,
2870        96,
2871        1,
2872        96,
2873        1,
2874        96,
2875        160,
2876        27,
2877        3,
2878        129,
2879        22,
2880        51,
2881        20,
2882        97,
2883        8,
2884        27,
2885        87,
2886        96,
2887        64,
2888        81,
2889        98,
2890        70,
2891        27,
2892        205,
2893        96,
2894        229,
2895        27,
2896        129,
2897        82,
2898        96,
2899        32,
2900        96,
2901        4,
2902        130,
2903        1,
2904        82,
2905        96,
2906        47,
2907        96,
2908        36,
2909        130,
2910        1,
2911        82,
2912        127,
2913        65,
2914        99,
2915        99,
2916        101,
2917        115,
2918        115,
2919        67,
2920        111,
2921        110,
2922        116,
2923        114,
2924        111,
2925        108,
2926        58,
2927        32,
2928        99,
2929        97,
2930        110,
2931        32,
2932        111,
2933        110,
2934        108,
2935        121,
2936        32,
2937        114,
2938        101,
2939        110,
2940        111,
2941        117,
2942        110,
2943        99,
2944        101,
2945        96,
2946        68,
2947        130,
2948        1,
2949        82,
2950        110,
2951        16,
2952        57,
2953        55,
2954        182,
2955        50,
2956        185,
2957        144,
2958        51,
2959        55,
2960        185,
2961        16,
2962        57,
2963        178,
2964        182,
2965        51,
2966        96,
2967        137,
2968        27,
2969        96,
2970        100,
2971        130,
2972        1,
2973        82,
2974        96,
2975        132,
2976        1,
2977        97,
2978        7,
2979        63,
2980        86,
2981        91,
2982        97,
2983        8,
2984        37,
2985        130,
2986        130,
2987        97,
2988        16,
2989        128,
2990        86,
2991        91,
2992        80,
2993        80,
2994        86,
2995        91,
2996        96,
2997        0,
2998        51,
2999        97,
3000        6,
3001        44,
3002        129,
3003        133,
3004        133,
3005        97,
3006        8,
3007        60,
3008        131,
3009        131,
3010        97,
3011        10,
3012        52,
3013        86,
3014        91,
3015        97,
3016        8,
3017        70,
3018        145,
3019        144,
3020        97,
3021        21,
3022        208,
3023        86,
3024        91,
3025        97,
3026        11,
3027        51,
3028        86,
3029        91,
3030        97,
3031        8,
3032        99,
3033        96,
3034        0,
3035        128,
3036        81,
3037        96,
3038        32,
3039        97,
3040        23,
3041        38,
3042        131,
3043        57,
3044        129,
3045        81,
3046        145,
3047        82,
3048        51,
3049        97,
3050        8,
3051        178,
3052        86,
3053        91,
3054        97,
3055        8,
3056        168,
3057        87,
3058        96,
3059        64,
3060        81,
3061        98,
3062        70,
3063        27,
3064        205,
3065        96,
3066        229,
3067        27,
3068        129,
3069        82,
3070        96,
3071        32,
3072        96,
3073        4,
3074        130,
3075        1,
3076        82,
3077        96,
3078        22,
3079        96,
3080        36,
3081        130,
3082        1,
3083        82,
3084        117,
3085        33,
3086        176,
3087        182,
3088        54,
3089        50,
3090        185,
3091        16,
3092        52,
3093        185,
3094        144,
3095        55,
3096        55,
3097        186,
3098        16,
3099        48,
3100        144,
3101        54,
3102        180,
3103        183,
3104        58,
3105        50,
3106        185,
3107        96,
3108        81,
3109        27,
3110        96,
3111        68,
3112        130,
3113        1,
3114        82,
3115        96,
3116        100,
3117        1,
3118        97,
3119        7,
3120        63,
3121        86,
3122        91,
3123        97,
3124        8,
3125        37,
3126        130,
3127        130,
3128        97,
3129        10,
3130        166,
3131        86,
3132        91,
3133        96,
3134        0,
3135        145,
3136        130,
3137        82,
3138        96,
3139        5,
3140        96,
3141        32,
3142        144,
3143        129,
3144        82,
3145        96,
3146        64,
3147        128,
3148        132,
3149        32,
3150        96,
3151        1,
3152        96,
3153        1,
3154        96,
3155        160,
3156        27,
3157        3,
3158        147,
3159        144,
3160        147,
3161        22,
3162        132,
3163        82,
3164        145,
3165        144,
3166        82,
3167        144,
3168        32,
3169        84,
3170        96,
3171        255,
3172        22,
3173        144,
3174        86,
3175        91,
3176        96,
3177        96,
3178        96,
3179        4,
3180        128,
3181        84,
3182        97,
3183        5,
3184        155,
3185        144,
3186        97,
3187        21,
3188        128,
3189        86,
3190        91,
3191        97,
3192        9,
3193        4,
3194        96,
3195        0,
3196        128,
3197        81,
3198        96,
3199        32,
3200        97,
3201        23,
3202        38,
3203        131,
3204        57,
3205        129,
3206        81,
3207        145,
3208        82,
3209        51,
3210        97,
3211        8,
3212        178,
3213        86,
3214        91,
3215        97,
3216        9,
3217        73,
3218        87,
3219        96,
3220        64,
3221        81,
3222        98,
3223        70,
3224        27,
3225        205,
3226        96,
3227        229,
3228        27,
3229        129,
3230        82,
3231        96,
3232        32,
3233        96,
3234        4,
3235        130,
3236        1,
3237        82,
3238        96,
3239        22,
3240        96,
3241        36,
3242        130,
3243        1,
3244        82,
3245        117,
3246        33,
3247        176,
3248        182,
3249        54,
3250        50,
3251        185,
3252        16,
3253        52,
3254        185,
3255        144,
3256        55,
3257        55,
3258        186,
3259        16,
3260        48,
3261        144,
3262        54,
3263        180,
3264        183,
3265        58,
3266        50,
3267        185,
3268        96,
3269        81,
3270        27,
3271        96,
3272        68,
3273        130,
3274        1,
3275        82,
3276        96,
3277        100,
3278        1,
3279        97,
3280        7,
3281        63,
3282        86,
3283        91,
3284        97,
3285        9,
3286        97,
3287        96,
3288        0,
3289        128,
3290        81,
3291        96,
3292        32,
3293        97,
3294        23,
3295        38,
3296        131,
3297        57,
3298        129,
3299        81,
3300        145,
3301        82,
3302        130,
3303        97,
3304        16,
3305        231,
3306        86,
3307        91,
3308        80,
3309        86,
3310        91,
3311        96,
3312        0,
3313        51,
3314        129,
3315        97,
3316        9,
3317        114,
3318        130,
3319        134,
3320        97,
3321        10,
3322        52,
3323        86,
3324        91,
3325        144,
3326        80,
3327        131,
3328        129,
3329        16,
3330        21,
3331        97,
3332        9,
3333        210,
3334        87,
3335        96,
3336        64,
3337        81,
3338        98,
3339        70,
3340        27,
3341        205,
3342        96,
3343        229,
3344        27,
3345        129,
3346        82,
3347        96,
3348        32,
3349        96,
3350        4,
3351        130,
3352        1,
3353        82,
3354        96,
3355        37,
3356        96,
3357        36,
3358        130,
3359        1,
3360        82,
3361        127,
3362        69,
3363        82,
3364        67,
3365        50,
3366        48,
3367        58,
3368        32,
3369        100,
3370        101,
3371        99,
3372        114,
3373        101,
3374        97,
3375        115,
3376        101,
3377        100,
3378        32,
3379        97,
3380        108,
3381        108,
3382        111,
3383        119,
3384        97,
3385        110,
3386        99,
3387        101,
3388        32,
3389        98,
3390        101,
3391        108,
3392        111,
3393        119,
3394        96,
3395        68,
3396        130,
3397        1,
3398        82,
3399        100,
3400        32,
3401        122,
3402        101,
3403        114,
3404        111,
3405        96,
3406        216,
3407        27,
3408        96,
3409        100,
3410        130,
3411        1,
3412        82,
3413        96,
3414        132,
3415        1,
3416        97,
3417        7,
3418        63,
3419        86,
3420        91,
3421        97,
3422        6,
3423        79,
3424        130,
3425        134,
3426        134,
3427        132,
3428        3,
3429        97,
3430        11,
3431        51,
3432        86,
3433        91,
3434        96,
3435        0,
3436        97,
3437        9,
3438        236,
3439        51,
3440        132,
3441        132,
3442        97,
3443        12,
3444        209,
3445        86,
3446        91,
3447        80,
3448        96,
3449        1,
3450        146,
3451        145,
3452        80,
3453        80,
3454        86,
3455        91,
3456        96,
3457        0,
3458        97,
3459        5,
3460        134,
3461        96,
3462        0,
3463        128,
3464        81,
3465        96,
3466        32,
3467        97,
3468        23,
3469        38,
3470        131,
3471        57,
3472        129,
3473        81,
3474        145,
3475        82,
3476        131,
3477        97,
3478        8,
3479        178,
3480        86,
3481        91,
3482        96,
3483        0,
3484        130,
3485        129,
3486        82,
3487        96,
3488        5,
3489        96,
3490        32,
3491        82,
3492        96,
3493        64,
3494        144,
3495        32,
3496        96,
3497        1,
3498        1,
3499        84,
3500        97,
3501        10,
3502        42,
3503        129,
3504        97,
3505        15,
3506        240,
3507        86,
3508        91,
3509        97,
3510        7,
3511        166,
3512        131,
3513        131,
3514        97,
3515        16,
3516        128,
3517        86,
3518        91,
3519        96,
3520        1,
3521        96,
3522        1,
3523        96,
3524        160,
3525        27,
3526        3,
3527        145,
3528        130,
3529        22,
3530        96,
3531        0,
3532        144,
3533        129,
3534        82,
3535        96,
3536        1,
3537        96,
3538        32,
3539        144,
3540        129,
3541        82,
3542        96,
3543        64,
3544        128,
3545        131,
3546        32,
3547        147,
3548        144,
3549        148,
3550        22,
3551        130,
3552        82,
3553        145,
3554        144,
3555        145,
3556        82,
3557        32,
3558        84,
3559        144,
3560        86,
3561        91,
3562        97,
3563        7,
3564        166,
3565        131,
3566        131,
3567        131,
3568        96,
3569        64,
3570        81,
3571        96,
3572        36,
3573        1,
3574        97,
3575        10,
3576        119,
3577        147,
3578        146,
3579        145,
3580        144,
3581        97,
3582        21,
3583        232,
3584        86,
3585        91,
3586        96,
3587        64,
3588        128,
3589        81,
3590        96,
3591        31,
3592        25,
3593        129,
3594        132,
3595        3,
3596        1,
3597        129,
3598        82,
3599        145,
3600        144,
3601        82,
3602        96,
3603        32,
3604        129,
3605        1,
3606        128,
3607        81,
3608        96,
3609        1,
3610        96,
3611        1,
3612        96,
3613        224,
3614        27,
3615        3,
3616        22,
3617        99,
3618        13,
3619        38,
3620        185,
3621        37,
3622        96,
3623        224,
3624        27,
3625        23,
3626        144,
3627        82,
3628        97,
3629        16,
3630        241,
3631        86,
3632        91,
3633        127,
3634        0,
3635        0,
3636        0,
3637        0,
3638        0,
3639        0,
3640        0,
3641        0,
3642        0,
3643        0,
3644        0,
3645        0,
3646        0,
3647        0,
3648        0,
3649        0,
3650        0,
3651        0,
3652        0,
3653        0,
3654        0,
3655        0,
3656        0,
3657        0,
3658        0,
3659        0,
3660        0,
3661        0,
3662        0,
3663        0,
3664        0,
3665        0,
3666        129,
3667        97,
3668        10,
3669        209,
3670        96,
3671        2,
3672        84,
3673        144,
3674        86,
3675        91,
3676        97,
3677        10,
3678        219,
3679        145,
3680        144,
3681        97,
3682        21,
3683        208,
3684        86,
3685        91,
3686        17,
3687        21,
3688        97,
3689        11,
3690        41,
3691        87,
3692        96,
3693        64,
3694        81,
3695        98,
3696        70,
3697        27,
3698        205,
3699        96,
3700        229,
3701        27,
3702        129,
3703        82,
3704        96,
3705        32,
3706        96,
3707        4,
3708        130,
3709        1,
3710        82,
3711        96,
3712        25,
3713        96,
3714        36,
3715        130,
3716        1,
3717        82,
3718        127,
3719        69,
3720        82,
3721        67,
3722        50,
3723        48,
3724        67,
3725        97,
3726        112,
3727        112,
3728        101,
3729        100,
3730        58,
3731        32,
3732        99,
3733        97,
3734        112,
3735        32,
3736        101,
3737        120,
3738        99,
3739        101,
3740        101,
3741        100,
3742        101,
3743        100,
3744        0,
3745        0,
3746        0,
3747        0,
3748        0,
3749        0,
3750        0,
3751        96,
3752        68,
3753        130,
3754        1,
3755        82,
3756        96,
3757        100,
3758        1,
3759        97,
3760        7,
3761        63,
3762        86,
3763        91,
3764        97,
3765        8,
3766        37,
3767        130,
3768        130,
3769        97,
3770        17,
3771        18,
3772        86,
3773        91,
3774        96,
3775        1,
3776        96,
3777        1,
3778        96,
3779        160,
3780        27,
3781        3,
3782        131,
3783        22,
3784        97,
3785        11,
3786        149,
3787        87,
3788        96,
3789        64,
3790        81,
3791        98,
3792        70,
3793        27,
3794        205,
3795        96,
3796        229,
3797        27,
3798        129,
3799        82,
3800        96,
3801        32,
3802        96,
3803        4,
3804        130,
3805        1,
3806        82,
3807        96,
3808        36,
3809        128,
3810        130,
3811        1,
3812        82,
3813        127,
3814        69,
3815        82,
3816        67,
3817        50,
3818        48,
3819        58,
3820        32,
3821        97,
3822        112,
3823        112,
3824        114,
3825        111,
3826        118,
3827        101,
3828        32,
3829        102,
3830        114,
3831        111,
3832        109,
3833        32,
3834        116,
3835        104,
3836        101,
3837        32,
3838        122,
3839        101,
3840        114,
3841        111,
3842        32,
3843        97,
3844        100,
3845        100,
3846        96,
3847        68,
3848        130,
3849        1,
3850        82,
3851        99,
3852        114,
3853        101,
3854        115,
3855        115,
3856        96,
3857        224,
3858        27,
3859        96,
3860        100,
3861        130,
3862        1,
3863        82,
3864        96,
3865        132,
3866        1,
3867        97,
3868        7,
3869        63,
3870        86,
3871        91,
3872        96,
3873        1,
3874        96,
3875        1,
3876        96,
3877        160,
3878        27,
3879        3,
3880        130,
3881        22,
3882        97,
3883        11,
3884        246,
3885        87,
3886        96,
3887        64,
3888        81,
3889        98,
3890        70,
3891        27,
3892        205,
3893        96,
3894        229,
3895        27,
3896        129,
3897        82,
3898        96,
3899        32,
3900        96,
3901        4,
3902        130,
3903        1,
3904        82,
3905        96,
3906        34,
3907        96,
3908        36,
3909        130,
3910        1,
3911        82,
3912        127,
3913        69,
3914        82,
3915        67,
3916        50,
3917        48,
3918        58,
3919        32,
3920        97,
3921        112,
3922        112,
3923        114,
3924        111,
3925        118,
3926        101,
3927        32,
3928        116,
3929        111,
3930        32,
3931        116,
3932        104,
3933        101,
3934        32,
3935        122,
3936        101,
3937        114,
3938        111,
3939        32,
3940        97,
3941        100,
3942        100,
3943        114,
3944        101,
3945        96,
3946        68,
3947        130,
3948        1,
3949        82,
3950        97,
3951        115,
3952        115,
3953        96,
3954        240,
3955        27,
3956        96,
3957        100,
3958        130,
3959        1,
3960        82,
3961        96,
3962        132,
3963        1,
3964        97,
3965        7,
3966        63,
3967        86,
3968        91,
3969        96,
3970        1,
3971        96,
3972        1,
3973        96,
3974        160,
3975        27,
3976        3,
3977        131,
3978        129,
3979        22,
3980        96,
3981        0,
3982        129,
3983        129,
3984        82,
3985        96,
3986        1,
3987        96,
3988        32,
3989        144,
3990        129,
3991        82,
3992        96,
3993        64,
3994        128,
3995        131,
3996        32,
3997        148,
3998        135,
3999        22,
4000        128,
4001        132,
4002        82,
4003        148,
4004        130,
4005        82,
4006        145,
4007        130,
4008        144,
4009        32,
4010        133,
4011        144,
4012        85,
4013        144,
4014        81,
4015        132,
4016        129,
4017        82,
4018        127,
4019        140,
4020        91,
4021        225,
4022        229,
4023        235,
4024        236,
4025        125,
4026        91,
4027        209,
4028        79,
4029        113,
4030        66,
4031        125,
4032        30,
4033        132,
4034        243,
4035        221,
4036        3,
4037        20,
4038        192,
4039        247,
4040        178,
4041        41,
4042        30,
4043        91,
4044        32,
4045        10,
4046        200,
4047        199,
4048        195,
4049        185,
4050        37,
4051        145,
4052        1,
4053        96,
4054        64,
4055        81,
4056        128,
4057        145,
4058        3,
4059        144,
4060        163,
4061        80,
4062        80,
4063        80,
4064        86,
4065        91,
4066        96,
4067        0,
4068        97,
4069        12,
4070        99,
4071        132,
4072        132,
4073        97,
4074        10,
4075        52,
4076        86,
4077        91,
4078        144,
4079        80,
4080        96,
4081        0,
4082        25,
4083        129,
4084        20,
4085        97,
4086        12,
4087        203,
4088        87,
4089        129,
4090        129,
4091        16,
4092        21,
4093        97,
4094        12,
4095        190,
4096        87,
4097        96,
4098        64,
4099        81,
4100        98,
4101        70,
4102        27,
4103        205,
4104        96,
4105        229,
4106        27,
4107        129,
4108        82,
4109        96,
4110        32,
4111        96,
4112        4,
4113        130,
4114        1,
4115        82,
4116        96,
4117        29,
4118        96,
4119        36,
4120        130,
4121        1,
4122        82,
4123        127,
4124        69,
4125        82,
4126        67,
4127        50,
4128        48,
4129        58,
4130        32,
4131        105,
4132        110,
4133        115,
4134        117,
4135        102,
4136        102,
4137        105,
4138        99,
4139        105,
4140        101,
4141        110,
4142        116,
4143        32,
4144        97,
4145        108,
4146        108,
4147        111,
4148        119,
4149        97,
4150        110,
4151        99,
4152        101,
4153        0,
4154        0,
4155        0,
4156        96,
4157        68,
4158        130,
4159        1,
4160        82,
4161        96,
4162        100,
4163        1,
4164        97,
4165        7,
4166        63,
4167        86,
4168        91,
4169        97,
4170        12,
4171        203,
4172        132,
4173        132,
4174        132,
4175        132,
4176        3,
4177        97,
4178        11,
4179        51,
4180        86,
4181        91,
4182        80,
4183        80,
4184        80,
4185        80,
4186        86,
4187        91,
4188        96,
4189        1,
4190        96,
4191        1,
4192        96,
4193        160,
4194        27,
4195        3,
4196        131,
4197        22,
4198        97,
4199        13,
4200        53,
4201        87,
4202        96,
4203        64,
4204        81,
4205        98,
4206        70,
4207        27,
4208        205,
4209        96,
4210        229,
4211        27,
4212        129,
4213        82,
4214        96,
4215        32,
4216        96,
4217        4,
4218        130,
4219        1,
4220        82,
4221        96,
4222        37,
4223        96,
4224        36,
4225        130,
4226        1,
4227        82,
4228        127,
4229        69,
4230        82,
4231        67,
4232        50,
4233        48,
4234        58,
4235        32,
4236        116,
4237        114,
4238        97,
4239        110,
4240        115,
4241        102,
4242        101,
4243        114,
4244        32,
4245        102,
4246        114,
4247        111,
4248        109,
4249        32,
4250        116,
4251        104,
4252        101,
4253        32,
4254        122,
4255        101,
4256        114,
4257        111,
4258        32,
4259        97,
4260        100,
4261        96,
4262        68,
4263        130,
4264        1,
4265        82,
4266        100,
4267        100,
4268        114,
4269        101,
4270        115,
4271        115,
4272        96,
4273        216,
4274        27,
4275        96,
4276        100,
4277        130,
4278        1,
4279        82,
4280        96,
4281        132,
4282        1,
4283        97,
4284        7,
4285        63,
4286        86,
4287        91,
4288        96,
4289        1,
4290        96,
4291        1,
4292        96,
4293        160,
4294        27,
4295        3,
4296        130,
4297        22,
4298        97,
4299        13,
4300        151,
4301        87,
4302        96,
4303        64,
4304        81,
4305        98,
4306        70,
4307        27,
4308        205,
4309        96,
4310        229,
4311        27,
4312        129,
4313        82,
4314        96,
4315        32,
4316        96,
4317        4,
4318        130,
4319        1,
4320        82,
4321        96,
4322        35,
4323        96,
4324        36,
4325        130,
4326        1,
4327        82,
4328        127,
4329        69,
4330        82,
4331        67,
4332        50,
4333        48,
4334        58,
4335        32,
4336        116,
4337        114,
4338        97,
4339        110,
4340        115,
4341        102,
4342        101,
4343        114,
4344        32,
4345        116,
4346        111,
4347        32,
4348        116,
4349        104,
4350        101,
4351        32,
4352        122,
4353        101,
4354        114,
4355        111,
4356        32,
4357        97,
4358        100,
4359        100,
4360        114,
4361        96,
4362        68,
4363        130,
4364        1,
4365        82,
4366        98,
4367        101,
4368        115,
4369        115,
4370        96,
4371        232,
4372        27,
4373        96,
4374        100,
4375        130,
4376        1,
4377        82,
4378        96,
4379        132,
4380        1,
4381        97,
4382        7,
4383        63,
4384        86,
4385        91,
4386        96,
4387        1,
4388        96,
4389        1,
4390        96,
4391        160,
4392        27,
4393        3,
4394        131,
4395        22,
4396        96,
4397        0,
4398        144,
4399        129,
4400        82,
4401        96,
4402        32,
4403        129,
4404        144,
4405        82,
4406        96,
4407        64,
4408        144,
4409        32,
4410        84,
4411        129,
4412        129,
4413        16,
4414        21,
4415        97,
4416        14,
4417        15,
4418        87,
4419        96,
4420        64,
4421        81,
4422        98,
4423        70,
4424        27,
4425        205,
4426        96,
4427        229,
4428        27,
4429        129,
4430        82,
4431        96,
4432        32,
4433        96,
4434        4,
4435        130,
4436        1,
4437        82,
4438        96,
4439        38,
4440        96,
4441        36,
4442        130,
4443        1,
4444        82,
4445        127,
4446        69,
4447        82,
4448        67,
4449        50,
4450        48,
4451        58,
4452        32,
4453        116,
4454        114,
4455        97,
4456        110,
4457        115,
4458        102,
4459        101,
4460        114,
4461        32,
4462        97,
4463        109,
4464        111,
4465        117,
4466        110,
4467        116,
4468        32,
4469        101,
4470        120,
4471        99,
4472        101,
4473        101,
4474        100,
4475        115,
4476        32,
4477        98,
4478        96,
4479        68,
4480        130,
4481        1,
4482        82,
4483        101,
4484        97,
4485        108,
4486        97,
4487        110,
4488        99,
4489        101,
4490        96,
4491        208,
4492        27,
4493        96,
4494        100,
4495        130,
4496        1,
4497        82,
4498        96,
4499        132,
4500        1,
4501        97,
4502        7,
4503        63,
4504        86,
4505        91,
4506        96,
4507        1,
4508        96,
4509        1,
4510        96,
4511        160,
4512        27,
4513        3,
4514        132,
4515        129,
4516        22,
4517        96,
4518        0,
4519        129,
4520        129,
4521        82,
4522        96,
4523        32,
4524        129,
4525        129,
4526        82,
4527        96,
4528        64,
4529        128,
4530        131,
4531        32,
4532        135,
4533        135,
4534        3,
4535        144,
4536        85,
4537        147,
4538        135,
4539        22,
4540        128,
4541        131,
4542        82,
4543        145,
4544        132,
4545        144,
4546        32,
4547        128,
4548        84,
4549        135,
4550        1,
4551        144,
4552        85,
4553        146,
4554        81,
4555        133,
4556        129,
4557        82,
4558        144,
4559        146,
4560        127,
4561        221,
4562        242,
4563        82,
4564        173,
4565        27,
4566        226,
4567        200,
4568        155,
4569        105,
4570        194,
4571        176,
4572        104,
4573        252,
4574        55,
4575        141,
4576        170,
4577        149,
4578        43,
4579        167,
4580        241,
4581        99,
4582        196,
4583        161,
4584        22,
4585        40,
4586        245,
4587        90,
4588        77,
4589        245,
4590        35,
4591        179,
4592        239,
4593        145,
4594        1,
4595        96,
4596        64,
4597        81,
4598        128,
4599        145,
4600        3,
4601        144,
4602        163,
4603        97,
4604        12,
4605        203,
4606        86,
4607        91,
4608        97,
4609        12,
4610        203,
4611        132,
4612        132,
4613        132,
4614        132,
4615        96,
4616        64,
4617        81,
4618        96,
4619        36,
4620        1,
4621        97,
4622        14,
4623        143,
4624        148,
4625        147,
4626        146,
4627        145,
4628        144,
4629        97,
4630        22,
4631        22,
4632        86,
4633        91,
4634        96,
4635        64,
4636        128,
4637        81,
4638        96,
4639        31,
4640        25,
4641        129,
4642        132,
4643        3,
4644        1,
4645        129,
4646        82,
4647        145,
4648        144,
4649        82,
4650        96,
4651        32,
4652        129,
4653        1,
4654        128,
4655        81,
4656        96,
4657        1,
4658        96,
4659        1,
4660        96,
4661        224,
4662        27,
4663        3,
4664        22,
4665        99,
4666        124,
4667        122,
4668        141,
4669        143,
4670        96,
4671        225,
4672        27,
4673        23,
4674        144,
4675        82,
4676        97,
4677        16,
4678        241,
4679        86,
4680        91,
4681        96,
4682        1,
4683        96,
4684        1,
4685        96,
4686        160,
4687        27,
4688        3,
4689        130,
4690        22,
4691        97,
4692        15,
4693        30,
4694        87,
4695        96,
4696        64,
4697        81,
4698        98,
4699        70,
4700        27,
4701        205,
4702        96,
4703        229,
4704        27,
4705        129,
4706        82,
4707        96,
4708        32,
4709        96,
4710        4,
4711        130,
4712        1,
4713        82,
4714        96,
4715        33,
4716        96,
4717        36,
4718        130,
4719        1,
4720        82,
4721        127,
4722        69,
4723        82,
4724        67,
4725        50,
4726        48,
4727        58,
4728        32,
4729        98,
4730        117,
4731        114,
4732        110,
4733        32,
4734        102,
4735        114,
4736        111,
4737        109,
4738        32,
4739        116,
4740        104,
4741        101,
4742        32,
4743        122,
4744        101,
4745        114,
4746        111,
4747        32,
4748        97,
4749        100,
4750        100,
4751        114,
4752        101,
4753        115,
4754        96,
4755        68,
4756        130,
4757        1,
4758        82,
4759        96,
4760        115,
4761        96,
4762        248,
4763        27,
4764        96,
4765        100,
4766        130,
4767        1,
4768        82,
4769        96,
4770        132,
4771        1,
4772        97,
4773        7,
4774        63,
4775        86,
4776        91,
4777        96,
4778        1,
4779        96,
4780        1,
4781        96,
4782        160,
4783        27,
4784        3,
4785        130,
4786        22,
4787        96,
4788        0,
4789        144,
4790        129,
4791        82,
4792        96,
4793        32,
4794        129,
4795        144,
4796        82,
4797        96,
4798        64,
4799        144,
4800        32,
4801        84,
4802        129,
4803        129,
4804        16,
4805        21,
4806        97,
4807        15,
4808        146,
4809        87,
4810        96,
4811        64,
4812        81,
4813        98,
4814        70,
4815        27,
4816        205,
4817        96,
4818        229,
4819        27,
4820        129,
4821        82,
4822        96,
4823        32,
4824        96,
4825        4,
4826        130,
4827        1,
4828        82,
4829        96,
4830        34,
4831        96,
4832        36,
4833        130,
4834        1,
4835        82,
4836        127,
4837        69,
4838        82,
4839        67,
4840        50,
4841        48,
4842        58,
4843        32,
4844        98,
4845        117,
4846        114,
4847        110,
4848        32,
4849        97,
4850        109,
4851        111,
4852        117,
4853        110,
4854        116,
4855        32,
4856        101,
4857        120,
4858        99,
4859        101,
4860        101,
4861        100,
4862        115,
4863        32,
4864        98,
4865        97,
4866        108,
4867        97,
4868        110,
4869        96,
4870        68,
4871        130,
4872        1,
4873        82,
4874        97,
4875        99,
4876        101,
4877        96,
4878        240,
4879        27,
4880        96,
4881        100,
4882        130,
4883        1,
4884        82,
4885        96,
4886        132,
4887        1,
4888        97,
4889        7,
4890        63,
4891        86,
4892        91,
4893        96,
4894        1,
4895        96,
4896        1,
4897        96,
4898        160,
4899        27,
4900        3,
4901        131,
4902        22,
4903        96,
4904        0,
4905        129,
4906        129,
4907        82,
4908        96,
4909        32,
4910        129,
4911        129,
4912        82,
4913        96,
4914        64,
4915        128,
4916        131,
4917        32,
4918        134,
4919        134,
4920        3,
4921        144,
4922        85,
4923        96,
4924        2,
4925        128,
4926        84,
4927        135,
4928        144,
4929        3,
4930        144,
4931        85,
4932        81,
4933        133,
4934        129,
4935        82,
4936        145,
4937        146,
4938        145,
4939        127,
4940        221,
4941        242,
4942        82,
4943        173,
4944        27,
4945        226,
4946        200,
4947        155,
4948        105,
4949        194,
4950        176,
4951        104,
4952        252,
4953        55,
4954        141,
4955        170,
4956        149,
4957        43,
4958        167,
4959        241,
4960        99,
4961        196,
4962        161,
4963        22,
4964        40,
4965        245,
4966        90,
4967        77,
4968        245,
4969        35,
4970        179,
4971        239,
4972        145,
4973        1,
4974        96,
4975        64,
4976        81,
4977        128,
4978        145,
4979        3,
4980        144,
4981        163,
4982        80,
4983        80,
4984        80,
4985        86,
4986        91,
4987        97,
4988        9,
4989        97,
4990        129,
4991        51,
4992        97,
4993        17,
4994        209,
4995        86,
4996        91,
4997        97,
4998        16,
4999        4,
5000        130,
5001        130,
5002        97,
5003        8,
5004        178,
5005        86,
5006        91,
5007        97,
5008        8,
5009        37,
5010        87,
5011        96,
5012        0,
5013        130,
5014        129,
5015        82,
5016        96,
5017        5,
5018        96,
5019        32,
5020        144,
5021        129,
5022        82,
5023        96,
5024        64,
5025        128,
5026        131,
5027        32,
5028        96,
5029        1,
5030        96,
5031        1,
5032        96,
5033        160,
5034        27,
5035        3,
5036        133,
5037        22,
5038        132,
5039        82,
5040        144,
5041        145,
5042        82,
5043        144,
5044        32,
5045        128,
5046        84,
5047        96,
5048        255,
5049        25,
5050        22,
5051        96,
5052        1,
5053        23,
5054        144,
5055        85,
5056        97,
5057        16,
5058        60,
5059        51,
5060        144,
5061        86,
5062        91,
5063        96,
5064        1,
5065        96,
5066        1,
5067        96,
5068        160,
5069        27,
5070        3,
5071        22,
5072        129,
5073        96,
5074        1,
5075        96,
5076        1,
5077        96,
5078        160,
5079        27,
5080        3,
5081        22,
5082        131,
5083        127,
5084        47,
5085        135,
5086        136,
5087        17,
5088        126,
5089        126,
5090        255,
5091        29,
5092        130,
5093        233,
5094        38,
5095        236,
5096        121,
5097        73,
5098        1,
5099        209,
5100        124,
5101        120,
5102        2,
5103        74,
5104        80,
5105        39,
5106        9,
5107        64,
5108        48,
5109        69,
5110        64,
5111        167,
5112        51,
5113        101,
5114        111,
5115        13,
5116        96,
5117        64,
5118        81,
5119        96,
5120        64,
5121        81,
5122        128,
5123        145,
5124        3,
5125        144,
5126        164,
5127        80,
5128        80,
5129        86,
5130        91,
5131        97,
5132        16,
5133        138,
5134        130,
5135        130,
5136        97,
5137        8,
5138        178,
5139        86,
5140        91,
5141        21,
5142        97,
5143        8,
5144        37,
5145        87,
5146        96,
5147        0,
5148        130,
5149        129,
5150        82,
5151        96,
5152        5,
5153        96,
5154        32,
5155        144,
5156        129,
5157        82,
5158        96,
5159        64,
5160        128,
5161        131,
5162        32,
5163        96,
5164        1,
5165        96,
5166        1,
5167        96,
5168        160,
5169        27,
5170        3,
5171        133,
5172        22,
5173        128,
5174        133,
5175        82,
5176        146,
5177        82,
5178        128,
5179        131,
5180        32,
5181        128,
5182        84,
5183        96,
5184        255,
5185        25,
5186        22,
5187        144,
5188        85,
5189        81,
5190        51,
5191        146,
5192        133,
5193        145,
5194        127,
5195        246,
5196        57,
5197        31,
5198        92,
5199        50,
5200        217,
5201        198,
5202        157,
5203        42,
5204        71,
5205        234,
5206        103,
5207        11,
5208        68,
5209        41,
5210        116,
5211        181,
5212        57,
5213        53,
5214        209,
5215        237,
5216        199,
5217        253,
5218        100,
5219        235,
5220        33,
5221        224,
5222        71,
5223        168,
5224        57,
5225        23,
5226        27,
5227        145,
5228        144,
5229        164,
5230        80,
5231        80,
5232        86,
5233        91,
5234        97,
5235        8,
5236        37,
5237        130,
5238        130,
5239        97,
5240        15,
5241        250,
5242        86,
5243        91,
5244        128,
5245        81,
5246        106,
5247        99,
5248        111,
5249        110,
5250        115,
5251        111,
5252        108,
5253        101,
5254        46,
5255        108,
5256        111,
5257        103,
5258        96,
5259        32,
5260        131,
5261        1,
5262        96,
5263        0,
5264        128,
5265        132,
5266        131,
5267        133,
5268        90,
5269        250,
5270        80,
5271        80,
5272        80,
5273        80,
5274        80,
5275        86,
5276        91,
5277        96,
5278        1,
5279        96,
5280        1,
5281        96,
5282        160,
5283        27,
5284        3,
5285        130,
5286        22,
5287        97,
5288        17,
5289        104,
5290        87,
5291        96,
5292        64,
5293        81,
5294        98,
5295        70,
5296        27,
5297        205,
5298        96,
5299        229,
5300        27,
5301        129,
5302        82,
5303        96,
5304        32,
5305        96,
5306        4,
5307        130,
5308        1,
5309        82,
5310        96,
5311        31,
5312        96,
5313        36,
5314        130,
5315        1,
5316        82,
5317        127,
5318        69,
5319        82,
5320        67,
5321        50,
5322        48,
5323        58,
5324        32,
5325        109,
5326        105,
5327        110,
5328        116,
5329        32,
5330        116,
5331        111,
5332        32,
5333        116,
5334        104,
5335        101,
5336        32,
5337        122,
5338        101,
5339        114,
5340        111,
5341        32,
5342        97,
5343        100,
5344        100,
5345        114,
5346        101,
5347        115,
5348        115,
5349        0,
5350        96,
5351        68,
5352        130,
5353        1,
5354        82,
5355        96,
5356        100,
5357        1,
5358        97,
5359        7,
5360        63,
5361        86,
5362        91,
5363        128,
5364        96,
5365        2,
5366        96,
5367        0,
5368        130,
5369        130,
5370        84,
5371        97,
5372        17,
5373        122,
5374        145,
5375        144,
5376        97,
5377        21,
5378        208,
5379        86,
5380        91,
5381        144,
5382        145,
5383        85,
5384        80,
5385        80,
5386        96,
5387        1,
5388        96,
5389        1,
5390        96,
5391        160,
5392        27,
5393        3,
5394        130,
5395        22,
5396        96,
5397        0,
5398        129,
5399        129,
5400        82,
5401        96,
5402        32,
5403        129,
5404        129,
5405        82,
5406        96,
5407        64,
5408        128,
5409        131,
5410        32,
5411        128,
5412        84,
5413        134,
5414        1,
5415        144,
5416        85,
5417        81,
5418        132,
5419        129,
5420        82,
5421        127,
5422        221,
5423        242,
5424        82,
5425        173,
5426        27,
5427        226,
5428        200,
5429        155,
5430        105,
5431        194,
5432        176,
5433        104,
5434        252,
5435        55,
5436        141,
5437        170,
5438        149,
5439        43,
5440        167,
5441        241,
5442        99,
5443        196,
5444        161,
5445        22,
5446        40,
5447        245,
5448        90,
5449        77,
5450        245,
5451        35,
5452        179,
5453        239,
5454        145,
5455        1,
5456        96,
5457        64,
5458        81,
5459        128,
5460        145,
5461        3,
5462        144,
5463        163,
5464        80,
5465        80,
5466        86,
5467        91,
5468        97,
5469        17,
5470        219,
5471        130,
5472        130,
5473        97,
5474        8,
5475        178,
5476        86,
5477        91,
5478        97,
5479        8,
5480        37,
5481        87,
5482        97,
5483        17,
5484        232,
5485        129,
5486        97,
5487        18,
5488        42,
5489        86,
5490        91,
5491        97,
5492        17,
5493        243,
5494        131,
5495        96,
5496        32,
5497        97,
5498        18,
5499        60,
5500        86,
5501        91,
5502        96,
5503        64,
5504        81,
5505        96,
5506        32,
5507        1,
5508        97,
5509        18,
5510        4,
5511        146,
5512        145,
5513        144,
5514        97,
5515        22,
5516        78,
5517        86,
5518        91,
5519        96,
5520        64,
5521        128,
5522        81,
5523        96,
5524        31,
5525        25,
5526        129,
5527        132,
5528        3,
5529        1,
5530        129,
5531        82,
5532        144,
5533        130,
5534        144,
5535        82,
5536        98,
5537        70,
5538        27,
5539        205,
5540        96,
5541        229,
5542        27,
5543        130,
5544        82,
5545        97,
5546        7,
5547        63,
5548        145,
5549        96,
5550        4,
5551        1,
5552        97,
5553        20,
5554        97,
5555        86,
5556        91,
5557        96,
5558        96,
5559        97,
5560        5,
5561        134,
5562        96,
5563        1,
5564        96,
5565        1,
5566        96,
5567        160,
5568        27,
5569        3,
5570        131,
5571        22,
5572        96,
5573        20,
5574        91,
5575        96,
5576        96,
5577        96,
5578        0,
5579        97,
5580        18,
5581        75,
5582        131,
5583        96,
5584        2,
5585        97,
5586        22,
5587        195,
5588        86,
5589        91,
5590        97,
5591        18,
5592        86,
5593        144,
5594        96,
5595        2,
5596        97,
5597        21,
5598        208,
5599        86,
5600        91,
5601        103,
5602        255,
5603        255,
5604        255,
5605        255,
5606        255,
5607        255,
5608        255,
5609        255,
5610        129,
5611        17,
5612        21,
5613        97,
5614        18,
5615        110,
5616        87,
5617        97,
5618        18,
5619        110,
5620        97,
5621        22,
5622        226,
5623        86,
5624        91,
5625        96,
5626        64,
5627        81,
5628        144,
5629        128,
5630        130,
5631        82,
5632        128,
5633        96,
5634        31,
5635        1,
5636        96,
5637        31,
5638        25,
5639        22,
5640        96,
5641        32,
5642        1,
5643        130,
5644        1,
5645        96,
5646        64,
5647        82,
5648        128,
5649        21,
5650        97,
5651        18,
5652        152,
5653        87,
5654        96,
5655        32,
5656        130,
5657        1,
5658        129,
5659        128,
5660        54,
5661        131,
5662        55,
5663        1,
5664        144,
5665        80,
5666        91,
5667        80,
5668        144,
5669        80,
5670        96,
5671        3,
5672        96,
5673        252,
5674        27,
5675        129,
5676        96,
5677        0,
5678        129,
5679        81,
5680        129,
5681        16,
5682        97,
5683        18,
5684        179,
5685        87,
5686        97,
5687        18,
5688        179,
5689        97,
5690        22,
5691        248,
5692        86,
5693        91,
5694        96,
5695        32,
5696        1,
5697        1,
5698        144,
5699        96,
5700        1,
5701        96,
5702        1,
5703        96,
5704        248,
5705        27,
5706        3,
5707        25,
5708        22,
5709        144,
5710        129,
5711        96,
5712        0,
5713        26,
5714        144,
5715        83,
5716        80,
5717        96,
5718        15,
5719        96,
5720        251,
5721        27,
5722        129,
5723        96,
5724        1,
5725        129,
5726        81,
5727        129,
5728        16,
5729        97,
5730        18,
5731        226,
5732        87,
5733        97,
5734        18,
5735        226,
5736        97,
5737        22,
5738        248,
5739        86,
5740        91,
5741        96,
5742        32,
5743        1,
5744        1,
5745        144,
5746        96,
5747        1,
5748        96,
5749        1,
5750        96,
5751        248,
5752        27,
5753        3,
5754        25,
5755        22,
5756        144,
5757        129,
5758        96,
5759        0,
5760        26,
5761        144,
5762        83,
5763        80,
5764        96,
5765        0,
5766        97,
5767        19,
5768        6,
5769        132,
5770        96,
5771        2,
5772        97,
5773        22,
5774        195,
5775        86,
5776        91,
5777        97,
5778        19,
5779        17,
5780        144,
5781        96,
5782        1,
5783        97,
5784        21,
5785        208,
5786        86,
5787        91,
5788        144,
5789        80,
5790        91,
5791        96,
5792        1,
5793        129,
5794        17,
5795        21,
5796        97,
5797        19,
5798        137,
5799        87,
5800        111,
5801        24,
5802        24,
5803        153,
5804        25,
5805        154,
5806        26,
5807        155,
5808        27,
5809        156,
5810        28,
5811        176,
5812        177,
5813        49,
5814        178,
5815        50,
5816        179,
5817        96,
5818        129,
5819        27,
5820        133,
5821        96,
5822        15,
5823        22,
5824        96,
5825        16,
5826        129,
5827        16,
5828        97,
5829        19,
5830        69,
5831        87,
5832        97,
5833        19,
5834        69,
5835        97,
5836        22,
5837        248,
5838        86,
5839        91,
5840        26,
5841        96,
5842        248,
5843        27,
5844        130,
5845        130,
5846        129,
5847        81,
5848        129,
5849        16,
5850        97,
5851        19,
5852        91,
5853        87,
5854        97,
5855        19,
5856        91,
5857        97,
5858        22,
5859        248,
5860        86,
5861        91,
5862        96,
5863        32,
5864        1,
5865        1,
5866        144,
5867        96,
5868        1,
5869        96,
5870        1,
5871        96,
5872        248,
5873        27,
5874        3,
5875        25,
5876        22,
5877        144,
5878        129,
5879        96,
5880        0,
5881        26,
5882        144,
5883        83,
5884        80,
5885        96,
5886        4,
5887        148,
5888        144,
5889        148,
5890        28,
5891        147,
5892        97,
5893        19,
5894        130,
5895        129,
5896        97,
5897        23,
5898        14,
5899        86,
5900        91,
5901        144,
5902        80,
5903        97,
5904        19,
5905        20,
5906        86,
5907        91,
5908        80,
5909        131,
5910        21,
5911        97,
5912        19,
5913        216,
5914        87,
5915        96,
5916        64,
5917        81,
5918        98,
5919        70,
5920        27,
5921        205,
5922        96,
5923        229,
5924        27,
5925        129,
5926        82,
5927        96,
5928        32,
5929        96,
5930        4,
5931        130,
5932        1,
5933        129,
5934        144,
5935        82,
5936        96,
5937        36,
5938        130,
5939        1,
5940        82,
5941        127,
5942        83,
5943        116,
5944        114,
5945        105,
5946        110,
5947        103,
5948        115,
5949        58,
5950        32,
5951        104,
5952        101,
5953        120,
5954        32,
5955        108,
5956        101,
5957        110,
5958        103,
5959        116,
5960        104,
5961        32,
5962        105,
5963        110,
5964        115,
5965        117,
5966        102,
5967        102,
5968        105,
5969        99,
5970        105,
5971        101,
5972        110,
5973        116,
5974        96,
5975        68,
5976        130,
5977        1,
5978        82,
5979        96,
5980        100,
5981        1,
5982        97,
5983        7,
5984        63,
5985        86,
5986        91,
5987        147,
5988        146,
5989        80,
5990        80,
5991        80,
5992        86,
5993        91,
5994        96,
5995        0,
5996        96,
5997        32,
5998        130,
5999        132,
6000        3,
6001        18,
6002        21,
6003        97,
6004        19,
6005        241,
6006        87,
6007        96,
6008        0,
6009        128,
6010        253,
6011        91,
6012        129,
6013        53,
6014        96,
6015        1,
6016        96,
6017        1,
6018        96,
6019        224,
6020        27,
6021        3,
6022        25,
6023        129,
6024        22,
6025        129,
6026        20,
6027        97,
6028        19,
6029        216,
6030        87,
6031        96,
6032        0,
6033        128,
6034        253,
6035        91,
6036        96,
6037        0,
6038        91,
6039        131,
6040        129,
6041        16,
6042        21,
6043        97,
6044        20,
6045        36,
6046        87,
6047        129,
6048        129,
6049        1,
6050        81,
6051        131,
6052        130,
6053        1,
6054        82,
6055        96,
6056        32,
6057        1,
6058        97,
6059        20,
6060        12,
6061        86,
6062        91,
6063        131,
6064        129,
6065        17,
6066        21,
6067        97,
6068        12,
6069        203,
6070        87,
6071        80,
6072        80,
6073        96,
6074        0,
6075        145,
6076        1,
6077        82,
6078        86,
6079        91,
6080        96,
6081        0,
6082        129,
6083        81,
6084        128,
6085        132,
6086        82,
6087        97,
6088        20,
6089        77,
6090        129,
6091        96,
6092        32,
6093        134,
6094        1,
6095        96,
6096        32,
6097        134,
6098        1,
6099        97,
6100        20,
6101        9,
6102        86,
6103        91,
6104        96,
6105        31,
6106        1,
6107        96,
6108        31,
6109        25,
6110        22,
6111        146,
6112        144,
6113        146,
6114        1,
6115        96,
6116        32,
6117        1,
6118        146,
6119        145,
6120        80,
6121        80,
6122        86,
6123        91,
6124        96,
6125        32,
6126        129,
6127        82,
6128        96,
6129        0,
6130        97,
6131        19,
6132        216,
6133        96,
6134        32,
6135        131,
6136        1,
6137        132,
6138        97,
6139        20,
6140        53,
6141        86,
6142        91,
6143        128,
6144        53,
6145        96,
6146        1,
6147        96,
6148        1,
6149        96,
6150        160,
6151        27,
6152        3,
6153        129,
6154        22,
6155        129,
6156        20,
6157        97,
6158        20,
6159        139,
6160        87,
6161        96,
6162        0,
6163        128,
6164        253,
6165        91,
6166        145,
6167        144,
6168        80,
6169        86,
6170        91,
6171        96,
6172        0,
6173        128,
6174        96,
6175        64,
6176        131,
6177        133,
6178        3,
6179        18,
6180        21,
6181        97,
6182        20,
6183        163,
6184        87,
6185        96,
6186        0,
6187        128,
6188        253,
6189        91,
6190        97,
6191        20,
6192        172,
6193        131,
6194        97,
6195        20,
6196        116,
6197        86,
6198        91,
6199        148,
6200        96,
6201        32,
6202        147,
6203        144,
6204        147,
6205        1,
6206        53,
6207        147,
6208        80,
6209        80,
6210        80,
6211        86,
6212        91,
6213        96,
6214        0,
6215        128,
6216        96,
6217        0,
6218        96,
6219        96,
6220        132,
6221        134,
6222        3,
6223        18,
6224        21,
6225        97,
6226        20,
6227        207,
6228        87,
6229        96,
6230        0,
6231        128,
6232        253,
6233        91,
6234        97,
6235        20,
6236        216,
6237        132,
6238        97,
6239        20,
6240        116,
6241        86,
6242        91,
6243        146,
6244        80,
6245        97,
6246        20,
6247        230,
6248        96,
6249        32,
6250        133,
6251        1,
6252        97,
6253        20,
6254        116,
6255        86,
6256        91,
6257        145,
6258        80,
6259        96,
6260        64,
6261        132,
6262        1,
6263        53,
6264        144,
6265        80,
6266        146,
6267        80,
6268        146,
6269        80,
6270        146,
6271        86,
6272        91,
6273        96,
6274        0,
6275        96,
6276        32,
6277        130,
6278        132,
6279        3,
6280        18,
6281        21,
6282        97,
6283        21,
6284        8,
6285        87,
6286        96,
6287        0,
6288        128,
6289        253,
6290        91,
6291        80,
6292        53,
6293        145,
6294        144,
6295        80,
6296        86,
6297        91,
6298        96,
6299        0,
6300        128,
6301        96,
6302        64,
6303        131,
6304        133,
6305        3,
6306        18,
6307        21,
6308        97,
6309        21,
6310        34,
6311        87,
6312        96,
6313        0,
6314        128,
6315        253,
6316        91,
6317        130,
6318        53,
6319        145,
6320        80,
6321        97,
6322        21,
6323        50,
6324        96,
6325        32,
6326        132,
6327        1,
6328        97,
6329        20,
6330        116,
6331        86,
6332        91,
6333        144,
6334        80,
6335        146,
6336        80,
6337        146,
6338        144,
6339        80,
6340        86,
6341        91,
6342        96,
6343        0,
6344        96,
6345        32,
6346        130,
6347        132,
6348        3,
6349        18,
6350        21,
6351        97,
6352        21,
6353        77,
6354        87,
6355        96,
6356        0,
6357        128,
6358        253,
6359        91,
6360        97,
6361        19,
6362        216,
6363        130,
6364        97,
6365        20,
6366        116,
6367        86,
6368        91,
6369        96,
6370        0,
6371        128,
6372        96,
6373        64,
6374        131,
6375        133,
6376        3,
6377        18,
6378        21,
6379        97,
6380        21,
6381        105,
6382        87,
6383        96,
6384        0,
6385        128,
6386        253,
6387        91,
6388        97,
6389        21,
6390        114,
6391        131,
6392        97,
6393        20,
6394        116,
6395        86,
6396        91,
6397        145,
6398        80,
6399        97,
6400        21,
6401        50,
6402        96,
6403        32,
6404        132,
6405        1,
6406        97,
6407        20,
6408        116,
6409        86,
6410        91,
6411        96,
6412        1,
6413        129,
6414        129,
6415        28,
6416        144,
6417        130,
6418        22,
6419        128,
6420        97,
6421        21,
6422        148,
6423        87,
6424        96,
6425        127,
6426        130,
6427        22,
6428        145,
6429        80,
6430        91,
6431        96,
6432        32,
6433        130,
6434        16,
6435        129,
6436        3,
6437        97,
6438        21,
6439        180,
6440        87,
6441        99,
6442        78,
6443        72,
6444        123,
6445        113,
6446        96,
6447        224,
6448        27,
6449        96,
6450        0,
6451        82,
6452        96,
6453        34,
6454        96,
6455        4,
6456        82,
6457        96,
6458        36,
6459        96,
6460        0,
6461        253,
6462        91,
6463        80,
6464        145,
6465        144,
6466        80,
6467        86,
6468        91,
6469        99,
6470        78,
6471        72,
6472        123,
6473        113,
6474        96,
6475        224,
6476        27,
6477        96,
6478        0,
6479        82,
6480        96,
6481        17,
6482        96,
6483        4,
6484        82,
6485        96,
6486        36,
6487        96,
6488        0,
6489        253,
6490        91,
6491        96,
6492        0,
6493        130,
6494        25,
6495        130,
6496        17,
6497        21,
6498        97,
6499        21,
6500        227,
6501        87,
6502        97,
6503        21,
6504        227,
6505        97,
6506        21,
6507        186,
6508        86,
6509        91,
6510        80,
6511        1,
6512        144,
6513        86,
6514        91,
6515        96,
6516        96,
6517        129,
6518        82,
6519        96,
6520        0,
6521        97,
6522        21,
6523        251,
6524        96,
6525        96,
6526        131,
6527        1,
6528        134,
6529        97,
6530        20,
6531        53,
6532        86,
6533        91,
6534        96,
6535        1,
6536        96,
6537        1,
6538        96,
6539        160,
6540        27,
6541        3,
6542        148,
6543        144,
6544        148,
6545        22,
6546        96,
6547        32,
6548        131,
6549        1,
6550        82,
6551        80,
6552        96,
6553        64,
6554        1,
6555        82,
6556        145,
6557        144,
6558        80,
6559        86,
6560        91,
6561        96,
6562        128,
6563        129,
6564        82,
6565        96,
6566        0,
6567        97,
6568        22,
6569        41,
6570        96,
6571        128,
6572        131,
6573        1,
6574        135,
6575        97,
6576        20,
6577        53,
6578        86,
6579        91,
6580        96,
6581        1,
6582        96,
6583        1,
6584        96,
6585        160,
6586        27,
6587        3,
6588        149,
6589        144,
6590        149,
6591        22,
6592        96,
6593        32,
6594        131,
6595        1,
6596        82,
6597        80,
6598        96,
6599        64,
6600        129,
6601        1,
6602        146,
6603        144,
6604        146,
6605        82,
6606        96,
6607        96,
6608        144,
6609        145,
6610        1,
6611        82,
6612        145,
6613        144,
6614        80,
6615        86,
6616        91,
6617        127,
6618        65,
6619        99,
6620        99,
6621        101,
6622        115,
6623        115,
6624        67,
6625        111,
6626        110,
6627        116,
6628        114,
6629        111,
6630        108,
6631        58,
6632        32,
6633        97,
6634        99,
6635        99,
6636        111,
6637        117,
6638        110,
6639        116,
6640        32,
6641        0,
6642        0,
6643        0,
6644        0,
6645        0,
6646        0,
6647        0,
6648        0,
6649        0,
6650        129,
6651        82,
6652        96,
6653        0,
6654        131,
6655        81,
6656        97,
6657        22,
6658        134,
6659        129,
6660        96,
6661        23,
6662        133,
6663        1,
6664        96,
6665        32,
6666        136,
6667        1,
6668        97,
6669        20,
6670        9,
6671        86,
6672        91,
6673        112,
6674        1,
6675        3,
6676        75,
6677        153,
6678        3,
6679        107,
6680        75,
6681        155,
6682        155,
6683        75,
6684        115,
6685        57,
6686        3,
6687        147,
6688        123,
6689        99,
6690        41,
6691        96,
6692        125,
6693        27,
6694        96,
6695        23,
6696        145,
6697        132,
6698        1,
6699        145,
6700        130,
6701        1,
6702        82,
6703        131,
6704        81,
6705        97,
6706        22,
6707        183,
6708        129,
6709        96,
6710        40,
6711        132,
6712        1,
6713        96,
6714        32,
6715        136,
6716        1,
6717        97,
6718        20,
6719        9,
6720        86,
6721        91,
6722        1,
6723        96,
6724        40,
6725        1,
6726        148,
6727        147,
6728        80,
6729        80,
6730        80,
6731        80,
6732        86,
6733        91,
6734        96,
6735        0,
6736        129,
6737        96,
6738        0,
6739        25,
6740        4,
6741        131,
6742        17,
6743        130,
6744        21,
6745        21,
6746        22,
6747        21,
6748        97,
6749        22,
6750        221,
6751        87,
6752        97,
6753        22,
6754        221,
6755        97,
6756        21,
6757        186,
6758        86,
6759        91,
6760        80,
6761        2,
6762        144,
6763        86,
6764        91,
6765        99,
6766        78,
6767        72,
6768        123,
6769        113,
6770        96,
6771        224,
6772        27,
6773        96,
6774        0,
6775        82,
6776        96,
6777        65,
6778        96,
6779        4,
6780        82,
6781        96,
6782        36,
6783        96,
6784        0,
6785        253,
6786        91,
6787        99,
6788        78,
6789        72,
6790        123,
6791        113,
6792        96,
6793        224,
6794        27,
6795        96,
6796        0,
6797        82,
6798        96,
6799        50,
6800        96,
6801        4,
6802        82,
6803        96,
6804        36,
6805        96,
6806        0,
6807        253,
6808        91,
6809        96,
6810        0,
6811        129,
6812        97,
6813        23,
6814        29,
6815        87,
6816        97,
6817        23,
6818        29,
6819        97,
6820        21,
6821        186,
6822        86,
6823        91,
6824        80,
6825        96,
6826        0,
6827        25,
6828        1,
6829        144,
6830        86,
6831        254,
6832        159,
6833        45,
6834        240,
6835        254,
6836        210,
6837        199,
6838        118,
6839        72,
6840        222,
6841        88,
6842        96,
6843        164,
6844        204,
6845        80,
6846        140,
6847        208,
6848        129,
6849        140,
6850        133,
6851        184,
6852        184,
6853        161,
6854        171,
6855        76,
6856        238,
6857        239,
6858        141,
6859        152,
6860        28,
6861        137,
6862        86,
6863        166,
6864        162,
6865        100,
6866        105,
6867        112,
6868        102,
6869        115,
6870        88,
6871        34,
6872        18,
6873        32,
6874        230,
6875        22,
6876        116,
6877        227,
6878        159,
6879        225,
6880        141,
6881        166,
6882        238,
6883        209,
6884        136,
6885        176,
6886        118,
6887        204,
6888        218,
6889        167,
6890        189,
6891        21,
6892        121,
6893        112,
6894        116,
6895        93,
6896        216,
6897        140,
6898        181,
6899        30,
6900        210,
6901        63,
6902        146,
6903        183,
6904        136,
6905        6,
6906        100,
6907        115,
6908        111,
6909        108,
6910        99,
6911        67,
6912        0,
6913        8,
6914        15,
6915        0,
6916        51,
6917    ];
6918    ///The bytecode of the contract.
6919    lazy_static::lazy_static! {
6920            pub static ref WETH_BYTECODE: ::ethers::core::types::Bytes = ::ethers::core::types::Bytes::from(__BYTECODE.to_vec());
6921    }
6922    pub struct WETH<M>(::ethers::contract::Contract<M>);
6923    impl<M> Clone for WETH<M> {
6924        fn clone(&self) -> Self {
6925            WETH(self.0.clone())
6926        }
6927    }
6928    impl<M> std::ops::Deref for WETH<M> {
6929        type Target = ::ethers::contract::Contract<M>;
6930        fn deref(&self) -> &Self::Target {
6931            &self.0
6932        }
6933    }
6934    impl<M> std::fmt::Debug for WETH<M> {
6935        fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
6936            f.debug_tuple(stringify!(WETH))
6937                .field(&self.address())
6938                .finish()
6939        }
6940    }
6941    impl<M: ::ethers::providers::Middleware> WETH<M> {
6942        /// Creates a new contract instance with the specified `ethers`
6943        /// client at the given `Address`. The contract derefs to a `ethers::Contract`
6944        /// object
6945        pub fn new<T: Into<::ethers::core::types::Address>>(
6946            address: T,
6947            client: ::std::sync::Arc<M>,
6948        ) -> Self {
6949            Self(::ethers::contract::Contract::new(
6950                address.into(),
6951                WETH_ABI.clone(),
6952                client,
6953            ))
6954        }
6955        /// Constructs the general purpose `Deployer` instance based on the provided constructor arguments and sends it.
6956        /// Returns a new instance of a deployer that returns an instance of this contract after sending the transaction
6957        ///
6958        /// Notes:
6959        /// 1. If there are no constructor arguments, you should pass `()` as the argument.
6960        /// 1. The default poll duration is 7 seconds.
6961        /// 1. The default number of confirmations is 1 block.
6962        ///
6963        ///
6964        /// # Example
6965        ///
6966        /// Generate contract bindings with `abigen!` and deploy a new contract instance.
6967        ///
6968        /// *Note*: this requires a `bytecode` and `abi` object in the `greeter.json` artifact.
6969        ///
6970        /// ```ignore
6971        /// # async fn deploy<M: ethers::providers::Middleware>(client: ::std::sync::Arc<M>) {
6972        ///     abigen!(Greeter,"../greeter.json");
6973        ///
6974        ///    let greeter_contract = Greeter::deploy(client, "Hello world!".to_string()).unwrap().send().await.unwrap();
6975        ///    let msg = greeter_contract.greet().call().await.unwrap();
6976        /// # }
6977        /// ```
6978        pub fn deploy<T: ::ethers::core::abi::Tokenize>(
6979            client: ::std::sync::Arc<M>,
6980            constructor_args: T,
6981        ) -> ::std::result::Result<
6982            ::ethers::contract::builders::ContractDeployer<M, Self>,
6983            ::ethers::contract::ContractError<M>,
6984        > {
6985            let factory = ::ethers::contract::ContractFactory::new(
6986                WETH_ABI.clone(),
6987                WETH_BYTECODE.clone().into(),
6988                client,
6989            );
6990            let deployer = factory.deploy(constructor_args)?;
6991            let deployer = ::ethers::contract::ContractDeployer::new(deployer);
6992            Ok(deployer)
6993        }
6994        ///Calls the contract's `DEFAULT_ADMIN_ROLE` (0xa217fddf) function
6995        pub fn default_admin_role(
6996            &self,
6997        ) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
6998            self.0
6999                .method_hash([162, 23, 253, 223], ())
7000                .expect("method not found (this should never happen)")
7001        }
7002        ///Calls the contract's `MINTER_ROLE` (0xd5391393) function
7003        pub fn minter_role(&self) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
7004            self.0
7005                .method_hash([213, 57, 19, 147], ())
7006                .expect("method not found (this should never happen)")
7007        }
7008        ///Calls the contract's `addMinter` (0x983b2d56) function
7009        pub fn add_minter(
7010            &self,
7011            new_minter: ::ethers::core::types::Address,
7012        ) -> ::ethers::contract::builders::ContractCall<M, ()> {
7013            self.0
7014                .method_hash([152, 59, 45, 86], new_minter)
7015                .expect("method not found (this should never happen)")
7016        }
7017        ///Calls the contract's `allowance` (0xdd62ed3e) function
7018        pub fn allowance(
7019            &self,
7020            owner: ::ethers::core::types::Address,
7021            spender: ::ethers::core::types::Address,
7022        ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
7023            self.0
7024                .method_hash([221, 98, 237, 62], (owner, spender))
7025                .expect("method not found (this should never happen)")
7026        }
7027        ///Calls the contract's `approve` (0x095ea7b3) function
7028        pub fn approve(
7029            &self,
7030            spender: ::ethers::core::types::Address,
7031            amount: ::ethers::core::types::U256,
7032        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7033            self.0
7034                .method_hash([9, 94, 167, 179], (spender, amount))
7035                .expect("method not found (this should never happen)")
7036        }
7037        ///Calls the contract's `balanceOf` (0x70a08231) function
7038        pub fn balance_of(
7039            &self,
7040            account: ::ethers::core::types::Address,
7041        ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
7042            self.0
7043                .method_hash([112, 160, 130, 49], account)
7044                .expect("method not found (this should never happen)")
7045        }
7046        ///Calls the contract's `cap` (0x355274ea) function
7047        pub fn cap(
7048            &self,
7049        ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
7050            self.0
7051                .method_hash([53, 82, 116, 234], ())
7052                .expect("method not found (this should never happen)")
7053        }
7054        ///Calls the contract's `decimals` (0x313ce567) function
7055        pub fn decimals(&self) -> ::ethers::contract::builders::ContractCall<M, u8> {
7056            self.0
7057                .method_hash([49, 60, 229, 103], ())
7058                .expect("method not found (this should never happen)")
7059        }
7060        ///Calls the contract's `decreaseAllowance` (0xa457c2d7) function
7061        pub fn decrease_allowance(
7062            &self,
7063            spender: ::ethers::core::types::Address,
7064            subtracted_value: ::ethers::core::types::U256,
7065        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7066            self.0
7067                .method_hash([164, 87, 194, 215], (spender, subtracted_value))
7068                .expect("method not found (this should never happen)")
7069        }
7070        ///Calls the contract's `deposit` (0xd0e30db0) function
7071        pub fn deposit(&self) -> ::ethers::contract::builders::ContractCall<M, ()> {
7072            self.0
7073                .method_hash([208, 227, 13, 176], ())
7074                .expect("method not found (this should never happen)")
7075        }
7076        ///Calls the contract's `getRoleAdmin` (0x248a9ca3) function
7077        pub fn get_role_admin(
7078            &self,
7079            role: [u8; 32],
7080        ) -> ::ethers::contract::builders::ContractCall<M, [u8; 32]> {
7081            self.0
7082                .method_hash([36, 138, 156, 163], role)
7083                .expect("method not found (this should never happen)")
7084        }
7085        ///Calls the contract's `grantRole` (0x2f2ff15d) function
7086        pub fn grant_role(
7087            &self,
7088            role: [u8; 32],
7089            account: ::ethers::core::types::Address,
7090        ) -> ::ethers::contract::builders::ContractCall<M, ()> {
7091            self.0
7092                .method_hash([47, 47, 241, 93], (role, account))
7093                .expect("method not found (this should never happen)")
7094        }
7095        ///Calls the contract's `hasRole` (0x91d14854) function
7096        pub fn has_role(
7097            &self,
7098            role: [u8; 32],
7099            account: ::ethers::core::types::Address,
7100        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7101            self.0
7102                .method_hash([145, 209, 72, 84], (role, account))
7103                .expect("method not found (this should never happen)")
7104        }
7105        ///Calls the contract's `increaseAllowance` (0x39509351) function
7106        pub fn increase_allowance(
7107            &self,
7108            spender: ::ethers::core::types::Address,
7109            added_value: ::ethers::core::types::U256,
7110        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7111            self.0
7112                .method_hash([57, 80, 147, 81], (spender, added_value))
7113                .expect("method not found (this should never happen)")
7114        }
7115        ///Calls the contract's `isMinter` (0xaa271e1a) function
7116        pub fn is_minter(
7117            &self,
7118            user: ::ethers::core::types::Address,
7119        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7120            self.0
7121                .method_hash([170, 39, 30, 26], user)
7122                .expect("method not found (this should never happen)")
7123        }
7124        ///Calls the contract's `mint` (0x40c10f19) function
7125        pub fn mint(
7126            &self,
7127            to: ::ethers::core::types::Address,
7128            amount: ::ethers::core::types::U256,
7129        ) -> ::ethers::contract::builders::ContractCall<M, ()> {
7130            self.0
7131                .method_hash([64, 193, 15, 25], (to, amount))
7132                .expect("method not found (this should never happen)")
7133        }
7134        ///Calls the contract's `name` (0x06fdde03) function
7135        pub fn name(&self) -> ::ethers::contract::builders::ContractCall<M, String> {
7136            self.0
7137                .method_hash([6, 253, 222, 3], ())
7138                .expect("method not found (this should never happen)")
7139        }
7140        ///Calls the contract's `renounceRole` (0x36568abe) function
7141        pub fn renounce_role(
7142            &self,
7143            role: [u8; 32],
7144            account: ::ethers::core::types::Address,
7145        ) -> ::ethers::contract::builders::ContractCall<M, ()> {
7146            self.0
7147                .method_hash([54, 86, 138, 190], (role, account))
7148                .expect("method not found (this should never happen)")
7149        }
7150        ///Calls the contract's `revokeRole` (0xd547741f) function
7151        pub fn revoke_role(
7152            &self,
7153            role: [u8; 32],
7154            account: ::ethers::core::types::Address,
7155        ) -> ::ethers::contract::builders::ContractCall<M, ()> {
7156            self.0
7157                .method_hash([213, 71, 116, 31], (role, account))
7158                .expect("method not found (this should never happen)")
7159        }
7160        ///Calls the contract's `supportsInterface` (0x01ffc9a7) function
7161        pub fn supports_interface(
7162            &self,
7163            interface_id: [u8; 4],
7164        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7165            self.0
7166                .method_hash([1, 255, 201, 167], interface_id)
7167                .expect("method not found (this should never happen)")
7168        }
7169        ///Calls the contract's `symbol` (0x95d89b41) function
7170        pub fn symbol(&self) -> ::ethers::contract::builders::ContractCall<M, String> {
7171            self.0
7172                .method_hash([149, 216, 155, 65], ())
7173                .expect("method not found (this should never happen)")
7174        }
7175        ///Calls the contract's `totalSupply` (0x18160ddd) function
7176        pub fn total_supply(
7177            &self,
7178        ) -> ::ethers::contract::builders::ContractCall<M, ::ethers::core::types::U256> {
7179            self.0
7180                .method_hash([24, 22, 13, 221], ())
7181                .expect("method not found (this should never happen)")
7182        }
7183        ///Calls the contract's `transfer` (0xa9059cbb) function
7184        pub fn transfer(
7185            &self,
7186            recipient: ::ethers::core::types::Address,
7187            amount: ::ethers::core::types::U256,
7188        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7189            self.0
7190                .method_hash([169, 5, 156, 187], (recipient, amount))
7191                .expect("method not found (this should never happen)")
7192        }
7193        ///Calls the contract's `transferFrom` (0x23b872dd) function
7194        pub fn transfer_from(
7195            &self,
7196            from: ::ethers::core::types::Address,
7197            to: ::ethers::core::types::Address,
7198            amount: ::ethers::core::types::U256,
7199        ) -> ::ethers::contract::builders::ContractCall<M, bool> {
7200            self.0
7201                .method_hash([35, 184, 114, 221], (from, to, amount))
7202                .expect("method not found (this should never happen)")
7203        }
7204        ///Calls the contract's `withdraw` (0x2e1a7d4d) function
7205        pub fn withdraw(
7206            &self,
7207            wad: ::ethers::core::types::U256,
7208        ) -> ::ethers::contract::builders::ContractCall<M, ()> {
7209            self.0
7210                .method_hash([46, 26, 125, 77], wad)
7211                .expect("method not found (this should never happen)")
7212        }
7213        ///Gets the contract's `Approval` event
7214        pub fn approval_filter(&self) -> ::ethers::contract::builders::Event<M, ApprovalFilter> {
7215            self.0.event()
7216        }
7217        ///Gets the contract's `Deposit` event
7218        pub fn deposit_filter(&self) -> ::ethers::contract::builders::Event<M, DepositFilter> {
7219            self.0.event()
7220        }
7221        ///Gets the contract's `RoleAdminChanged` event
7222        pub fn role_admin_changed_filter(
7223            &self,
7224        ) -> ::ethers::contract::builders::Event<M, RoleAdminChangedFilter> {
7225            self.0.event()
7226        }
7227        ///Gets the contract's `RoleGranted` event
7228        pub fn role_granted_filter(
7229            &self,
7230        ) -> ::ethers::contract::builders::Event<M, RoleGrantedFilter> {
7231            self.0.event()
7232        }
7233        ///Gets the contract's `RoleRevoked` event
7234        pub fn role_revoked_filter(
7235            &self,
7236        ) -> ::ethers::contract::builders::Event<M, RoleRevokedFilter> {
7237            self.0.event()
7238        }
7239        ///Gets the contract's `Transfer` event
7240        pub fn transfer_filter(&self) -> ::ethers::contract::builders::Event<M, TransferFilter> {
7241            self.0.event()
7242        }
7243        ///Gets the contract's `Withdrawal` event
7244        pub fn withdrawal_filter(
7245            &self,
7246        ) -> ::ethers::contract::builders::Event<M, WithdrawalFilter> {
7247            self.0.event()
7248        }
7249        /// Returns an [`Event`](#ethers_contract::builders::Event) builder for all events of this contract
7250        pub fn events(&self) -> ::ethers::contract::builders::Event<M, WETHEvents> {
7251            self.0.event_with_filter(Default::default())
7252        }
7253    }
7254    impl<M: ::ethers::providers::Middleware> From<::ethers::contract::Contract<M>> for WETH<M> {
7255        fn from(contract: ::ethers::contract::Contract<M>) -> Self {
7256            Self::new(contract.address(), contract.client())
7257        }
7258    }
7259    #[derive(
7260        Clone,
7261        Debug,
7262        Eq,
7263        PartialEq,
7264        ::ethers::contract::EthEvent,
7265        ::ethers::contract::EthDisplay,
7266        Default,
7267    )]
7268    #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")]
7269    pub struct ApprovalFilter {
7270        #[ethevent(indexed)]
7271        pub owner: ::ethers::core::types::Address,
7272        #[ethevent(indexed)]
7273        pub spender: ::ethers::core::types::Address,
7274        pub value: ::ethers::core::types::U256,
7275    }
7276    #[derive(
7277        Clone,
7278        Debug,
7279        Eq,
7280        PartialEq,
7281        ::ethers::contract::EthEvent,
7282        ::ethers::contract::EthDisplay,
7283        Default,
7284    )]
7285    #[ethevent(name = "Deposit", abi = "Deposit(address,uint256)")]
7286    pub struct DepositFilter {
7287        #[ethevent(indexed)]
7288        pub dst: ::ethers::core::types::Address,
7289        pub wad: ::ethers::core::types::U256,
7290    }
7291    #[derive(
7292        Clone,
7293        Debug,
7294        Eq,
7295        PartialEq,
7296        ::ethers::contract::EthEvent,
7297        ::ethers::contract::EthDisplay,
7298        Default,
7299    )]
7300    #[ethevent(
7301        name = "RoleAdminChanged",
7302        abi = "RoleAdminChanged(bytes32,bytes32,bytes32)"
7303    )]
7304    pub struct RoleAdminChangedFilter {
7305        #[ethevent(indexed)]
7306        pub role: [u8; 32],
7307        #[ethevent(indexed)]
7308        pub previous_admin_role: [u8; 32],
7309        #[ethevent(indexed)]
7310        pub new_admin_role: [u8; 32],
7311    }
7312    #[derive(
7313        Clone,
7314        Debug,
7315        Eq,
7316        PartialEq,
7317        ::ethers::contract::EthEvent,
7318        ::ethers::contract::EthDisplay,
7319        Default,
7320    )]
7321    #[ethevent(name = "RoleGranted", abi = "RoleGranted(bytes32,address,address)")]
7322    pub struct RoleGrantedFilter {
7323        #[ethevent(indexed)]
7324        pub role: [u8; 32],
7325        #[ethevent(indexed)]
7326        pub account: ::ethers::core::types::Address,
7327        #[ethevent(indexed)]
7328        pub sender: ::ethers::core::types::Address,
7329    }
7330    #[derive(
7331        Clone,
7332        Debug,
7333        Eq,
7334        PartialEq,
7335        ::ethers::contract::EthEvent,
7336        ::ethers::contract::EthDisplay,
7337        Default,
7338    )]
7339    #[ethevent(name = "RoleRevoked", abi = "RoleRevoked(bytes32,address,address)")]
7340    pub struct RoleRevokedFilter {
7341        #[ethevent(indexed)]
7342        pub role: [u8; 32],
7343        #[ethevent(indexed)]
7344        pub account: ::ethers::core::types::Address,
7345        #[ethevent(indexed)]
7346        pub sender: ::ethers::core::types::Address,
7347    }
7348    #[derive(
7349        Clone,
7350        Debug,
7351        Eq,
7352        PartialEq,
7353        ::ethers::contract::EthEvent,
7354        ::ethers::contract::EthDisplay,
7355        Default,
7356    )]
7357    #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")]
7358    pub struct TransferFilter {
7359        #[ethevent(indexed)]
7360        pub from: ::ethers::core::types::Address,
7361        #[ethevent(indexed)]
7362        pub to: ::ethers::core::types::Address,
7363        pub value: ::ethers::core::types::U256,
7364    }
7365    #[derive(
7366        Clone,
7367        Debug,
7368        Eq,
7369        PartialEq,
7370        ::ethers::contract::EthEvent,
7371        ::ethers::contract::EthDisplay,
7372        Default,
7373    )]
7374    #[ethevent(name = "Withdrawal", abi = "Withdrawal(address,uint256)")]
7375    pub struct WithdrawalFilter {
7376        #[ethevent(indexed)]
7377        pub src: ::ethers::core::types::Address,
7378        pub wad: ::ethers::core::types::U256,
7379    }
7380    #[derive(Debug, Clone, PartialEq, Eq, ::ethers::contract::EthAbiType)]
7381    pub enum WETHEvents {
7382        ApprovalFilter(ApprovalFilter),
7383        DepositFilter(DepositFilter),
7384        RoleAdminChangedFilter(RoleAdminChangedFilter),
7385        RoleGrantedFilter(RoleGrantedFilter),
7386        RoleRevokedFilter(RoleRevokedFilter),
7387        TransferFilter(TransferFilter),
7388        WithdrawalFilter(WithdrawalFilter),
7389    }
7390    impl ::ethers::contract::EthLogDecode for WETHEvents {
7391        fn decode_log(
7392            log: &::ethers::core::abi::RawLog,
7393        ) -> ::std::result::Result<Self, ::ethers::core::abi::Error>
7394        where
7395            Self: Sized,
7396        {
7397            if let Ok(decoded) = ApprovalFilter::decode_log(log) {
7398                return Ok(WETHEvents::ApprovalFilter(decoded));
7399            }
7400            if let Ok(decoded) = DepositFilter::decode_log(log) {
7401                return Ok(WETHEvents::DepositFilter(decoded));
7402            }
7403            if let Ok(decoded) = RoleAdminChangedFilter::decode_log(log) {
7404                return Ok(WETHEvents::RoleAdminChangedFilter(decoded));
7405            }
7406            if let Ok(decoded) = RoleGrantedFilter::decode_log(log) {
7407                return Ok(WETHEvents::RoleGrantedFilter(decoded));
7408            }
7409            if let Ok(decoded) = RoleRevokedFilter::decode_log(log) {
7410                return Ok(WETHEvents::RoleRevokedFilter(decoded));
7411            }
7412            if let Ok(decoded) = TransferFilter::decode_log(log) {
7413                return Ok(WETHEvents::TransferFilter(decoded));
7414            }
7415            if let Ok(decoded) = WithdrawalFilter::decode_log(log) {
7416                return Ok(WETHEvents::WithdrawalFilter(decoded));
7417            }
7418            Err(::ethers::core::abi::Error::InvalidData)
7419        }
7420    }
7421    impl ::std::fmt::Display for WETHEvents {
7422        fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7423            match self {
7424                WETHEvents::ApprovalFilter(element) => element.fmt(f),
7425                WETHEvents::DepositFilter(element) => element.fmt(f),
7426                WETHEvents::RoleAdminChangedFilter(element) => element.fmt(f),
7427                WETHEvents::RoleGrantedFilter(element) => element.fmt(f),
7428                WETHEvents::RoleRevokedFilter(element) => element.fmt(f),
7429                WETHEvents::TransferFilter(element) => element.fmt(f),
7430                WETHEvents::WithdrawalFilter(element) => element.fmt(f),
7431            }
7432        }
7433    }
7434    ///Container type for all input parameters for the `DEFAULT_ADMIN_ROLE` function with signature `DEFAULT_ADMIN_ROLE()` and selector `0xa217fddf`
7435    #[derive(
7436        Clone,
7437        Debug,
7438        Eq,
7439        PartialEq,
7440        ::ethers::contract::EthCall,
7441        ::ethers::contract::EthDisplay,
7442        Default,
7443    )]
7444    #[ethcall(name = "DEFAULT_ADMIN_ROLE", abi = "DEFAULT_ADMIN_ROLE()")]
7445    pub struct DefaultAdminRoleCall;
7446    ///Container type for all input parameters for the `MINTER_ROLE` function with signature `MINTER_ROLE()` and selector `0xd5391393`
7447    #[derive(
7448        Clone,
7449        Debug,
7450        Eq,
7451        PartialEq,
7452        ::ethers::contract::EthCall,
7453        ::ethers::contract::EthDisplay,
7454        Default,
7455    )]
7456    #[ethcall(name = "MINTER_ROLE", abi = "MINTER_ROLE()")]
7457    pub struct MinterRoleCall;
7458    ///Container type for all input parameters for the `addMinter` function with signature `addMinter(address)` and selector `0x983b2d56`
7459    #[derive(
7460        Clone,
7461        Debug,
7462        Eq,
7463        PartialEq,
7464        ::ethers::contract::EthCall,
7465        ::ethers::contract::EthDisplay,
7466        Default,
7467    )]
7468    #[ethcall(name = "addMinter", abi = "addMinter(address)")]
7469    pub struct AddMinterCall {
7470        pub new_minter: ::ethers::core::types::Address,
7471    }
7472    ///Container type for all input parameters for the `allowance` function with signature `allowance(address,address)` and selector `0xdd62ed3e`
7473    #[derive(
7474        Clone,
7475        Debug,
7476        Eq,
7477        PartialEq,
7478        ::ethers::contract::EthCall,
7479        ::ethers::contract::EthDisplay,
7480        Default,
7481    )]
7482    #[ethcall(name = "allowance", abi = "allowance(address,address)")]
7483    pub struct AllowanceCall {
7484        pub owner: ::ethers::core::types::Address,
7485        pub spender: ::ethers::core::types::Address,
7486    }
7487    ///Container type for all input parameters for the `approve` function with signature `approve(address,uint256)` and selector `0x095ea7b3`
7488    #[derive(
7489        Clone,
7490        Debug,
7491        Eq,
7492        PartialEq,
7493        ::ethers::contract::EthCall,
7494        ::ethers::contract::EthDisplay,
7495        Default,
7496    )]
7497    #[ethcall(name = "approve", abi = "approve(address,uint256)")]
7498    pub struct ApproveCall {
7499        pub spender: ::ethers::core::types::Address,
7500        pub amount: ::ethers::core::types::U256,
7501    }
7502    ///Container type for all input parameters for the `balanceOf` function with signature `balanceOf(address)` and selector `0x70a08231`
7503    #[derive(
7504        Clone,
7505        Debug,
7506        Eq,
7507        PartialEq,
7508        ::ethers::contract::EthCall,
7509        ::ethers::contract::EthDisplay,
7510        Default,
7511    )]
7512    #[ethcall(name = "balanceOf", abi = "balanceOf(address)")]
7513    pub struct BalanceOfCall {
7514        pub account: ::ethers::core::types::Address,
7515    }
7516    ///Container type for all input parameters for the `cap` function with signature `cap()` and selector `0x355274ea`
7517    #[derive(
7518        Clone,
7519        Debug,
7520        Eq,
7521        PartialEq,
7522        ::ethers::contract::EthCall,
7523        ::ethers::contract::EthDisplay,
7524        Default,
7525    )]
7526    #[ethcall(name = "cap", abi = "cap()")]
7527    pub struct CapCall;
7528    ///Container type for all input parameters for the `decimals` function with signature `decimals()` and selector `0x313ce567`
7529    #[derive(
7530        Clone,
7531        Debug,
7532        Eq,
7533        PartialEq,
7534        ::ethers::contract::EthCall,
7535        ::ethers::contract::EthDisplay,
7536        Default,
7537    )]
7538    #[ethcall(name = "decimals", abi = "decimals()")]
7539    pub struct DecimalsCall;
7540    ///Container type for all input parameters for the `decreaseAllowance` function with signature `decreaseAllowance(address,uint256)` and selector `0xa457c2d7`
7541    #[derive(
7542        Clone,
7543        Debug,
7544        Eq,
7545        PartialEq,
7546        ::ethers::contract::EthCall,
7547        ::ethers::contract::EthDisplay,
7548        Default,
7549    )]
7550    #[ethcall(name = "decreaseAllowance", abi = "decreaseAllowance(address,uint256)")]
7551    pub struct DecreaseAllowanceCall {
7552        pub spender: ::ethers::core::types::Address,
7553        pub subtracted_value: ::ethers::core::types::U256,
7554    }
7555    ///Container type for all input parameters for the `deposit` function with signature `deposit()` and selector `0xd0e30db0`
7556    #[derive(
7557        Clone,
7558        Debug,
7559        Eq,
7560        PartialEq,
7561        ::ethers::contract::EthCall,
7562        ::ethers::contract::EthDisplay,
7563        Default,
7564    )]
7565    #[ethcall(name = "deposit", abi = "deposit()")]
7566    pub struct DepositCall;
7567    ///Container type for all input parameters for the `getRoleAdmin` function with signature `getRoleAdmin(bytes32)` and selector `0x248a9ca3`
7568    #[derive(
7569        Clone,
7570        Debug,
7571        Eq,
7572        PartialEq,
7573        ::ethers::contract::EthCall,
7574        ::ethers::contract::EthDisplay,
7575        Default,
7576    )]
7577    #[ethcall(name = "getRoleAdmin", abi = "getRoleAdmin(bytes32)")]
7578    pub struct GetRoleAdminCall {
7579        pub role: [u8; 32],
7580    }
7581    ///Container type for all input parameters for the `grantRole` function with signature `grantRole(bytes32,address)` and selector `0x2f2ff15d`
7582    #[derive(
7583        Clone,
7584        Debug,
7585        Eq,
7586        PartialEq,
7587        ::ethers::contract::EthCall,
7588        ::ethers::contract::EthDisplay,
7589        Default,
7590    )]
7591    #[ethcall(name = "grantRole", abi = "grantRole(bytes32,address)")]
7592    pub struct GrantRoleCall {
7593        pub role: [u8; 32],
7594        pub account: ::ethers::core::types::Address,
7595    }
7596    ///Container type for all input parameters for the `hasRole` function with signature `hasRole(bytes32,address)` and selector `0x91d14854`
7597    #[derive(
7598        Clone,
7599        Debug,
7600        Eq,
7601        PartialEq,
7602        ::ethers::contract::EthCall,
7603        ::ethers::contract::EthDisplay,
7604        Default,
7605    )]
7606    #[ethcall(name = "hasRole", abi = "hasRole(bytes32,address)")]
7607    pub struct HasRoleCall {
7608        pub role: [u8; 32],
7609        pub account: ::ethers::core::types::Address,
7610    }
7611    ///Container type for all input parameters for the `increaseAllowance` function with signature `increaseAllowance(address,uint256)` and selector `0x39509351`
7612    #[derive(
7613        Clone,
7614        Debug,
7615        Eq,
7616        PartialEq,
7617        ::ethers::contract::EthCall,
7618        ::ethers::contract::EthDisplay,
7619        Default,
7620    )]
7621    #[ethcall(name = "increaseAllowance", abi = "increaseAllowance(address,uint256)")]
7622    pub struct IncreaseAllowanceCall {
7623        pub spender: ::ethers::core::types::Address,
7624        pub added_value: ::ethers::core::types::U256,
7625    }
7626    ///Container type for all input parameters for the `isMinter` function with signature `isMinter(address)` and selector `0xaa271e1a`
7627    #[derive(
7628        Clone,
7629        Debug,
7630        Eq,
7631        PartialEq,
7632        ::ethers::contract::EthCall,
7633        ::ethers::contract::EthDisplay,
7634        Default,
7635    )]
7636    #[ethcall(name = "isMinter", abi = "isMinter(address)")]
7637    pub struct IsMinterCall {
7638        pub user: ::ethers::core::types::Address,
7639    }
7640    ///Container type for all input parameters for the `mint` function with signature `mint(address,uint256)` and selector `0x40c10f19`
7641    #[derive(
7642        Clone,
7643        Debug,
7644        Eq,
7645        PartialEq,
7646        ::ethers::contract::EthCall,
7647        ::ethers::contract::EthDisplay,
7648        Default,
7649    )]
7650    #[ethcall(name = "mint", abi = "mint(address,uint256)")]
7651    pub struct MintCall {
7652        pub to: ::ethers::core::types::Address,
7653        pub amount: ::ethers::core::types::U256,
7654    }
7655    ///Container type for all input parameters for the `name` function with signature `name()` and selector `0x06fdde03`
7656    #[derive(
7657        Clone,
7658        Debug,
7659        Eq,
7660        PartialEq,
7661        ::ethers::contract::EthCall,
7662        ::ethers::contract::EthDisplay,
7663        Default,
7664    )]
7665    #[ethcall(name = "name", abi = "name()")]
7666    pub struct NameCall;
7667    ///Container type for all input parameters for the `renounceRole` function with signature `renounceRole(bytes32,address)` and selector `0x36568abe`
7668    #[derive(
7669        Clone,
7670        Debug,
7671        Eq,
7672        PartialEq,
7673        ::ethers::contract::EthCall,
7674        ::ethers::contract::EthDisplay,
7675        Default,
7676    )]
7677    #[ethcall(name = "renounceRole", abi = "renounceRole(bytes32,address)")]
7678    pub struct RenounceRoleCall {
7679        pub role: [u8; 32],
7680        pub account: ::ethers::core::types::Address,
7681    }
7682    ///Container type for all input parameters for the `revokeRole` function with signature `revokeRole(bytes32,address)` and selector `0xd547741f`
7683    #[derive(
7684        Clone,
7685        Debug,
7686        Eq,
7687        PartialEq,
7688        ::ethers::contract::EthCall,
7689        ::ethers::contract::EthDisplay,
7690        Default,
7691    )]
7692    #[ethcall(name = "revokeRole", abi = "revokeRole(bytes32,address)")]
7693    pub struct RevokeRoleCall {
7694        pub role: [u8; 32],
7695        pub account: ::ethers::core::types::Address,
7696    }
7697    ///Container type for all input parameters for the `supportsInterface` function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`
7698    #[derive(
7699        Clone,
7700        Debug,
7701        Eq,
7702        PartialEq,
7703        ::ethers::contract::EthCall,
7704        ::ethers::contract::EthDisplay,
7705        Default,
7706    )]
7707    #[ethcall(name = "supportsInterface", abi = "supportsInterface(bytes4)")]
7708    pub struct SupportsInterfaceCall {
7709        pub interface_id: [u8; 4],
7710    }
7711    ///Container type for all input parameters for the `symbol` function with signature `symbol()` and selector `0x95d89b41`
7712    #[derive(
7713        Clone,
7714        Debug,
7715        Eq,
7716        PartialEq,
7717        ::ethers::contract::EthCall,
7718        ::ethers::contract::EthDisplay,
7719        Default,
7720    )]
7721    #[ethcall(name = "symbol", abi = "symbol()")]
7722    pub struct SymbolCall;
7723    ///Container type for all input parameters for the `totalSupply` function with signature `totalSupply()` and selector `0x18160ddd`
7724    #[derive(
7725        Clone,
7726        Debug,
7727        Eq,
7728        PartialEq,
7729        ::ethers::contract::EthCall,
7730        ::ethers::contract::EthDisplay,
7731        Default,
7732    )]
7733    #[ethcall(name = "totalSupply", abi = "totalSupply()")]
7734    pub struct TotalSupplyCall;
7735    ///Container type for all input parameters for the `transfer` function with signature `transfer(address,uint256)` and selector `0xa9059cbb`
7736    #[derive(
7737        Clone,
7738        Debug,
7739        Eq,
7740        PartialEq,
7741        ::ethers::contract::EthCall,
7742        ::ethers::contract::EthDisplay,
7743        Default,
7744    )]
7745    #[ethcall(name = "transfer", abi = "transfer(address,uint256)")]
7746    pub struct TransferCall {
7747        pub recipient: ::ethers::core::types::Address,
7748        pub amount: ::ethers::core::types::U256,
7749    }
7750    ///Container type for all input parameters for the `transferFrom` function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`
7751    #[derive(
7752        Clone,
7753        Debug,
7754        Eq,
7755        PartialEq,
7756        ::ethers::contract::EthCall,
7757        ::ethers::contract::EthDisplay,
7758        Default,
7759    )]
7760    #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")]
7761    pub struct TransferFromCall {
7762        pub from: ::ethers::core::types::Address,
7763        pub to: ::ethers::core::types::Address,
7764        pub amount: ::ethers::core::types::U256,
7765    }
7766    ///Container type for all input parameters for the `withdraw` function with signature `withdraw(uint256)` and selector `0x2e1a7d4d`
7767    #[derive(
7768        Clone,
7769        Debug,
7770        Eq,
7771        PartialEq,
7772        ::ethers::contract::EthCall,
7773        ::ethers::contract::EthDisplay,
7774        Default,
7775    )]
7776    #[ethcall(name = "withdraw", abi = "withdraw(uint256)")]
7777    pub struct WithdrawCall {
7778        pub wad: ::ethers::core::types::U256,
7779    }
7780    #[derive(Debug, Clone, PartialEq, Eq, ::ethers::contract::EthAbiType)]
7781    pub enum WETHCalls {
7782        DefaultAdminRole(DefaultAdminRoleCall),
7783        MinterRole(MinterRoleCall),
7784        AddMinter(AddMinterCall),
7785        Allowance(AllowanceCall),
7786        Approve(ApproveCall),
7787        BalanceOf(BalanceOfCall),
7788        Cap(CapCall),
7789        Decimals(DecimalsCall),
7790        DecreaseAllowance(DecreaseAllowanceCall),
7791        Deposit(DepositCall),
7792        GetRoleAdmin(GetRoleAdminCall),
7793        GrantRole(GrantRoleCall),
7794        HasRole(HasRoleCall),
7795        IncreaseAllowance(IncreaseAllowanceCall),
7796        IsMinter(IsMinterCall),
7797        Mint(MintCall),
7798        Name(NameCall),
7799        RenounceRole(RenounceRoleCall),
7800        RevokeRole(RevokeRoleCall),
7801        SupportsInterface(SupportsInterfaceCall),
7802        Symbol(SymbolCall),
7803        TotalSupply(TotalSupplyCall),
7804        Transfer(TransferCall),
7805        TransferFrom(TransferFromCall),
7806        Withdraw(WithdrawCall),
7807    }
7808    impl ::ethers::core::abi::AbiDecode for WETHCalls {
7809        fn decode(
7810            data: impl AsRef<[u8]>,
7811        ) -> ::std::result::Result<Self, ::ethers::core::abi::AbiError> {
7812            if let Ok(decoded) =
7813                <DefaultAdminRoleCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7814            {
7815                return Ok(WETHCalls::DefaultAdminRole(decoded));
7816            }
7817            if let Ok(decoded) =
7818                <MinterRoleCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7819            {
7820                return Ok(WETHCalls::MinterRole(decoded));
7821            }
7822            if let Ok(decoded) =
7823                <AddMinterCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7824            {
7825                return Ok(WETHCalls::AddMinter(decoded));
7826            }
7827            if let Ok(decoded) =
7828                <AllowanceCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7829            {
7830                return Ok(WETHCalls::Allowance(decoded));
7831            }
7832            if let Ok(decoded) =
7833                <ApproveCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7834            {
7835                return Ok(WETHCalls::Approve(decoded));
7836            }
7837            if let Ok(decoded) =
7838                <BalanceOfCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7839            {
7840                return Ok(WETHCalls::BalanceOf(decoded));
7841            }
7842            if let Ok(decoded) = <CapCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7843            {
7844                return Ok(WETHCalls::Cap(decoded));
7845            }
7846            if let Ok(decoded) =
7847                <DecimalsCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7848            {
7849                return Ok(WETHCalls::Decimals(decoded));
7850            }
7851            if let Ok(decoded) =
7852                <DecreaseAllowanceCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7853            {
7854                return Ok(WETHCalls::DecreaseAllowance(decoded));
7855            }
7856            if let Ok(decoded) =
7857                <DepositCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7858            {
7859                return Ok(WETHCalls::Deposit(decoded));
7860            }
7861            if let Ok(decoded) =
7862                <GetRoleAdminCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7863            {
7864                return Ok(WETHCalls::GetRoleAdmin(decoded));
7865            }
7866            if let Ok(decoded) =
7867                <GrantRoleCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7868            {
7869                return Ok(WETHCalls::GrantRole(decoded));
7870            }
7871            if let Ok(decoded) =
7872                <HasRoleCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7873            {
7874                return Ok(WETHCalls::HasRole(decoded));
7875            }
7876            if let Ok(decoded) =
7877                <IncreaseAllowanceCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7878            {
7879                return Ok(WETHCalls::IncreaseAllowance(decoded));
7880            }
7881            if let Ok(decoded) =
7882                <IsMinterCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7883            {
7884                return Ok(WETHCalls::IsMinter(decoded));
7885            }
7886            if let Ok(decoded) = <MintCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7887            {
7888                return Ok(WETHCalls::Mint(decoded));
7889            }
7890            if let Ok(decoded) = <NameCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7891            {
7892                return Ok(WETHCalls::Name(decoded));
7893            }
7894            if let Ok(decoded) =
7895                <RenounceRoleCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7896            {
7897                return Ok(WETHCalls::RenounceRole(decoded));
7898            }
7899            if let Ok(decoded) =
7900                <RevokeRoleCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7901            {
7902                return Ok(WETHCalls::RevokeRole(decoded));
7903            }
7904            if let Ok(decoded) =
7905                <SupportsInterfaceCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7906            {
7907                return Ok(WETHCalls::SupportsInterface(decoded));
7908            }
7909            if let Ok(decoded) =
7910                <SymbolCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7911            {
7912                return Ok(WETHCalls::Symbol(decoded));
7913            }
7914            if let Ok(decoded) =
7915                <TotalSupplyCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7916            {
7917                return Ok(WETHCalls::TotalSupply(decoded));
7918            }
7919            if let Ok(decoded) =
7920                <TransferCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7921            {
7922                return Ok(WETHCalls::Transfer(decoded));
7923            }
7924            if let Ok(decoded) =
7925                <TransferFromCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7926            {
7927                return Ok(WETHCalls::TransferFrom(decoded));
7928            }
7929            if let Ok(decoded) =
7930                <WithdrawCall as ::ethers::core::abi::AbiDecode>::decode(data.as_ref())
7931            {
7932                return Ok(WETHCalls::Withdraw(decoded));
7933            }
7934            Err(::ethers::core::abi::Error::InvalidData.into())
7935        }
7936    }
7937    impl ::ethers::core::abi::AbiEncode for WETHCalls {
7938        fn encode(self) -> Vec<u8> {
7939            match self {
7940                WETHCalls::DefaultAdminRole(element) => element.encode(),
7941                WETHCalls::MinterRole(element) => element.encode(),
7942                WETHCalls::AddMinter(element) => element.encode(),
7943                WETHCalls::Allowance(element) => element.encode(),
7944                WETHCalls::Approve(element) => element.encode(),
7945                WETHCalls::BalanceOf(element) => element.encode(),
7946                WETHCalls::Cap(element) => element.encode(),
7947                WETHCalls::Decimals(element) => element.encode(),
7948                WETHCalls::DecreaseAllowance(element) => element.encode(),
7949                WETHCalls::Deposit(element) => element.encode(),
7950                WETHCalls::GetRoleAdmin(element) => element.encode(),
7951                WETHCalls::GrantRole(element) => element.encode(),
7952                WETHCalls::HasRole(element) => element.encode(),
7953                WETHCalls::IncreaseAllowance(element) => element.encode(),
7954                WETHCalls::IsMinter(element) => element.encode(),
7955                WETHCalls::Mint(element) => element.encode(),
7956                WETHCalls::Name(element) => element.encode(),
7957                WETHCalls::RenounceRole(element) => element.encode(),
7958                WETHCalls::RevokeRole(element) => element.encode(),
7959                WETHCalls::SupportsInterface(element) => element.encode(),
7960                WETHCalls::Symbol(element) => element.encode(),
7961                WETHCalls::TotalSupply(element) => element.encode(),
7962                WETHCalls::Transfer(element) => element.encode(),
7963                WETHCalls::TransferFrom(element) => element.encode(),
7964                WETHCalls::Withdraw(element) => element.encode(),
7965            }
7966        }
7967    }
7968    impl ::std::fmt::Display for WETHCalls {
7969        fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
7970            match self {
7971                WETHCalls::DefaultAdminRole(element) => element.fmt(f),
7972                WETHCalls::MinterRole(element) => element.fmt(f),
7973                WETHCalls::AddMinter(element) => element.fmt(f),
7974                WETHCalls::Allowance(element) => element.fmt(f),
7975                WETHCalls::Approve(element) => element.fmt(f),
7976                WETHCalls::BalanceOf(element) => element.fmt(f),
7977                WETHCalls::Cap(element) => element.fmt(f),
7978                WETHCalls::Decimals(element) => element.fmt(f),
7979                WETHCalls::DecreaseAllowance(element) => element.fmt(f),
7980                WETHCalls::Deposit(element) => element.fmt(f),
7981                WETHCalls::GetRoleAdmin(element) => element.fmt(f),
7982                WETHCalls::GrantRole(element) => element.fmt(f),
7983                WETHCalls::HasRole(element) => element.fmt(f),
7984                WETHCalls::IncreaseAllowance(element) => element.fmt(f),
7985                WETHCalls::IsMinter(element) => element.fmt(f),
7986                WETHCalls::Mint(element) => element.fmt(f),
7987                WETHCalls::Name(element) => element.fmt(f),
7988                WETHCalls::RenounceRole(element) => element.fmt(f),
7989                WETHCalls::RevokeRole(element) => element.fmt(f),
7990                WETHCalls::SupportsInterface(element) => element.fmt(f),
7991                WETHCalls::Symbol(element) => element.fmt(f),
7992                WETHCalls::TotalSupply(element) => element.fmt(f),
7993                WETHCalls::Transfer(element) => element.fmt(f),
7994                WETHCalls::TransferFrom(element) => element.fmt(f),
7995                WETHCalls::Withdraw(element) => element.fmt(f),
7996            }
7997        }
7998    }
7999    impl ::std::convert::From<DefaultAdminRoleCall> for WETHCalls {
8000        fn from(var: DefaultAdminRoleCall) -> Self {
8001            WETHCalls::DefaultAdminRole(var)
8002        }
8003    }
8004    impl ::std::convert::From<MinterRoleCall> for WETHCalls {
8005        fn from(var: MinterRoleCall) -> Self {
8006            WETHCalls::MinterRole(var)
8007        }
8008    }
8009    impl ::std::convert::From<AddMinterCall> for WETHCalls {
8010        fn from(var: AddMinterCall) -> Self {
8011            WETHCalls::AddMinter(var)
8012        }
8013    }
8014    impl ::std::convert::From<AllowanceCall> for WETHCalls {
8015        fn from(var: AllowanceCall) -> Self {
8016            WETHCalls::Allowance(var)
8017        }
8018    }
8019    impl ::std::convert::From<ApproveCall> for WETHCalls {
8020        fn from(var: ApproveCall) -> Self {
8021            WETHCalls::Approve(var)
8022        }
8023    }
8024    impl ::std::convert::From<BalanceOfCall> for WETHCalls {
8025        fn from(var: BalanceOfCall) -> Self {
8026            WETHCalls::BalanceOf(var)
8027        }
8028    }
8029    impl ::std::convert::From<CapCall> for WETHCalls {
8030        fn from(var: CapCall) -> Self {
8031            WETHCalls::Cap(var)
8032        }
8033    }
8034    impl ::std::convert::From<DecimalsCall> for WETHCalls {
8035        fn from(var: DecimalsCall) -> Self {
8036            WETHCalls::Decimals(var)
8037        }
8038    }
8039    impl ::std::convert::From<DecreaseAllowanceCall> for WETHCalls {
8040        fn from(var: DecreaseAllowanceCall) -> Self {
8041            WETHCalls::DecreaseAllowance(var)
8042        }
8043    }
8044    impl ::std::convert::From<DepositCall> for WETHCalls {
8045        fn from(var: DepositCall) -> Self {
8046            WETHCalls::Deposit(var)
8047        }
8048    }
8049    impl ::std::convert::From<GetRoleAdminCall> for WETHCalls {
8050        fn from(var: GetRoleAdminCall) -> Self {
8051            WETHCalls::GetRoleAdmin(var)
8052        }
8053    }
8054    impl ::std::convert::From<GrantRoleCall> for WETHCalls {
8055        fn from(var: GrantRoleCall) -> Self {
8056            WETHCalls::GrantRole(var)
8057        }
8058    }
8059    impl ::std::convert::From<HasRoleCall> for WETHCalls {
8060        fn from(var: HasRoleCall) -> Self {
8061            WETHCalls::HasRole(var)
8062        }
8063    }
8064    impl ::std::convert::From<IncreaseAllowanceCall> for WETHCalls {
8065        fn from(var: IncreaseAllowanceCall) -> Self {
8066            WETHCalls::IncreaseAllowance(var)
8067        }
8068    }
8069    impl ::std::convert::From<IsMinterCall> for WETHCalls {
8070        fn from(var: IsMinterCall) -> Self {
8071            WETHCalls::IsMinter(var)
8072        }
8073    }
8074    impl ::std::convert::From<MintCall> for WETHCalls {
8075        fn from(var: MintCall) -> Self {
8076            WETHCalls::Mint(var)
8077        }
8078    }
8079    impl ::std::convert::From<NameCall> for WETHCalls {
8080        fn from(var: NameCall) -> Self {
8081            WETHCalls::Name(var)
8082        }
8083    }
8084    impl ::std::convert::From<RenounceRoleCall> for WETHCalls {
8085        fn from(var: RenounceRoleCall) -> Self {
8086            WETHCalls::RenounceRole(var)
8087        }
8088    }
8089    impl ::std::convert::From<RevokeRoleCall> for WETHCalls {
8090        fn from(var: RevokeRoleCall) -> Self {
8091            WETHCalls::RevokeRole(var)
8092        }
8093    }
8094    impl ::std::convert::From<SupportsInterfaceCall> for WETHCalls {
8095        fn from(var: SupportsInterfaceCall) -> Self {
8096            WETHCalls::SupportsInterface(var)
8097        }
8098    }
8099    impl ::std::convert::From<SymbolCall> for WETHCalls {
8100        fn from(var: SymbolCall) -> Self {
8101            WETHCalls::Symbol(var)
8102        }
8103    }
8104    impl ::std::convert::From<TotalSupplyCall> for WETHCalls {
8105        fn from(var: TotalSupplyCall) -> Self {
8106            WETHCalls::TotalSupply(var)
8107        }
8108    }
8109    impl ::std::convert::From<TransferCall> for WETHCalls {
8110        fn from(var: TransferCall) -> Self {
8111            WETHCalls::Transfer(var)
8112        }
8113    }
8114    impl ::std::convert::From<TransferFromCall> for WETHCalls {
8115        fn from(var: TransferFromCall) -> Self {
8116            WETHCalls::TransferFrom(var)
8117        }
8118    }
8119    impl ::std::convert::From<WithdrawCall> for WETHCalls {
8120        fn from(var: WithdrawCall) -> Self {
8121            WETHCalls::Withdraw(var)
8122        }
8123    }
8124    ///Container type for all return fields from the `DEFAULT_ADMIN_ROLE` function with signature `DEFAULT_ADMIN_ROLE()` and selector `0xa217fddf`
8125    #[derive(
8126        Clone,
8127        Debug,
8128        Eq,
8129        PartialEq,
8130        ::ethers::contract::EthAbiType,
8131        ::ethers::contract::EthAbiCodec,
8132        Default,
8133    )]
8134    pub struct DefaultAdminRoleReturn(pub [u8; 32]);
8135    ///Container type for all return fields from the `MINTER_ROLE` function with signature `MINTER_ROLE()` and selector `0xd5391393`
8136    #[derive(
8137        Clone,
8138        Debug,
8139        Eq,
8140        PartialEq,
8141        ::ethers::contract::EthAbiType,
8142        ::ethers::contract::EthAbiCodec,
8143        Default,
8144    )]
8145    pub struct MinterRoleReturn(pub [u8; 32]);
8146    ///Container type for all return fields from the `allowance` function with signature `allowance(address,address)` and selector `0xdd62ed3e`
8147    #[derive(
8148        Clone,
8149        Debug,
8150        Eq,
8151        PartialEq,
8152        ::ethers::contract::EthAbiType,
8153        ::ethers::contract::EthAbiCodec,
8154        Default,
8155    )]
8156    pub struct AllowanceReturn(pub ::ethers::core::types::U256);
8157    ///Container type for all return fields from the `approve` function with signature `approve(address,uint256)` and selector `0x095ea7b3`
8158    #[derive(
8159        Clone,
8160        Debug,
8161        Eq,
8162        PartialEq,
8163        ::ethers::contract::EthAbiType,
8164        ::ethers::contract::EthAbiCodec,
8165        Default,
8166    )]
8167    pub struct ApproveReturn(pub bool);
8168    ///Container type for all return fields from the `balanceOf` function with signature `balanceOf(address)` and selector `0x70a08231`
8169    #[derive(
8170        Clone,
8171        Debug,
8172        Eq,
8173        PartialEq,
8174        ::ethers::contract::EthAbiType,
8175        ::ethers::contract::EthAbiCodec,
8176        Default,
8177    )]
8178    pub struct BalanceOfReturn(pub ::ethers::core::types::U256);
8179    ///Container type for all return fields from the `cap` function with signature `cap()` and selector `0x355274ea`
8180    #[derive(
8181        Clone,
8182        Debug,
8183        Eq,
8184        PartialEq,
8185        ::ethers::contract::EthAbiType,
8186        ::ethers::contract::EthAbiCodec,
8187        Default,
8188    )]
8189    pub struct CapReturn(pub ::ethers::core::types::U256);
8190    ///Container type for all return fields from the `decimals` function with signature `decimals()` and selector `0x313ce567`
8191    #[derive(
8192        Clone,
8193        Debug,
8194        Eq,
8195        PartialEq,
8196        ::ethers::contract::EthAbiType,
8197        ::ethers::contract::EthAbiCodec,
8198        Default,
8199    )]
8200    pub struct DecimalsReturn(pub u8);
8201    ///Container type for all return fields from the `decreaseAllowance` function with signature `decreaseAllowance(address,uint256)` and selector `0xa457c2d7`
8202    #[derive(
8203        Clone,
8204        Debug,
8205        Eq,
8206        PartialEq,
8207        ::ethers::contract::EthAbiType,
8208        ::ethers::contract::EthAbiCodec,
8209        Default,
8210    )]
8211    pub struct DecreaseAllowanceReturn(pub bool);
8212    ///Container type for all return fields from the `getRoleAdmin` function with signature `getRoleAdmin(bytes32)` and selector `0x248a9ca3`
8213    #[derive(
8214        Clone,
8215        Debug,
8216        Eq,
8217        PartialEq,
8218        ::ethers::contract::EthAbiType,
8219        ::ethers::contract::EthAbiCodec,
8220        Default,
8221    )]
8222    pub struct GetRoleAdminReturn(pub [u8; 32]);
8223    ///Container type for all return fields from the `hasRole` function with signature `hasRole(bytes32,address)` and selector `0x91d14854`
8224    #[derive(
8225        Clone,
8226        Debug,
8227        Eq,
8228        PartialEq,
8229        ::ethers::contract::EthAbiType,
8230        ::ethers::contract::EthAbiCodec,
8231        Default,
8232    )]
8233    pub struct HasRoleReturn(pub bool);
8234    ///Container type for all return fields from the `increaseAllowance` function with signature `increaseAllowance(address,uint256)` and selector `0x39509351`
8235    #[derive(
8236        Clone,
8237        Debug,
8238        Eq,
8239        PartialEq,
8240        ::ethers::contract::EthAbiType,
8241        ::ethers::contract::EthAbiCodec,
8242        Default,
8243    )]
8244    pub struct IncreaseAllowanceReturn(pub bool);
8245    ///Container type for all return fields from the `isMinter` function with signature `isMinter(address)` and selector `0xaa271e1a`
8246    #[derive(
8247        Clone,
8248        Debug,
8249        Eq,
8250        PartialEq,
8251        ::ethers::contract::EthAbiType,
8252        ::ethers::contract::EthAbiCodec,
8253        Default,
8254    )]
8255    pub struct IsMinterReturn(pub bool);
8256    ///Container type for all return fields from the `name` function with signature `name()` and selector `0x06fdde03`
8257    #[derive(
8258        Clone,
8259        Debug,
8260        Eq,
8261        PartialEq,
8262        ::ethers::contract::EthAbiType,
8263        ::ethers::contract::EthAbiCodec,
8264        Default,
8265    )]
8266    pub struct NameReturn(pub String);
8267    ///Container type for all return fields from the `supportsInterface` function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`
8268    #[derive(
8269        Clone,
8270        Debug,
8271        Eq,
8272        PartialEq,
8273        ::ethers::contract::EthAbiType,
8274        ::ethers::contract::EthAbiCodec,
8275        Default,
8276    )]
8277    pub struct SupportsInterfaceReturn(pub bool);
8278    ///Container type for all return fields from the `symbol` function with signature `symbol()` and selector `0x95d89b41`
8279    #[derive(
8280        Clone,
8281        Debug,
8282        Eq,
8283        PartialEq,
8284        ::ethers::contract::EthAbiType,
8285        ::ethers::contract::EthAbiCodec,
8286        Default,
8287    )]
8288    pub struct SymbolReturn(pub String);
8289    ///Container type for all return fields from the `totalSupply` function with signature `totalSupply()` and selector `0x18160ddd`
8290    #[derive(
8291        Clone,
8292        Debug,
8293        Eq,
8294        PartialEq,
8295        ::ethers::contract::EthAbiType,
8296        ::ethers::contract::EthAbiCodec,
8297        Default,
8298    )]
8299    pub struct TotalSupplyReturn(pub ::ethers::core::types::U256);
8300    ///Container type for all return fields from the `transfer` function with signature `transfer(address,uint256)` and selector `0xa9059cbb`
8301    #[derive(
8302        Clone,
8303        Debug,
8304        Eq,
8305        PartialEq,
8306        ::ethers::contract::EthAbiType,
8307        ::ethers::contract::EthAbiCodec,
8308        Default,
8309    )]
8310    pub struct TransferReturn(pub bool);
8311    ///Container type for all return fields from the `transferFrom` function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`
8312    #[derive(
8313        Clone,
8314        Debug,
8315        Eq,
8316        PartialEq,
8317        ::ethers::contract::EthAbiType,
8318        ::ethers::contract::EthAbiCodec,
8319        Default,
8320    )]
8321    pub struct TransferFromReturn(pub bool);
8322}