@towns-protocol/generated 0.0.229 → 0.0.231

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1257 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type { PromiseOrValue } from "../common";
7
+ import type { Towns, TownsInterface } from "../Towns";
8
+
9
+ const _abi = [
10
+ {
11
+ type: "constructor",
12
+ inputs: [],
13
+ stateMutability: "nonpayable",
14
+ },
15
+ {
16
+ type: "function",
17
+ name: "CLOCK_MODE",
18
+ inputs: [],
19
+ outputs: [
20
+ {
21
+ name: "",
22
+ type: "string",
23
+ internalType: "string",
24
+ },
25
+ ],
26
+ stateMutability: "pure",
27
+ },
28
+ {
29
+ type: "function",
30
+ name: "DOMAIN_SEPARATOR",
31
+ inputs: [],
32
+ outputs: [
33
+ {
34
+ name: "result",
35
+ type: "bytes32",
36
+ internalType: "bytes32",
37
+ },
38
+ ],
39
+ stateMutability: "view",
40
+ },
41
+ {
42
+ type: "function",
43
+ name: "allowance",
44
+ inputs: [
45
+ {
46
+ name: "owner",
47
+ type: "address",
48
+ internalType: "address",
49
+ },
50
+ {
51
+ name: "spender",
52
+ type: "address",
53
+ internalType: "address",
54
+ },
55
+ ],
56
+ outputs: [
57
+ {
58
+ name: "result",
59
+ type: "uint256",
60
+ internalType: "uint256",
61
+ },
62
+ ],
63
+ stateMutability: "view",
64
+ },
65
+ {
66
+ type: "function",
67
+ name: "approve",
68
+ inputs: [
69
+ {
70
+ name: "spender",
71
+ type: "address",
72
+ internalType: "address",
73
+ },
74
+ {
75
+ name: "amount",
76
+ type: "uint256",
77
+ internalType: "uint256",
78
+ },
79
+ ],
80
+ outputs: [
81
+ {
82
+ name: "",
83
+ type: "bool",
84
+ internalType: "bool",
85
+ },
86
+ ],
87
+ stateMutability: "nonpayable",
88
+ },
89
+ {
90
+ type: "function",
91
+ name: "balanceOf",
92
+ inputs: [
93
+ {
94
+ name: "owner",
95
+ type: "address",
96
+ internalType: "address",
97
+ },
98
+ ],
99
+ outputs: [
100
+ {
101
+ name: "result",
102
+ type: "uint256",
103
+ internalType: "uint256",
104
+ },
105
+ ],
106
+ stateMutability: "view",
107
+ },
108
+ {
109
+ type: "function",
110
+ name: "bridge",
111
+ inputs: [],
112
+ outputs: [
113
+ {
114
+ name: "",
115
+ type: "address",
116
+ internalType: "address",
117
+ },
118
+ ],
119
+ stateMutability: "pure",
120
+ },
121
+ {
122
+ type: "function",
123
+ name: "burn",
124
+ inputs: [
125
+ {
126
+ name: "from",
127
+ type: "address",
128
+ internalType: "address",
129
+ },
130
+ {
131
+ name: "amount",
132
+ type: "uint256",
133
+ internalType: "uint256",
134
+ },
135
+ ],
136
+ outputs: [],
137
+ stateMutability: "nonpayable",
138
+ },
139
+ {
140
+ type: "function",
141
+ name: "cancelOwnershipHandover",
142
+ inputs: [],
143
+ outputs: [],
144
+ stateMutability: "payable",
145
+ },
146
+ {
147
+ type: "function",
148
+ name: "checkpointAt",
149
+ inputs: [
150
+ {
151
+ name: "account",
152
+ type: "address",
153
+ internalType: "address",
154
+ },
155
+ {
156
+ name: "i",
157
+ type: "uint256",
158
+ internalType: "uint256",
159
+ },
160
+ ],
161
+ outputs: [
162
+ {
163
+ name: "checkpointClock",
164
+ type: "uint48",
165
+ internalType: "uint48",
166
+ },
167
+ {
168
+ name: "checkpointValue",
169
+ type: "uint256",
170
+ internalType: "uint256",
171
+ },
172
+ ],
173
+ stateMutability: "view",
174
+ },
175
+ {
176
+ type: "function",
177
+ name: "checkpointCount",
178
+ inputs: [
179
+ {
180
+ name: "account",
181
+ type: "address",
182
+ internalType: "address",
183
+ },
184
+ ],
185
+ outputs: [
186
+ {
187
+ name: "result",
188
+ type: "uint256",
189
+ internalType: "uint256",
190
+ },
191
+ ],
192
+ stateMutability: "view",
193
+ },
194
+ {
195
+ type: "function",
196
+ name: "clock",
197
+ inputs: [],
198
+ outputs: [
199
+ {
200
+ name: "",
201
+ type: "uint48",
202
+ internalType: "uint48",
203
+ },
204
+ ],
205
+ stateMutability: "view",
206
+ },
207
+ {
208
+ type: "function",
209
+ name: "completeOwnershipHandover",
210
+ inputs: [
211
+ {
212
+ name: "pendingOwner",
213
+ type: "address",
214
+ internalType: "address",
215
+ },
216
+ ],
217
+ outputs: [],
218
+ stateMutability: "payable",
219
+ },
220
+ {
221
+ type: "function",
222
+ name: "crosschainBurn",
223
+ inputs: [
224
+ {
225
+ name: "_from",
226
+ type: "address",
227
+ internalType: "address",
228
+ },
229
+ {
230
+ name: "_amount",
231
+ type: "uint256",
232
+ internalType: "uint256",
233
+ },
234
+ ],
235
+ outputs: [],
236
+ stateMutability: "nonpayable",
237
+ },
238
+ {
239
+ type: "function",
240
+ name: "crosschainMint",
241
+ inputs: [
242
+ {
243
+ name: "_to",
244
+ type: "address",
245
+ internalType: "address",
246
+ },
247
+ {
248
+ name: "_amount",
249
+ type: "uint256",
250
+ internalType: "uint256",
251
+ },
252
+ ],
253
+ outputs: [],
254
+ stateMutability: "nonpayable",
255
+ },
256
+ {
257
+ type: "function",
258
+ name: "decimals",
259
+ inputs: [],
260
+ outputs: [
261
+ {
262
+ name: "",
263
+ type: "uint8",
264
+ internalType: "uint8",
265
+ },
266
+ ],
267
+ stateMutability: "pure",
268
+ },
269
+ {
270
+ type: "function",
271
+ name: "delegate",
272
+ inputs: [
273
+ {
274
+ name: "delegatee",
275
+ type: "address",
276
+ internalType: "address",
277
+ },
278
+ ],
279
+ outputs: [],
280
+ stateMutability: "nonpayable",
281
+ },
282
+ {
283
+ type: "function",
284
+ name: "delegateBySig",
285
+ inputs: [
286
+ {
287
+ name: "delegatee",
288
+ type: "address",
289
+ internalType: "address",
290
+ },
291
+ {
292
+ name: "nonce",
293
+ type: "uint256",
294
+ internalType: "uint256",
295
+ },
296
+ {
297
+ name: "expiry",
298
+ type: "uint256",
299
+ internalType: "uint256",
300
+ },
301
+ {
302
+ name: "v",
303
+ type: "uint8",
304
+ internalType: "uint8",
305
+ },
306
+ {
307
+ name: "r",
308
+ type: "bytes32",
309
+ internalType: "bytes32",
310
+ },
311
+ {
312
+ name: "s",
313
+ type: "bytes32",
314
+ internalType: "bytes32",
315
+ },
316
+ ],
317
+ outputs: [],
318
+ stateMutability: "nonpayable",
319
+ },
320
+ {
321
+ type: "function",
322
+ name: "delegates",
323
+ inputs: [
324
+ {
325
+ name: "delegator",
326
+ type: "address",
327
+ internalType: "address",
328
+ },
329
+ ],
330
+ outputs: [
331
+ {
332
+ name: "result",
333
+ type: "address",
334
+ internalType: "address",
335
+ },
336
+ ],
337
+ stateMutability: "view",
338
+ },
339
+ {
340
+ type: "function",
341
+ name: "getPastVotes",
342
+ inputs: [
343
+ {
344
+ name: "account",
345
+ type: "address",
346
+ internalType: "address",
347
+ },
348
+ {
349
+ name: "timepoint",
350
+ type: "uint256",
351
+ internalType: "uint256",
352
+ },
353
+ ],
354
+ outputs: [
355
+ {
356
+ name: "",
357
+ type: "uint256",
358
+ internalType: "uint256",
359
+ },
360
+ ],
361
+ stateMutability: "view",
362
+ },
363
+ {
364
+ type: "function",
365
+ name: "getPastVotesTotalSupply",
366
+ inputs: [
367
+ {
368
+ name: "timepoint",
369
+ type: "uint256",
370
+ internalType: "uint256",
371
+ },
372
+ ],
373
+ outputs: [
374
+ {
375
+ name: "",
376
+ type: "uint256",
377
+ internalType: "uint256",
378
+ },
379
+ ],
380
+ stateMutability: "view",
381
+ },
382
+ {
383
+ type: "function",
384
+ name: "getVotes",
385
+ inputs: [
386
+ {
387
+ name: "account",
388
+ type: "address",
389
+ internalType: "address",
390
+ },
391
+ ],
392
+ outputs: [
393
+ {
394
+ name: "",
395
+ type: "uint256",
396
+ internalType: "uint256",
397
+ },
398
+ ],
399
+ stateMutability: "view",
400
+ },
401
+ {
402
+ type: "function",
403
+ name: "getVotesTotalSupply",
404
+ inputs: [],
405
+ outputs: [
406
+ {
407
+ name: "",
408
+ type: "uint256",
409
+ internalType: "uint256",
410
+ },
411
+ ],
412
+ stateMutability: "view",
413
+ },
414
+ {
415
+ type: "function",
416
+ name: "initialize",
417
+ inputs: [
418
+ {
419
+ name: "_remoteToken",
420
+ type: "address",
421
+ internalType: "address",
422
+ },
423
+ {
424
+ name: "_owner",
425
+ type: "address",
426
+ internalType: "address",
427
+ },
428
+ ],
429
+ outputs: [],
430
+ stateMutability: "nonpayable",
431
+ },
432
+ {
433
+ type: "function",
434
+ name: "isLockActive",
435
+ inputs: [
436
+ {
437
+ name: "account",
438
+ type: "address",
439
+ internalType: "address",
440
+ },
441
+ ],
442
+ outputs: [
443
+ {
444
+ name: "",
445
+ type: "bool",
446
+ internalType: "bool",
447
+ },
448
+ ],
449
+ stateMutability: "view",
450
+ },
451
+ {
452
+ type: "function",
453
+ name: "l1Token",
454
+ inputs: [],
455
+ outputs: [
456
+ {
457
+ name: "",
458
+ type: "address",
459
+ internalType: "address",
460
+ },
461
+ ],
462
+ stateMutability: "view",
463
+ },
464
+ {
465
+ type: "function",
466
+ name: "l2Bridge",
467
+ inputs: [],
468
+ outputs: [
469
+ {
470
+ name: "",
471
+ type: "address",
472
+ internalType: "address",
473
+ },
474
+ ],
475
+ stateMutability: "pure",
476
+ },
477
+ {
478
+ type: "function",
479
+ name: "lockExpiration",
480
+ inputs: [
481
+ {
482
+ name: "account",
483
+ type: "address",
484
+ internalType: "address",
485
+ },
486
+ ],
487
+ outputs: [
488
+ {
489
+ name: "",
490
+ type: "uint256",
491
+ internalType: "uint256",
492
+ },
493
+ ],
494
+ stateMutability: "view",
495
+ },
496
+ {
497
+ type: "function",
498
+ name: "mint",
499
+ inputs: [
500
+ {
501
+ name: "to",
502
+ type: "address",
503
+ internalType: "address",
504
+ },
505
+ {
506
+ name: "amount",
507
+ type: "uint256",
508
+ internalType: "uint256",
509
+ },
510
+ ],
511
+ outputs: [],
512
+ stateMutability: "nonpayable",
513
+ },
514
+ {
515
+ type: "function",
516
+ name: "name",
517
+ inputs: [],
518
+ outputs: [
519
+ {
520
+ name: "",
521
+ type: "string",
522
+ internalType: "string",
523
+ },
524
+ ],
525
+ stateMutability: "pure",
526
+ },
527
+ {
528
+ type: "function",
529
+ name: "nonces",
530
+ inputs: [
531
+ {
532
+ name: "owner",
533
+ type: "address",
534
+ internalType: "address",
535
+ },
536
+ ],
537
+ outputs: [
538
+ {
539
+ name: "result",
540
+ type: "uint256",
541
+ internalType: "uint256",
542
+ },
543
+ ],
544
+ stateMutability: "view",
545
+ },
546
+ {
547
+ type: "function",
548
+ name: "owner",
549
+ inputs: [],
550
+ outputs: [
551
+ {
552
+ name: "result",
553
+ type: "address",
554
+ internalType: "address",
555
+ },
556
+ ],
557
+ stateMutability: "view",
558
+ },
559
+ {
560
+ type: "function",
561
+ name: "ownershipHandoverExpiresAt",
562
+ inputs: [
563
+ {
564
+ name: "pendingOwner",
565
+ type: "address",
566
+ internalType: "address",
567
+ },
568
+ ],
569
+ outputs: [
570
+ {
571
+ name: "result",
572
+ type: "uint256",
573
+ internalType: "uint256",
574
+ },
575
+ ],
576
+ stateMutability: "view",
577
+ },
578
+ {
579
+ type: "function",
580
+ name: "permit",
581
+ inputs: [
582
+ {
583
+ name: "owner",
584
+ type: "address",
585
+ internalType: "address",
586
+ },
587
+ {
588
+ name: "spender",
589
+ type: "address",
590
+ internalType: "address",
591
+ },
592
+ {
593
+ name: "value",
594
+ type: "uint256",
595
+ internalType: "uint256",
596
+ },
597
+ {
598
+ name: "deadline",
599
+ type: "uint256",
600
+ internalType: "uint256",
601
+ },
602
+ {
603
+ name: "v",
604
+ type: "uint8",
605
+ internalType: "uint8",
606
+ },
607
+ {
608
+ name: "r",
609
+ type: "bytes32",
610
+ internalType: "bytes32",
611
+ },
612
+ {
613
+ name: "s",
614
+ type: "bytes32",
615
+ internalType: "bytes32",
616
+ },
617
+ ],
618
+ outputs: [],
619
+ stateMutability: "nonpayable",
620
+ },
621
+ {
622
+ type: "function",
623
+ name: "proxiableUUID",
624
+ inputs: [],
625
+ outputs: [
626
+ {
627
+ name: "",
628
+ type: "bytes32",
629
+ internalType: "bytes32",
630
+ },
631
+ ],
632
+ stateMutability: "view",
633
+ },
634
+ {
635
+ type: "function",
636
+ name: "remoteToken",
637
+ inputs: [],
638
+ outputs: [
639
+ {
640
+ name: "",
641
+ type: "address",
642
+ internalType: "address",
643
+ },
644
+ ],
645
+ stateMutability: "view",
646
+ },
647
+ {
648
+ type: "function",
649
+ name: "renounceOwnership",
650
+ inputs: [],
651
+ outputs: [],
652
+ stateMutability: "payable",
653
+ },
654
+ {
655
+ type: "function",
656
+ name: "requestOwnershipHandover",
657
+ inputs: [],
658
+ outputs: [],
659
+ stateMutability: "payable",
660
+ },
661
+ {
662
+ type: "function",
663
+ name: "supportsInterface",
664
+ inputs: [
665
+ {
666
+ name: "interfaceId",
667
+ type: "bytes4",
668
+ internalType: "bytes4",
669
+ },
670
+ ],
671
+ outputs: [
672
+ {
673
+ name: "",
674
+ type: "bool",
675
+ internalType: "bool",
676
+ },
677
+ ],
678
+ stateMutability: "view",
679
+ },
680
+ {
681
+ type: "function",
682
+ name: "symbol",
683
+ inputs: [],
684
+ outputs: [
685
+ {
686
+ name: "",
687
+ type: "string",
688
+ internalType: "string",
689
+ },
690
+ ],
691
+ stateMutability: "pure",
692
+ },
693
+ {
694
+ type: "function",
695
+ name: "totalSupply",
696
+ inputs: [],
697
+ outputs: [
698
+ {
699
+ name: "result",
700
+ type: "uint256",
701
+ internalType: "uint256",
702
+ },
703
+ ],
704
+ stateMutability: "view",
705
+ },
706
+ {
707
+ type: "function",
708
+ name: "transfer",
709
+ inputs: [
710
+ {
711
+ name: "to",
712
+ type: "address",
713
+ internalType: "address",
714
+ },
715
+ {
716
+ name: "amount",
717
+ type: "uint256",
718
+ internalType: "uint256",
719
+ },
720
+ ],
721
+ outputs: [
722
+ {
723
+ name: "",
724
+ type: "bool",
725
+ internalType: "bool",
726
+ },
727
+ ],
728
+ stateMutability: "nonpayable",
729
+ },
730
+ {
731
+ type: "function",
732
+ name: "transferFrom",
733
+ inputs: [
734
+ {
735
+ name: "from",
736
+ type: "address",
737
+ internalType: "address",
738
+ },
739
+ {
740
+ name: "to",
741
+ type: "address",
742
+ internalType: "address",
743
+ },
744
+ {
745
+ name: "amount",
746
+ type: "uint256",
747
+ internalType: "uint256",
748
+ },
749
+ ],
750
+ outputs: [
751
+ {
752
+ name: "",
753
+ type: "bool",
754
+ internalType: "bool",
755
+ },
756
+ ],
757
+ stateMutability: "nonpayable",
758
+ },
759
+ {
760
+ type: "function",
761
+ name: "transferOwnership",
762
+ inputs: [
763
+ {
764
+ name: "newOwner",
765
+ type: "address",
766
+ internalType: "address",
767
+ },
768
+ ],
769
+ outputs: [],
770
+ stateMutability: "payable",
771
+ },
772
+ {
773
+ type: "function",
774
+ name: "upgradeToAndCall",
775
+ inputs: [
776
+ {
777
+ name: "newImplementation",
778
+ type: "address",
779
+ internalType: "address",
780
+ },
781
+ {
782
+ name: "data",
783
+ type: "bytes",
784
+ internalType: "bytes",
785
+ },
786
+ ],
787
+ outputs: [],
788
+ stateMutability: "payable",
789
+ },
790
+ {
791
+ type: "function",
792
+ name: "version",
793
+ inputs: [],
794
+ outputs: [
795
+ {
796
+ name: "",
797
+ type: "string",
798
+ internalType: "string",
799
+ },
800
+ ],
801
+ stateMutability: "view",
802
+ },
803
+ {
804
+ type: "event",
805
+ name: "Approval",
806
+ inputs: [
807
+ {
808
+ name: "owner",
809
+ type: "address",
810
+ indexed: true,
811
+ internalType: "address",
812
+ },
813
+ {
814
+ name: "spender",
815
+ type: "address",
816
+ indexed: true,
817
+ internalType: "address",
818
+ },
819
+ {
820
+ name: "amount",
821
+ type: "uint256",
822
+ indexed: false,
823
+ internalType: "uint256",
824
+ },
825
+ ],
826
+ anonymous: false,
827
+ },
828
+ {
829
+ type: "event",
830
+ name: "CrosschainBurn",
831
+ inputs: [
832
+ {
833
+ name: "from",
834
+ type: "address",
835
+ indexed: true,
836
+ internalType: "address",
837
+ },
838
+ {
839
+ name: "amount",
840
+ type: "uint256",
841
+ indexed: false,
842
+ internalType: "uint256",
843
+ },
844
+ {
845
+ name: "sender",
846
+ type: "address",
847
+ indexed: true,
848
+ internalType: "address",
849
+ },
850
+ ],
851
+ anonymous: false,
852
+ },
853
+ {
854
+ type: "event",
855
+ name: "CrosschainMint",
856
+ inputs: [
857
+ {
858
+ name: "to",
859
+ type: "address",
860
+ indexed: true,
861
+ internalType: "address",
862
+ },
863
+ {
864
+ name: "amount",
865
+ type: "uint256",
866
+ indexed: false,
867
+ internalType: "uint256",
868
+ },
869
+ {
870
+ name: "sender",
871
+ type: "address",
872
+ indexed: true,
873
+ internalType: "address",
874
+ },
875
+ ],
876
+ anonymous: false,
877
+ },
878
+ {
879
+ type: "event",
880
+ name: "DelegateChanged",
881
+ inputs: [
882
+ {
883
+ name: "delegator",
884
+ type: "address",
885
+ indexed: true,
886
+ internalType: "address",
887
+ },
888
+ {
889
+ name: "from",
890
+ type: "address",
891
+ indexed: true,
892
+ internalType: "address",
893
+ },
894
+ {
895
+ name: "to",
896
+ type: "address",
897
+ indexed: true,
898
+ internalType: "address",
899
+ },
900
+ ],
901
+ anonymous: false,
902
+ },
903
+ {
904
+ type: "event",
905
+ name: "DelegateVotesChanged",
906
+ inputs: [
907
+ {
908
+ name: "delegate",
909
+ type: "address",
910
+ indexed: true,
911
+ internalType: "address",
912
+ },
913
+ {
914
+ name: "oldValue",
915
+ type: "uint256",
916
+ indexed: false,
917
+ internalType: "uint256",
918
+ },
919
+ {
920
+ name: "newValue",
921
+ type: "uint256",
922
+ indexed: false,
923
+ internalType: "uint256",
924
+ },
925
+ ],
926
+ anonymous: false,
927
+ },
928
+ {
929
+ type: "event",
930
+ name: "Initialized",
931
+ inputs: [
932
+ {
933
+ name: "version",
934
+ type: "uint64",
935
+ indexed: false,
936
+ internalType: "uint64",
937
+ },
938
+ ],
939
+ anonymous: false,
940
+ },
941
+ {
942
+ type: "event",
943
+ name: "InterfaceAdded",
944
+ inputs: [
945
+ {
946
+ name: "interfaceId",
947
+ type: "bytes4",
948
+ indexed: true,
949
+ internalType: "bytes4",
950
+ },
951
+ ],
952
+ anonymous: false,
953
+ },
954
+ {
955
+ type: "event",
956
+ name: "InterfaceRemoved",
957
+ inputs: [
958
+ {
959
+ name: "interfaceId",
960
+ type: "bytes4",
961
+ indexed: true,
962
+ internalType: "bytes4",
963
+ },
964
+ ],
965
+ anonymous: false,
966
+ },
967
+ {
968
+ type: "event",
969
+ name: "LockUpdated",
970
+ inputs: [
971
+ {
972
+ name: "account",
973
+ type: "address",
974
+ indexed: true,
975
+ internalType: "address",
976
+ },
977
+ {
978
+ name: "enabled",
979
+ type: "bool",
980
+ indexed: true,
981
+ internalType: "bool",
982
+ },
983
+ {
984
+ name: "expiration",
985
+ type: "uint256",
986
+ indexed: false,
987
+ internalType: "uint256",
988
+ },
989
+ ],
990
+ anonymous: false,
991
+ },
992
+ {
993
+ type: "event",
994
+ name: "OwnershipHandoverCanceled",
995
+ inputs: [
996
+ {
997
+ name: "pendingOwner",
998
+ type: "address",
999
+ indexed: true,
1000
+ internalType: "address",
1001
+ },
1002
+ ],
1003
+ anonymous: false,
1004
+ },
1005
+ {
1006
+ type: "event",
1007
+ name: "OwnershipHandoverRequested",
1008
+ inputs: [
1009
+ {
1010
+ name: "pendingOwner",
1011
+ type: "address",
1012
+ indexed: true,
1013
+ internalType: "address",
1014
+ },
1015
+ ],
1016
+ anonymous: false,
1017
+ },
1018
+ {
1019
+ type: "event",
1020
+ name: "OwnershipTransferred",
1021
+ inputs: [
1022
+ {
1023
+ name: "oldOwner",
1024
+ type: "address",
1025
+ indexed: true,
1026
+ internalType: "address",
1027
+ },
1028
+ {
1029
+ name: "newOwner",
1030
+ type: "address",
1031
+ indexed: true,
1032
+ internalType: "address",
1033
+ },
1034
+ ],
1035
+ anonymous: false,
1036
+ },
1037
+ {
1038
+ type: "event",
1039
+ name: "Transfer",
1040
+ inputs: [
1041
+ {
1042
+ name: "from",
1043
+ type: "address",
1044
+ indexed: true,
1045
+ internalType: "address",
1046
+ },
1047
+ {
1048
+ name: "to",
1049
+ type: "address",
1050
+ indexed: true,
1051
+ internalType: "address",
1052
+ },
1053
+ {
1054
+ name: "amount",
1055
+ type: "uint256",
1056
+ indexed: false,
1057
+ internalType: "uint256",
1058
+ },
1059
+ ],
1060
+ anonymous: false,
1061
+ },
1062
+ {
1063
+ type: "event",
1064
+ name: "Upgraded",
1065
+ inputs: [
1066
+ {
1067
+ name: "implementation",
1068
+ type: "address",
1069
+ indexed: true,
1070
+ internalType: "address",
1071
+ },
1072
+ ],
1073
+ anonymous: false,
1074
+ },
1075
+ {
1076
+ type: "error",
1077
+ name: "AllowanceOverflow",
1078
+ inputs: [],
1079
+ },
1080
+ {
1081
+ type: "error",
1082
+ name: "AllowanceUnderflow",
1083
+ inputs: [],
1084
+ },
1085
+ {
1086
+ type: "error",
1087
+ name: "AlreadyInitialized",
1088
+ inputs: [],
1089
+ },
1090
+ {
1091
+ type: "error",
1092
+ name: "DelegateeSameAsCurrent",
1093
+ inputs: [],
1094
+ },
1095
+ {
1096
+ type: "error",
1097
+ name: "ERC5805CheckpointIndexOutOfBounds",
1098
+ inputs: [],
1099
+ },
1100
+ {
1101
+ type: "error",
1102
+ name: "ERC5805CheckpointValueOverflow",
1103
+ inputs: [],
1104
+ },
1105
+ {
1106
+ type: "error",
1107
+ name: "ERC5805CheckpointValueUnderflow",
1108
+ inputs: [],
1109
+ },
1110
+ {
1111
+ type: "error",
1112
+ name: "ERC5805DelegateInvalidSignature",
1113
+ inputs: [],
1114
+ },
1115
+ {
1116
+ type: "error",
1117
+ name: "ERC5805DelegateSignatureExpired",
1118
+ inputs: [],
1119
+ },
1120
+ {
1121
+ type: "error",
1122
+ name: "ERC5805FutureLookup",
1123
+ inputs: [],
1124
+ },
1125
+ {
1126
+ type: "error",
1127
+ name: "InsufficientAllowance",
1128
+ inputs: [],
1129
+ },
1130
+ {
1131
+ type: "error",
1132
+ name: "InsufficientBalance",
1133
+ inputs: [],
1134
+ },
1135
+ {
1136
+ type: "error",
1137
+ name: "Introspection_AlreadySupported",
1138
+ inputs: [],
1139
+ },
1140
+ {
1141
+ type: "error",
1142
+ name: "Introspection_NotSupported",
1143
+ inputs: [],
1144
+ },
1145
+ {
1146
+ type: "error",
1147
+ name: "InvalidInitialization",
1148
+ inputs: [],
1149
+ },
1150
+ {
1151
+ type: "error",
1152
+ name: "InvalidPermit",
1153
+ inputs: [],
1154
+ },
1155
+ {
1156
+ type: "error",
1157
+ name: "LockNotAuthorized",
1158
+ inputs: [],
1159
+ },
1160
+ {
1161
+ type: "error",
1162
+ name: "NewOwnerIsZeroAddress",
1163
+ inputs: [],
1164
+ },
1165
+ {
1166
+ type: "error",
1167
+ name: "NoHandoverRequest",
1168
+ inputs: [],
1169
+ },
1170
+ {
1171
+ type: "error",
1172
+ name: "NotInitializing",
1173
+ inputs: [],
1174
+ },
1175
+ {
1176
+ type: "error",
1177
+ name: "Permit2AllowanceIsFixedAtInfinity",
1178
+ inputs: [],
1179
+ },
1180
+ {
1181
+ type: "error",
1182
+ name: "PermitExpired",
1183
+ inputs: [],
1184
+ },
1185
+ {
1186
+ type: "error",
1187
+ name: "TotalSupplyOverflow",
1188
+ inputs: [],
1189
+ },
1190
+ {
1191
+ type: "error",
1192
+ name: "TransferLockEnabled",
1193
+ inputs: [],
1194
+ },
1195
+ {
1196
+ type: "error",
1197
+ name: "Unauthorized",
1198
+ inputs: [],
1199
+ },
1200
+ {
1201
+ type: "error",
1202
+ name: "UnauthorizedCallContext",
1203
+ inputs: [],
1204
+ },
1205
+ {
1206
+ type: "error",
1207
+ name: "UpgradeFailed",
1208
+ inputs: [],
1209
+ },
1210
+ ] as const;
1211
+
1212
+ const _bytecode =
1213
+ "0x60a0604052306080523480156012575f5ffd5b506019601d565b6080565b63409feecd1980546001811615603a5763f92ee8a95f526004601cfd5b6001600160401b03808260011c14607b578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b60805161272861009f5f395f8181611c860152611cbd01526127285ff3fe6080604052600436106102e2575f3560e01c8063715018a611610186578063ae1f6aaf116100dc578063d6c0b2c411610087578063f04e283e11610062578063f04e283e14610993578063f2fde38b146109a6578063fee81cf4146109b9575f5ffd5b8063d6c0b2c4146108ba578063dd62ed3e14610974578063e78cea9214610894575f5ffd5b8063c7a2f1de116100b7578063c7a2f1de14610922578063cd63c4d214610941578063d505accf14610955575f5ffd5b8063ae1f6aaf14610894578063c01e1bd6146108ba578063c3cda52014610903575f5ffd5b80638da5cb5b1161013c5780639ab24eb0116101175780639ab24eb0146108375780639dc29fac14610856578063a9059cbb14610875575f5ffd5b80638da5cb5b1461079d57806391ddadf4146107d057806395d89b41146107f2575f5ffd5b80637ecebe001161016c5780637ecebe00146107105780637f73540c1461074157806384a0e08214610760575f5ffd5b8063715018a6146106d057806376a82342146106d8575f5ffd5b80633a46b1a81161023b57806352d1902d116101f1578063587cde1e116101cc578063587cde1e1461062e5780635c19a95c1461068057806370a082311461069f575f5ffd5b806352d1902d146105cd57806354d1f13d146105e157806354fd4d50146105e9575f5ffd5b8063485cc95511610221578063485cc955146105565780634bf5d7e9146105755780634f1ef286146105ba575f5ffd5b80633a46b1a81461051857806340c10f1914610537575f5ffd5b806323b872dd1161029b5780632b8c49e3116102765780632b8c49e314610414578063313ce567146104335780633644e5151461044e575f5ffd5b806323b872dd146103ce57806325692962146103ed57806328162566146103f5575f5ffd5b8063095ea7b3116102cb578063095ea7b31461036857806318160ddd1461038757806318bf5077146103ad575f5ffd5b806301ffc9a7146102e657806306fdde031461031a575b5f5ffd5b3480156102f1575f5ffd5b50610305610300366004612430565b6109ea565b60405190151581526020015b60405180910390f35b348015610325575f5ffd5b5060408051808201909152600581527f546f776e7300000000000000000000000000000000000000000000000000000060208201525b604051610311919061246f565b348015610373575f5ffd5b506103056103823660046124e5565b610a44565b348015610392575f5ffd5b506805345cdf77eb68f44c545b604051908152602001610311565b3480156103b8575f5ffd5b506103cc6103c73660046124e5565b610ad0565b005b3480156103d9575f5ffd5b506103056103e836600461250d565b610b70565b6103cc610c55565b348015610400575f5ffd5b5061039f61040f366004612547565b610ca2565b34801561041f575f5ffd5b506103cc61042e3660046124e5565b610ceb565b34801561043e575f5ffd5b5060405160128152602001610311565b348015610459575f5ffd5b50604080518082018252600581527f546f776e7300000000000000000000000000000000000000000000000000000060209182015281517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81527fa40fbb70ec34ea8f6c23cf82b55213860ae24ffafadff8e9ae4cb556f54d1958918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc69181019190915246606082015230608082015260a0902061039f565b348015610523575f5ffd5b5061039f6105323660046124e5565b610d83565b348015610542575f5ffd5b506103cc6105513660046124e5565b610dc1565b348015610561575f5ffd5b506103cc610570366004612560565b610e13565b348015610580575f5ffd5b5060408051808201909152600e81527f6d6f64653d74696d657374616d70000000000000000000000000000000000000602082015261035b565b6103cc6105c8366004612591565b6110ad565b3480156105d8575f5ffd5b5061039f611161565b6103cc61118f565b3480156105f4575f5ffd5b5060408051808201909152600d81527f312e302e302d626574612e313200000000000000000000000000000000000000602082015261035b565b348015610639575f5ffd5b5061065b610648366004612547565b63ff466c9f6004525f526018600c205490565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610311565b34801561068b575f5ffd5b506103cc61069a366004612547565b6111c8565b3480156106aa575f5ffd5b5061039f6106b9366004612547565b6387a211a2600c9081525f91909152602090205490565b6103cc6111d5565b3480156106e3575f5ffd5b5061039f6106f2366004612547565b63ff466c9f6004525f526017600c205460301c65ffffffffffff1690565b34801561071b575f5ffd5b5061039f61072a366004612547565b6338377508600c9081525f91909152602090205490565b34801561074c575f5ffd5b5061030561075b366004612547565b6111e8565b34801561076b575f5ffd5b5061077f61077a3660046124e5565b6111f2565b6040805165ffffffffffff9093168352602083019190915201610311565b3480156107a8575f5ffd5b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739275461065b565b3480156107db575f5ffd5b5060405165ffffffffffff42168152602001610311565b3480156107fd575f5ffd5b5060408051808201909152600581527f544f574e53000000000000000000000000000000000000000000000000000000602082015261035b565b348015610842575f5ffd5b5061039f610851366004612547565b611253565b348015610861575f5ffd5b506103cc6108703660046124e5565b611272565b348015610880575f5ffd5b5061030561088f3660046124e5565b6112c0565b34801561089f575f5ffd5b5073420000000000000000000000000000000000001061065b565b3480156108c5575f5ffd5b507f708ba15393f53e4db9d749d00ba2ba89a43d1e182bc44eaf801b83b223310b005473ffffffffffffffffffffffffffffffffffffffff1661065b565b34801561090e575f5ffd5b506103cc61091d36600461261f565b61134d565b34801561092d575f5ffd5b5061039f61093c366004612673565b6114f6565b34801561094c575f5ffd5b5061039f611528565b348015610960575f5ffd5b506103cc61096f36600461268a565b611547565b34801561097f575f5ffd5b5061039f61098e366004612560565b61175d565b6103cc6109a1366004612547565b6117dd565b6103cc6109b4366004612547565b611817565b3480156109c4575f5ffd5b5061039f6109d3366004612547565b63389a75e1600c9081525f91909152602090205490565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604081205460ff165b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff83166e22d473030f116ddee9f6b43ac78ba31882191517610a8257633f68539a5f526004601cfd5b82602052637f5e9f20600c52335f52816034600c2055815f52602c5160601c337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa350600192915050565b3373420000000000000000000000000000000000002814610b1457610b147f82b429000000000000000000000000000000000000000000000000000000000061183d565b610b1e8282611845565b604051818152339073ffffffffffffffffffffffffffffffffffffffff8416907fde22baff038e3a3e08407cbdf617deed74e869a7ba517df611e33131c6e6ea04906020015b60405180910390a35050565b5f610b7c8484846118d3565b8360601b6e22d473030f116ddee9f6b43ac78ba33314610bd05733602052637f5e9f208117600c526034600c208054801915610bcd5780851115610bc7576313be252b5f526004601cfd5b84810382555b50505b6387a211a28117600c526020600c20805480851115610bf65763f4d678b85f526004601cfd5b84810382555050835f526020600c208381540181555082602052600c5160601c8160601c7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a350610c4b84848461192a565b5060019392505050565b5f6202a30067ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f5fa250565b73ffffffffffffffffffffffffffffffffffffffff81165f9081527ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c36020526040812054610a3e565b3373420000000000000000000000000000000000002814610d2f57610d2f7f82b429000000000000000000000000000000000000000000000000000000000061183d565b610d398282611935565b604051818152339073ffffffffffffffffffffffffffffffffffffffff8416907fb90795a66650155983e242cac3e1ac1a4dc26f8ed2987f3ce416a34e00111fd490602001610b64565b5f4265ffffffffffff168210610d9b57610d9b6119c8565b610dba610db48463ff466c9f6004525f526017600c2090565b836119d5565b9392505050565b3373420000000000000000000000000000000000001014610e0557610e057f82b429000000000000000000000000000000000000000000000000000000000061183d565b610e0f8282611845565b5050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011328054600382558015610e645760018160011c14303b10610e5b5763f92ee8a95f526004601cfd5b818160ff1b1b91505b50610e6e82611aa3565b7f708ba15393f53e4db9d749d00ba2ba89a43d1e182bc44eaf801b83b223310b0080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8516179055610ed962278d00611b06565b610f027f36372b0700000000000000000000000000000000000000000000000000000000611b2e565b610f2b7fa219a02500000000000000000000000000000000000000000000000000000000611b2e565b610f547f9d8ff7da00000000000000000000000000000000000000000000000000000000611b2e565b610f7d7fda287a1d00000000000000000000000000000000000000000000000000000000611b2e565b610fa67f01ffc9a700000000000000000000000000000000000000000000000000000000611b2e565b610fcf7fe90fb3f600000000000000000000000000000000000000000000000000000000611b2e565b610ff87fec4fc8e300000000000000000000000000000000000000000000000000000000611b2e565b6110217f1d1d8b6300000000000000000000000000000000000000000000000000000000611b2e565b61104a7f54fd4d5000000000000000000000000000000000000000000000000000000000611b2e565b6110737f3333199400000000000000000000000000000000000000000000000000000000611b2e565b80156110a8576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b6110b5611c83565b6110be83611cb2565b8260601b60601c92503d5f526352d1902d6001527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80602060016004601d885afa5114611113576355299b496001526004601dfd5b837fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f38a283905580156110a857604051818382375f388383875af461115b573d5f823e3d81fd5b50505050565b5f61116a611cba565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f5fa2565b6111d23382611ce9565b50565b6111dd611d80565b6111e65f611db5565b565b5f610a3e82611e1a565b5f5f5f61120b8563ff466c9f6004525f526017600c2090565b9050805460a01b60d01c8410611228576386df9d105f526004601cfd5b8381015465ffffffffffff8116935060601c915030820361124b57808401195491505b509250929050565b5f610a3e61126d8363ff466c9f6004525f526017600c2090565b611ec0565b33734200000000000000000000000000000000000010146112b6576112b67f82b429000000000000000000000000000000000000000000000000000000000061183d565b610e0f8282611935565b5f6112cc3384846118d3565b6387a211a2600c52335f526020600c208054808411156112f35763f4d678b85f526004601cfd5b83810382555050825f526020600c208281540181555081602052600c5160601c337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a361134433848461192a565b50600192915050565b60408051808201909152600581527f546f776e730000000000000000000000000000000000000000000000000000006020909101525f7fa40fbb70ec34ea8f6c23cf82b55213860ae24ffafadff8e9ae4cb556f54d19587fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6428710156113da57633480e9e15f526004601cfd5b6040517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf5f528960601b60601c602052886040528760605260805f206040526119015f527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f815282602082015281604082015246606082015230608082015260a081206020526042601e205f528660ff1660205285604052846060526020600160805f60015afa51935080604052505f6060523d15965086886114ae856338377508600c9081525f91909152602090205490565b1817156114c257631838d95c5f526004601cfd5b6114e1836338377508600c52805f526020600c20805460010181555050565b6114eb838a611ce9565b505050505050505050565b5f4265ffffffffffff16821061150e5761150e6119c8565b610a3e6fff466c9f000000000000000000000000836119d5565b5f6115426fff466c9f000000000000000000000000611ec0565b905090565b73ffffffffffffffffffffffffffffffffffffffff86166e22d473030f116ddee9f6b43ac78ba3188519151761158457633f68539a5f526004601cfd5b60408051808201909152600581527f546f776e730000000000000000000000000000000000000000000000000000006020909101527fa40fbb70ec34ea8f6c23cf82b55213860ae24ffafadff8e9ae4cb556f54d19587fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc64286101561161057631a15a3cc5f526004601cfd5b6040518960601b60601c99508860601b60601c985065383775081901600e52895f526020600c2080547f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835284602084015283604084015246606084015230608084015260a08320602e527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c983528b60208401528a60408401528960608401528060808401528860a084015260c08320604e526042602c205f528760ff16602052866040528560605260208060805f60015afa8c3d51146116f85763ddafbaef5f526004601cfd5b019055777f5e9f20000000000000000000000000000000000000000089176040526034602c20889055888a7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925602060608501a360405250505f60605250505050505050565b5f7fffffffffffffffffffffffffffffffffffdd2b8cfcf0ee922116094bc538745d73ffffffffffffffffffffffffffffffffffffffff8316016117c257507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610a3e565b50602052637f5e9f20600c9081525f91909152603490205490565b6117e5611d80565b63389a75e1600c52805f526020600c20805442111561180b57636f5e88185f526004601cfd5b5f90556111d281611db5565b61181f611d80565b8060601b61183457637448fbae5f526004601cfd5b6111d281611db5565b805f5260045ffd5b6118505f83836118d3565b6805345cdf77eb68f44c54818101818110156118735763e5cfe9575f526004601cfd5b806805345cdf77eb68f44c5550506387a211a2600c52815f526020600c208181540181555080602052600c5160601c5f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a3610e0f5f838361192a565b73ffffffffffffffffffffffffffffffffffffffff8316158015906118fc57506118fc83611e1a565b156110a8576110a87f55c421950000000000000000000000000000000000000000000000000000000061183d565b6110a8838383611f0a565b611940825f836118d3565b6387a211a2600c52815f526020600c208054808311156119675763f4d678b85f526004601cfd5b82900390556805345cdf77eb68f44c805482900390555f81815273ffffffffffffffffffffffffffffffffffffffff83167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602083a3610e0f825f8361192a565b63f98744645f526004601cfd5b5f5f835460a01b60d01c60068110611a4957601061ffff821160041b82811c60ff1060031b17600190811c9190911b80830401811c80830401811c80830401811c80830401811c80830401811c80830401901c81038581015465ffffffffffff168510611a46576001019150611a49565b90505b5b80821015611a7b5780820160011c65ffffffffffff86820154168510611a74576001019150611a4a565b9050611a4a565b8460018203019150815460601c81151502925050308203611a9c5780195491505b5092915050565b73ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b6111d2817ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c155565b7fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b00602052604090205460ff16611c02577fffffffff0000000000000000000000000000000000000000000000000000000081165f9081527f81088bbc801e045ea3e7620779ab349988f58afbdfba10dff983df3f33522b006020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055611c34565b6040517ff2cfeefa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fffffffff000000000000000000000000000000000000000000000000000000008216907f78f84e5b1c5c05be2b5ad3800781dd404d6d6c6302bc755c0fe20f58a33a7f22905f90a250565b307f0000000000000000000000000000000000000000000000000000000000000000036111e6576111e6611fc6565b6111d2611d80565b307f0000000000000000000000000000000000000000000000000000000000000000146111e6576111e6611fc6565b63ff466c9f6004525f8290526018600c205473ffffffffffffffffffffffffffffffffffffffff80831690821603611d4457611d447f09ca3c9c0000000000000000000000000000000000000000000000000000000061183d565b73ffffffffffffffffffffffffffffffffffffffff8216611d6d57611d6883611fd3565b611d76565b611d7683612096565b6110a88383612184565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739275433146111e6576382b429005f526004601cfd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805473ffffffffffffffffffffffffffffffffffffffff9092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b73ffffffffffffffffffffffffffffffffffffffff81165f9081527ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c260205260408120547ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c19060ff1615611e915750600192915050565b73ffffffffffffffffffffffffffffffffffffffff9092165f9081526002909201602052506040902054421090565b5f815460a01b60d01c90508015611f0557017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01805460601c308103611f0557508019545b919050565b73ffffffffffffffffffffffffffffffffffffffff8316611f4d57611f4a6fff466c9f0000000000000000000000004265ffffffffffff168360016121e4565b50505b73ffffffffffffffffffffffffffffffffffffffff8216611f8f57611f8c6fff466c9f0000000000000000000000004265ffffffffffff16835f6121e4565b50505b6110a8611fa98463ff466c9f6004525f526018600c205490565b611fc08463ff466c9f6004525f526018600c205490565b83612312565b639f03a0265f526004601cfd5b7ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c180545f9061200290426126f0565b73ffffffffffffffffffffffffffffffffffffffff84165f818152600185016020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556002870182528083208590555184815293945090927fe16066c96aababa72475f0b2768d3b6181ea150033042b37d0646737caa4a501910160405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff81165f8181527ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c26020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660019081179091557ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c3835281842084905590519283527ffd180fd2eec04a0893e9c9ad4329d2f65f17d7fd0b4133b91663887d04d247c193909290917fe16066c96aababa72475f0b2768d3b6181ea150033042b37d0646737caa4a5019101610b64565b5f8160601b60601c63ff466c9f600452835f526018600c2080549250818155508082600c5160601c7f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f5f5fa4506110a881836121df86612417565b612312565b5f5f85548060a01b60d01c8061224a578515851761220957635915f6865f526004601cfd5b8592508260a01c3084141761222f57606083901b87176601000000000000178855612307565b3060601b871766010000000000001788558719839055612307565b87600182030180548060601c95503086036122655781195495505b866122845787860394508585111561229e57635915f6865f526004601cfd5b87860194508585101561229e57639dbbeb755f526004601cfd5b65ffffffffffff168881146122c557660100000000000084018a5560019283019291909101905b8260301c89821117156122d457fe5b508360a01c308514176122f4578360601b8260301b891717815550612307565b3060601b8260301b891717815583811955505b505094509492505050565b8061231c57505050565b73ffffffffffffffffffffffffffffffffffffffff808416908316808203612345575050505050565b81156123aa575f5f6123766123668863ff466c9f6004525f526017600c2090565b4265ffffffffffff16875f6121e4565b91509150815f5280602052837fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72460405fa250505b8015612410575f5f6123dc6123cb8763ff466c9f6004525f526017600c2090565b4265ffffffffffff168760016121e4565b91509150815f5280602052827fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72460405fa250505b5050505050565b6387a211a2600c9081525f828152602090912054610a3e565b5f60208284031215612440575f5ffd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610dba575f5ffd5b602081525f82518060208401528060208501604085015e5f6040828501015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011684010191505092915050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611f05575f5ffd5b5f5f604083850312156124f6575f5ffd5b6124ff836124c2565b946020939093013593505050565b5f5f5f6060848603121561251f575f5ffd5b612528846124c2565b9250612536602085016124c2565b929592945050506040919091013590565b5f60208284031215612557575f5ffd5b610dba826124c2565b5f5f60408385031215612571575f5ffd5b61257a836124c2565b9150612588602084016124c2565b90509250929050565b5f5f5f604084860312156125a3575f5ffd5b6125ac846124c2565b9250602084013567ffffffffffffffff8111156125c7575f5ffd5b8401601f810186136125d7575f5ffd5b803567ffffffffffffffff8111156125ed575f5ffd5b8660208284010111156125fe575f5ffd5b939660209190910195509293505050565b803560ff81168114611f05575f5ffd5b5f5f5f5f5f5f60c08789031215612634575f5ffd5b61263d876124c2565b955060208701359450604087013593506126596060880161260f565b9598949750929560808101359460a0909101359350915050565b5f60208284031215612683575f5ffd5b5035919050565b5f5f5f5f5f5f5f60e0888a0312156126a0575f5ffd5b6126a9886124c2565b96506126b7602089016124c2565b955060408801359450606088013593506126d36080890161260f565b9699959850939692959460a0840135945060c09093013592915050565b80820180821115610a3e577f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd";
1214
+
1215
+ type TownsConstructorParams =
1216
+ | [signer?: Signer]
1217
+ | ConstructorParameters<typeof ContractFactory>;
1218
+
1219
+ const isSuperArgs = (
1220
+ xs: TownsConstructorParams
1221
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1222
+
1223
+ export class Towns__factory extends ContractFactory {
1224
+ constructor(...args: TownsConstructorParams) {
1225
+ if (isSuperArgs(args)) {
1226
+ super(...args);
1227
+ } else {
1228
+ super(_abi, _bytecode, args[0]);
1229
+ }
1230
+ }
1231
+
1232
+ override deploy(
1233
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
1234
+ ): Promise<Towns> {
1235
+ return super.deploy(overrides || {}) as Promise<Towns>;
1236
+ }
1237
+ override getDeployTransaction(
1238
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
1239
+ ): TransactionRequest {
1240
+ return super.getDeployTransaction(overrides || {});
1241
+ }
1242
+ override attach(address: string): Towns {
1243
+ return super.attach(address) as Towns;
1244
+ }
1245
+ override connect(signer: Signer): Towns__factory {
1246
+ return super.connect(signer) as Towns__factory;
1247
+ }
1248
+
1249
+ static readonly bytecode = _bytecode;
1250
+ static readonly abi = _abi;
1251
+ static createInterface(): TownsInterface {
1252
+ return new utils.Interface(_abi) as TownsInterface;
1253
+ }
1254
+ static connect(address: string, signerOrProvider: Signer | Provider): Towns {
1255
+ return new Contract(address, _abi, signerOrProvider) as Towns;
1256
+ }
1257
+ }