@across-protocol/contracts 4.1.0 → 4.1.1

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,3131 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Bob_SpokePool__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ const ethers_1 = require("ethers");
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "address",
13
+ name: "_wrappedNativeTokenAddress",
14
+ type: "address",
15
+ },
16
+ {
17
+ internalType: "uint32",
18
+ name: "_depositQuoteTimeBuffer",
19
+ type: "uint32",
20
+ },
21
+ {
22
+ internalType: "uint32",
23
+ name: "_fillDeadlineBuffer",
24
+ type: "uint32",
25
+ },
26
+ {
27
+ internalType: "contract IERC20",
28
+ name: "_l2Usdc",
29
+ type: "address",
30
+ },
31
+ {
32
+ internalType: "contract ITokenMessenger",
33
+ name: "_cctpTokenMessenger",
34
+ type: "address",
35
+ },
36
+ ],
37
+ stateMutability: "nonpayable",
38
+ type: "constructor",
39
+ },
40
+ {
41
+ inputs: [],
42
+ name: "ClaimedMerkleLeaf",
43
+ type: "error",
44
+ },
45
+ {
46
+ inputs: [],
47
+ name: "DepositsArePaused",
48
+ type: "error",
49
+ },
50
+ {
51
+ inputs: [],
52
+ name: "DisabledRoute",
53
+ type: "error",
54
+ },
55
+ {
56
+ inputs: [],
57
+ name: "ExpiredFillDeadline",
58
+ type: "error",
59
+ },
60
+ {
61
+ inputs: [],
62
+ name: "FillsArePaused",
63
+ type: "error",
64
+ },
65
+ {
66
+ inputs: [],
67
+ name: "InsufficientSpokePoolBalanceToExecuteLeaf",
68
+ type: "error",
69
+ },
70
+ {
71
+ inputs: [],
72
+ name: "InvalidBytes32",
73
+ type: "error",
74
+ },
75
+ {
76
+ inputs: [],
77
+ name: "InvalidChainId",
78
+ type: "error",
79
+ },
80
+ {
81
+ inputs: [],
82
+ name: "InvalidCrossDomainAdmin",
83
+ type: "error",
84
+ },
85
+ {
86
+ inputs: [],
87
+ name: "InvalidDepositorSignature",
88
+ type: "error",
89
+ },
90
+ {
91
+ inputs: [],
92
+ name: "InvalidExclusiveRelayer",
93
+ type: "error",
94
+ },
95
+ {
96
+ inputs: [],
97
+ name: "InvalidFillDeadline",
98
+ type: "error",
99
+ },
100
+ {
101
+ inputs: [],
102
+ name: "InvalidMerkleLeaf",
103
+ type: "error",
104
+ },
105
+ {
106
+ inputs: [],
107
+ name: "InvalidMerkleProof",
108
+ type: "error",
109
+ },
110
+ {
111
+ inputs: [],
112
+ name: "InvalidPayoutAdjustmentPct",
113
+ type: "error",
114
+ },
115
+ {
116
+ inputs: [],
117
+ name: "InvalidQuoteTimestamp",
118
+ type: "error",
119
+ },
120
+ {
121
+ inputs: [],
122
+ name: "InvalidRelayerFeePct",
123
+ type: "error",
124
+ },
125
+ {
126
+ inputs: [],
127
+ name: "InvalidSlowFillRequest",
128
+ type: "error",
129
+ },
130
+ {
131
+ inputs: [],
132
+ name: "InvalidWithdrawalRecipient",
133
+ type: "error",
134
+ },
135
+ {
136
+ inputs: [
137
+ {
138
+ internalType: "bytes",
139
+ name: "data",
140
+ type: "bytes",
141
+ },
142
+ ],
143
+ name: "LowLevelCallFailed",
144
+ type: "error",
145
+ },
146
+ {
147
+ inputs: [],
148
+ name: "MaxTransferSizeExceeded",
149
+ type: "error",
150
+ },
151
+ {
152
+ inputs: [],
153
+ name: "MsgValueDoesNotMatchInputAmount",
154
+ type: "error",
155
+ },
156
+ {
157
+ inputs: [],
158
+ name: "NoRelayerRefundToClaim",
159
+ type: "error",
160
+ },
161
+ {
162
+ inputs: [],
163
+ name: "NoSlowFillsInExclusivityWindow",
164
+ type: "error",
165
+ },
166
+ {
167
+ inputs: [],
168
+ name: "NotCrossChainCall",
169
+ type: "error",
170
+ },
171
+ {
172
+ inputs: [],
173
+ name: "NotCrossDomainAdmin",
174
+ type: "error",
175
+ },
176
+ {
177
+ inputs: [],
178
+ name: "NotEOA",
179
+ type: "error",
180
+ },
181
+ {
182
+ inputs: [],
183
+ name: "NotExclusiveRelayer",
184
+ type: "error",
185
+ },
186
+ {
187
+ inputs: [],
188
+ name: "RelayFilled",
189
+ type: "error",
190
+ },
191
+ {
192
+ inputs: [],
193
+ name: "WrongERC7683OrderId",
194
+ type: "error",
195
+ },
196
+ {
197
+ anonymous: false,
198
+ inputs: [
199
+ {
200
+ indexed: false,
201
+ internalType: "address",
202
+ name: "previousAdmin",
203
+ type: "address",
204
+ },
205
+ {
206
+ indexed: false,
207
+ internalType: "address",
208
+ name: "newAdmin",
209
+ type: "address",
210
+ },
211
+ ],
212
+ name: "AdminChanged",
213
+ type: "event",
214
+ },
215
+ {
216
+ anonymous: false,
217
+ inputs: [
218
+ {
219
+ indexed: true,
220
+ internalType: "address",
221
+ name: "beacon",
222
+ type: "address",
223
+ },
224
+ ],
225
+ name: "BeaconUpgraded",
226
+ type: "event",
227
+ },
228
+ {
229
+ anonymous: false,
230
+ inputs: [
231
+ {
232
+ indexed: true,
233
+ internalType: "bytes32",
234
+ name: "l2TokenAddress",
235
+ type: "bytes32",
236
+ },
237
+ {
238
+ indexed: true,
239
+ internalType: "bytes32",
240
+ name: "refundAddress",
241
+ type: "bytes32",
242
+ },
243
+ {
244
+ indexed: false,
245
+ internalType: "uint256",
246
+ name: "amount",
247
+ type: "uint256",
248
+ },
249
+ {
250
+ indexed: true,
251
+ internalType: "address",
252
+ name: "caller",
253
+ type: "address",
254
+ },
255
+ ],
256
+ name: "ClaimedRelayerRefund",
257
+ type: "event",
258
+ },
259
+ {
260
+ anonymous: false,
261
+ inputs: [
262
+ {
263
+ indexed: true,
264
+ internalType: "uint256",
265
+ name: "rootBundleId",
266
+ type: "uint256",
267
+ },
268
+ ],
269
+ name: "EmergencyDeletedRootBundle",
270
+ type: "event",
271
+ },
272
+ {
273
+ anonymous: false,
274
+ inputs: [
275
+ {
276
+ indexed: true,
277
+ internalType: "address",
278
+ name: "originToken",
279
+ type: "address",
280
+ },
281
+ {
282
+ indexed: true,
283
+ internalType: "uint256",
284
+ name: "destinationChainId",
285
+ type: "uint256",
286
+ },
287
+ {
288
+ indexed: false,
289
+ internalType: "bool",
290
+ name: "enabled",
291
+ type: "bool",
292
+ },
293
+ ],
294
+ name: "EnabledDepositRoute",
295
+ type: "event",
296
+ },
297
+ {
298
+ anonymous: false,
299
+ inputs: [
300
+ {
301
+ indexed: false,
302
+ internalType: "uint256",
303
+ name: "amountToReturn",
304
+ type: "uint256",
305
+ },
306
+ {
307
+ indexed: true,
308
+ internalType: "uint256",
309
+ name: "chainId",
310
+ type: "uint256",
311
+ },
312
+ {
313
+ indexed: false,
314
+ internalType: "uint256[]",
315
+ name: "refundAmounts",
316
+ type: "uint256[]",
317
+ },
318
+ {
319
+ indexed: true,
320
+ internalType: "uint32",
321
+ name: "rootBundleId",
322
+ type: "uint32",
323
+ },
324
+ {
325
+ indexed: true,
326
+ internalType: "uint32",
327
+ name: "leafId",
328
+ type: "uint32",
329
+ },
330
+ {
331
+ indexed: false,
332
+ internalType: "address",
333
+ name: "l2TokenAddress",
334
+ type: "address",
335
+ },
336
+ {
337
+ indexed: false,
338
+ internalType: "address[]",
339
+ name: "refundAddresses",
340
+ type: "address[]",
341
+ },
342
+ {
343
+ indexed: false,
344
+ internalType: "bool",
345
+ name: "deferredRefunds",
346
+ type: "bool",
347
+ },
348
+ {
349
+ indexed: false,
350
+ internalType: "address",
351
+ name: "caller",
352
+ type: "address",
353
+ },
354
+ ],
355
+ name: "ExecutedRelayerRefundRoot",
356
+ type: "event",
357
+ },
358
+ {
359
+ anonymous: false,
360
+ inputs: [
361
+ {
362
+ indexed: false,
363
+ internalType: "bytes32",
364
+ name: "inputToken",
365
+ type: "bytes32",
366
+ },
367
+ {
368
+ indexed: false,
369
+ internalType: "bytes32",
370
+ name: "outputToken",
371
+ type: "bytes32",
372
+ },
373
+ {
374
+ indexed: false,
375
+ internalType: "uint256",
376
+ name: "inputAmount",
377
+ type: "uint256",
378
+ },
379
+ {
380
+ indexed: false,
381
+ internalType: "uint256",
382
+ name: "outputAmount",
383
+ type: "uint256",
384
+ },
385
+ {
386
+ indexed: false,
387
+ internalType: "uint256",
388
+ name: "repaymentChainId",
389
+ type: "uint256",
390
+ },
391
+ {
392
+ indexed: true,
393
+ internalType: "uint256",
394
+ name: "originChainId",
395
+ type: "uint256",
396
+ },
397
+ {
398
+ indexed: true,
399
+ internalType: "uint256",
400
+ name: "depositId",
401
+ type: "uint256",
402
+ },
403
+ {
404
+ indexed: false,
405
+ internalType: "uint32",
406
+ name: "fillDeadline",
407
+ type: "uint32",
408
+ },
409
+ {
410
+ indexed: false,
411
+ internalType: "uint32",
412
+ name: "exclusivityDeadline",
413
+ type: "uint32",
414
+ },
415
+ {
416
+ indexed: false,
417
+ internalType: "bytes32",
418
+ name: "exclusiveRelayer",
419
+ type: "bytes32",
420
+ },
421
+ {
422
+ indexed: true,
423
+ internalType: "bytes32",
424
+ name: "relayer",
425
+ type: "bytes32",
426
+ },
427
+ {
428
+ indexed: false,
429
+ internalType: "bytes32",
430
+ name: "depositor",
431
+ type: "bytes32",
432
+ },
433
+ {
434
+ indexed: false,
435
+ internalType: "bytes32",
436
+ name: "recipient",
437
+ type: "bytes32",
438
+ },
439
+ {
440
+ indexed: false,
441
+ internalType: "bytes32",
442
+ name: "messageHash",
443
+ type: "bytes32",
444
+ },
445
+ {
446
+ components: [
447
+ {
448
+ internalType: "bytes32",
449
+ name: "updatedRecipient",
450
+ type: "bytes32",
451
+ },
452
+ {
453
+ internalType: "bytes32",
454
+ name: "updatedMessageHash",
455
+ type: "bytes32",
456
+ },
457
+ {
458
+ internalType: "uint256",
459
+ name: "updatedOutputAmount",
460
+ type: "uint256",
461
+ },
462
+ {
463
+ internalType: "enum V3SpokePoolInterface.FillType",
464
+ name: "fillType",
465
+ type: "uint8",
466
+ },
467
+ ],
468
+ indexed: false,
469
+ internalType: "struct V3SpokePoolInterface.V3RelayExecutionEventInfo",
470
+ name: "relayExecutionInfo",
471
+ type: "tuple",
472
+ },
473
+ ],
474
+ name: "FilledRelay",
475
+ type: "event",
476
+ },
477
+ {
478
+ anonymous: false,
479
+ inputs: [
480
+ {
481
+ indexed: false,
482
+ internalType: "address",
483
+ name: "inputToken",
484
+ type: "address",
485
+ },
486
+ {
487
+ indexed: false,
488
+ internalType: "address",
489
+ name: "outputToken",
490
+ type: "address",
491
+ },
492
+ {
493
+ indexed: false,
494
+ internalType: "uint256",
495
+ name: "inputAmount",
496
+ type: "uint256",
497
+ },
498
+ {
499
+ indexed: false,
500
+ internalType: "uint256",
501
+ name: "outputAmount",
502
+ type: "uint256",
503
+ },
504
+ {
505
+ indexed: false,
506
+ internalType: "uint256",
507
+ name: "repaymentChainId",
508
+ type: "uint256",
509
+ },
510
+ {
511
+ indexed: true,
512
+ internalType: "uint256",
513
+ name: "originChainId",
514
+ type: "uint256",
515
+ },
516
+ {
517
+ indexed: true,
518
+ internalType: "uint32",
519
+ name: "depositId",
520
+ type: "uint32",
521
+ },
522
+ {
523
+ indexed: false,
524
+ internalType: "uint32",
525
+ name: "fillDeadline",
526
+ type: "uint32",
527
+ },
528
+ {
529
+ indexed: false,
530
+ internalType: "uint32",
531
+ name: "exclusivityDeadline",
532
+ type: "uint32",
533
+ },
534
+ {
535
+ indexed: false,
536
+ internalType: "address",
537
+ name: "exclusiveRelayer",
538
+ type: "address",
539
+ },
540
+ {
541
+ indexed: true,
542
+ internalType: "address",
543
+ name: "relayer",
544
+ type: "address",
545
+ },
546
+ {
547
+ indexed: false,
548
+ internalType: "address",
549
+ name: "depositor",
550
+ type: "address",
551
+ },
552
+ {
553
+ indexed: false,
554
+ internalType: "address",
555
+ name: "recipient",
556
+ type: "address",
557
+ },
558
+ {
559
+ indexed: false,
560
+ internalType: "bytes",
561
+ name: "message",
562
+ type: "bytes",
563
+ },
564
+ {
565
+ components: [
566
+ {
567
+ internalType: "address",
568
+ name: "updatedRecipient",
569
+ type: "address",
570
+ },
571
+ {
572
+ internalType: "bytes",
573
+ name: "updatedMessage",
574
+ type: "bytes",
575
+ },
576
+ {
577
+ internalType: "uint256",
578
+ name: "updatedOutputAmount",
579
+ type: "uint256",
580
+ },
581
+ {
582
+ internalType: "enum V3SpokePoolInterface.FillType",
583
+ name: "fillType",
584
+ type: "uint8",
585
+ },
586
+ ],
587
+ indexed: false,
588
+ internalType: "struct V3SpokePoolInterface.LegacyV3RelayExecutionEventInfo",
589
+ name: "relayExecutionInfo",
590
+ type: "tuple",
591
+ },
592
+ ],
593
+ name: "FilledV3Relay",
594
+ type: "event",
595
+ },
596
+ {
597
+ anonymous: false,
598
+ inputs: [
599
+ {
600
+ indexed: false,
601
+ internalType: "bytes32",
602
+ name: "inputToken",
603
+ type: "bytes32",
604
+ },
605
+ {
606
+ indexed: false,
607
+ internalType: "bytes32",
608
+ name: "outputToken",
609
+ type: "bytes32",
610
+ },
611
+ {
612
+ indexed: false,
613
+ internalType: "uint256",
614
+ name: "inputAmount",
615
+ type: "uint256",
616
+ },
617
+ {
618
+ indexed: false,
619
+ internalType: "uint256",
620
+ name: "outputAmount",
621
+ type: "uint256",
622
+ },
623
+ {
624
+ indexed: true,
625
+ internalType: "uint256",
626
+ name: "destinationChainId",
627
+ type: "uint256",
628
+ },
629
+ {
630
+ indexed: true,
631
+ internalType: "uint256",
632
+ name: "depositId",
633
+ type: "uint256",
634
+ },
635
+ {
636
+ indexed: false,
637
+ internalType: "uint32",
638
+ name: "quoteTimestamp",
639
+ type: "uint32",
640
+ },
641
+ {
642
+ indexed: false,
643
+ internalType: "uint32",
644
+ name: "fillDeadline",
645
+ type: "uint32",
646
+ },
647
+ {
648
+ indexed: false,
649
+ internalType: "uint32",
650
+ name: "exclusivityDeadline",
651
+ type: "uint32",
652
+ },
653
+ {
654
+ indexed: true,
655
+ internalType: "bytes32",
656
+ name: "depositor",
657
+ type: "bytes32",
658
+ },
659
+ {
660
+ indexed: false,
661
+ internalType: "bytes32",
662
+ name: "recipient",
663
+ type: "bytes32",
664
+ },
665
+ {
666
+ indexed: false,
667
+ internalType: "bytes32",
668
+ name: "exclusiveRelayer",
669
+ type: "bytes32",
670
+ },
671
+ {
672
+ indexed: false,
673
+ internalType: "bytes",
674
+ name: "message",
675
+ type: "bytes",
676
+ },
677
+ ],
678
+ name: "FundsDeposited",
679
+ type: "event",
680
+ },
681
+ {
682
+ anonymous: false,
683
+ inputs: [
684
+ {
685
+ indexed: false,
686
+ internalType: "uint8",
687
+ name: "version",
688
+ type: "uint8",
689
+ },
690
+ ],
691
+ name: "Initialized",
692
+ type: "event",
693
+ },
694
+ {
695
+ anonymous: false,
696
+ inputs: [
697
+ {
698
+ indexed: false,
699
+ internalType: "bool",
700
+ name: "isPaused",
701
+ type: "bool",
702
+ },
703
+ ],
704
+ name: "PausedDeposits",
705
+ type: "event",
706
+ },
707
+ {
708
+ anonymous: false,
709
+ inputs: [
710
+ {
711
+ indexed: false,
712
+ internalType: "bool",
713
+ name: "isPaused",
714
+ type: "bool",
715
+ },
716
+ ],
717
+ name: "PausedFills",
718
+ type: "event",
719
+ },
720
+ {
721
+ anonymous: false,
722
+ inputs: [
723
+ {
724
+ indexed: true,
725
+ internalType: "uint32",
726
+ name: "rootBundleId",
727
+ type: "uint32",
728
+ },
729
+ {
730
+ indexed: true,
731
+ internalType: "bytes32",
732
+ name: "relayerRefundRoot",
733
+ type: "bytes32",
734
+ },
735
+ {
736
+ indexed: true,
737
+ internalType: "bytes32",
738
+ name: "slowRelayRoot",
739
+ type: "bytes32",
740
+ },
741
+ ],
742
+ name: "RelayedRootBundle",
743
+ type: "event",
744
+ },
745
+ {
746
+ anonymous: false,
747
+ inputs: [
748
+ {
749
+ indexed: false,
750
+ internalType: "bytes32",
751
+ name: "inputToken",
752
+ type: "bytes32",
753
+ },
754
+ {
755
+ indexed: false,
756
+ internalType: "bytes32",
757
+ name: "outputToken",
758
+ type: "bytes32",
759
+ },
760
+ {
761
+ indexed: false,
762
+ internalType: "uint256",
763
+ name: "inputAmount",
764
+ type: "uint256",
765
+ },
766
+ {
767
+ indexed: false,
768
+ internalType: "uint256",
769
+ name: "outputAmount",
770
+ type: "uint256",
771
+ },
772
+ {
773
+ indexed: true,
774
+ internalType: "uint256",
775
+ name: "originChainId",
776
+ type: "uint256",
777
+ },
778
+ {
779
+ indexed: true,
780
+ internalType: "uint256",
781
+ name: "depositId",
782
+ type: "uint256",
783
+ },
784
+ {
785
+ indexed: false,
786
+ internalType: "uint32",
787
+ name: "fillDeadline",
788
+ type: "uint32",
789
+ },
790
+ {
791
+ indexed: false,
792
+ internalType: "uint32",
793
+ name: "exclusivityDeadline",
794
+ type: "uint32",
795
+ },
796
+ {
797
+ indexed: false,
798
+ internalType: "bytes32",
799
+ name: "exclusiveRelayer",
800
+ type: "bytes32",
801
+ },
802
+ {
803
+ indexed: false,
804
+ internalType: "bytes32",
805
+ name: "depositor",
806
+ type: "bytes32",
807
+ },
808
+ {
809
+ indexed: false,
810
+ internalType: "bytes32",
811
+ name: "recipient",
812
+ type: "bytes32",
813
+ },
814
+ {
815
+ indexed: false,
816
+ internalType: "bytes32",
817
+ name: "messageHash",
818
+ type: "bytes32",
819
+ },
820
+ ],
821
+ name: "RequestedSlowFill",
822
+ type: "event",
823
+ },
824
+ {
825
+ anonymous: false,
826
+ inputs: [
827
+ {
828
+ indexed: false,
829
+ internalType: "uint256",
830
+ name: "updatedOutputAmount",
831
+ type: "uint256",
832
+ },
833
+ {
834
+ indexed: true,
835
+ internalType: "uint256",
836
+ name: "depositId",
837
+ type: "uint256",
838
+ },
839
+ {
840
+ indexed: true,
841
+ internalType: "bytes32",
842
+ name: "depositor",
843
+ type: "bytes32",
844
+ },
845
+ {
846
+ indexed: false,
847
+ internalType: "bytes32",
848
+ name: "updatedRecipient",
849
+ type: "bytes32",
850
+ },
851
+ {
852
+ indexed: false,
853
+ internalType: "bytes",
854
+ name: "updatedMessage",
855
+ type: "bytes",
856
+ },
857
+ {
858
+ indexed: false,
859
+ internalType: "bytes",
860
+ name: "depositorSignature",
861
+ type: "bytes",
862
+ },
863
+ ],
864
+ name: "RequestedSpeedUpDeposit",
865
+ type: "event",
866
+ },
867
+ {
868
+ anonymous: false,
869
+ inputs: [
870
+ {
871
+ indexed: false,
872
+ internalType: "uint256",
873
+ name: "updatedOutputAmount",
874
+ type: "uint256",
875
+ },
876
+ {
877
+ indexed: true,
878
+ internalType: "uint32",
879
+ name: "depositId",
880
+ type: "uint32",
881
+ },
882
+ {
883
+ indexed: true,
884
+ internalType: "address",
885
+ name: "depositor",
886
+ type: "address",
887
+ },
888
+ {
889
+ indexed: false,
890
+ internalType: "address",
891
+ name: "updatedRecipient",
892
+ type: "address",
893
+ },
894
+ {
895
+ indexed: false,
896
+ internalType: "bytes",
897
+ name: "updatedMessage",
898
+ type: "bytes",
899
+ },
900
+ {
901
+ indexed: false,
902
+ internalType: "bytes",
903
+ name: "depositorSignature",
904
+ type: "bytes",
905
+ },
906
+ ],
907
+ name: "RequestedSpeedUpV3Deposit",
908
+ type: "event",
909
+ },
910
+ {
911
+ anonymous: false,
912
+ inputs: [
913
+ {
914
+ indexed: false,
915
+ internalType: "address",
916
+ name: "inputToken",
917
+ type: "address",
918
+ },
919
+ {
920
+ indexed: false,
921
+ internalType: "address",
922
+ name: "outputToken",
923
+ type: "address",
924
+ },
925
+ {
926
+ indexed: false,
927
+ internalType: "uint256",
928
+ name: "inputAmount",
929
+ type: "uint256",
930
+ },
931
+ {
932
+ indexed: false,
933
+ internalType: "uint256",
934
+ name: "outputAmount",
935
+ type: "uint256",
936
+ },
937
+ {
938
+ indexed: true,
939
+ internalType: "uint256",
940
+ name: "originChainId",
941
+ type: "uint256",
942
+ },
943
+ {
944
+ indexed: true,
945
+ internalType: "uint32",
946
+ name: "depositId",
947
+ type: "uint32",
948
+ },
949
+ {
950
+ indexed: false,
951
+ internalType: "uint32",
952
+ name: "fillDeadline",
953
+ type: "uint32",
954
+ },
955
+ {
956
+ indexed: false,
957
+ internalType: "uint32",
958
+ name: "exclusivityDeadline",
959
+ type: "uint32",
960
+ },
961
+ {
962
+ indexed: false,
963
+ internalType: "address",
964
+ name: "exclusiveRelayer",
965
+ type: "address",
966
+ },
967
+ {
968
+ indexed: false,
969
+ internalType: "address",
970
+ name: "depositor",
971
+ type: "address",
972
+ },
973
+ {
974
+ indexed: false,
975
+ internalType: "address",
976
+ name: "recipient",
977
+ type: "address",
978
+ },
979
+ {
980
+ indexed: false,
981
+ internalType: "bytes",
982
+ name: "message",
983
+ type: "bytes",
984
+ },
985
+ ],
986
+ name: "RequestedV3SlowFill",
987
+ type: "event",
988
+ },
989
+ {
990
+ anonymous: false,
991
+ inputs: [
992
+ {
993
+ indexed: true,
994
+ internalType: "uint32",
995
+ name: "newL1Gas",
996
+ type: "uint32",
997
+ },
998
+ ],
999
+ name: "SetL1Gas",
1000
+ type: "event",
1001
+ },
1002
+ {
1003
+ anonymous: false,
1004
+ inputs: [
1005
+ {
1006
+ indexed: true,
1007
+ internalType: "address",
1008
+ name: "l2Token",
1009
+ type: "address",
1010
+ },
1011
+ {
1012
+ indexed: true,
1013
+ internalType: "address",
1014
+ name: "tokenBridge",
1015
+ type: "address",
1016
+ },
1017
+ ],
1018
+ name: "SetL2TokenBridge",
1019
+ type: "event",
1020
+ },
1021
+ {
1022
+ anonymous: false,
1023
+ inputs: [
1024
+ {
1025
+ indexed: true,
1026
+ internalType: "address",
1027
+ name: "l2Token",
1028
+ type: "address",
1029
+ },
1030
+ {
1031
+ indexed: true,
1032
+ internalType: "address",
1033
+ name: "l1Token",
1034
+ type: "address",
1035
+ },
1036
+ ],
1037
+ name: "SetRemoteL1Token",
1038
+ type: "event",
1039
+ },
1040
+ {
1041
+ anonymous: false,
1042
+ inputs: [
1043
+ {
1044
+ indexed: true,
1045
+ internalType: "address",
1046
+ name: "newWithdrawalRecipient",
1047
+ type: "address",
1048
+ },
1049
+ ],
1050
+ name: "SetWithdrawalRecipient",
1051
+ type: "event",
1052
+ },
1053
+ {
1054
+ anonymous: false,
1055
+ inputs: [
1056
+ {
1057
+ indexed: true,
1058
+ internalType: "address",
1059
+ name: "newAdmin",
1060
+ type: "address",
1061
+ },
1062
+ ],
1063
+ name: "SetXDomainAdmin",
1064
+ type: "event",
1065
+ },
1066
+ {
1067
+ anonymous: false,
1068
+ inputs: [
1069
+ {
1070
+ indexed: false,
1071
+ internalType: "uint256",
1072
+ name: "amountToReturn",
1073
+ type: "uint256",
1074
+ },
1075
+ {
1076
+ indexed: true,
1077
+ internalType: "uint256",
1078
+ name: "chainId",
1079
+ type: "uint256",
1080
+ },
1081
+ {
1082
+ indexed: true,
1083
+ internalType: "uint32",
1084
+ name: "leafId",
1085
+ type: "uint32",
1086
+ },
1087
+ {
1088
+ indexed: true,
1089
+ internalType: "bytes32",
1090
+ name: "l2TokenAddress",
1091
+ type: "bytes32",
1092
+ },
1093
+ {
1094
+ indexed: false,
1095
+ internalType: "address",
1096
+ name: "caller",
1097
+ type: "address",
1098
+ },
1099
+ ],
1100
+ name: "TokensBridged",
1101
+ type: "event",
1102
+ },
1103
+ {
1104
+ anonymous: false,
1105
+ inputs: [
1106
+ {
1107
+ indexed: true,
1108
+ internalType: "address",
1109
+ name: "implementation",
1110
+ type: "address",
1111
+ },
1112
+ ],
1113
+ name: "Upgraded",
1114
+ type: "event",
1115
+ },
1116
+ {
1117
+ anonymous: false,
1118
+ inputs: [
1119
+ {
1120
+ indexed: false,
1121
+ internalType: "address",
1122
+ name: "inputToken",
1123
+ type: "address",
1124
+ },
1125
+ {
1126
+ indexed: false,
1127
+ internalType: "address",
1128
+ name: "outputToken",
1129
+ type: "address",
1130
+ },
1131
+ {
1132
+ indexed: false,
1133
+ internalType: "uint256",
1134
+ name: "inputAmount",
1135
+ type: "uint256",
1136
+ },
1137
+ {
1138
+ indexed: false,
1139
+ internalType: "uint256",
1140
+ name: "outputAmount",
1141
+ type: "uint256",
1142
+ },
1143
+ {
1144
+ indexed: true,
1145
+ internalType: "uint256",
1146
+ name: "destinationChainId",
1147
+ type: "uint256",
1148
+ },
1149
+ {
1150
+ indexed: true,
1151
+ internalType: "uint32",
1152
+ name: "depositId",
1153
+ type: "uint32",
1154
+ },
1155
+ {
1156
+ indexed: false,
1157
+ internalType: "uint32",
1158
+ name: "quoteTimestamp",
1159
+ type: "uint32",
1160
+ },
1161
+ {
1162
+ indexed: false,
1163
+ internalType: "uint32",
1164
+ name: "fillDeadline",
1165
+ type: "uint32",
1166
+ },
1167
+ {
1168
+ indexed: false,
1169
+ internalType: "uint32",
1170
+ name: "exclusivityDeadline",
1171
+ type: "uint32",
1172
+ },
1173
+ {
1174
+ indexed: true,
1175
+ internalType: "address",
1176
+ name: "depositor",
1177
+ type: "address",
1178
+ },
1179
+ {
1180
+ indexed: false,
1181
+ internalType: "address",
1182
+ name: "recipient",
1183
+ type: "address",
1184
+ },
1185
+ {
1186
+ indexed: false,
1187
+ internalType: "address",
1188
+ name: "exclusiveRelayer",
1189
+ type: "address",
1190
+ },
1191
+ {
1192
+ indexed: false,
1193
+ internalType: "bytes",
1194
+ name: "message",
1195
+ type: "bytes",
1196
+ },
1197
+ ],
1198
+ name: "V3FundsDeposited",
1199
+ type: "event",
1200
+ },
1201
+ {
1202
+ inputs: [],
1203
+ name: "EMPTY_RELAYER",
1204
+ outputs: [
1205
+ {
1206
+ internalType: "bytes32",
1207
+ name: "",
1208
+ type: "bytes32",
1209
+ },
1210
+ ],
1211
+ stateMutability: "view",
1212
+ type: "function",
1213
+ },
1214
+ {
1215
+ inputs: [],
1216
+ name: "EMPTY_REPAYMENT_CHAIN_ID",
1217
+ outputs: [
1218
+ {
1219
+ internalType: "uint256",
1220
+ name: "",
1221
+ type: "uint256",
1222
+ },
1223
+ ],
1224
+ stateMutability: "view",
1225
+ type: "function",
1226
+ },
1227
+ {
1228
+ inputs: [],
1229
+ name: "INFINITE_FILL_DEADLINE",
1230
+ outputs: [
1231
+ {
1232
+ internalType: "uint32",
1233
+ name: "",
1234
+ type: "uint32",
1235
+ },
1236
+ ],
1237
+ stateMutability: "view",
1238
+ type: "function",
1239
+ },
1240
+ {
1241
+ inputs: [],
1242
+ name: "MAX_EXCLUSIVITY_PERIOD_SECONDS",
1243
+ outputs: [
1244
+ {
1245
+ internalType: "uint32",
1246
+ name: "",
1247
+ type: "uint32",
1248
+ },
1249
+ ],
1250
+ stateMutability: "view",
1251
+ type: "function",
1252
+ },
1253
+ {
1254
+ inputs: [],
1255
+ name: "MAX_TRANSFER_SIZE",
1256
+ outputs: [
1257
+ {
1258
+ internalType: "uint256",
1259
+ name: "",
1260
+ type: "uint256",
1261
+ },
1262
+ ],
1263
+ stateMutability: "view",
1264
+ type: "function",
1265
+ },
1266
+ {
1267
+ inputs: [],
1268
+ name: "MESSENGER",
1269
+ outputs: [
1270
+ {
1271
+ internalType: "address",
1272
+ name: "",
1273
+ type: "address",
1274
+ },
1275
+ ],
1276
+ stateMutability: "view",
1277
+ type: "function",
1278
+ },
1279
+ {
1280
+ inputs: [],
1281
+ name: "UPDATE_BYTES32_DEPOSIT_DETAILS_HASH",
1282
+ outputs: [
1283
+ {
1284
+ internalType: "bytes32",
1285
+ name: "",
1286
+ type: "bytes32",
1287
+ },
1288
+ ],
1289
+ stateMutability: "view",
1290
+ type: "function",
1291
+ },
1292
+ {
1293
+ inputs: [
1294
+ {
1295
+ internalType: "uint32",
1296
+ name: "_initialDepositId",
1297
+ type: "uint32",
1298
+ },
1299
+ {
1300
+ internalType: "address",
1301
+ name: "_crossDomainAdmin",
1302
+ type: "address",
1303
+ },
1304
+ {
1305
+ internalType: "address",
1306
+ name: "_withdrawalRecipient",
1307
+ type: "address",
1308
+ },
1309
+ {
1310
+ internalType: "address",
1311
+ name: "_l2Eth",
1312
+ type: "address",
1313
+ },
1314
+ ],
1315
+ name: "__OvmSpokePool_init",
1316
+ outputs: [],
1317
+ stateMutability: "nonpayable",
1318
+ type: "function",
1319
+ },
1320
+ {
1321
+ inputs: [
1322
+ {
1323
+ internalType: "uint32",
1324
+ name: "_initialDepositId",
1325
+ type: "uint32",
1326
+ },
1327
+ {
1328
+ internalType: "address",
1329
+ name: "_crossDomainAdmin",
1330
+ type: "address",
1331
+ },
1332
+ {
1333
+ internalType: "address",
1334
+ name: "_withdrawalRecipient",
1335
+ type: "address",
1336
+ },
1337
+ ],
1338
+ name: "__SpokePool_init",
1339
+ outputs: [],
1340
+ stateMutability: "nonpayable",
1341
+ type: "function",
1342
+ },
1343
+ {
1344
+ inputs: [],
1345
+ name: "cctpTokenMessenger",
1346
+ outputs: [
1347
+ {
1348
+ internalType: "contract ITokenMessenger",
1349
+ name: "",
1350
+ type: "address",
1351
+ },
1352
+ ],
1353
+ stateMutability: "view",
1354
+ type: "function",
1355
+ },
1356
+ {
1357
+ inputs: [],
1358
+ name: "cctpV2",
1359
+ outputs: [
1360
+ {
1361
+ internalType: "bool",
1362
+ name: "",
1363
+ type: "bool",
1364
+ },
1365
+ ],
1366
+ stateMutability: "view",
1367
+ type: "function",
1368
+ },
1369
+ {
1370
+ inputs: [],
1371
+ name: "chainId",
1372
+ outputs: [
1373
+ {
1374
+ internalType: "uint256",
1375
+ name: "",
1376
+ type: "uint256",
1377
+ },
1378
+ ],
1379
+ stateMutability: "view",
1380
+ type: "function",
1381
+ },
1382
+ {
1383
+ inputs: [
1384
+ {
1385
+ internalType: "bytes32",
1386
+ name: "l2TokenAddress",
1387
+ type: "bytes32",
1388
+ },
1389
+ {
1390
+ internalType: "bytes32",
1391
+ name: "refundAddress",
1392
+ type: "bytes32",
1393
+ },
1394
+ ],
1395
+ name: "claimRelayerRefund",
1396
+ outputs: [],
1397
+ stateMutability: "nonpayable",
1398
+ type: "function",
1399
+ },
1400
+ {
1401
+ inputs: [],
1402
+ name: "crossDomainAdmin",
1403
+ outputs: [
1404
+ {
1405
+ internalType: "address",
1406
+ name: "",
1407
+ type: "address",
1408
+ },
1409
+ ],
1410
+ stateMutability: "view",
1411
+ type: "function",
1412
+ },
1413
+ {
1414
+ inputs: [
1415
+ {
1416
+ internalType: "bytes32",
1417
+ name: "depositor",
1418
+ type: "bytes32",
1419
+ },
1420
+ {
1421
+ internalType: "bytes32",
1422
+ name: "recipient",
1423
+ type: "bytes32",
1424
+ },
1425
+ {
1426
+ internalType: "bytes32",
1427
+ name: "inputToken",
1428
+ type: "bytes32",
1429
+ },
1430
+ {
1431
+ internalType: "bytes32",
1432
+ name: "outputToken",
1433
+ type: "bytes32",
1434
+ },
1435
+ {
1436
+ internalType: "uint256",
1437
+ name: "inputAmount",
1438
+ type: "uint256",
1439
+ },
1440
+ {
1441
+ internalType: "uint256",
1442
+ name: "outputAmount",
1443
+ type: "uint256",
1444
+ },
1445
+ {
1446
+ internalType: "uint256",
1447
+ name: "destinationChainId",
1448
+ type: "uint256",
1449
+ },
1450
+ {
1451
+ internalType: "bytes32",
1452
+ name: "exclusiveRelayer",
1453
+ type: "bytes32",
1454
+ },
1455
+ {
1456
+ internalType: "uint32",
1457
+ name: "quoteTimestamp",
1458
+ type: "uint32",
1459
+ },
1460
+ {
1461
+ internalType: "uint32",
1462
+ name: "fillDeadline",
1463
+ type: "uint32",
1464
+ },
1465
+ {
1466
+ internalType: "uint32",
1467
+ name: "exclusivityParameter",
1468
+ type: "uint32",
1469
+ },
1470
+ {
1471
+ internalType: "bytes",
1472
+ name: "message",
1473
+ type: "bytes",
1474
+ },
1475
+ ],
1476
+ name: "deposit",
1477
+ outputs: [],
1478
+ stateMutability: "payable",
1479
+ type: "function",
1480
+ },
1481
+ {
1482
+ inputs: [
1483
+ {
1484
+ internalType: "address",
1485
+ name: "recipient",
1486
+ type: "address",
1487
+ },
1488
+ {
1489
+ internalType: "address",
1490
+ name: "originToken",
1491
+ type: "address",
1492
+ },
1493
+ {
1494
+ internalType: "uint256",
1495
+ name: "amount",
1496
+ type: "uint256",
1497
+ },
1498
+ {
1499
+ internalType: "uint256",
1500
+ name: "destinationChainId",
1501
+ type: "uint256",
1502
+ },
1503
+ {
1504
+ internalType: "int64",
1505
+ name: "relayerFeePct",
1506
+ type: "int64",
1507
+ },
1508
+ {
1509
+ internalType: "uint32",
1510
+ name: "quoteTimestamp",
1511
+ type: "uint32",
1512
+ },
1513
+ {
1514
+ internalType: "bytes",
1515
+ name: "message",
1516
+ type: "bytes",
1517
+ },
1518
+ {
1519
+ internalType: "uint256",
1520
+ name: "",
1521
+ type: "uint256",
1522
+ },
1523
+ ],
1524
+ name: "depositDeprecated_5947912356",
1525
+ outputs: [],
1526
+ stateMutability: "payable",
1527
+ type: "function",
1528
+ },
1529
+ {
1530
+ inputs: [
1531
+ {
1532
+ internalType: "address",
1533
+ name: "depositor",
1534
+ type: "address",
1535
+ },
1536
+ {
1537
+ internalType: "address",
1538
+ name: "recipient",
1539
+ type: "address",
1540
+ },
1541
+ {
1542
+ internalType: "address",
1543
+ name: "originToken",
1544
+ type: "address",
1545
+ },
1546
+ {
1547
+ internalType: "uint256",
1548
+ name: "amount",
1549
+ type: "uint256",
1550
+ },
1551
+ {
1552
+ internalType: "uint256",
1553
+ name: "destinationChainId",
1554
+ type: "uint256",
1555
+ },
1556
+ {
1557
+ internalType: "int64",
1558
+ name: "relayerFeePct",
1559
+ type: "int64",
1560
+ },
1561
+ {
1562
+ internalType: "uint32",
1563
+ name: "quoteTimestamp",
1564
+ type: "uint32",
1565
+ },
1566
+ {
1567
+ internalType: "bytes",
1568
+ name: "message",
1569
+ type: "bytes",
1570
+ },
1571
+ {
1572
+ internalType: "uint256",
1573
+ name: "",
1574
+ type: "uint256",
1575
+ },
1576
+ ],
1577
+ name: "depositFor",
1578
+ outputs: [],
1579
+ stateMutability: "payable",
1580
+ type: "function",
1581
+ },
1582
+ {
1583
+ inputs: [
1584
+ {
1585
+ internalType: "bytes32",
1586
+ name: "depositor",
1587
+ type: "bytes32",
1588
+ },
1589
+ {
1590
+ internalType: "bytes32",
1591
+ name: "recipient",
1592
+ type: "bytes32",
1593
+ },
1594
+ {
1595
+ internalType: "bytes32",
1596
+ name: "inputToken",
1597
+ type: "bytes32",
1598
+ },
1599
+ {
1600
+ internalType: "bytes32",
1601
+ name: "outputToken",
1602
+ type: "bytes32",
1603
+ },
1604
+ {
1605
+ internalType: "uint256",
1606
+ name: "inputAmount",
1607
+ type: "uint256",
1608
+ },
1609
+ {
1610
+ internalType: "uint256",
1611
+ name: "outputAmount",
1612
+ type: "uint256",
1613
+ },
1614
+ {
1615
+ internalType: "uint256",
1616
+ name: "destinationChainId",
1617
+ type: "uint256",
1618
+ },
1619
+ {
1620
+ internalType: "bytes32",
1621
+ name: "exclusiveRelayer",
1622
+ type: "bytes32",
1623
+ },
1624
+ {
1625
+ internalType: "uint32",
1626
+ name: "fillDeadlineOffset",
1627
+ type: "uint32",
1628
+ },
1629
+ {
1630
+ internalType: "uint32",
1631
+ name: "exclusivityParameter",
1632
+ type: "uint32",
1633
+ },
1634
+ {
1635
+ internalType: "bytes",
1636
+ name: "message",
1637
+ type: "bytes",
1638
+ },
1639
+ ],
1640
+ name: "depositNow",
1641
+ outputs: [],
1642
+ stateMutability: "payable",
1643
+ type: "function",
1644
+ },
1645
+ {
1646
+ inputs: [],
1647
+ name: "depositQuoteTimeBuffer",
1648
+ outputs: [
1649
+ {
1650
+ internalType: "uint32",
1651
+ name: "",
1652
+ type: "uint32",
1653
+ },
1654
+ ],
1655
+ stateMutability: "view",
1656
+ type: "function",
1657
+ },
1658
+ {
1659
+ inputs: [
1660
+ {
1661
+ internalType: "address",
1662
+ name: "depositor",
1663
+ type: "address",
1664
+ },
1665
+ {
1666
+ internalType: "address",
1667
+ name: "recipient",
1668
+ type: "address",
1669
+ },
1670
+ {
1671
+ internalType: "address",
1672
+ name: "inputToken",
1673
+ type: "address",
1674
+ },
1675
+ {
1676
+ internalType: "address",
1677
+ name: "outputToken",
1678
+ type: "address",
1679
+ },
1680
+ {
1681
+ internalType: "uint256",
1682
+ name: "inputAmount",
1683
+ type: "uint256",
1684
+ },
1685
+ {
1686
+ internalType: "uint256",
1687
+ name: "outputAmount",
1688
+ type: "uint256",
1689
+ },
1690
+ {
1691
+ internalType: "uint256",
1692
+ name: "destinationChainId",
1693
+ type: "uint256",
1694
+ },
1695
+ {
1696
+ internalType: "address",
1697
+ name: "exclusiveRelayer",
1698
+ type: "address",
1699
+ },
1700
+ {
1701
+ internalType: "uint32",
1702
+ name: "quoteTimestamp",
1703
+ type: "uint32",
1704
+ },
1705
+ {
1706
+ internalType: "uint32",
1707
+ name: "fillDeadline",
1708
+ type: "uint32",
1709
+ },
1710
+ {
1711
+ internalType: "uint32",
1712
+ name: "exclusivityParameter",
1713
+ type: "uint32",
1714
+ },
1715
+ {
1716
+ internalType: "bytes",
1717
+ name: "message",
1718
+ type: "bytes",
1719
+ },
1720
+ ],
1721
+ name: "depositV3",
1722
+ outputs: [],
1723
+ stateMutability: "payable",
1724
+ type: "function",
1725
+ },
1726
+ {
1727
+ inputs: [
1728
+ {
1729
+ internalType: "address",
1730
+ name: "depositor",
1731
+ type: "address",
1732
+ },
1733
+ {
1734
+ internalType: "address",
1735
+ name: "recipient",
1736
+ type: "address",
1737
+ },
1738
+ {
1739
+ internalType: "address",
1740
+ name: "inputToken",
1741
+ type: "address",
1742
+ },
1743
+ {
1744
+ internalType: "address",
1745
+ name: "outputToken",
1746
+ type: "address",
1747
+ },
1748
+ {
1749
+ internalType: "uint256",
1750
+ name: "inputAmount",
1751
+ type: "uint256",
1752
+ },
1753
+ {
1754
+ internalType: "uint256",
1755
+ name: "outputAmount",
1756
+ type: "uint256",
1757
+ },
1758
+ {
1759
+ internalType: "uint256",
1760
+ name: "destinationChainId",
1761
+ type: "uint256",
1762
+ },
1763
+ {
1764
+ internalType: "address",
1765
+ name: "exclusiveRelayer",
1766
+ type: "address",
1767
+ },
1768
+ {
1769
+ internalType: "uint32",
1770
+ name: "fillDeadlineOffset",
1771
+ type: "uint32",
1772
+ },
1773
+ {
1774
+ internalType: "uint32",
1775
+ name: "exclusivityParameter",
1776
+ type: "uint32",
1777
+ },
1778
+ {
1779
+ internalType: "bytes",
1780
+ name: "message",
1781
+ type: "bytes",
1782
+ },
1783
+ ],
1784
+ name: "depositV3Now",
1785
+ outputs: [],
1786
+ stateMutability: "payable",
1787
+ type: "function",
1788
+ },
1789
+ {
1790
+ inputs: [
1791
+ {
1792
+ internalType: "uint256",
1793
+ name: "rootBundleId",
1794
+ type: "uint256",
1795
+ },
1796
+ ],
1797
+ name: "emergencyDeleteRootBundle",
1798
+ outputs: [],
1799
+ stateMutability: "nonpayable",
1800
+ type: "function",
1801
+ },
1802
+ {
1803
+ inputs: [
1804
+ {
1805
+ internalType: "uint32",
1806
+ name: "rootBundleId",
1807
+ type: "uint32",
1808
+ },
1809
+ {
1810
+ components: [
1811
+ {
1812
+ internalType: "uint256",
1813
+ name: "amountToReturn",
1814
+ type: "uint256",
1815
+ },
1816
+ {
1817
+ internalType: "uint256",
1818
+ name: "chainId",
1819
+ type: "uint256",
1820
+ },
1821
+ {
1822
+ internalType: "uint256[]",
1823
+ name: "refundAmounts",
1824
+ type: "uint256[]",
1825
+ },
1826
+ {
1827
+ internalType: "uint32",
1828
+ name: "leafId",
1829
+ type: "uint32",
1830
+ },
1831
+ {
1832
+ internalType: "address",
1833
+ name: "l2TokenAddress",
1834
+ type: "address",
1835
+ },
1836
+ {
1837
+ internalType: "address[]",
1838
+ name: "refundAddresses",
1839
+ type: "address[]",
1840
+ },
1841
+ ],
1842
+ internalType: "struct SpokePoolInterface.RelayerRefundLeaf",
1843
+ name: "relayerRefundLeaf",
1844
+ type: "tuple",
1845
+ },
1846
+ {
1847
+ internalType: "bytes32[]",
1848
+ name: "proof",
1849
+ type: "bytes32[]",
1850
+ },
1851
+ ],
1852
+ name: "executeRelayerRefundLeaf",
1853
+ outputs: [],
1854
+ stateMutability: "payable",
1855
+ type: "function",
1856
+ },
1857
+ {
1858
+ inputs: [
1859
+ {
1860
+ components: [
1861
+ {
1862
+ components: [
1863
+ {
1864
+ internalType: "bytes32",
1865
+ name: "depositor",
1866
+ type: "bytes32",
1867
+ },
1868
+ {
1869
+ internalType: "bytes32",
1870
+ name: "recipient",
1871
+ type: "bytes32",
1872
+ },
1873
+ {
1874
+ internalType: "bytes32",
1875
+ name: "exclusiveRelayer",
1876
+ type: "bytes32",
1877
+ },
1878
+ {
1879
+ internalType: "bytes32",
1880
+ name: "inputToken",
1881
+ type: "bytes32",
1882
+ },
1883
+ {
1884
+ internalType: "bytes32",
1885
+ name: "outputToken",
1886
+ type: "bytes32",
1887
+ },
1888
+ {
1889
+ internalType: "uint256",
1890
+ name: "inputAmount",
1891
+ type: "uint256",
1892
+ },
1893
+ {
1894
+ internalType: "uint256",
1895
+ name: "outputAmount",
1896
+ type: "uint256",
1897
+ },
1898
+ {
1899
+ internalType: "uint256",
1900
+ name: "originChainId",
1901
+ type: "uint256",
1902
+ },
1903
+ {
1904
+ internalType: "uint256",
1905
+ name: "depositId",
1906
+ type: "uint256",
1907
+ },
1908
+ {
1909
+ internalType: "uint32",
1910
+ name: "fillDeadline",
1911
+ type: "uint32",
1912
+ },
1913
+ {
1914
+ internalType: "uint32",
1915
+ name: "exclusivityDeadline",
1916
+ type: "uint32",
1917
+ },
1918
+ {
1919
+ internalType: "bytes",
1920
+ name: "message",
1921
+ type: "bytes",
1922
+ },
1923
+ ],
1924
+ internalType: "struct V3SpokePoolInterface.V3RelayData",
1925
+ name: "relayData",
1926
+ type: "tuple",
1927
+ },
1928
+ {
1929
+ internalType: "uint256",
1930
+ name: "chainId",
1931
+ type: "uint256",
1932
+ },
1933
+ {
1934
+ internalType: "uint256",
1935
+ name: "updatedOutputAmount",
1936
+ type: "uint256",
1937
+ },
1938
+ ],
1939
+ internalType: "struct V3SpokePoolInterface.V3SlowFill",
1940
+ name: "slowFillLeaf",
1941
+ type: "tuple",
1942
+ },
1943
+ {
1944
+ internalType: "uint32",
1945
+ name: "rootBundleId",
1946
+ type: "uint32",
1947
+ },
1948
+ {
1949
+ internalType: "bytes32[]",
1950
+ name: "proof",
1951
+ type: "bytes32[]",
1952
+ },
1953
+ ],
1954
+ name: "executeSlowRelayLeaf",
1955
+ outputs: [],
1956
+ stateMutability: "nonpayable",
1957
+ type: "function",
1958
+ },
1959
+ {
1960
+ inputs: [
1961
+ {
1962
+ internalType: "bytes32",
1963
+ name: "orderId",
1964
+ type: "bytes32",
1965
+ },
1966
+ {
1967
+ internalType: "bytes",
1968
+ name: "originData",
1969
+ type: "bytes",
1970
+ },
1971
+ {
1972
+ internalType: "bytes",
1973
+ name: "fillerData",
1974
+ type: "bytes",
1975
+ },
1976
+ ],
1977
+ name: "fill",
1978
+ outputs: [],
1979
+ stateMutability: "nonpayable",
1980
+ type: "function",
1981
+ },
1982
+ {
1983
+ inputs: [],
1984
+ name: "fillDeadlineBuffer",
1985
+ outputs: [
1986
+ {
1987
+ internalType: "uint32",
1988
+ name: "",
1989
+ type: "uint32",
1990
+ },
1991
+ ],
1992
+ stateMutability: "view",
1993
+ type: "function",
1994
+ },
1995
+ {
1996
+ inputs: [
1997
+ {
1998
+ components: [
1999
+ {
2000
+ internalType: "bytes32",
2001
+ name: "depositor",
2002
+ type: "bytes32",
2003
+ },
2004
+ {
2005
+ internalType: "bytes32",
2006
+ name: "recipient",
2007
+ type: "bytes32",
2008
+ },
2009
+ {
2010
+ internalType: "bytes32",
2011
+ name: "exclusiveRelayer",
2012
+ type: "bytes32",
2013
+ },
2014
+ {
2015
+ internalType: "bytes32",
2016
+ name: "inputToken",
2017
+ type: "bytes32",
2018
+ },
2019
+ {
2020
+ internalType: "bytes32",
2021
+ name: "outputToken",
2022
+ type: "bytes32",
2023
+ },
2024
+ {
2025
+ internalType: "uint256",
2026
+ name: "inputAmount",
2027
+ type: "uint256",
2028
+ },
2029
+ {
2030
+ internalType: "uint256",
2031
+ name: "outputAmount",
2032
+ type: "uint256",
2033
+ },
2034
+ {
2035
+ internalType: "uint256",
2036
+ name: "originChainId",
2037
+ type: "uint256",
2038
+ },
2039
+ {
2040
+ internalType: "uint256",
2041
+ name: "depositId",
2042
+ type: "uint256",
2043
+ },
2044
+ {
2045
+ internalType: "uint32",
2046
+ name: "fillDeadline",
2047
+ type: "uint32",
2048
+ },
2049
+ {
2050
+ internalType: "uint32",
2051
+ name: "exclusivityDeadline",
2052
+ type: "uint32",
2053
+ },
2054
+ {
2055
+ internalType: "bytes",
2056
+ name: "message",
2057
+ type: "bytes",
2058
+ },
2059
+ ],
2060
+ internalType: "struct V3SpokePoolInterface.V3RelayData",
2061
+ name: "relayData",
2062
+ type: "tuple",
2063
+ },
2064
+ {
2065
+ internalType: "uint256",
2066
+ name: "repaymentChainId",
2067
+ type: "uint256",
2068
+ },
2069
+ {
2070
+ internalType: "bytes32",
2071
+ name: "repaymentAddress",
2072
+ type: "bytes32",
2073
+ },
2074
+ ],
2075
+ name: "fillRelay",
2076
+ outputs: [],
2077
+ stateMutability: "nonpayable",
2078
+ type: "function",
2079
+ },
2080
+ {
2081
+ inputs: [
2082
+ {
2083
+ components: [
2084
+ {
2085
+ internalType: "bytes32",
2086
+ name: "depositor",
2087
+ type: "bytes32",
2088
+ },
2089
+ {
2090
+ internalType: "bytes32",
2091
+ name: "recipient",
2092
+ type: "bytes32",
2093
+ },
2094
+ {
2095
+ internalType: "bytes32",
2096
+ name: "exclusiveRelayer",
2097
+ type: "bytes32",
2098
+ },
2099
+ {
2100
+ internalType: "bytes32",
2101
+ name: "inputToken",
2102
+ type: "bytes32",
2103
+ },
2104
+ {
2105
+ internalType: "bytes32",
2106
+ name: "outputToken",
2107
+ type: "bytes32",
2108
+ },
2109
+ {
2110
+ internalType: "uint256",
2111
+ name: "inputAmount",
2112
+ type: "uint256",
2113
+ },
2114
+ {
2115
+ internalType: "uint256",
2116
+ name: "outputAmount",
2117
+ type: "uint256",
2118
+ },
2119
+ {
2120
+ internalType: "uint256",
2121
+ name: "originChainId",
2122
+ type: "uint256",
2123
+ },
2124
+ {
2125
+ internalType: "uint256",
2126
+ name: "depositId",
2127
+ type: "uint256",
2128
+ },
2129
+ {
2130
+ internalType: "uint32",
2131
+ name: "fillDeadline",
2132
+ type: "uint32",
2133
+ },
2134
+ {
2135
+ internalType: "uint32",
2136
+ name: "exclusivityDeadline",
2137
+ type: "uint32",
2138
+ },
2139
+ {
2140
+ internalType: "bytes",
2141
+ name: "message",
2142
+ type: "bytes",
2143
+ },
2144
+ ],
2145
+ internalType: "struct V3SpokePoolInterface.V3RelayData",
2146
+ name: "relayData",
2147
+ type: "tuple",
2148
+ },
2149
+ {
2150
+ internalType: "uint256",
2151
+ name: "repaymentChainId",
2152
+ type: "uint256",
2153
+ },
2154
+ {
2155
+ internalType: "bytes32",
2156
+ name: "repaymentAddress",
2157
+ type: "bytes32",
2158
+ },
2159
+ {
2160
+ internalType: "uint256",
2161
+ name: "updatedOutputAmount",
2162
+ type: "uint256",
2163
+ },
2164
+ {
2165
+ internalType: "bytes32",
2166
+ name: "updatedRecipient",
2167
+ type: "bytes32",
2168
+ },
2169
+ {
2170
+ internalType: "bytes",
2171
+ name: "updatedMessage",
2172
+ type: "bytes",
2173
+ },
2174
+ {
2175
+ internalType: "bytes",
2176
+ name: "depositorSignature",
2177
+ type: "bytes",
2178
+ },
2179
+ ],
2180
+ name: "fillRelayWithUpdatedDeposit",
2181
+ outputs: [],
2182
+ stateMutability: "nonpayable",
2183
+ type: "function",
2184
+ },
2185
+ {
2186
+ inputs: [
2187
+ {
2188
+ internalType: "bytes32",
2189
+ name: "",
2190
+ type: "bytes32",
2191
+ },
2192
+ ],
2193
+ name: "fillStatuses",
2194
+ outputs: [
2195
+ {
2196
+ internalType: "uint256",
2197
+ name: "",
2198
+ type: "uint256",
2199
+ },
2200
+ ],
2201
+ stateMutability: "view",
2202
+ type: "function",
2203
+ },
2204
+ {
2205
+ inputs: [
2206
+ {
2207
+ components: [
2208
+ {
2209
+ internalType: "address",
2210
+ name: "depositor",
2211
+ type: "address",
2212
+ },
2213
+ {
2214
+ internalType: "address",
2215
+ name: "recipient",
2216
+ type: "address",
2217
+ },
2218
+ {
2219
+ internalType: "address",
2220
+ name: "exclusiveRelayer",
2221
+ type: "address",
2222
+ },
2223
+ {
2224
+ internalType: "address",
2225
+ name: "inputToken",
2226
+ type: "address",
2227
+ },
2228
+ {
2229
+ internalType: "address",
2230
+ name: "outputToken",
2231
+ type: "address",
2232
+ },
2233
+ {
2234
+ internalType: "uint256",
2235
+ name: "inputAmount",
2236
+ type: "uint256",
2237
+ },
2238
+ {
2239
+ internalType: "uint256",
2240
+ name: "outputAmount",
2241
+ type: "uint256",
2242
+ },
2243
+ {
2244
+ internalType: "uint256",
2245
+ name: "originChainId",
2246
+ type: "uint256",
2247
+ },
2248
+ {
2249
+ internalType: "uint32",
2250
+ name: "depositId",
2251
+ type: "uint32",
2252
+ },
2253
+ {
2254
+ internalType: "uint32",
2255
+ name: "fillDeadline",
2256
+ type: "uint32",
2257
+ },
2258
+ {
2259
+ internalType: "uint32",
2260
+ name: "exclusivityDeadline",
2261
+ type: "uint32",
2262
+ },
2263
+ {
2264
+ internalType: "bytes",
2265
+ name: "message",
2266
+ type: "bytes",
2267
+ },
2268
+ ],
2269
+ internalType: "struct V3SpokePoolInterface.V3RelayDataLegacy",
2270
+ name: "relayData",
2271
+ type: "tuple",
2272
+ },
2273
+ {
2274
+ internalType: "uint256",
2275
+ name: "repaymentChainId",
2276
+ type: "uint256",
2277
+ },
2278
+ ],
2279
+ name: "fillV3Relay",
2280
+ outputs: [],
2281
+ stateMutability: "nonpayable",
2282
+ type: "function",
2283
+ },
2284
+ {
2285
+ inputs: [],
2286
+ name: "getCurrentTime",
2287
+ outputs: [
2288
+ {
2289
+ internalType: "uint256",
2290
+ name: "",
2291
+ type: "uint256",
2292
+ },
2293
+ ],
2294
+ stateMutability: "view",
2295
+ type: "function",
2296
+ },
2297
+ {
2298
+ inputs: [
2299
+ {
2300
+ internalType: "address",
2301
+ name: "l2TokenAddress",
2302
+ type: "address",
2303
+ },
2304
+ {
2305
+ internalType: "address",
2306
+ name: "refundAddress",
2307
+ type: "address",
2308
+ },
2309
+ ],
2310
+ name: "getRelayerRefund",
2311
+ outputs: [
2312
+ {
2313
+ internalType: "uint256",
2314
+ name: "",
2315
+ type: "uint256",
2316
+ },
2317
+ ],
2318
+ stateMutability: "view",
2319
+ type: "function",
2320
+ },
2321
+ {
2322
+ inputs: [
2323
+ {
2324
+ internalType: "address",
2325
+ name: "msgSender",
2326
+ type: "address",
2327
+ },
2328
+ {
2329
+ internalType: "bytes32",
2330
+ name: "depositor",
2331
+ type: "bytes32",
2332
+ },
2333
+ {
2334
+ internalType: "uint256",
2335
+ name: "depositNonce",
2336
+ type: "uint256",
2337
+ },
2338
+ ],
2339
+ name: "getUnsafeDepositId",
2340
+ outputs: [
2341
+ {
2342
+ internalType: "uint256",
2343
+ name: "",
2344
+ type: "uint256",
2345
+ },
2346
+ ],
2347
+ stateMutability: "pure",
2348
+ type: "function",
2349
+ },
2350
+ {
2351
+ inputs: [
2352
+ {
2353
+ components: [
2354
+ {
2355
+ internalType: "bytes32",
2356
+ name: "depositor",
2357
+ type: "bytes32",
2358
+ },
2359
+ {
2360
+ internalType: "bytes32",
2361
+ name: "recipient",
2362
+ type: "bytes32",
2363
+ },
2364
+ {
2365
+ internalType: "bytes32",
2366
+ name: "exclusiveRelayer",
2367
+ type: "bytes32",
2368
+ },
2369
+ {
2370
+ internalType: "bytes32",
2371
+ name: "inputToken",
2372
+ type: "bytes32",
2373
+ },
2374
+ {
2375
+ internalType: "bytes32",
2376
+ name: "outputToken",
2377
+ type: "bytes32",
2378
+ },
2379
+ {
2380
+ internalType: "uint256",
2381
+ name: "inputAmount",
2382
+ type: "uint256",
2383
+ },
2384
+ {
2385
+ internalType: "uint256",
2386
+ name: "outputAmount",
2387
+ type: "uint256",
2388
+ },
2389
+ {
2390
+ internalType: "uint256",
2391
+ name: "originChainId",
2392
+ type: "uint256",
2393
+ },
2394
+ {
2395
+ internalType: "uint256",
2396
+ name: "depositId",
2397
+ type: "uint256",
2398
+ },
2399
+ {
2400
+ internalType: "uint32",
2401
+ name: "fillDeadline",
2402
+ type: "uint32",
2403
+ },
2404
+ {
2405
+ internalType: "uint32",
2406
+ name: "exclusivityDeadline",
2407
+ type: "uint32",
2408
+ },
2409
+ {
2410
+ internalType: "bytes",
2411
+ name: "message",
2412
+ type: "bytes",
2413
+ },
2414
+ ],
2415
+ internalType: "struct V3SpokePoolInterface.V3RelayData",
2416
+ name: "relayData",
2417
+ type: "tuple",
2418
+ },
2419
+ ],
2420
+ name: "getV3RelayHash",
2421
+ outputs: [
2422
+ {
2423
+ internalType: "bytes32",
2424
+ name: "",
2425
+ type: "bytes32",
2426
+ },
2427
+ ],
2428
+ stateMutability: "view",
2429
+ type: "function",
2430
+ },
2431
+ {
2432
+ inputs: [
2433
+ {
2434
+ internalType: "uint32",
2435
+ name: "_initialDepositId",
2436
+ type: "uint32",
2437
+ },
2438
+ {
2439
+ internalType: "address",
2440
+ name: "_crossDomainAdmin",
2441
+ type: "address",
2442
+ },
2443
+ {
2444
+ internalType: "address",
2445
+ name: "_withdrawalRecipient",
2446
+ type: "address",
2447
+ },
2448
+ ],
2449
+ name: "initialize",
2450
+ outputs: [],
2451
+ stateMutability: "nonpayable",
2452
+ type: "function",
2453
+ },
2454
+ {
2455
+ inputs: [],
2456
+ name: "l1Gas",
2457
+ outputs: [
2458
+ {
2459
+ internalType: "uint32",
2460
+ name: "",
2461
+ type: "uint32",
2462
+ },
2463
+ ],
2464
+ stateMutability: "view",
2465
+ type: "function",
2466
+ },
2467
+ {
2468
+ inputs: [],
2469
+ name: "l2Eth",
2470
+ outputs: [
2471
+ {
2472
+ internalType: "address",
2473
+ name: "",
2474
+ type: "address",
2475
+ },
2476
+ ],
2477
+ stateMutability: "view",
2478
+ type: "function",
2479
+ },
2480
+ {
2481
+ inputs: [
2482
+ {
2483
+ internalType: "bytes[]",
2484
+ name: "data",
2485
+ type: "bytes[]",
2486
+ },
2487
+ ],
2488
+ name: "multicall",
2489
+ outputs: [
2490
+ {
2491
+ internalType: "bytes[]",
2492
+ name: "results",
2493
+ type: "bytes[]",
2494
+ },
2495
+ ],
2496
+ stateMutability: "nonpayable",
2497
+ type: "function",
2498
+ },
2499
+ {
2500
+ inputs: [],
2501
+ name: "numberOfDeposits",
2502
+ outputs: [
2503
+ {
2504
+ internalType: "uint32",
2505
+ name: "",
2506
+ type: "uint32",
2507
+ },
2508
+ ],
2509
+ stateMutability: "view",
2510
+ type: "function",
2511
+ },
2512
+ {
2513
+ inputs: [
2514
+ {
2515
+ internalType: "bool",
2516
+ name: "pause",
2517
+ type: "bool",
2518
+ },
2519
+ ],
2520
+ name: "pauseDeposits",
2521
+ outputs: [],
2522
+ stateMutability: "nonpayable",
2523
+ type: "function",
2524
+ },
2525
+ {
2526
+ inputs: [
2527
+ {
2528
+ internalType: "bool",
2529
+ name: "pause",
2530
+ type: "bool",
2531
+ },
2532
+ ],
2533
+ name: "pauseFills",
2534
+ outputs: [],
2535
+ stateMutability: "nonpayable",
2536
+ type: "function",
2537
+ },
2538
+ {
2539
+ inputs: [],
2540
+ name: "pausedDeposits",
2541
+ outputs: [
2542
+ {
2543
+ internalType: "bool",
2544
+ name: "",
2545
+ type: "bool",
2546
+ },
2547
+ ],
2548
+ stateMutability: "view",
2549
+ type: "function",
2550
+ },
2551
+ {
2552
+ inputs: [],
2553
+ name: "pausedFills",
2554
+ outputs: [
2555
+ {
2556
+ internalType: "bool",
2557
+ name: "",
2558
+ type: "bool",
2559
+ },
2560
+ ],
2561
+ stateMutability: "view",
2562
+ type: "function",
2563
+ },
2564
+ {
2565
+ inputs: [],
2566
+ name: "proxiableUUID",
2567
+ outputs: [
2568
+ {
2569
+ internalType: "bytes32",
2570
+ name: "",
2571
+ type: "bytes32",
2572
+ },
2573
+ ],
2574
+ stateMutability: "view",
2575
+ type: "function",
2576
+ },
2577
+ {
2578
+ inputs: [],
2579
+ name: "recipientCircleDomainId",
2580
+ outputs: [
2581
+ {
2582
+ internalType: "uint32",
2583
+ name: "",
2584
+ type: "uint32",
2585
+ },
2586
+ ],
2587
+ stateMutability: "view",
2588
+ type: "function",
2589
+ },
2590
+ {
2591
+ inputs: [
2592
+ {
2593
+ internalType: "bytes32",
2594
+ name: "relayerRefundRoot",
2595
+ type: "bytes32",
2596
+ },
2597
+ {
2598
+ internalType: "bytes32",
2599
+ name: "slowRelayRoot",
2600
+ type: "bytes32",
2601
+ },
2602
+ ],
2603
+ name: "relayRootBundle",
2604
+ outputs: [],
2605
+ stateMutability: "nonpayable",
2606
+ type: "function",
2607
+ },
2608
+ {
2609
+ inputs: [
2610
+ {
2611
+ internalType: "address",
2612
+ name: "",
2613
+ type: "address",
2614
+ },
2615
+ {
2616
+ internalType: "address",
2617
+ name: "",
2618
+ type: "address",
2619
+ },
2620
+ ],
2621
+ name: "relayerRefund",
2622
+ outputs: [
2623
+ {
2624
+ internalType: "uint256",
2625
+ name: "",
2626
+ type: "uint256",
2627
+ },
2628
+ ],
2629
+ stateMutability: "view",
2630
+ type: "function",
2631
+ },
2632
+ {
2633
+ inputs: [
2634
+ {
2635
+ internalType: "address",
2636
+ name: "",
2637
+ type: "address",
2638
+ },
2639
+ ],
2640
+ name: "remoteL1Tokens",
2641
+ outputs: [
2642
+ {
2643
+ internalType: "address",
2644
+ name: "",
2645
+ type: "address",
2646
+ },
2647
+ ],
2648
+ stateMutability: "view",
2649
+ type: "function",
2650
+ },
2651
+ {
2652
+ inputs: [
2653
+ {
2654
+ components: [
2655
+ {
2656
+ internalType: "bytes32",
2657
+ name: "depositor",
2658
+ type: "bytes32",
2659
+ },
2660
+ {
2661
+ internalType: "bytes32",
2662
+ name: "recipient",
2663
+ type: "bytes32",
2664
+ },
2665
+ {
2666
+ internalType: "bytes32",
2667
+ name: "exclusiveRelayer",
2668
+ type: "bytes32",
2669
+ },
2670
+ {
2671
+ internalType: "bytes32",
2672
+ name: "inputToken",
2673
+ type: "bytes32",
2674
+ },
2675
+ {
2676
+ internalType: "bytes32",
2677
+ name: "outputToken",
2678
+ type: "bytes32",
2679
+ },
2680
+ {
2681
+ internalType: "uint256",
2682
+ name: "inputAmount",
2683
+ type: "uint256",
2684
+ },
2685
+ {
2686
+ internalType: "uint256",
2687
+ name: "outputAmount",
2688
+ type: "uint256",
2689
+ },
2690
+ {
2691
+ internalType: "uint256",
2692
+ name: "originChainId",
2693
+ type: "uint256",
2694
+ },
2695
+ {
2696
+ internalType: "uint256",
2697
+ name: "depositId",
2698
+ type: "uint256",
2699
+ },
2700
+ {
2701
+ internalType: "uint32",
2702
+ name: "fillDeadline",
2703
+ type: "uint32",
2704
+ },
2705
+ {
2706
+ internalType: "uint32",
2707
+ name: "exclusivityDeadline",
2708
+ type: "uint32",
2709
+ },
2710
+ {
2711
+ internalType: "bytes",
2712
+ name: "message",
2713
+ type: "bytes",
2714
+ },
2715
+ ],
2716
+ internalType: "struct V3SpokePoolInterface.V3RelayData",
2717
+ name: "relayData",
2718
+ type: "tuple",
2719
+ },
2720
+ ],
2721
+ name: "requestSlowFill",
2722
+ outputs: [],
2723
+ stateMutability: "nonpayable",
2724
+ type: "function",
2725
+ },
2726
+ {
2727
+ inputs: [
2728
+ {
2729
+ internalType: "uint256",
2730
+ name: "",
2731
+ type: "uint256",
2732
+ },
2733
+ ],
2734
+ name: "rootBundles",
2735
+ outputs: [
2736
+ {
2737
+ internalType: "bytes32",
2738
+ name: "slowRelayRoot",
2739
+ type: "bytes32",
2740
+ },
2741
+ {
2742
+ internalType: "bytes32",
2743
+ name: "relayerRefundRoot",
2744
+ type: "bytes32",
2745
+ },
2746
+ ],
2747
+ stateMutability: "view",
2748
+ type: "function",
2749
+ },
2750
+ {
2751
+ inputs: [
2752
+ {
2753
+ internalType: "address",
2754
+ name: "newCrossDomainAdmin",
2755
+ type: "address",
2756
+ },
2757
+ ],
2758
+ name: "setCrossDomainAdmin",
2759
+ outputs: [],
2760
+ stateMutability: "nonpayable",
2761
+ type: "function",
2762
+ },
2763
+ {
2764
+ inputs: [
2765
+ {
2766
+ internalType: "uint32",
2767
+ name: "newl1Gas",
2768
+ type: "uint32",
2769
+ },
2770
+ ],
2771
+ name: "setL1GasLimit",
2772
+ outputs: [],
2773
+ stateMutability: "nonpayable",
2774
+ type: "function",
2775
+ },
2776
+ {
2777
+ inputs: [
2778
+ {
2779
+ internalType: "address",
2780
+ name: "l2Token",
2781
+ type: "address",
2782
+ },
2783
+ {
2784
+ internalType: "address",
2785
+ name: "l1Token",
2786
+ type: "address",
2787
+ },
2788
+ ],
2789
+ name: "setRemoteL1Token",
2790
+ outputs: [],
2791
+ stateMutability: "nonpayable",
2792
+ type: "function",
2793
+ },
2794
+ {
2795
+ inputs: [
2796
+ {
2797
+ internalType: "address",
2798
+ name: "l2Token",
2799
+ type: "address",
2800
+ },
2801
+ {
2802
+ internalType: "address",
2803
+ name: "tokenBridge",
2804
+ type: "address",
2805
+ },
2806
+ ],
2807
+ name: "setTokenBridge",
2808
+ outputs: [],
2809
+ stateMutability: "nonpayable",
2810
+ type: "function",
2811
+ },
2812
+ {
2813
+ inputs: [
2814
+ {
2815
+ internalType: "address",
2816
+ name: "newWithdrawalRecipient",
2817
+ type: "address",
2818
+ },
2819
+ ],
2820
+ name: "setWithdrawalRecipient",
2821
+ outputs: [],
2822
+ stateMutability: "nonpayable",
2823
+ type: "function",
2824
+ },
2825
+ {
2826
+ inputs: [
2827
+ {
2828
+ internalType: "bytes32",
2829
+ name: "depositor",
2830
+ type: "bytes32",
2831
+ },
2832
+ {
2833
+ internalType: "uint256",
2834
+ name: "depositId",
2835
+ type: "uint256",
2836
+ },
2837
+ {
2838
+ internalType: "uint256",
2839
+ name: "updatedOutputAmount",
2840
+ type: "uint256",
2841
+ },
2842
+ {
2843
+ internalType: "bytes32",
2844
+ name: "updatedRecipient",
2845
+ type: "bytes32",
2846
+ },
2847
+ {
2848
+ internalType: "bytes",
2849
+ name: "updatedMessage",
2850
+ type: "bytes",
2851
+ },
2852
+ {
2853
+ internalType: "bytes",
2854
+ name: "depositorSignature",
2855
+ type: "bytes",
2856
+ },
2857
+ ],
2858
+ name: "speedUpDeposit",
2859
+ outputs: [],
2860
+ stateMutability: "nonpayable",
2861
+ type: "function",
2862
+ },
2863
+ {
2864
+ inputs: [
2865
+ {
2866
+ internalType: "address",
2867
+ name: "depositor",
2868
+ type: "address",
2869
+ },
2870
+ {
2871
+ internalType: "uint256",
2872
+ name: "depositId",
2873
+ type: "uint256",
2874
+ },
2875
+ {
2876
+ internalType: "uint256",
2877
+ name: "updatedOutputAmount",
2878
+ type: "uint256",
2879
+ },
2880
+ {
2881
+ internalType: "address",
2882
+ name: "updatedRecipient",
2883
+ type: "address",
2884
+ },
2885
+ {
2886
+ internalType: "bytes",
2887
+ name: "updatedMessage",
2888
+ type: "bytes",
2889
+ },
2890
+ {
2891
+ internalType: "bytes",
2892
+ name: "depositorSignature",
2893
+ type: "bytes",
2894
+ },
2895
+ ],
2896
+ name: "speedUpV3Deposit",
2897
+ outputs: [],
2898
+ stateMutability: "nonpayable",
2899
+ type: "function",
2900
+ },
2901
+ {
2902
+ inputs: [
2903
+ {
2904
+ internalType: "address",
2905
+ name: "",
2906
+ type: "address",
2907
+ },
2908
+ ],
2909
+ name: "tokenBridges",
2910
+ outputs: [
2911
+ {
2912
+ internalType: "address",
2913
+ name: "",
2914
+ type: "address",
2915
+ },
2916
+ ],
2917
+ stateMutability: "view",
2918
+ type: "function",
2919
+ },
2920
+ {
2921
+ inputs: [
2922
+ {
2923
+ internalType: "bytes[]",
2924
+ name: "data",
2925
+ type: "bytes[]",
2926
+ },
2927
+ ],
2928
+ name: "tryMulticall",
2929
+ outputs: [
2930
+ {
2931
+ components: [
2932
+ {
2933
+ internalType: "bool",
2934
+ name: "success",
2935
+ type: "bool",
2936
+ },
2937
+ {
2938
+ internalType: "bytes",
2939
+ name: "returnData",
2940
+ type: "bytes",
2941
+ },
2942
+ ],
2943
+ internalType: "struct MultiCallerUpgradeable.Result[]",
2944
+ name: "results",
2945
+ type: "tuple[]",
2946
+ },
2947
+ ],
2948
+ stateMutability: "nonpayable",
2949
+ type: "function",
2950
+ },
2951
+ {
2952
+ inputs: [
2953
+ {
2954
+ internalType: "bytes32",
2955
+ name: "depositor",
2956
+ type: "bytes32",
2957
+ },
2958
+ {
2959
+ internalType: "bytes32",
2960
+ name: "recipient",
2961
+ type: "bytes32",
2962
+ },
2963
+ {
2964
+ internalType: "bytes32",
2965
+ name: "inputToken",
2966
+ type: "bytes32",
2967
+ },
2968
+ {
2969
+ internalType: "bytes32",
2970
+ name: "outputToken",
2971
+ type: "bytes32",
2972
+ },
2973
+ {
2974
+ internalType: "uint256",
2975
+ name: "inputAmount",
2976
+ type: "uint256",
2977
+ },
2978
+ {
2979
+ internalType: "uint256",
2980
+ name: "outputAmount",
2981
+ type: "uint256",
2982
+ },
2983
+ {
2984
+ internalType: "uint256",
2985
+ name: "destinationChainId",
2986
+ type: "uint256",
2987
+ },
2988
+ {
2989
+ internalType: "bytes32",
2990
+ name: "exclusiveRelayer",
2991
+ type: "bytes32",
2992
+ },
2993
+ {
2994
+ internalType: "uint256",
2995
+ name: "depositNonce",
2996
+ type: "uint256",
2997
+ },
2998
+ {
2999
+ internalType: "uint32",
3000
+ name: "quoteTimestamp",
3001
+ type: "uint32",
3002
+ },
3003
+ {
3004
+ internalType: "uint32",
3005
+ name: "fillDeadline",
3006
+ type: "uint32",
3007
+ },
3008
+ {
3009
+ internalType: "uint32",
3010
+ name: "exclusivityParameter",
3011
+ type: "uint32",
3012
+ },
3013
+ {
3014
+ internalType: "bytes",
3015
+ name: "message",
3016
+ type: "bytes",
3017
+ },
3018
+ ],
3019
+ name: "unsafeDeposit",
3020
+ outputs: [],
3021
+ stateMutability: "payable",
3022
+ type: "function",
3023
+ },
3024
+ {
3025
+ inputs: [
3026
+ {
3027
+ internalType: "address",
3028
+ name: "newImplementation",
3029
+ type: "address",
3030
+ },
3031
+ ],
3032
+ name: "upgradeTo",
3033
+ outputs: [],
3034
+ stateMutability: "nonpayable",
3035
+ type: "function",
3036
+ },
3037
+ {
3038
+ inputs: [
3039
+ {
3040
+ internalType: "address",
3041
+ name: "newImplementation",
3042
+ type: "address",
3043
+ },
3044
+ {
3045
+ internalType: "bytes",
3046
+ name: "data",
3047
+ type: "bytes",
3048
+ },
3049
+ ],
3050
+ name: "upgradeToAndCall",
3051
+ outputs: [],
3052
+ stateMutability: "payable",
3053
+ type: "function",
3054
+ },
3055
+ {
3056
+ inputs: [],
3057
+ name: "usdcToken",
3058
+ outputs: [
3059
+ {
3060
+ internalType: "contract IERC20",
3061
+ name: "",
3062
+ type: "address",
3063
+ },
3064
+ ],
3065
+ stateMutability: "view",
3066
+ type: "function",
3067
+ },
3068
+ {
3069
+ inputs: [],
3070
+ name: "withdrawalRecipient",
3071
+ outputs: [
3072
+ {
3073
+ internalType: "address",
3074
+ name: "",
3075
+ type: "address",
3076
+ },
3077
+ ],
3078
+ stateMutability: "view",
3079
+ type: "function",
3080
+ },
3081
+ {
3082
+ inputs: [],
3083
+ name: "wrappedNativeToken",
3084
+ outputs: [
3085
+ {
3086
+ internalType: "contract WETH9Interface",
3087
+ name: "",
3088
+ type: "address",
3089
+ },
3090
+ ],
3091
+ stateMutability: "view",
3092
+ type: "function",
3093
+ },
3094
+ {
3095
+ stateMutability: "payable",
3096
+ type: "receive",
3097
+ },
3098
+ ];
3099
+ const _bytecode = "0x610180604090808252346200036457506200626260a0813803918284519384926200002b8285620003b1565b833981010312620003155780516001600160a01b03808216939184900362000311576020916200005d838501620003d5565b916200006b828601620003d5565b6060860151958287168703620003115760800151938285169788860362000311573060805260a05260c05260e0525f5460ff8160081c16620002bd5760ff8082160362000284575b506101209485526101409283525f610100908152825163011a412160e61b8682019081526004825291976001600160401b039282860191908483118484101762000266575f938493885251915afa943d156200027a573d91821162000266578351916200012a601f8201601f1916830184620003b1565b82523d5f8284013e5b856200025a575b8562000225575b5050506101609283525192615e7a9485620003e88639608051858181611363015281816119210152611abc015260a051858181610a3a01528181613e8401528181613fe30152818161460d0152818161489801528181614bd90152818161504c015281816153f80152615473015260c051858181611d3001528181613e380152614d92015260e0518581816104ea0152614b82015251848181611f4401528181615a840152615b360152518381816109dd0152818161539801526159590152518281816124400152818161516a015261597c0152518181816120420152615a240152f35b90919294508082519201519181811062000249575b5050161515915f808062000141565b5f19910360031b1b165f806200023a565b8151811495506200013a565b634e487b7160e01b5f52604160045260245ffd5b6060915062000133565b60ff90811916175f557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249884835160ff8152a15f620000b3565b825162461bcd60e51b815260048101869052602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b5f80fd5b815162461bcd60e51b815260206004820152602260248201527f414249206465636f64696e673a207475706c65206461746120746f6f2073686f6044820152611c9d60f21b6064820152608490fd5b62461bcd60e51b815260206004820152602260248201527f45746865722073656e7420746f206e6f6e2d70617961626c652066756e63746960448201526137b760f11b6064820152608490fd5b601f909101601f19168101906001600160401b038211908210176200026657604052565b519063ffffffff82168203620003115756fe60806040526004361015610015575b3661303c57005b5f3560e01c8063079bd2c71461041a5780630c5d5f73146104155780630eaac9f0146104105780631186ec331461040b57806311eac8551461040657806315348e441461039d57806317fcb39b146104015780631b3d5559146103fc5780631fab657c146103f757806329cb924d146103f25780632e378115146103ed5780632e63e59a146103e85780633659cfe6146103e3578063431023b8146103de578063437b9116146103d9578063490e49ef146103d4578063493a4f84146103cf5780634f1ef286146103ca5780635285e058146103c557806352d1902d146103c0578063541f4f14146103bb578063577f51f8146103b657806357f6dcb8146103b15780636068d6cb146103ac578063647c576c146103a7578063670fa8ac146103a25780636bbbcd2e1461039d5780636e40098314610398578063738b62e514610393578063766e07031461038e578063775c0d03146103895780637aef642c146103845780637b9392321461037f5780637ef413e11461037a57806382e2c43f146103755780638a7860ce146103705780638b15788e1461036b578063927ede2d146103665780639748cf7c1461036157806397943aa91461035c578063979f2bc21461035757806399cc2968146103525780639a8a05921461034d578063a1244c6714610348578063a18a096e14610343578063ac9650d81461033e578063ad5425c614610339578063adb5a6a6146102ee578063b27a430014610334578063b370b7f51461032f578063babb6aac1461032a578063bf10268d14610325578063c35c83fc14610320578063ceb4c9871461031b578063d7e1583a14610316578063dda5211314610311578063ddd224f11461030c578063de7eba7814610307578063deff4b2414610302578063e3229211146102fd578063ea86bd46146102f8578063ee2a53f8146102f3578063f79f29ed146102ee578063fbbba9ac146102e95763fc8a584f0361000e5761300c565b612f88565b612947565b612f4a565b612e47565b612e1e565b612d29565b612cf9565b612cd0565b612caa565b612c74565b612b7a565b612b4f565b612acb565b6129f4565b6129cd565b61298e565b612809565b61274b565b6125e4565b6125bd565b6125a3565b61250e565b6124e4565b612464565b612421565b6123f3565b612375565b6122fd565b6121e6565b6121af565b612107565b612067565b61202b565b612007565b611f72565b611f28565b610a01565b611eee565b611dac565b611d54565b611d14565b611c3b565b611b78565b611aa2565b611a7b565b6118dc565b611855565b611837565b61176a565b6114e6565b61133a565b611140565b610fe0565b610fb7565b610eab565b610cbb565b610a1b565b6109be565b610918565b6105eb565b610585565b6104ce565b60405162461bcd60e51b815260206004820152602260248201527f45746865722073656e7420746f206e6f6e2d70617961626c652066756e63746960448201526137b760f11b6064820152608490fd5b60405162461bcd60e51b815260206004820152602260248201527f414249206465636f64696e673a207475706c65206461746120746f6f2073686f6044820152611c9d60f21b6064820152608490fd5b5f9103126104c957565b61046f565b3461050e575f3660031901126104c957602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b61041f565b60405162461bcd60e51b815260206004820152602260248201527f414249206465636f64696e673a20696e76616c6964207475706c65206f666673604482015261195d60f21b6064820152608490fd5b6001600160a01b0381160361057457565b5f80fd5b359061058382610563565b565b3461050e5760203660031901126104c95760206004356105a481610563565b6001600160a01b038091165f52610c5d825260405f205416604051908152f35b63ffffffff81160361057457565b6101443590610583826105c4565b3590610583826105c4565b3461050e5760203660031901126104c95763ffffffff60043561060d816105c4565b610615613bf6565b61061d613cbf565b16610c5a8163ffffffff198254161790557fe486a5c4bd7b36eabbfe274c99b39130277417be8d2209b4dae04c4fba64ee3a5f80a26001606555005b60405162461bcd60e51b815260206004820152602b60248201527f414249206465636f64696e673a20696e76616c69642063616c6c64617461206160448201527f72726179206f66667365740000000000000000000000000000000000000000006064820152608490fd5b60405162461bcd60e51b815260206004820152602760248201527f414249206465636f64696e673a20696e76616c6964206279746520617272617960448201527f206c656e677468000000000000000000000000000000000000000000000000006064820152608490fd5b634e487b7160e01b5f52604160045260245ffd5b6040810190811067ffffffffffffffff82111761075f57604052565b61072f565b6101a0810190811067ffffffffffffffff82111761075f57604052565b67ffffffffffffffff811161075f57604052565b6060810190811067ffffffffffffffff82111761075f57604052565b6080810190811067ffffffffffffffff82111761075f57604052565b6020810190811067ffffffffffffffff82111761075f57604052565b60e0810190811067ffffffffffffffff82111761075f57604052565b60a0810190811067ffffffffffffffff82111761075f57604052565b90601f8019910116810190811067ffffffffffffffff82111761075f57604052565b6040519060c0820182811067ffffffffffffffff82111761075f57604052565b60405190610180820182811067ffffffffffffffff82111761075f57604052565b6040519061058382610764565b60405190610583826107b1565b67ffffffffffffffff811161075f57601f01601f191660200190565b9291926108c68261089e565b916108d46040519384610821565b8294818452818301116108f0578281602093845f960137010152565b6106c4565b9080601f8301121561091357816020610910933591016108ba565b90565b610659565b6101003660031901126104c95760043561093181610563565b60243561093d81610563565b6084358060070b81036105745760a43590610957826105c4565b60c43567ffffffffffffffff81116109b9576109779036906004016108f5565b92610980613cbf565b60ff61086b5460e81c166109a7576109a094606435916044359133613dea565b6001606555005b604051630b4cba3160e31b8152600490fd5b610513565b3461050e575f3660031901126104c95760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461050e575f3660031901126104c95760206040515f8152f35b3461050e575f3660031901126104c95760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b60405162461bcd60e51b815260206004820152602360248201527f414249206465636f64696e673a20737472756374206461746120746f6f2073686044820152621bdc9d60ea1b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f414249206465636f64696e673a20696e76616c696420737472756374206f66666044820152621cd95d60ea1b6064820152608490fd5b67ffffffffffffffff811161075f5760051b60200190565b60405162461bcd60e51b815260206004820152602b60248201527f414249206465636f64696e673a20696e76616c69642063616c6c64617461206160448201527f72726179207374726964650000000000000000000000000000000000000000006064820152608490fd5b9080601f83011215610913576020908235610b9d81610b00565b93610bab6040519586610821565b81855260208086019260051b820101928311610be357602001905b828210610bd4575050505090565b81358152908301908301610bc6565b610b18565b9080601f83011215610913576020908235610c0281610b00565b93610c106040519586610821565b81855260208086019260051b820101928311610be357602001905b828210610c39575050505090565b8380918335610c4781610563565b815201910190610c2b565b9291610c5d82610b00565b91610c6b6040519384610821565b829481845260208094019160051b8101928311610be357905b828210610c915750505050565b81358152908301908301610c84565b9080601f830112156109135781602061091093359101610c52565b6003196060368201126104c957600435610cd4816105c4565b60243567ffffffffffffffff928382116109b95760c0908236030112610d9a57610cfc610843565b9080600401358252602481013560208301526044810135848111610d9557610d2a9060043691840101610b83565b6040830152610d3b606482016105e0565b6060830152610d4c60848201610578565b608083015260a481013590848211610d95576004610d6d9236920101610be8565b60a08201526044359283116109b957610d8d610d93933690600401610ca0565b916130a7565b005b610aaf565b610a5e565b60405162461bcd60e51b815260206004820152602760248201527f414249206465636f64696e673a207374727563742063616c6c6461746120746f60448201527f6f2073686f7274000000000000000000000000000000000000000000000000006064820152608490fd5b60405162461bcd60e51b815260206004820152602b60248201527f414249206465636f64696e673a20696e76616c69642063616c6c64617461206160448201527f72726179206c656e6774680000000000000000000000000000000000000000006064820152608490fd5b9181601f840112156109135782359167ffffffffffffffff8311610ea6576020808501948460051b010111610be357565b610e0a565b3461050e576003196060368201126104c95760043567ffffffffffffffff8082116109b957606082360393840112610fb25760243590610eea826105c4565b6044359081116109b957610f02903690600401610e75565b919093610f0d613cbf565b6004840135906101821901811215610fad57610fa394610f9e93610f3a610f979360043691890101612b98565b95610f50610f4b608089015161433a565b613fd9565b610f5987613b29565b9060446020890151916101608a015193610f71610843565b9a8b5260208b015201356040890152606088015260808701525f60a08701523691610c52565b9083614350565b6144a1565b610d936001606555565b61329f565b610d9f565b3461050e575f3660031901126104c9576020604051428152f35b9081610180910312610fb25790565b3461050e5760403660031901126104c95760043567ffffffffffffffff81116109b957611011903690600401610fd1565b61101a816132e4565b6001600160a01b031690611030602082016132e4565b6001600160a01b031691611046604083016132e4565b6001600160a01b031661105b606084016132e4565b6001600160a01b031692611071608082016132e4565b6001600160a01b0316906101006110898183016132ee565b90610120906110998483016132ee565b92610140948581016110aa906132ee565b966101609a8b83016110bc90846132f8565b9a909b6110c7610863565b9e8f91825260208201526040015260608d015260808c015260a081013560a08c015260c081013560c08c015260e0013560e08b015263ffffffff1690890152870190611118919063ffffffff169052565b63ffffffff90911690850152369061112f926108ba565b9082015233602435610d9392613b5a565b3461050e5760203660031901126104c9576004803567ffffffffffffffff81116109b9576111719036908301610fd1565b611179613cbf565b60ff61086b5460e01c1661132a5763ffffffff804216926101408301936111b2816111a3876132ee565b63ffffffff9182169116101590565b61131a576101208401926111c5846132ee565b161061130b576111dd6111d83685612b98565b613b29565b906111f1825f5261087260205260405f2090565b546112fd57506112407f3cee3e290f36226751cd0b3321b213890fe9c768e922f267fa6111836ce05c329261123b611235611246945f5261087260205260405f2090565b60019055565b6132ee565b936132ee565b61126661126161125a6101608601866132f8565b36916108ba565b61496e565b906112f06040519283926101008701359760e08801359760208101359281359260408301359260c08101359060a081013590606060808201359101358b9693909a999895919261012098959361014089019c895260208901526040880152606087015263ffffffff80921660808701521660a085015260c084015260e08301526101008201520152565b0390a3610d936001606555565b604051624be79160e21b8152fd5b60405163d642b7d960e01b8152fd5b50604051630277ae7b60e21b8152fd5b50604051633d90fc5560e11b8152fd5b3461050e5760203660031901126104c95760043561135781610563565b6001600160a01b0390817f00000000000000000000000000000000000000000000000000000000000000001691611390833014156133d8565b6113bf7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc93828554161461344a565b6113c7613bf6565b604051906113d4826107cd565b5f82527f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561140d575050610d939150615618565b82919216803b156114e1576020600491604051928380926352d1902d60e01b82525afa5f91816114b0575b5061149d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b0390fd5b610d93936114ab9114614983565b6154fa565b6114d391925060203d6020116114da575b6114cb8183610821565b810190614133565b905f611438565b503d6114c1565b613d22565b3461050e5760803660031901126104c957610d93600435611506816105c4565b61163860243561151581610563565b6116336044359161152583610563565b6115846064359561153587610563565b61156160ff5f5460081c16611549816134bc565b610c5a805463ffffffff1916624c4b401790556134bc565b61086b9063ffffffff60c01b1963ffffffff60c01b83549260c01b169116179055565b60405161159081610743565b6009815260208101907f4143524f53532d563200000000000000000000000000000000000000000000008252604051916115c983610743565b6005835260208301917f312e302e30000000000000000000000000000000000000000000000000000000835261160e60ff5f5460081c16611609816134bc565b6134bc565b519020915190209061047f5561048055611626614db9565b61162e614dc9565b614de4565b614e3e565b610c5a9077ffffffffffffffffffffffffffffffffffffffff000000001977ffffffffffffffffffffffffffffffffffffffff0000000083549260201b169116179055565b60206003198201126104c9576004359067ffffffffffffffff82116109b9576116a891600401610e75565b9091565b5f5b8381106116bd5750505f910152565b81810151838201526020016116ae565b906020916116e6815180928185528580860191016116ac565b601f01601f1916010190565b6020808201908083528351809252604092604081018260408560051b8401019601945f925b858410611728575050505050505090565b909192939495968580611759600193603f1986820301885286838d51805115158452015191818582015201906116cd565b990194019401929594939190611717565b3461050e576117783661167d565b61178181610b00565b9160406117916040519485610821565b828452601f196117a084610b00565b015f5b8181106118145750505f5b8381106117c757604051806117c387826116f2565b0390f35b8061180e6117d76001938861352e565b515f806117e5858a8a613542565b906117f4895180938193613559565b0390305af490611802613566565b60208201529015159052565b016117ae565b602090835161182281610743565b5f8152826060818301528289010152016117a3565b3461050e575f3660031901126104c95760206040516301e133808152f35b3461050e5760403660031901126104c957602435600435611874613bf6565b61187c613cbf565b61086c80546801000000000000000081101561075f5763ffffffff91600182019055836118a882612f0b565b5084600182015555167fc86ba04c55bc5eb2f2876b91c438849a296dbec7b08751c3074d92e04f0a77af5f80a46001606555005b60403660031901126104c9576004356118f481610563565b60243567ffffffffffffffff81116109b9576119149036906004016108f5565b906001600160a01b0391827f0000000000000000000000000000000000000000000000000000000000000000169261194e843014156133d8565b61197d7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc94828654161461344a565b611985613bf6565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156119bb575050610d939150615618565b82919216803b156114e1576020600491604051928380926352d1902d60e01b82525afa5f9181611a5a575b50611a475760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b610d9393611a559114614983565b6155c6565b611a7491925060203d6020116114da576114cb8183610821565b905f6119e6565b3461050e575f3660031901126104c95760206001600160a01b036108695416604051908152f35b3461050e575f3660031901126104c9576001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003611b0d576040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152602090f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608490fd5b6101203660031901126104c957600435611b9181610563565b60243590611b9e82610563565b60443591611bab83610563565b60a4358060070b81036105745760c43591611bc5836105c4565b60e43567ffffffffffffffff81116109b957611be59036906004016108f5565b93611bee613cbf565b60ff61086b5460e81c166109a7576109a0956084359260643592613dea565b9181601f840112156109135782359167ffffffffffffffff8311610ea65760208381860195010111610be357565b3461050e5760c03660031901126104c957600435611c5881610563565b60243560443591606435611c6b81610563565b67ffffffffffffffff916084358381116109b957611c8d903690600401611c0d565b60a4949194359182116109b9577f45e04bc8f121ba11466985789ca2822a91109f31bb8ac85504a37b7eaf873c2694611ccd611d0f933690600401611c0d565b9290916001600160a01b03809716611d018a8c83611cec3688886108ba565b91611cf8368b8b6108ba565b9346908d6149f5565b604051978897169a876135b5565b0390a3005b3461050e575f3660031901126104c957602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461050e575f3660031901126104c957602060ff61086b5460e81c166040519015158152f35b60609060031901126104c957600435611d92816105c4565b90602435611d9f81610563565b9060443561091081610563565b3461050e57611dba36611d7a565b5f54600881901c60ff1615939290849081611ee0575b8115611ec0575b5015611e5557611dfb9284611df2600160ff195f5416175f55565b611e3e576135e8565b611e0157005b611e0f61ff00195f54165f55565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b611e5061010061ff00195f5416175f55565b6135e8565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608490fd5b303b15915081611ed2575b505f611dd7565b6001915060ff16145f611ecb565b600160ff8216109150611dd0565b3461050e575f3660031901126104c95760206040517f8d1994e2bbbd77564cdca06dd819e7ee2a5efa06c80dcb59a4a7b6e39edc538f8152f35b3461050e575f3660031901126104c957602060405163ffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b8015150361057457565b3461050e5760203660031901126104c9577fe88463c2f254e2b070013a2dc7ee1e099f9bc00534cbdf03af551dc26ae492196020600435611fb281611f68565b611fba613bf6565b611fc2613cbf565b151561086b80547fffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff60e81b8460e81b169116179055604051908152a16001606555005b3461050e575f3660031901126104c957602063ffffffff610c5a5416604051908152f35b3461050e575f3660031901126104c95760206040517f000000000000000000000000000000000000000000000000000000000000000015158152f35b6101603660031901126104c95760043561208081610563565b6024359061208d82610563565b60443561209981610563565b606435906120a682610563565b60e4356120b281610563565b61010435906120c0826105c4565b61012435926120ce846105c4565b610144359667ffffffffffffffff88116109b9576120f3610d93983690600401611c0d565b97909660c4359360a435936084359361367a565b6101803660031901126104c95760043561212081610563565b6024359061212d82610563565b60443561213981610563565b6064359061214682610563565b60e43561215281610563565b6101043561215f816105c4565b610124359161216d836105c4565b6121756105d2565b93610164359767ffffffffffffffff89116109b95761219b610d93993690600401611c0d565b98909760c4359360a435936084359361369c565b3461050e5760603660031901126104c95760206121de6004356121d181610563565b60443590602435906137b7565b604051908152f35b3461050e5760603660031901126104c95767ffffffffffffffff6024358181116109b957612218903690600401611c0d565b916044359081116109b957612231903690600401611c0d565b90604051936020850194806122484684888a6137f3565b039561225c601f1997888101845283610821565b60043591519020036122eb575f9461228b6122ad93612282876122b9958a990190612c4e565b95810190613810565b519360405193849160208301966337bfd2c960e21b88523391602485016138d8565b03908101835282610821565b5190305af46122c6613566565b90156122ce57005b60405163b8fe37a760e01b815290819061149990600483016138fa565b604051630f0c8f4760e11b8152600490fd5b3461050e5760203660031901126104c957600435612319613bf6565b612321613cbf565b61232a81612f0b565b612362576001815f80935501557f7c1af0646963afc3343245b103731965735a893347bfa0d58a5dc77a77ae691c5f80a26001606555005b634e487b7160e01b5f525f60045260245ffd5b6101a03660031901126104c9576101243561238f816105c4565b6101443561239c816105c4565b61016435916123aa836105c4565b610184359267ffffffffffffffff84116109b9576123cf610d93943690600401611c0d565b9390926101043560e43560c43560a43560843560643560443560243560043561390b565b3461050e575f3660031901126104c95760206040517342000000000000000000000000000000000000078152f35b3461050e575f3660031901126104c95760206040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461050e5760e03660031901126104c95767ffffffffffffffff6004358181116109b957612496903690600401610fd1565b60a4358281116109b9576124ae903690600401611c0d565b60c4929192359384116109b9576124cc610d93943690600401611c0d565b93909260843590606435906044359060243590613983565b3461050e57610d936115846116336124fb36611d7a565b93909161156160ff5f5460081c166134bc565b3461050e5760203660031901126104c9577f2d5b62420992e5a4afce0e77742636ca2608ef58289fd2e1baa5161ef6e7e41e602060043561254e81611f68565b612556613bf6565b61255e613cbf565b151561086b80547fffffff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffff60ff60e01b8460e01b169116179055604051908152a16001606555005b3461050e575f3660031901126104c9576020604051468152f35b3461050e575f3660031901126104c957602063ffffffff61086b5460c01c16604051908152f35b3461050e5760403660031901126104c957600435602435612604826153bf565b6001600160a01b0382165f5261087360205261263360405f20336001600160a01b03165f5260205260405f2090565b549182156126d6575f61267a3361266461264c8561433a565b6001600160a01b03165f5261087360205260405f2090565b906001600160a01b03165f5260205260405f2090565b556126a68361269761268b8461433a565b6001600160a01b031690565b6126a08561433a565b90614e98565b60405192835233927f6c172ea51018fb2eb2118f3f8a507c4df71eb519b8c0052834dc3c920182fef490602090a4005b6040516336542bf760e21b8152600490fd5b6020808201906020835283518092526040830192602060408460051b8301019501935f915b84831061271d5750505050505090565b909192939495848061273b600193603f198682030187528a516116cd565b980193019301919493929061270d565b3461050e576127593661167d565b9061276382613a6c565b915f5b81811061277b57604051806117c386826126e8565b5f80612788838587613542565b6040939161279a855180938193613559565b0390305af4906127a8613566565b91156127cf5750906001916127bd828761352e565b526127c8818661352e565b5001612766565b906044815110610574576114996127f460049283810151602480918301019101613ab5565b925162461bcd60e51b815292839283016138fa565b610180806003193601126104c95761010435612824816105c4565b6101243591612832836105c4565b6101443592612840846105c4565b6101643567ffffffffffffffff81116109b957612861903690600401611c0d565b612869613cbf565b61086b549260ff8460e81c166109a757610fa39661290b61125a926128fd63ffffffff6129199860c01c16996128a16115618c613b14565b6128a9610884565b9a6004358c5260243560208d015260443560408d015260643560608d015260843560808d015260a43560a08d015260c43560c08d015260e43560e08d01526101008c01526101208b019063ffffffff169052565b63ffffffff16610140890152565b63ffffffff16610160870152565b90820152614b27565b60409060031901126104c95760043561293a81610563565b9060243561091081610563565b3461050e5760206129856001600160a01b0361296236612922565b91165f52610873835260405f20906001600160a01b03165f5260205260405f2090565b54604051908152f35b3461050e5760203660031901126104c95760206004356129ad81610563565b6001600160a01b038091165f52610c5c825260405f205416604051908152f35b3461050e575f3660031901126104c95760206001600160a01b0361086a5416604051908152f35b3461050e5760c03660031901126104c95760043560243567ffffffffffffffff6064356044356084358381116109b957612a32903690600401611c0d565b60a4949194359182116109b9577f45e04bc8f121ba11466985789ca2822a91109f31bb8ac85504a37b7eaf873c2694612a72612ac1933690600401611c0d565b929091612a7d613cbf565b612a868a6153bf565b612ab5898b8989612a983688886108ba565b92612aa4368b8b6108ba565b946001600160a01b034692166149f5565b604051968796876135b5565b0390a36001606555005b3461050e57612ad936612922565b90612ae2613bf6565b612aea613cbf565b6001600160a01b0380911691825f52610c5d602052612b228160405f20906001600160a01b03166001600160a01b0319825416179055565b16907fcb84c2022106a6f2b6f805d446f32fbfd2a528474364fa755f37dac1c0c1b6c85f80a36001606555005b3461050e5760203660031901126104c9576004355f52610872602052602060405f2054604051908152f35b3461050e575f3660031901126104c957602060405163ffffffff8152f35b919061018083820312610d9a57612bad610863565b92803584526020810135602085015260408101356040850152606081013560608501526080810135608085015260a081013560a085015260c081013560c085015260e081013560e08501526101008082013590850152610120612c118183016105e0565b90850152610140612c238183016105e0565b90850152610160918282013567ffffffffffffffff8111610d9557612c4892016108f5565b90830152565b906020828203126104c957813567ffffffffffffffff81116109b9576109109201612b98565b3461050e5760203660031901126104c95760043567ffffffffffffffff81116109b9576121de6111d86020923690600401612b98565b3461050e575f3660031901126104c957602060ff61086b5460e01c166040519015158152f35b3461050e575f3660031901126104c95760206040516ec097ce7bc90715b34b9f10000000008152f35b3461050e5760203660031901126104c9576109a0600435612d1981610563565b612d21613bf6565b61162e613cbf565b3461050e5760603660031901126104c95760043567ffffffffffffffff81116109b957612d5a903690600401612b98565b612d62613cbf565b60ff61086b5460e01c16612e0c5761014081015163ffffffff4281169116101580612ded575b612ddb5780612d99610fa392613b29565b60c082015160208301519061016084015192612db3610843565b948552602085015260408401526060830152608082015260243560a08201526044359061470d565b604051630c3a9b9d60e41b8152600490fd5b50612dfb604082015161433a565b6001600160a01b0316331415612d88565b604051633d90fc5560e11b8152600490fd5b3461050e575f3660031901126104c9576020610c5a546001600160a01b0360405191831c168152f35b610160806003193601126104c95761010435612e62816105c4565b61012435612e6f816105c4565b6101443567ffffffffffffffff81116109b957612e90903690600401611c0d565b63ffffffff94612ea3864216958661365d565b93612eac613cbf565b61086b549160ff8360e81c166109a757612edf612eec966128fd610fa39a61125a9660c01c16996128a16115618c613b14565b86019063ffffffff169052565b610180820152614b27565b634e487b7160e01b5f52603260045260245ffd5b61086c908154811015612f45576003915f52027f71cd7344f4eb2efc8e30291f6dbdb44d618ca368ea5425d217c1d604bf26b84d01905f90565b612ef7565b3461050e5760203660031901126104c95760043561086c5481101561057457612f74604091612f0b565b506001815491015482519182526020820152f35b3461050e57612f9636612922565b90612f9f613bf6565b612fa7613cbf565b6001600160a01b0380911691825f52610c5c602052612fdf8160405f20906001600160a01b03166001600160a01b0319825416179055565b16907ff3dc137d2246f9b8abd0bb821e185ba01122c9b3ea3745ffca6208037674d6705f80a36001606555005b3461050e5760203660031901126104c9576109a060043561302c81610563565b613034613bf6565b611633613cbf565b60405162461bcd60e51b815260206004820152602960248201527f556e6b6e6f776e207369676e617475726520616e64206e6f2066616c6c62616360448201527f6b20646566696e656400000000000000000000000000000000000000000000006064820152608490fd5b916130b0613cbf565b60808201916130c9610f4b84516001600160a01b031690565b6020810191825146036131d0576130f16130f5918360016130e989612f0b565b50015461404c565b1590565b6131be578060607ff4ad92585b1bc117fbdd644990adf0827bc4c95baeae8a23322af807b6d0020e920193613137613131865163ffffffff1690565b876140de565b6131b184519483519361319661318861317760408401998a5161315e8d5163ffffffff1690565b89516001600160a01b03169160a088019b8c519461414f565b925193519851995163ffffffff1690565b94516001600160a01b031690565b945163ffffffff9586604051978897169b1699339487613251565b0390a46105836001606555565b60405163582f497d60e11b8152600490fd5b604051633d23e4d160e11b8152600490fd5b9081518082526020808093019301915f5b828110613201575050505090565b8351855293810193928101926001016131f3565b9081518082526020808093019301915f5b828110613234575050505090565b83516001600160a01b031685529381019392810192600101613226565b949695919361327360a09561329193885260c0602089015260c08801906131e2565b906001600160a01b0380951660408801528682036060880152613215565b951515608085015216910152565b60405162461bcd60e51b815260206004820152601c60248201527f496e76616c69642063616c6c64617461207461696c206f6666736574000000006044820152606490fd5b3561091081610563565b35610910816105c4565b903590601e1981360301821215610fad570180359067ffffffffffffffff82116133705760200191813603831361332b57565b60405162461bcd60e51b815260206004820152601760248201527f43616c6c64617461207461696c20746f6f2073686f72740000000000000000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f496e76616c69642063616c6c64617461207461696c206c656e677468000000006044820152606490fd5b634e487b7160e01b5f52602160045260245ffd5b600311156133d357565b6133b5565b156133df57565b60405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c00000000000000000000000000000000000000006064820152608490fd5b1561345157565b60405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f6163746976652070726f787900000000000000000000000000000000000000006064820152608490fd5b156134c357565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608490fd5b8051821015612f455760209160051b010190565b90821015612f45576116a89160051b8101906132f8565b908092918237015f815290565b3d15613590573d906135778261089e565b916135856040519384610821565b82523d5f602084013e565b606090565b908060209392818452848401375f828201840152601f01601f1916010190565b949290936135da92610910979587526020870152608060408701526080860191613595565b926060818503910152613595565b61360892916115846116339261156160ff5f5460081c16611549816134bc565b610583610c5a77deaddeaddeaddeaddeaddeaddeaddeaddead00000000000077ffffffffffffffffffffffffffffffffffffffff0000000019825416179055565b634e487b7160e01b5f52601160045260245ffd5b91909163ffffffff8080941691160191821161367557565b613649565b96949290916105839b9a999896949261369a63ffffffff4216988961365d565b985b9593919b999897969492909b6136b0613cbf565b61086b549660ff8860e81c166109a7578760c01c63ffffffff166136d390613b14565b6136fa9061086b9063ffffffff60c01b1963ffffffff60c01b83549260c01b169116179055565b613702610884565b9d6001600160a01b038f921682526001600160a01b031690602001526001600160a01b031660408d01526001600160a01b031660608c015260808b015260a08a015260c08901526001600160a01b031660e088015260c01c63ffffffff1661010087015261012086019061377b919063ffffffff169052565b63ffffffff1661014085015263ffffffff16610160840152369061379e926108ba565b6101808201526137ad90614b27565b6105836001606555565b916040519160208301936bffffffffffffffffffffffff199060601b16845260348301526054820152605481526137ed816107b1565b51902090565b93929160209161380b91604087526040870191613595565b930152565b908160209103126104c957604051906020820182811067ffffffffffffffff82111761075f5760405235815290565b6109109161018090825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e082015261010080840151908201526138b4610120808501519083019063ffffffff169052565b6101408381015163ffffffff169082015281610160809401519382015201906116cd565b6138f06040929594939560608352606083019061383f565b9460208201520152565b9060206109109281815201906116cd565b9c9a9998979695949392919096613920613cbf565b60ff61086b5460e81c166109a757613939908e336137b7565b96604051809e61394882610764565b81526020015260408d015260608c015260808b015260a08a015260c089015260e088015261010087015263ffffffff1661012086015261377b565b979290959391969497613994613cbf565b60ff61086b5460e01c16612e0c576139af61014082016132ee565b63ffffffff8042169116101580613a4d575b612ddb57613a36613a4896613a2e6137ad9b6139e06111d83687612b98565b9a6139e9610843565b9b6139f43688612b98565b8d5260208d01528660408d01528760608d0152613a12368b846108ba565b60808d015260a08c0152613a26853561433a565b9836916108ba565b9536916108ba565b9461010060e0830135920135906149f5565b61470d565b50613a5b604082013561433a565b6001600160a01b03163314156139c1565b90613a7682610b00565b613a836040519182610821565b8281528092613a94601f1991610b00565b01905f5b828110613aa457505050565b806060602080938501015201613a98565b6020818303126104c95780519067ffffffffffffffff82116109b9570181601f82011215610913578051613ae88161089e565b92613af66040519485610821565b818452602082840101116108f05761091091602080850191016116ac565b63ffffffff8091169081146136755760010190565b6040516137ed81613b46602082019460408652606083019061383f565b46604083015203601f198101835282610821565b919091613b65613cbf565b60ff61086b5460e01c16612e0c5761014081015163ffffffff4281169116101580613bd7575b612ddb576137ad92613b9c82613b29565b60c083015160208401519061016085015192613bb6610843565b958652602086015260408501526060840152608083015260a082015261470d565b50613be5604082015161433a565b6001600160a01b0316331415613b8b565b734200000000000000000000000000000000000007803303613cad57803b156114e157602060049160405192838092636e296e4560e01b82525afa908115613ca8575f91613c79575b506001600160a01b03613c5e61268b610869546001600160a01b031690565b911603613c6757565b6040516336a816d960e01b8152600490fd5b613c9b915060203d602011613ca1575b613c938183610821565b810190614ee0565b5f613c3f565b503d613c89565b613d8d565b60405163253a6fc960e11b8152600490fd5b600260655414613cd0576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9190820391821161367557565b60405162461bcd60e51b815260206004820152602560248201527f54617267657420636f6e747261637420646f6573206e6f7420636f6e7461696e60448201527f20636f64650000000000000000000000000000000000000000000000000000006064820152608490fd5b6040513d5f823e3d90fd5b926109109695929491946101409585525f60208601526040850152606084015263ffffffff809116608084015260a08301525f60c083015260e08201525f6101008201528161012082015201906116cd565b9193949690959660070b906706f05b59d3b20000613e0783614ef5565b1015613fc7576ec097ce7bc90715b34b9f10000000008411613fb55763ffffffff93613e35858a1642613d15565b857f00000000000000000000000000000000000000000000000000000000000000001610613fa35761086b5460c01c63ffffffff1698613e776115618b613b14565b6001600160a01b039586807f00000000000000000000000000000000000000000000000000000000000000001698169288841480613f9a575b15613f5e57803403613f4c57883b156114e1575f6004996040519a8b8092630d0e30db60e41b825234905af1988915613ca857613f1b613f2e978a927f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad39c613f33575b505b83614f43565b92604051998a99169d169b169387613d98565b0390a4565b80613f40613f4692610781565b806104bf565b5f613f13565b604051636452a35d60e01b8152600490fd5b7f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad3985087613f1b613f2e97613f958430338a614f04565b613f15565b50341515613eb0565b60405163f722177f60e01b8152600490fd5b60405163622db5a960e11b8152600490fd5b60405163284f109760e21b8152600490fd5b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811691168114614010575b50565b476140185750565b4790803b156114e1575f90600460405180948193630d0e30db60e41b83525af18015613ca8571561400d5761058390610781565b61091092916040516140d5816140c7602082019460208652805160408401526020810151606084015260a0614091604083015160c060808701526101008601906131e2565b606083015163ffffffff168583015260808301516001600160a01b031660c0860152910151838203603f190160e0850152613215565b03601f198101835282610821565b51902091614f79565b6140e9600291612f0b565b500162ffffff8260081c16805f5281602052600160ff60405f205494161b8080941614614121575f5260205260405f20908154179055565b60405163954476d960e01b8152600490fd5b908160209103126104c9575190565b9190820180921161367557565b91959495939092935f968151908181510361432857816141ce575b50505082614179575b50505050565b6001600160a01b03816141ad7ffa7fa7cf6d7dde5f9be65a67e6a1a747e7aa864dcd2d793353c722d80fbbb357938661503c565b6040805195865233602087015291169463ffffffff1693a45f808080614173565b6001600160a01b038416803b156114e157604080516370a0823160e01b81523060048083019190915292602090829060249082905afa908115613ca8575f91614309575b505f805b86811061422757505050505061416a565b614231818961352e565b5161423f575b600101614216565b906142559061424e838a61352e565b5190614142565b908282116142f95761428f6130f161427d614270848a61352e565b516001600160a01b031690565b614287848c61352e565b51908c614fca565b15614237579c50876142ef6142e78f6142d26142706142cb6142b1848f61352e565b51966001600160a01b03165f5261087360205260405f2090565b928b61352e565b6001600160a01b03165f5260205260405f2090565b918254614142565b905560019c614237565b50505051632ddaa83160e11b8152fd5b614322915060203d6020116114da576114cb8183610821565b5f614212565b6040516319a5316760e31b8152600490fd5b6001600160a01b039061434c816153bf565b1690565b916130f1906143c99284516040809601519186519161436e83610795565b82526140d56143896020840192468452898501958652612f0b565b50549388519283916143ae6020840196602088525160608d86015260a085019061383f565b9151606084015251608083015203601f198101835282610821565b6143d05750565b5163582f497d60e11b8152600490fd5b6143e9826133c9565b52565b9a989693919c9b9997959492909c6101e08c019d8c5260208c015260408b015260608a0152608089015263ffffffff80921660a08901521660c087015260e08601526101008501526101208401526101408301528051610160830152602081015161018083015260408101516101a0830152606001519061446c826133c9565b6101c00152565b9061091094936080936001600160a01b038093168452602084015216604082015281606082015201906116cd565b5f815161012081016144b7815163ffffffff1690565b63ffffffff429116106146fb5760208401519060026144df835f5261087260205260405f2090565b54146146e9576144f985925f5261087260205260405f2090565b6002905560608301519060808401519160a08501519260c0860151918560a0810151938860e08101519561010082015197516145389063ffffffff1690565b61014083015163ffffffff1660408401519184519360208601519561016001516145619061496e565b966060890151986080019e8f516145779061496e565b906040015190614585610891565b9a8b5260208b015260408a0152600260608a01526040519d8e9b6145a99b8d6143ec565b037f44b559f101f8fbcc8a0ea43fa91a05a729a5ea6e14a7c75aa750374690137208905f94a460808201516145dd9061433a565b90604085015194606001516145f19061433a565b92608001516145ff9061433a565b6001600160a01b03919082167f00000000000000000000000000000000000000000000000000000000000000008316036146d457846146c1575b614645868386166153da565b519283511515806146b7575b61465e575b505050505050565b1690813b156114e1578361468b9560405196879586948593633a5be8cb60e01b8552339160048601614473565b03925af18015613ca8576146a4575b8080808080614656565b80613f406146b192610781565b5f61469a565b50803b1515614651565b6146cf863033858716614f04565b614639565b5f94506146e48685858516614e98565b614645565b604051630479306360e51b8152600490fd5b60405163d642b7d960e01b8152600490fd5b8051916101208301614723815163ffffffff1690565b63ffffffff429116106146fb576020830151600161474a825f5261087260205260405f2090565b5403614967576001905b6002614769825f5261087260205260405f2090565b54146146e95761478561478b915f5261087260205260405f2090565b60029055565b7f44b559f101f8fbcc8a0ea43fa91a05a729a5ea6e14a7c75aa75037469013720860608601516080870151906148588760a08a0151958a60c08101519760a08401519860e0830151996147e86101008501519c5163ffffffff1690565b61014085015163ffffffff169160408601519386519561484c61481461016060208b01519a015161496e565b9960608c01519b604061482a608083015161496e565b910151906020614838610891565b9e8f528e015260408d015260608c016143e0565b6040519c8d9c8d6143ec565b0390a4614868608083015161433a565b91604082015191608061488a81614882606085015161433a565b94015161433a565b6001600160a01b03929083167f0000000000000000000000000000000000000000000000000000000000000000841603614954576148cc853033868a16614f04565b6148d8858486166153da565b015191825115158061494a575b6148f1575b5050505050565b16803b156114e15761491f935f809460405196879586948593633a5be8cb60e01b8552339160048601614473565b03925af18015613ca857614937575b808080806148ea565b80613f4061494492610781565b5f61492e565b50803b15156148e5565b614962858533868a16614f04565b6148d8565b5f90614754565b8051908161497c5750505f90565b6020012090565b1561498a57565b60405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f7860448201527f6961626c655555494400000000000000000000000000000000000000000000006064820152608490fd5b9392604293610583979660208151910120906040519260208401947f8d1994e2bbbd77564cdca06dd819e7ee2a5efa06c80dcb59a4a7b6e39edc538f86526040850152856060850152608084015260a083015260c082015260c08152614a5a816107e9565b5190209061047f549061048054906040519160208301937fc2f8787176b8ac6bf7215b4adcc1e069bf4ab82d9ab1df05a57a91d425935b6e855260408401526060830152608082015260808152614ab081610805565b519020906040519161190160f01b83526002830152602282015220906156c6565b96926109109a9996949198959261014099895260208901526040880152606087015263ffffffff928380921660808801521660a08601521660c084015260e08301526101008201528161012082015201906116cd565b614b3181516153bf565b6101208101614b50614b47825163ffffffff1690565b63ffffffff1690565b804210908115614d80575b50613fa357610140820191614b74835163ffffffff1690565b9063ffffffff9182614ba8817f00000000000000000000000000000000000000000000000000000000000000001642614142565b911611614d6e5761016081015163ffffffff169180831680614d29575b505060408101908151916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001680931480614d20575b15614cd35760808201513403613f4c57823b156114e1575f60049360405194858092630d0e30db60e41b825234905af1928315613ca8577f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad393614cc0575b505b51613f2e60608301519260808101519060a081015160c082015197614c9f614c946101008501519b5163ffffffff1690565b9b5163ffffffff1690565b83519b60208501519361018060e0870151960151966040519a8b9a8b614ad1565b80613f40614ccd92610781565b5f614c60565b915034613f4c5781614d1b614d0c61268b7f32ed1a409ef04c7b0227189c3a103dc5ac10e775a15b785dcc510201f7c25ad3955161433a565b60808401519030903390614f04565b614c62565b50341515614c02565b6301e133801015614d59575b5060e081015115614d47575f80614bc5565b60405163495d907f60e01b8152600490fd5b91614d67919242169061365d565b905f614d35565b60405163582e388960e01b8152600490fd5b614d8b915042613d15565b63ffffffff7f000000000000000000000000000000000000000000000000000000000000000016105f614b5b565b61058360ff5f5460081c166134bc565b614ddd60ff5f5460081c16611609816134bc565b6001606555565b6001600160a01b03168015614e2c57610869816001600160a01b03198254161790557fa9e8c42c9e7fca7f62755189a16b2f5314d43d8fb24e91ba54e6d65f9314e8495f80a2565b60405163ba97b39d60e01b8152600490fd5b6001600160a01b03168015614e865761086a816001600160a01b03198254161790557fa73e8909f8616742d7fe701153d82666f7b7cd480552e23ebb05d358c22fd04e5f80a2565b604051635b03092b60e11b8152600490fd5b60405163a9059cbb60e01b60208201526001600160a01b039092166024830152604482019290925261058391614edb82606481015b03601f198101845283610821565b6157a4565b908160209103126104c9575161091081610563565b5f8112614eff5790565b5f0390565b909261058393604051936323b872dd60e01b60208601526001600160a01b038092166024860152166044840152606483015260648252614edb82610805565b90670de0b6b3a7640000915f82840392128383128116908484139015161761367557818102918183041490151715613675570490565b929091905f915b8451831015614fc257614f93838661352e565b519081811015614fb1575f52602052600160405f205b920191614f80565b905f52602052600160405f20614fa9565b915092501490565b60405163a9059cbb60e01b60208281019182526001600160a01b039094166024830152604482019490945290925f9161500681606481016140c7565b519082855af1903d5f51908361501d575b50505090565b9192509061503257503b15155b5f8080615017565b600191501461502a565b906001600160a01b0390818116907f0000000000000000000000000000000000000000000000000000000000000000831682036151665750803b156114e157604051632e1a7d4d60e01b815260048101849052905f908290602490829084905af18015613ca857615153575b50610c5a54916150c161086a546001600160a01b031690565b73420000000000000000000000000000000000001090813b156114e157604051631474f2a960e31b8152602086901c949094166001600160a01b0390811660048601521660248401526044830182905263ffffffff909316606483015260a060848301525f60a483018190529192839160c4918391905af18015613ca8576151465750565b80613f4061058392610781565b80613f4061516092610781565b5f6150a8565b91807f000000000000000000000000000000000000000000000000000000000000000016151580615394575b156151b657505050610583906151b161086a546001600160a01b031690565b61594c565b806151e36151d6856001600160a01b03165f52610c5c60205260405f2090565b546001600160a01b031690565b16615370577342000000000000000000000000000000000000105b169061522261268b6151d6856001600160a01b03165f52610c5d60205260405f2090565b156152ea5783826152329261589e565b6152516151d6836001600160a01b03165f52610c5d60205260405f2090565b9061526561086a546001600160a01b031690565b91615276610c5a5463ffffffff1690565b823b156114e15760405163540abf7360e01b81526001600160a01b0395861660048201529185166024830152929093166044840152606483019390935263ffffffff16608482015260c060a48201525f60c482018190529091829081838160e481015b03925af18015613ca8576151465750565b50916152ff61086a546001600160a01b031690565b92615310610c5a5463ffffffff1690565b93813b156114e157604051631474f2a960e31b81526001600160a01b03948516600482015293166024840152604483019190915263ffffffff909216606482015260a060848201525f60a482018190529091829081838160c481016152d9565b61538f6151d6846001600160a01b03165f52610c5c60205260405f2090565b6151fe565b50807f0000000000000000000000000000000000000000000000000000000000000000168214615192565b60a01c6153c857565b6040516379ec0ed760e11b8152600490fd5b906001600160a01b03808316803b158015615498575b1561546b57507f00000000000000000000000000000000000000000000000000000000000000001691823b156114e157604051632e1a7d4d60e01b815260048101839052925f908490602490829084905af1928315613ca85761058393615458575b50615c07565b80613f4061546592610781565b5f615452565b9061058393507f000000000000000000000000000000000000000000000000000000000000000016614e98565b50803b6154a48161089e565b6154b16040519182610821565b81815260208101915f83853c51905162ffffff60e81b9081811692600381106154e4575b50501661ef0160f01b146153f0565b829350829060030360031b1b1616905f806154d5565b9061550482615618565b6001600160a01b0382167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051158015906155bf575b615545575050565b61400d915f806040519361555885610795565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c60208601527f206661696c6564000000000000000000000000000000000000000000000000006040860152602081519101845af46155b9613566565b91615d30565b505f61553d565b906155d082615618565b6001600160a01b0382167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a280511580159061561057615545575050565b50600161553d565b803b1561565b576001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc91166001600160a01b0319825416179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201527f6f74206120636f6e7472616374000000000000000000000000000000000000006064820152608490fd5b6156d08383615cff565b60058195929510156133d35715938461578e575b508315615708575b505050156156f657565b60405163938a182160e01b8152600490fd5b5f929350908291604051615740816140c76020820194630b135d3f60e11b998a875260248401526040604484015260648301906116cd565b51915afa9061574d613566565b82615780575b82615763575b50505f80806156ec565b61577891925060208082518301019101614133565b145f80615759565b915060208251101591615753565b6001600160a01b0383811691161493505f6156e4565b6040516157fb916001600160a01b03166157bd82610743565b5f806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af16155b9613566565b805182811591821561587e575b50509050156158145750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152fd5b83809293500103126104c95781015161589681611f68565b80825f615808565b6001600160a01b038116803b156114e157604051636eb1769f60e11b81523060048201526001600160a01b038416602482015290602090829060449082905afa908115613ca85761058394614edb926158fe925f9161592d575b50614142565b60405163095ea7b360e01b60208201526001600160a01b03909416602485015260448401528260648101614ecd565b615946915060203d6020116114da576114cb8183610821565b5f6158f8565b6001600160a01b038091167f000000000000000000000000000000000000000000000000000000000000000090827f000000000000000000000000000000000000000000000000000000000000000016936159a881868561589e565b843b156114e157604094604051926332dd704760e21b84526020956004948781600481875afa8015613ca85782915f91615bea575b5016951692853b156114e1576040516352b7631960e11b81526001600160a01b0385166004820152958790879060249082905afa958615613ca8575f96615bcb575b5095867f0000000000000000000000000000000000000000000000000000000000000000975b615a5457505050505050505050565b86811115615bc557865b8815615b1657843b156114e1578951634701287760e11b815287810182815263ffffffff7f0000000000000000000000000000000000000000000000000000000000000000166020820152604081018690526001600160a01b03881660608201525f6080820181905260a082018190526107d060c0830152919391908490819060e0010381838a5af1928315613ca857615afd93615b03575b50613d15565b80615a45565b80613f40615b1092610781565b5f615af7565b843b156114e15789516337e9a82760e11b815287810182815263ffffffff7f0000000000000000000000000000000000000000000000000000000000000000166020820152604081018690526001600160a01b038816606082015290929084908490819060800103815f8a5af1928315613ca857615afd93615b985750613d15565b615bb790853d8711615bbe575b615baf8183610821565b810190615cdf565b505f615af7565b503d615ba5565b80615a5e565b615be3919650873d89116114da576114cb8183610821565b945f615a1f565b615c019150893d8b11613ca157613c938183610821565b5f6159dd565b814710615c9a575f8080936001600160a01b038294165af1615c27613566565b5015615c2f57565b60405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608490fd5b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606490fd5b908160209103126104c9575167ffffffffffffffff811681036105745790565b9060418151145f14615d27576116a891602082015190606060408401519301515f1a90615dc9565b50505f90600290565b91929015615d925750815115615d44575090565b3b15615d4d5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015615da55750805190602001fd5b60405162461bcd60e51b8152602060048201529081906114999060248301906116cd565b7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411615e39576020935f9360ff60809460405194855216868401526040830152606082015282805260015afa15613ca8575f516001600160a01b03811615615e3157905f90565b505f90600190565b505050505f9060039056fea2646970667358221220967a24a3b654da0218b2c6707b53108fb6d8aed7c6a6dc41b0579d7bbc3768c564736f6c63430008170033";
3100
+ const isSuperArgs = (xs) => xs.length > 1;
3101
+ class Bob_SpokePool__factory extends ethers_1.ContractFactory {
3102
+ constructor(...args) {
3103
+ if (isSuperArgs(args)) {
3104
+ super(...args);
3105
+ }
3106
+ else {
3107
+ super(_abi, _bytecode, args[0]);
3108
+ }
3109
+ }
3110
+ deploy(_wrappedNativeTokenAddress, _depositQuoteTimeBuffer, _fillDeadlineBuffer, _l2Usdc, _cctpTokenMessenger, overrides) {
3111
+ return super.deploy(_wrappedNativeTokenAddress, _depositQuoteTimeBuffer, _fillDeadlineBuffer, _l2Usdc, _cctpTokenMessenger, overrides || {});
3112
+ }
3113
+ getDeployTransaction(_wrappedNativeTokenAddress, _depositQuoteTimeBuffer, _fillDeadlineBuffer, _l2Usdc, _cctpTokenMessenger, overrides) {
3114
+ return super.getDeployTransaction(_wrappedNativeTokenAddress, _depositQuoteTimeBuffer, _fillDeadlineBuffer, _l2Usdc, _cctpTokenMessenger, overrides || {});
3115
+ }
3116
+ attach(address) {
3117
+ return super.attach(address);
3118
+ }
3119
+ connect(signer) {
3120
+ return super.connect(signer);
3121
+ }
3122
+ static createInterface() {
3123
+ return new ethers_1.utils.Interface(_abi);
3124
+ }
3125
+ static connect(address, signerOrProvider) {
3126
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
3127
+ }
3128
+ }
3129
+ exports.Bob_SpokePool__factory = Bob_SpokePool__factory;
3130
+ Bob_SpokePool__factory.bytecode = _bytecode;
3131
+ Bob_SpokePool__factory.abi = _abi;