@wormhole-foundation/sdk-evm-ntt 0.0.1-beta.0

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.
Files changed (75) hide show
  1. package/README.md +11 -0
  2. package/dist/cjs/ethers-contracts/NttManager.d.ts +871 -0
  3. package/dist/cjs/ethers-contracts/NttManager.d.ts.map +1 -0
  4. package/dist/cjs/ethers-contracts/NttManager.js +3 -0
  5. package/dist/cjs/ethers-contracts/NttManager.js.map +1 -0
  6. package/dist/cjs/ethers-contracts/WormholeTransceiver.d.ts +619 -0
  7. package/dist/cjs/ethers-contracts/WormholeTransceiver.d.ts.map +1 -0
  8. package/dist/cjs/ethers-contracts/WormholeTransceiver.js +3 -0
  9. package/dist/cjs/ethers-contracts/WormholeTransceiver.js.map +1 -0
  10. package/dist/cjs/ethers-contracts/common.d.ts +51 -0
  11. package/dist/cjs/ethers-contracts/common.d.ts.map +1 -0
  12. package/dist/cjs/ethers-contracts/common.js +3 -0
  13. package/dist/cjs/ethers-contracts/common.js.map +1 -0
  14. package/dist/cjs/ethers-contracts/factories/NttManager__factory.d.ts +1414 -0
  15. package/dist/cjs/ethers-contracts/factories/NttManager__factory.d.ts.map +1 -0
  16. package/dist/cjs/ethers-contracts/factories/NttManager__factory.js +1858 -0
  17. package/dist/cjs/ethers-contracts/factories/NttManager__factory.js.map +1 -0
  18. package/dist/cjs/ethers-contracts/factories/WormholeTransceiver__factory.d.ts +981 -0
  19. package/dist/cjs/ethers-contracts/factories/WormholeTransceiver__factory.d.ts.map +1 -0
  20. package/dist/cjs/ethers-contracts/factories/WormholeTransceiver__factory.js +1296 -0
  21. package/dist/cjs/ethers-contracts/factories/WormholeTransceiver__factory.js.map +1 -0
  22. package/dist/cjs/ethers-contracts/factories/index.d.ts +3 -0
  23. package/dist/cjs/ethers-contracts/factories/index.d.ts.map +1 -0
  24. package/dist/cjs/ethers-contracts/factories/index.js +11 -0
  25. package/dist/cjs/ethers-contracts/factories/index.js.map +1 -0
  26. package/dist/cjs/ethers-contracts/index.d.ts +6 -0
  27. package/dist/cjs/ethers-contracts/index.d.ts.map +1 -0
  28. package/dist/cjs/ethers-contracts/index.js +32 -0
  29. package/dist/cjs/ethers-contracts/index.js.map +1 -0
  30. package/dist/cjs/index.d.ts +4 -0
  31. package/dist/cjs/index.d.ts.map +1 -0
  32. package/dist/cjs/index.js +37 -0
  33. package/dist/cjs/index.js.map +1 -0
  34. package/dist/cjs/ntt.d.ts +49 -0
  35. package/dist/cjs/ntt.d.ts.map +1 -0
  36. package/dist/cjs/ntt.js +153 -0
  37. package/dist/cjs/ntt.js.map +1 -0
  38. package/dist/cjs/package.json +1 -0
  39. package/dist/esm/ethers-contracts/NttManager.d.ts +871 -0
  40. package/dist/esm/ethers-contracts/NttManager.d.ts.map +1 -0
  41. package/dist/esm/ethers-contracts/NttManager.js +2 -0
  42. package/dist/esm/ethers-contracts/NttManager.js.map +1 -0
  43. package/dist/esm/ethers-contracts/WormholeTransceiver.d.ts +619 -0
  44. package/dist/esm/ethers-contracts/WormholeTransceiver.d.ts.map +1 -0
  45. package/dist/esm/ethers-contracts/WormholeTransceiver.js +2 -0
  46. package/dist/esm/ethers-contracts/WormholeTransceiver.js.map +1 -0
  47. package/dist/esm/ethers-contracts/common.d.ts +51 -0
  48. package/dist/esm/ethers-contracts/common.d.ts.map +1 -0
  49. package/dist/esm/ethers-contracts/common.js +2 -0
  50. package/dist/esm/ethers-contracts/common.js.map +1 -0
  51. package/dist/esm/ethers-contracts/factories/NttManager__factory.d.ts +1414 -0
  52. package/dist/esm/ethers-contracts/factories/NttManager__factory.d.ts.map +1 -0
  53. package/dist/esm/ethers-contracts/factories/NttManager__factory.js +1854 -0
  54. package/dist/esm/ethers-contracts/factories/NttManager__factory.js.map +1 -0
  55. package/dist/esm/ethers-contracts/factories/WormholeTransceiver__factory.d.ts +981 -0
  56. package/dist/esm/ethers-contracts/factories/WormholeTransceiver__factory.d.ts.map +1 -0
  57. package/dist/esm/ethers-contracts/factories/WormholeTransceiver__factory.js +1292 -0
  58. package/dist/esm/ethers-contracts/factories/WormholeTransceiver__factory.js.map +1 -0
  59. package/dist/esm/ethers-contracts/factories/index.d.ts +3 -0
  60. package/dist/esm/ethers-contracts/factories/index.d.ts.map +1 -0
  61. package/dist/esm/ethers-contracts/factories/index.js +6 -0
  62. package/dist/esm/ethers-contracts/factories/index.js.map +1 -0
  63. package/dist/esm/ethers-contracts/index.d.ts +6 -0
  64. package/dist/esm/ethers-contracts/index.d.ts.map +1 -0
  65. package/dist/esm/ethers-contracts/index.js +4 -0
  66. package/dist/esm/ethers-contracts/index.js.map +1 -0
  67. package/dist/esm/index.d.ts +4 -0
  68. package/dist/esm/index.d.ts.map +1 -0
  69. package/dist/esm/index.js +8 -0
  70. package/dist/esm/index.js.map +1 -0
  71. package/dist/esm/ntt.d.ts +49 -0
  72. package/dist/esm/ntt.d.ts.map +1 -0
  73. package/dist/esm/ntt.js +148 -0
  74. package/dist/esm/ntt.js.map +1 -0
  75. package/package.json +68 -0
@@ -0,0 +1,1854 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Contract, ContractFactory, Interface, } from "ethers";
5
+ const _abi = [
6
+ {
7
+ type: "constructor",
8
+ inputs: [
9
+ {
10
+ name: "_token",
11
+ type: "address",
12
+ internalType: "address",
13
+ },
14
+ {
15
+ name: "_mode",
16
+ type: "uint8",
17
+ internalType: "enum IManagerBase.Mode",
18
+ },
19
+ {
20
+ name: "_chainId",
21
+ type: "uint16",
22
+ internalType: "uint16",
23
+ },
24
+ {
25
+ name: "_rateLimitDuration",
26
+ type: "uint64",
27
+ internalType: "uint64",
28
+ },
29
+ {
30
+ name: "_skipRateLimiting",
31
+ type: "bool",
32
+ internalType: "bool",
33
+ },
34
+ ],
35
+ stateMutability: "nonpayable",
36
+ },
37
+ {
38
+ type: "function",
39
+ name: "NTT_MANAGER_VERSION",
40
+ inputs: [],
41
+ outputs: [
42
+ {
43
+ name: "",
44
+ type: "string",
45
+ internalType: "string",
46
+ },
47
+ ],
48
+ stateMutability: "view",
49
+ },
50
+ {
51
+ type: "function",
52
+ name: "attestationReceived",
53
+ inputs: [
54
+ {
55
+ name: "sourceChainId",
56
+ type: "uint16",
57
+ internalType: "uint16",
58
+ },
59
+ {
60
+ name: "sourceNttManagerAddress",
61
+ type: "bytes32",
62
+ internalType: "bytes32",
63
+ },
64
+ {
65
+ name: "payload",
66
+ type: "tuple",
67
+ internalType: "struct TransceiverStructs.NttManagerMessage",
68
+ components: [
69
+ {
70
+ name: "id",
71
+ type: "bytes32",
72
+ internalType: "bytes32",
73
+ },
74
+ {
75
+ name: "sender",
76
+ type: "bytes32",
77
+ internalType: "bytes32",
78
+ },
79
+ {
80
+ name: "payload",
81
+ type: "bytes",
82
+ internalType: "bytes",
83
+ },
84
+ ],
85
+ },
86
+ ],
87
+ outputs: [],
88
+ stateMutability: "nonpayable",
89
+ },
90
+ {
91
+ type: "function",
92
+ name: "cancelOutboundQueuedTransfer",
93
+ inputs: [
94
+ {
95
+ name: "messageSequence",
96
+ type: "uint64",
97
+ internalType: "uint64",
98
+ },
99
+ ],
100
+ outputs: [],
101
+ stateMutability: "nonpayable",
102
+ },
103
+ {
104
+ type: "function",
105
+ name: "chainId",
106
+ inputs: [],
107
+ outputs: [
108
+ {
109
+ name: "",
110
+ type: "uint16",
111
+ internalType: "uint16",
112
+ },
113
+ ],
114
+ stateMutability: "view",
115
+ },
116
+ {
117
+ type: "function",
118
+ name: "completeInboundQueuedTransfer",
119
+ inputs: [
120
+ {
121
+ name: "digest",
122
+ type: "bytes32",
123
+ internalType: "bytes32",
124
+ },
125
+ ],
126
+ outputs: [],
127
+ stateMutability: "nonpayable",
128
+ },
129
+ {
130
+ type: "function",
131
+ name: "completeOutboundQueuedTransfer",
132
+ inputs: [
133
+ {
134
+ name: "messageSequence",
135
+ type: "uint64",
136
+ internalType: "uint64",
137
+ },
138
+ ],
139
+ outputs: [
140
+ {
141
+ name: "",
142
+ type: "uint64",
143
+ internalType: "uint64",
144
+ },
145
+ ],
146
+ stateMutability: "payable",
147
+ },
148
+ {
149
+ type: "function",
150
+ name: "executeMsg",
151
+ inputs: [
152
+ {
153
+ name: "sourceChainId",
154
+ type: "uint16",
155
+ internalType: "uint16",
156
+ },
157
+ {
158
+ name: "sourceNttManagerAddress",
159
+ type: "bytes32",
160
+ internalType: "bytes32",
161
+ },
162
+ {
163
+ name: "message",
164
+ type: "tuple",
165
+ internalType: "struct TransceiverStructs.NttManagerMessage",
166
+ components: [
167
+ {
168
+ name: "id",
169
+ type: "bytes32",
170
+ internalType: "bytes32",
171
+ },
172
+ {
173
+ name: "sender",
174
+ type: "bytes32",
175
+ internalType: "bytes32",
176
+ },
177
+ {
178
+ name: "payload",
179
+ type: "bytes",
180
+ internalType: "bytes",
181
+ },
182
+ ],
183
+ },
184
+ ],
185
+ outputs: [],
186
+ stateMutability: "nonpayable",
187
+ },
188
+ {
189
+ type: "function",
190
+ name: "getCurrentInboundCapacity",
191
+ inputs: [
192
+ {
193
+ name: "chainId_",
194
+ type: "uint16",
195
+ internalType: "uint16",
196
+ },
197
+ ],
198
+ outputs: [
199
+ {
200
+ name: "",
201
+ type: "uint256",
202
+ internalType: "uint256",
203
+ },
204
+ ],
205
+ stateMutability: "view",
206
+ },
207
+ {
208
+ type: "function",
209
+ name: "getCurrentOutboundCapacity",
210
+ inputs: [],
211
+ outputs: [
212
+ {
213
+ name: "",
214
+ type: "uint256",
215
+ internalType: "uint256",
216
+ },
217
+ ],
218
+ stateMutability: "view",
219
+ },
220
+ {
221
+ type: "function",
222
+ name: "getInboundLimitParams",
223
+ inputs: [
224
+ {
225
+ name: "chainId_",
226
+ type: "uint16",
227
+ internalType: "uint16",
228
+ },
229
+ ],
230
+ outputs: [
231
+ {
232
+ name: "",
233
+ type: "tuple",
234
+ internalType: "struct IRateLimiter.RateLimitParams",
235
+ components: [
236
+ {
237
+ name: "limit",
238
+ type: "uint72",
239
+ internalType: "TrimmedAmount",
240
+ },
241
+ {
242
+ name: "currentCapacity",
243
+ type: "uint72",
244
+ internalType: "TrimmedAmount",
245
+ },
246
+ {
247
+ name: "lastTxTimestamp",
248
+ type: "uint64",
249
+ internalType: "uint64",
250
+ },
251
+ ],
252
+ },
253
+ ],
254
+ stateMutability: "view",
255
+ },
256
+ {
257
+ type: "function",
258
+ name: "getInboundQueuedTransfer",
259
+ inputs: [
260
+ {
261
+ name: "digest",
262
+ type: "bytes32",
263
+ internalType: "bytes32",
264
+ },
265
+ ],
266
+ outputs: [
267
+ {
268
+ name: "",
269
+ type: "tuple",
270
+ internalType: "struct IRateLimiter.InboundQueuedTransfer",
271
+ components: [
272
+ {
273
+ name: "amount",
274
+ type: "uint72",
275
+ internalType: "TrimmedAmount",
276
+ },
277
+ {
278
+ name: "txTimestamp",
279
+ type: "uint64",
280
+ internalType: "uint64",
281
+ },
282
+ {
283
+ name: "recipient",
284
+ type: "address",
285
+ internalType: "address",
286
+ },
287
+ ],
288
+ },
289
+ ],
290
+ stateMutability: "view",
291
+ },
292
+ {
293
+ type: "function",
294
+ name: "getMigratesImmutables",
295
+ inputs: [],
296
+ outputs: [
297
+ {
298
+ name: "",
299
+ type: "bool",
300
+ internalType: "bool",
301
+ },
302
+ ],
303
+ stateMutability: "view",
304
+ },
305
+ {
306
+ type: "function",
307
+ name: "getMode",
308
+ inputs: [],
309
+ outputs: [
310
+ {
311
+ name: "",
312
+ type: "uint8",
313
+ internalType: "uint8",
314
+ },
315
+ ],
316
+ stateMutability: "view",
317
+ },
318
+ {
319
+ type: "function",
320
+ name: "getOutboundLimitParams",
321
+ inputs: [],
322
+ outputs: [
323
+ {
324
+ name: "",
325
+ type: "tuple",
326
+ internalType: "struct IRateLimiter.RateLimitParams",
327
+ components: [
328
+ {
329
+ name: "limit",
330
+ type: "uint72",
331
+ internalType: "TrimmedAmount",
332
+ },
333
+ {
334
+ name: "currentCapacity",
335
+ type: "uint72",
336
+ internalType: "TrimmedAmount",
337
+ },
338
+ {
339
+ name: "lastTxTimestamp",
340
+ type: "uint64",
341
+ internalType: "uint64",
342
+ },
343
+ ],
344
+ },
345
+ ],
346
+ stateMutability: "pure",
347
+ },
348
+ {
349
+ type: "function",
350
+ name: "getOutboundQueuedTransfer",
351
+ inputs: [
352
+ {
353
+ name: "queueSequence",
354
+ type: "uint64",
355
+ internalType: "uint64",
356
+ },
357
+ ],
358
+ outputs: [
359
+ {
360
+ name: "",
361
+ type: "tuple",
362
+ internalType: "struct IRateLimiter.OutboundQueuedTransfer",
363
+ components: [
364
+ {
365
+ name: "recipient",
366
+ type: "bytes32",
367
+ internalType: "bytes32",
368
+ },
369
+ {
370
+ name: "refundAddress",
371
+ type: "bytes32",
372
+ internalType: "bytes32",
373
+ },
374
+ {
375
+ name: "amount",
376
+ type: "uint72",
377
+ internalType: "TrimmedAmount",
378
+ },
379
+ {
380
+ name: "txTimestamp",
381
+ type: "uint64",
382
+ internalType: "uint64",
383
+ },
384
+ {
385
+ name: "recipientChain",
386
+ type: "uint16",
387
+ internalType: "uint16",
388
+ },
389
+ {
390
+ name: "sender",
391
+ type: "address",
392
+ internalType: "address",
393
+ },
394
+ {
395
+ name: "transceiverInstructions",
396
+ type: "bytes",
397
+ internalType: "bytes",
398
+ },
399
+ ],
400
+ },
401
+ ],
402
+ stateMutability: "view",
403
+ },
404
+ {
405
+ type: "function",
406
+ name: "getPeer",
407
+ inputs: [
408
+ {
409
+ name: "chainId_",
410
+ type: "uint16",
411
+ internalType: "uint16",
412
+ },
413
+ ],
414
+ outputs: [
415
+ {
416
+ name: "",
417
+ type: "tuple",
418
+ internalType: "struct INttManager.NttManagerPeer",
419
+ components: [
420
+ {
421
+ name: "peerAddress",
422
+ type: "bytes32",
423
+ internalType: "bytes32",
424
+ },
425
+ {
426
+ name: "tokenDecimals",
427
+ type: "uint8",
428
+ internalType: "uint8",
429
+ },
430
+ ],
431
+ },
432
+ ],
433
+ stateMutability: "view",
434
+ },
435
+ {
436
+ type: "function",
437
+ name: "getThreshold",
438
+ inputs: [],
439
+ outputs: [
440
+ {
441
+ name: "",
442
+ type: "uint8",
443
+ internalType: "uint8",
444
+ },
445
+ ],
446
+ stateMutability: "view",
447
+ },
448
+ {
449
+ type: "function",
450
+ name: "getTransceivers",
451
+ inputs: [],
452
+ outputs: [
453
+ {
454
+ name: "result",
455
+ type: "address[]",
456
+ internalType: "address[]",
457
+ },
458
+ ],
459
+ stateMutability: "pure",
460
+ },
461
+ {
462
+ type: "function",
463
+ name: "initialize",
464
+ inputs: [],
465
+ outputs: [],
466
+ stateMutability: "nonpayable",
467
+ },
468
+ {
469
+ type: "function",
470
+ name: "isMessageApproved",
471
+ inputs: [
472
+ {
473
+ name: "digest",
474
+ type: "bytes32",
475
+ internalType: "bytes32",
476
+ },
477
+ ],
478
+ outputs: [
479
+ {
480
+ name: "",
481
+ type: "bool",
482
+ internalType: "bool",
483
+ },
484
+ ],
485
+ stateMutability: "view",
486
+ },
487
+ {
488
+ type: "function",
489
+ name: "isMessageExecuted",
490
+ inputs: [
491
+ {
492
+ name: "digest",
493
+ type: "bytes32",
494
+ internalType: "bytes32",
495
+ },
496
+ ],
497
+ outputs: [
498
+ {
499
+ name: "",
500
+ type: "bool",
501
+ internalType: "bool",
502
+ },
503
+ ],
504
+ stateMutability: "view",
505
+ },
506
+ {
507
+ type: "function",
508
+ name: "isPaused",
509
+ inputs: [],
510
+ outputs: [
511
+ {
512
+ name: "",
513
+ type: "bool",
514
+ internalType: "bool",
515
+ },
516
+ ],
517
+ stateMutability: "view",
518
+ },
519
+ {
520
+ type: "function",
521
+ name: "messageAttestations",
522
+ inputs: [
523
+ {
524
+ name: "digest",
525
+ type: "bytes32",
526
+ internalType: "bytes32",
527
+ },
528
+ ],
529
+ outputs: [
530
+ {
531
+ name: "count",
532
+ type: "uint8",
533
+ internalType: "uint8",
534
+ },
535
+ ],
536
+ stateMutability: "view",
537
+ },
538
+ {
539
+ type: "function",
540
+ name: "migrate",
541
+ inputs: [],
542
+ outputs: [],
543
+ stateMutability: "nonpayable",
544
+ },
545
+ {
546
+ type: "function",
547
+ name: "mode",
548
+ inputs: [],
549
+ outputs: [
550
+ {
551
+ name: "",
552
+ type: "uint8",
553
+ internalType: "enum IManagerBase.Mode",
554
+ },
555
+ ],
556
+ stateMutability: "view",
557
+ },
558
+ {
559
+ type: "function",
560
+ name: "nextMessageSequence",
561
+ inputs: [],
562
+ outputs: [
563
+ {
564
+ name: "",
565
+ type: "uint64",
566
+ internalType: "uint64",
567
+ },
568
+ ],
569
+ stateMutability: "view",
570
+ },
571
+ {
572
+ type: "function",
573
+ name: "owner",
574
+ inputs: [],
575
+ outputs: [
576
+ {
577
+ name: "",
578
+ type: "address",
579
+ internalType: "address",
580
+ },
581
+ ],
582
+ stateMutability: "view",
583
+ },
584
+ {
585
+ type: "function",
586
+ name: "pause",
587
+ inputs: [],
588
+ outputs: [],
589
+ stateMutability: "nonpayable",
590
+ },
591
+ {
592
+ type: "function",
593
+ name: "pauser",
594
+ inputs: [],
595
+ outputs: [
596
+ {
597
+ name: "",
598
+ type: "address",
599
+ internalType: "address",
600
+ },
601
+ ],
602
+ stateMutability: "view",
603
+ },
604
+ {
605
+ type: "function",
606
+ name: "quoteDeliveryPrice",
607
+ inputs: [
608
+ {
609
+ name: "recipientChain",
610
+ type: "uint16",
611
+ internalType: "uint16",
612
+ },
613
+ {
614
+ name: "transceiverInstructions",
615
+ type: "bytes",
616
+ internalType: "bytes",
617
+ },
618
+ ],
619
+ outputs: [
620
+ {
621
+ name: "",
622
+ type: "uint256[]",
623
+ internalType: "uint256[]",
624
+ },
625
+ {
626
+ name: "",
627
+ type: "uint256",
628
+ internalType: "uint256",
629
+ },
630
+ ],
631
+ stateMutability: "view",
632
+ },
633
+ {
634
+ type: "function",
635
+ name: "rateLimitDuration",
636
+ inputs: [],
637
+ outputs: [
638
+ {
639
+ name: "",
640
+ type: "uint64",
641
+ internalType: "uint64",
642
+ },
643
+ ],
644
+ stateMutability: "view",
645
+ },
646
+ {
647
+ type: "function",
648
+ name: "removeTransceiver",
649
+ inputs: [
650
+ {
651
+ name: "transceiver",
652
+ type: "address",
653
+ internalType: "address",
654
+ },
655
+ ],
656
+ outputs: [],
657
+ stateMutability: "nonpayable",
658
+ },
659
+ {
660
+ type: "function",
661
+ name: "setInboundLimit",
662
+ inputs: [
663
+ {
664
+ name: "limit",
665
+ type: "uint256",
666
+ internalType: "uint256",
667
+ },
668
+ {
669
+ name: "chainId_",
670
+ type: "uint16",
671
+ internalType: "uint16",
672
+ },
673
+ ],
674
+ outputs: [],
675
+ stateMutability: "nonpayable",
676
+ },
677
+ {
678
+ type: "function",
679
+ name: "setOutboundLimit",
680
+ inputs: [
681
+ {
682
+ name: "limit",
683
+ type: "uint256",
684
+ internalType: "uint256",
685
+ },
686
+ ],
687
+ outputs: [],
688
+ stateMutability: "nonpayable",
689
+ },
690
+ {
691
+ type: "function",
692
+ name: "setPeer",
693
+ inputs: [
694
+ {
695
+ name: "peerChainId",
696
+ type: "uint16",
697
+ internalType: "uint16",
698
+ },
699
+ {
700
+ name: "peerContract",
701
+ type: "bytes32",
702
+ internalType: "bytes32",
703
+ },
704
+ {
705
+ name: "decimals",
706
+ type: "uint8",
707
+ internalType: "uint8",
708
+ },
709
+ {
710
+ name: "inboundLimit",
711
+ type: "uint256",
712
+ internalType: "uint256",
713
+ },
714
+ ],
715
+ outputs: [],
716
+ stateMutability: "nonpayable",
717
+ },
718
+ {
719
+ type: "function",
720
+ name: "setThreshold",
721
+ inputs: [
722
+ {
723
+ name: "threshold",
724
+ type: "uint8",
725
+ internalType: "uint8",
726
+ },
727
+ ],
728
+ outputs: [],
729
+ stateMutability: "nonpayable",
730
+ },
731
+ {
732
+ type: "function",
733
+ name: "setTransceiver",
734
+ inputs: [
735
+ {
736
+ name: "transceiver",
737
+ type: "address",
738
+ internalType: "address",
739
+ },
740
+ ],
741
+ outputs: [],
742
+ stateMutability: "nonpayable",
743
+ },
744
+ {
745
+ type: "function",
746
+ name: "token",
747
+ inputs: [],
748
+ outputs: [
749
+ {
750
+ name: "",
751
+ type: "address",
752
+ internalType: "address",
753
+ },
754
+ ],
755
+ stateMutability: "view",
756
+ },
757
+ {
758
+ type: "function",
759
+ name: "tokenDecimals",
760
+ inputs: [],
761
+ outputs: [
762
+ {
763
+ name: "",
764
+ type: "uint8",
765
+ internalType: "uint8",
766
+ },
767
+ ],
768
+ stateMutability: "view",
769
+ },
770
+ {
771
+ type: "function",
772
+ name: "transceiverAttestedToMessage",
773
+ inputs: [
774
+ {
775
+ name: "digest",
776
+ type: "bytes32",
777
+ internalType: "bytes32",
778
+ },
779
+ {
780
+ name: "index",
781
+ type: "uint8",
782
+ internalType: "uint8",
783
+ },
784
+ ],
785
+ outputs: [
786
+ {
787
+ name: "",
788
+ type: "bool",
789
+ internalType: "bool",
790
+ },
791
+ ],
792
+ stateMutability: "view",
793
+ },
794
+ {
795
+ type: "function",
796
+ name: "transfer",
797
+ inputs: [
798
+ {
799
+ name: "amount",
800
+ type: "uint256",
801
+ internalType: "uint256",
802
+ },
803
+ {
804
+ name: "recipientChain",
805
+ type: "uint16",
806
+ internalType: "uint16",
807
+ },
808
+ {
809
+ name: "recipient",
810
+ type: "bytes32",
811
+ internalType: "bytes32",
812
+ },
813
+ ],
814
+ outputs: [
815
+ {
816
+ name: "",
817
+ type: "uint64",
818
+ internalType: "uint64",
819
+ },
820
+ ],
821
+ stateMutability: "payable",
822
+ },
823
+ {
824
+ type: "function",
825
+ name: "transfer",
826
+ inputs: [
827
+ {
828
+ name: "amount",
829
+ type: "uint256",
830
+ internalType: "uint256",
831
+ },
832
+ {
833
+ name: "recipientChain",
834
+ type: "uint16",
835
+ internalType: "uint16",
836
+ },
837
+ {
838
+ name: "recipient",
839
+ type: "bytes32",
840
+ internalType: "bytes32",
841
+ },
842
+ {
843
+ name: "refundAddress",
844
+ type: "bytes32",
845
+ internalType: "bytes32",
846
+ },
847
+ {
848
+ name: "shouldQueue",
849
+ type: "bool",
850
+ internalType: "bool",
851
+ },
852
+ {
853
+ name: "transceiverInstructions",
854
+ type: "bytes",
855
+ internalType: "bytes",
856
+ },
857
+ ],
858
+ outputs: [
859
+ {
860
+ name: "",
861
+ type: "uint64",
862
+ internalType: "uint64",
863
+ },
864
+ ],
865
+ stateMutability: "payable",
866
+ },
867
+ {
868
+ type: "function",
869
+ name: "transferOwnership",
870
+ inputs: [
871
+ {
872
+ name: "newOwner",
873
+ type: "address",
874
+ internalType: "address",
875
+ },
876
+ ],
877
+ outputs: [],
878
+ stateMutability: "nonpayable",
879
+ },
880
+ {
881
+ type: "function",
882
+ name: "transferPauserCapability",
883
+ inputs: [
884
+ {
885
+ name: "newPauser",
886
+ type: "address",
887
+ internalType: "address",
888
+ },
889
+ ],
890
+ outputs: [],
891
+ stateMutability: "nonpayable",
892
+ },
893
+ {
894
+ type: "function",
895
+ name: "unpause",
896
+ inputs: [],
897
+ outputs: [],
898
+ stateMutability: "nonpayable",
899
+ },
900
+ {
901
+ type: "function",
902
+ name: "upgrade",
903
+ inputs: [
904
+ {
905
+ name: "newImplementation",
906
+ type: "address",
907
+ internalType: "address",
908
+ },
909
+ ],
910
+ outputs: [],
911
+ stateMutability: "nonpayable",
912
+ },
913
+ {
914
+ type: "event",
915
+ name: "AdminChanged",
916
+ inputs: [
917
+ {
918
+ name: "previousAdmin",
919
+ type: "address",
920
+ indexed: false,
921
+ internalType: "address",
922
+ },
923
+ {
924
+ name: "newAdmin",
925
+ type: "address",
926
+ indexed: false,
927
+ internalType: "address",
928
+ },
929
+ ],
930
+ anonymous: false,
931
+ },
932
+ {
933
+ type: "event",
934
+ name: "BeaconUpgraded",
935
+ inputs: [
936
+ {
937
+ name: "beacon",
938
+ type: "address",
939
+ indexed: true,
940
+ internalType: "address",
941
+ },
942
+ ],
943
+ anonymous: false,
944
+ },
945
+ {
946
+ type: "event",
947
+ name: "InboundTransferQueued",
948
+ inputs: [
949
+ {
950
+ name: "digest",
951
+ type: "bytes32",
952
+ indexed: false,
953
+ internalType: "bytes32",
954
+ },
955
+ ],
956
+ anonymous: false,
957
+ },
958
+ {
959
+ type: "event",
960
+ name: "Initialized",
961
+ inputs: [
962
+ {
963
+ name: "version",
964
+ type: "uint64",
965
+ indexed: false,
966
+ internalType: "uint64",
967
+ },
968
+ ],
969
+ anonymous: false,
970
+ },
971
+ {
972
+ type: "event",
973
+ name: "MessageAlreadyExecuted",
974
+ inputs: [
975
+ {
976
+ name: "sourceNttManager",
977
+ type: "bytes32",
978
+ indexed: true,
979
+ internalType: "bytes32",
980
+ },
981
+ {
982
+ name: "msgHash",
983
+ type: "bytes32",
984
+ indexed: true,
985
+ internalType: "bytes32",
986
+ },
987
+ ],
988
+ anonymous: false,
989
+ },
990
+ {
991
+ type: "event",
992
+ name: "MessageAttestedTo",
993
+ inputs: [
994
+ {
995
+ name: "digest",
996
+ type: "bytes32",
997
+ indexed: false,
998
+ internalType: "bytes32",
999
+ },
1000
+ {
1001
+ name: "transceiver",
1002
+ type: "address",
1003
+ indexed: false,
1004
+ internalType: "address",
1005
+ },
1006
+ {
1007
+ name: "index",
1008
+ type: "uint8",
1009
+ indexed: false,
1010
+ internalType: "uint8",
1011
+ },
1012
+ ],
1013
+ anonymous: false,
1014
+ },
1015
+ {
1016
+ type: "event",
1017
+ name: "NotPaused",
1018
+ inputs: [
1019
+ {
1020
+ name: "notPaused",
1021
+ type: "bool",
1022
+ indexed: false,
1023
+ internalType: "bool",
1024
+ },
1025
+ ],
1026
+ anonymous: false,
1027
+ },
1028
+ {
1029
+ type: "event",
1030
+ name: "OutboundTransferCancelled",
1031
+ inputs: [
1032
+ {
1033
+ name: "sequence",
1034
+ type: "uint256",
1035
+ indexed: false,
1036
+ internalType: "uint256",
1037
+ },
1038
+ {
1039
+ name: "recipient",
1040
+ type: "address",
1041
+ indexed: false,
1042
+ internalType: "address",
1043
+ },
1044
+ {
1045
+ name: "amount",
1046
+ type: "uint256",
1047
+ indexed: false,
1048
+ internalType: "uint256",
1049
+ },
1050
+ ],
1051
+ anonymous: false,
1052
+ },
1053
+ {
1054
+ type: "event",
1055
+ name: "OutboundTransferQueued",
1056
+ inputs: [
1057
+ {
1058
+ name: "queueSequence",
1059
+ type: "uint64",
1060
+ indexed: false,
1061
+ internalType: "uint64",
1062
+ },
1063
+ ],
1064
+ anonymous: false,
1065
+ },
1066
+ {
1067
+ type: "event",
1068
+ name: "OutboundTransferRateLimited",
1069
+ inputs: [
1070
+ {
1071
+ name: "sender",
1072
+ type: "address",
1073
+ indexed: true,
1074
+ internalType: "address",
1075
+ },
1076
+ {
1077
+ name: "sequence",
1078
+ type: "uint64",
1079
+ indexed: false,
1080
+ internalType: "uint64",
1081
+ },
1082
+ {
1083
+ name: "amount",
1084
+ type: "uint256",
1085
+ indexed: false,
1086
+ internalType: "uint256",
1087
+ },
1088
+ {
1089
+ name: "currentCapacity",
1090
+ type: "uint256",
1091
+ indexed: false,
1092
+ internalType: "uint256",
1093
+ },
1094
+ ],
1095
+ anonymous: false,
1096
+ },
1097
+ {
1098
+ type: "event",
1099
+ name: "OwnershipTransferred",
1100
+ inputs: [
1101
+ {
1102
+ name: "previousOwner",
1103
+ type: "address",
1104
+ indexed: true,
1105
+ internalType: "address",
1106
+ },
1107
+ {
1108
+ name: "newOwner",
1109
+ type: "address",
1110
+ indexed: true,
1111
+ internalType: "address",
1112
+ },
1113
+ ],
1114
+ anonymous: false,
1115
+ },
1116
+ {
1117
+ type: "event",
1118
+ name: "Paused",
1119
+ inputs: [
1120
+ {
1121
+ name: "paused",
1122
+ type: "bool",
1123
+ indexed: false,
1124
+ internalType: "bool",
1125
+ },
1126
+ ],
1127
+ anonymous: false,
1128
+ },
1129
+ {
1130
+ type: "event",
1131
+ name: "PauserTransferred",
1132
+ inputs: [
1133
+ {
1134
+ name: "oldPauser",
1135
+ type: "address",
1136
+ indexed: true,
1137
+ internalType: "address",
1138
+ },
1139
+ {
1140
+ name: "newPauser",
1141
+ type: "address",
1142
+ indexed: true,
1143
+ internalType: "address",
1144
+ },
1145
+ ],
1146
+ anonymous: false,
1147
+ },
1148
+ {
1149
+ type: "event",
1150
+ name: "PeerUpdated",
1151
+ inputs: [
1152
+ {
1153
+ name: "chainId_",
1154
+ type: "uint16",
1155
+ indexed: true,
1156
+ internalType: "uint16",
1157
+ },
1158
+ {
1159
+ name: "oldPeerContract",
1160
+ type: "bytes32",
1161
+ indexed: false,
1162
+ internalType: "bytes32",
1163
+ },
1164
+ {
1165
+ name: "oldPeerDecimals",
1166
+ type: "uint8",
1167
+ indexed: false,
1168
+ internalType: "uint8",
1169
+ },
1170
+ {
1171
+ name: "peerContract",
1172
+ type: "bytes32",
1173
+ indexed: false,
1174
+ internalType: "bytes32",
1175
+ },
1176
+ {
1177
+ name: "peerDecimals",
1178
+ type: "uint8",
1179
+ indexed: false,
1180
+ internalType: "uint8",
1181
+ },
1182
+ ],
1183
+ anonymous: false,
1184
+ },
1185
+ {
1186
+ type: "event",
1187
+ name: "ThresholdChanged",
1188
+ inputs: [
1189
+ {
1190
+ name: "oldThreshold",
1191
+ type: "uint8",
1192
+ indexed: false,
1193
+ internalType: "uint8",
1194
+ },
1195
+ {
1196
+ name: "threshold",
1197
+ type: "uint8",
1198
+ indexed: false,
1199
+ internalType: "uint8",
1200
+ },
1201
+ ],
1202
+ anonymous: false,
1203
+ },
1204
+ {
1205
+ type: "event",
1206
+ name: "TransceiverAdded",
1207
+ inputs: [
1208
+ {
1209
+ name: "transceiver",
1210
+ type: "address",
1211
+ indexed: false,
1212
+ internalType: "address",
1213
+ },
1214
+ {
1215
+ name: "transceiversNum",
1216
+ type: "uint256",
1217
+ indexed: false,
1218
+ internalType: "uint256",
1219
+ },
1220
+ {
1221
+ name: "threshold",
1222
+ type: "uint8",
1223
+ indexed: false,
1224
+ internalType: "uint8",
1225
+ },
1226
+ ],
1227
+ anonymous: false,
1228
+ },
1229
+ {
1230
+ type: "event",
1231
+ name: "TransceiverRemoved",
1232
+ inputs: [
1233
+ {
1234
+ name: "transceiver",
1235
+ type: "address",
1236
+ indexed: false,
1237
+ internalType: "address",
1238
+ },
1239
+ {
1240
+ name: "threshold",
1241
+ type: "uint8",
1242
+ indexed: false,
1243
+ internalType: "uint8",
1244
+ },
1245
+ ],
1246
+ anonymous: false,
1247
+ },
1248
+ {
1249
+ type: "event",
1250
+ name: "TransferRedeemed",
1251
+ inputs: [
1252
+ {
1253
+ name: "digest",
1254
+ type: "bytes32",
1255
+ indexed: true,
1256
+ internalType: "bytes32",
1257
+ },
1258
+ ],
1259
+ anonymous: false,
1260
+ },
1261
+ {
1262
+ type: "event",
1263
+ name: "TransferSent",
1264
+ inputs: [
1265
+ {
1266
+ name: "recipient",
1267
+ type: "bytes32",
1268
+ indexed: false,
1269
+ internalType: "bytes32",
1270
+ },
1271
+ {
1272
+ name: "refundAddress",
1273
+ type: "bytes32",
1274
+ indexed: false,
1275
+ internalType: "bytes32",
1276
+ },
1277
+ {
1278
+ name: "amount",
1279
+ type: "uint256",
1280
+ indexed: false,
1281
+ internalType: "uint256",
1282
+ },
1283
+ {
1284
+ name: "fee",
1285
+ type: "uint256",
1286
+ indexed: false,
1287
+ internalType: "uint256",
1288
+ },
1289
+ {
1290
+ name: "recipientChain",
1291
+ type: "uint16",
1292
+ indexed: false,
1293
+ internalType: "uint16",
1294
+ },
1295
+ {
1296
+ name: "msgSequence",
1297
+ type: "uint64",
1298
+ indexed: false,
1299
+ internalType: "uint64",
1300
+ },
1301
+ ],
1302
+ anonymous: false,
1303
+ },
1304
+ {
1305
+ type: "event",
1306
+ name: "Upgraded",
1307
+ inputs: [
1308
+ {
1309
+ name: "implementation",
1310
+ type: "address",
1311
+ indexed: true,
1312
+ internalType: "address",
1313
+ },
1314
+ ],
1315
+ anonymous: false,
1316
+ },
1317
+ {
1318
+ type: "error",
1319
+ name: "BurnAmountDifferentThanBalanceDiff",
1320
+ inputs: [
1321
+ {
1322
+ name: "burnAmount",
1323
+ type: "uint256",
1324
+ internalType: "uint256",
1325
+ },
1326
+ {
1327
+ name: "balanceDiff",
1328
+ type: "uint256",
1329
+ internalType: "uint256",
1330
+ },
1331
+ ],
1332
+ },
1333
+ {
1334
+ type: "error",
1335
+ name: "CallerNotTransceiver",
1336
+ inputs: [
1337
+ {
1338
+ name: "caller",
1339
+ type: "address",
1340
+ internalType: "address",
1341
+ },
1342
+ ],
1343
+ },
1344
+ {
1345
+ type: "error",
1346
+ name: "CancellerNotSender",
1347
+ inputs: [
1348
+ {
1349
+ name: "canceller",
1350
+ type: "address",
1351
+ internalType: "address",
1352
+ },
1353
+ {
1354
+ name: "sender",
1355
+ type: "address",
1356
+ internalType: "address",
1357
+ },
1358
+ ],
1359
+ },
1360
+ {
1361
+ type: "error",
1362
+ name: "CapacityCannotExceedLimit",
1363
+ inputs: [
1364
+ {
1365
+ name: "newCurrentCapacity",
1366
+ type: "uint72",
1367
+ internalType: "TrimmedAmount",
1368
+ },
1369
+ {
1370
+ name: "newLimit",
1371
+ type: "uint72",
1372
+ internalType: "TrimmedAmount",
1373
+ },
1374
+ ],
1375
+ },
1376
+ {
1377
+ type: "error",
1378
+ name: "DeliveryPaymentTooLow",
1379
+ inputs: [
1380
+ {
1381
+ name: "requiredPayment",
1382
+ type: "uint256",
1383
+ internalType: "uint256",
1384
+ },
1385
+ {
1386
+ name: "providedPayment",
1387
+ type: "uint256",
1388
+ internalType: "uint256",
1389
+ },
1390
+ ],
1391
+ },
1392
+ {
1393
+ type: "error",
1394
+ name: "DisabledTransceiver",
1395
+ inputs: [
1396
+ {
1397
+ name: "transceiver",
1398
+ type: "address",
1399
+ internalType: "address",
1400
+ },
1401
+ ],
1402
+ },
1403
+ {
1404
+ type: "error",
1405
+ name: "InboundQueuedTransferNotFound",
1406
+ inputs: [
1407
+ {
1408
+ name: "digest",
1409
+ type: "bytes32",
1410
+ internalType: "bytes32",
1411
+ },
1412
+ ],
1413
+ },
1414
+ {
1415
+ type: "error",
1416
+ name: "InboundQueuedTransferStillQueued",
1417
+ inputs: [
1418
+ {
1419
+ name: "digest",
1420
+ type: "bytes32",
1421
+ internalType: "bytes32",
1422
+ },
1423
+ {
1424
+ name: "transferTimestamp",
1425
+ type: "uint256",
1426
+ internalType: "uint256",
1427
+ },
1428
+ ],
1429
+ },
1430
+ {
1431
+ type: "error",
1432
+ name: "InvalidFork",
1433
+ inputs: [
1434
+ {
1435
+ name: "evmChainId",
1436
+ type: "uint256",
1437
+ internalType: "uint256",
1438
+ },
1439
+ {
1440
+ name: "blockChainId",
1441
+ type: "uint256",
1442
+ internalType: "uint256",
1443
+ },
1444
+ ],
1445
+ },
1446
+ {
1447
+ type: "error",
1448
+ name: "InvalidInitialization",
1449
+ inputs: [],
1450
+ },
1451
+ {
1452
+ type: "error",
1453
+ name: "InvalidMode",
1454
+ inputs: [
1455
+ {
1456
+ name: "mode",
1457
+ type: "uint8",
1458
+ internalType: "uint8",
1459
+ },
1460
+ ],
1461
+ },
1462
+ {
1463
+ type: "error",
1464
+ name: "InvalidPauser",
1465
+ inputs: [
1466
+ {
1467
+ name: "account",
1468
+ type: "address",
1469
+ internalType: "address",
1470
+ },
1471
+ ],
1472
+ },
1473
+ {
1474
+ type: "error",
1475
+ name: "InvalidPeer",
1476
+ inputs: [
1477
+ {
1478
+ name: "chainId",
1479
+ type: "uint16",
1480
+ internalType: "uint16",
1481
+ },
1482
+ {
1483
+ name: "peerAddress",
1484
+ type: "bytes32",
1485
+ internalType: "bytes32",
1486
+ },
1487
+ ],
1488
+ },
1489
+ {
1490
+ type: "error",
1491
+ name: "InvalidPeerChainIdZero",
1492
+ inputs: [],
1493
+ },
1494
+ {
1495
+ type: "error",
1496
+ name: "InvalidPeerDecimals",
1497
+ inputs: [],
1498
+ },
1499
+ {
1500
+ type: "error",
1501
+ name: "InvalidPeerZeroAddress",
1502
+ inputs: [],
1503
+ },
1504
+ {
1505
+ type: "error",
1506
+ name: "InvalidRecipient",
1507
+ inputs: [],
1508
+ },
1509
+ {
1510
+ type: "error",
1511
+ name: "InvalidRefundAddress",
1512
+ inputs: [],
1513
+ },
1514
+ {
1515
+ type: "error",
1516
+ name: "InvalidTargetChain",
1517
+ inputs: [
1518
+ {
1519
+ name: "targetChain",
1520
+ type: "uint16",
1521
+ internalType: "uint16",
1522
+ },
1523
+ {
1524
+ name: "thisChain",
1525
+ type: "uint16",
1526
+ internalType: "uint16",
1527
+ },
1528
+ ],
1529
+ },
1530
+ {
1531
+ type: "error",
1532
+ name: "InvalidTransceiverZeroAddress",
1533
+ inputs: [],
1534
+ },
1535
+ {
1536
+ type: "error",
1537
+ name: "MessageNotApproved",
1538
+ inputs: [
1539
+ {
1540
+ name: "msgHash",
1541
+ type: "bytes32",
1542
+ internalType: "bytes32",
1543
+ },
1544
+ ],
1545
+ },
1546
+ {
1547
+ type: "error",
1548
+ name: "NoEnabledTransceivers",
1549
+ inputs: [],
1550
+ },
1551
+ {
1552
+ type: "error",
1553
+ name: "NonRegisteredTransceiver",
1554
+ inputs: [
1555
+ {
1556
+ name: "transceiver",
1557
+ type: "address",
1558
+ internalType: "address",
1559
+ },
1560
+ ],
1561
+ },
1562
+ {
1563
+ type: "error",
1564
+ name: "NotAnEvmAddress",
1565
+ inputs: [
1566
+ {
1567
+ name: "",
1568
+ type: "bytes32",
1569
+ internalType: "bytes32",
1570
+ },
1571
+ ],
1572
+ },
1573
+ {
1574
+ type: "error",
1575
+ name: "NotEnoughCapacity",
1576
+ inputs: [
1577
+ {
1578
+ name: "currentCapacity",
1579
+ type: "uint256",
1580
+ internalType: "uint256",
1581
+ },
1582
+ {
1583
+ name: "amount",
1584
+ type: "uint256",
1585
+ internalType: "uint256",
1586
+ },
1587
+ ],
1588
+ },
1589
+ {
1590
+ type: "error",
1591
+ name: "NotInitializing",
1592
+ inputs: [],
1593
+ },
1594
+ {
1595
+ type: "error",
1596
+ name: "NotMigrating",
1597
+ inputs: [],
1598
+ },
1599
+ {
1600
+ type: "error",
1601
+ name: "NumberOfDecimalsNotEqual",
1602
+ inputs: [
1603
+ {
1604
+ name: "decimals",
1605
+ type: "uint8",
1606
+ internalType: "uint8",
1607
+ },
1608
+ {
1609
+ name: "decimalsOther",
1610
+ type: "uint8",
1611
+ internalType: "uint8",
1612
+ },
1613
+ ],
1614
+ },
1615
+ {
1616
+ type: "error",
1617
+ name: "OnlyDelegateCall",
1618
+ inputs: [],
1619
+ },
1620
+ {
1621
+ type: "error",
1622
+ name: "OutboundQueuedTransferNotFound",
1623
+ inputs: [
1624
+ {
1625
+ name: "queueSequence",
1626
+ type: "uint64",
1627
+ internalType: "uint64",
1628
+ },
1629
+ ],
1630
+ },
1631
+ {
1632
+ type: "error",
1633
+ name: "OutboundQueuedTransferStillQueued",
1634
+ inputs: [
1635
+ {
1636
+ name: "queueSequence",
1637
+ type: "uint64",
1638
+ internalType: "uint64",
1639
+ },
1640
+ {
1641
+ name: "transferTimestamp",
1642
+ type: "uint256",
1643
+ internalType: "uint256",
1644
+ },
1645
+ ],
1646
+ },
1647
+ {
1648
+ type: "error",
1649
+ name: "OwnableInvalidOwner",
1650
+ inputs: [
1651
+ {
1652
+ name: "owner",
1653
+ type: "address",
1654
+ internalType: "address",
1655
+ },
1656
+ ],
1657
+ },
1658
+ {
1659
+ type: "error",
1660
+ name: "OwnableUnauthorizedAccount",
1661
+ inputs: [
1662
+ {
1663
+ name: "account",
1664
+ type: "address",
1665
+ internalType: "address",
1666
+ },
1667
+ ],
1668
+ },
1669
+ {
1670
+ type: "error",
1671
+ name: "PeerNotRegistered",
1672
+ inputs: [
1673
+ {
1674
+ name: "chainId",
1675
+ type: "uint16",
1676
+ internalType: "uint16",
1677
+ },
1678
+ ],
1679
+ },
1680
+ {
1681
+ type: "error",
1682
+ name: "ReentrancyGuardReentrantCall",
1683
+ inputs: [],
1684
+ },
1685
+ {
1686
+ type: "error",
1687
+ name: "RefundFailed",
1688
+ inputs: [
1689
+ {
1690
+ name: "refundAmount",
1691
+ type: "uint256",
1692
+ internalType: "uint256",
1693
+ },
1694
+ ],
1695
+ },
1696
+ {
1697
+ type: "error",
1698
+ name: "RequireContractIsNotPaused",
1699
+ inputs: [],
1700
+ },
1701
+ {
1702
+ type: "error",
1703
+ name: "RequireContractIsPaused",
1704
+ inputs: [],
1705
+ },
1706
+ {
1707
+ type: "error",
1708
+ name: "RetrievedIncorrectRegisteredTransceivers",
1709
+ inputs: [
1710
+ {
1711
+ name: "retrieved",
1712
+ type: "uint256",
1713
+ internalType: "uint256",
1714
+ },
1715
+ {
1716
+ name: "registered",
1717
+ type: "uint256",
1718
+ internalType: "uint256",
1719
+ },
1720
+ ],
1721
+ },
1722
+ {
1723
+ type: "error",
1724
+ name: "ThresholdTooHigh",
1725
+ inputs: [
1726
+ {
1727
+ name: "threshold",
1728
+ type: "uint256",
1729
+ internalType: "uint256",
1730
+ },
1731
+ {
1732
+ name: "transceivers",
1733
+ type: "uint256",
1734
+ internalType: "uint256",
1735
+ },
1736
+ ],
1737
+ },
1738
+ {
1739
+ type: "error",
1740
+ name: "TooManyTransceivers",
1741
+ inputs: [],
1742
+ },
1743
+ {
1744
+ type: "error",
1745
+ name: "TransceiverAlreadyAttestedToMessage",
1746
+ inputs: [
1747
+ {
1748
+ name: "nttManagerMessageHash",
1749
+ type: "bytes32",
1750
+ internalType: "bytes32",
1751
+ },
1752
+ ],
1753
+ },
1754
+ {
1755
+ type: "error",
1756
+ name: "TransceiverAlreadyEnabled",
1757
+ inputs: [
1758
+ {
1759
+ name: "transceiver",
1760
+ type: "address",
1761
+ internalType: "address",
1762
+ },
1763
+ ],
1764
+ },
1765
+ {
1766
+ type: "error",
1767
+ name: "TransferAmountHasDust",
1768
+ inputs: [
1769
+ {
1770
+ name: "amount",
1771
+ type: "uint256",
1772
+ internalType: "uint256",
1773
+ },
1774
+ {
1775
+ name: "dust",
1776
+ type: "uint256",
1777
+ internalType: "uint256",
1778
+ },
1779
+ ],
1780
+ },
1781
+ {
1782
+ type: "error",
1783
+ name: "UndefinedRateLimiting",
1784
+ inputs: [],
1785
+ },
1786
+ {
1787
+ type: "error",
1788
+ name: "UnexpectedDeployer",
1789
+ inputs: [
1790
+ {
1791
+ name: "expectedOwner",
1792
+ type: "address",
1793
+ internalType: "address",
1794
+ },
1795
+ {
1796
+ name: "owner",
1797
+ type: "address",
1798
+ internalType: "address",
1799
+ },
1800
+ ],
1801
+ },
1802
+ {
1803
+ type: "error",
1804
+ name: "ZeroAmount",
1805
+ inputs: [],
1806
+ },
1807
+ {
1808
+ type: "error",
1809
+ name: "ZeroThreshold",
1810
+ inputs: [],
1811
+ },
1812
+ ];
1813
+ const _bytecode = "0x61016034620005a857601f620062e138819003918201601f19168301916001600160401b038311848410176200055b5780849260a094604052833981010312620005a8578051906001600160a01b0382168203620005a8576020810151916002831015620005a85760408201519161ffff83168303620005a8576060810151906001600160401b03821690818303620005a8576080015180159182158203620005a857158092816200059f575b50821562000583575b505062000571576080527f8561949d1c6242cee5c5a5aeb6b9c190ee611d7742fcec65d9e5b1341ea04d8954620001147e758a264b9bdbe3295fe36bd6ff7abaa122f48bf70e90af04a1b8a32d21e4e15460ff8360081c1614620005ad565b7ffd6568c039679b3b7cc93c26c41d9379b7b1bec1677120493b467688302cb11f5460005b60ff8360081c168110620003ce57505060005b60ff8260081c1681106200033a5750604060ff6200016d92161115620005ad565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805460ff8160401c1662000328576002600160401b03196001600160401b03821601620002dc575b50503060a05260c0526101009182526101209081526101404681523360e05260405191615cb693846200062b85396080518481816112ee0152818161192e01528181611d7f015281816127c501528181613241015281816137e701528181613e3a015281816152ca015281816153dd0152818161549d015281816155bc0152615684015260a05184614cf1015260c051848181610285015281816104e00152818161052d015281816126b10152818161365701528181613cb8015281816145240152818161494301526149f3015260e05184611a7801525183818161047701528181611df801528181611f3e015281816126ff015281816136d901528181613d3501526148cb0152518281816111960152818161276801526131cb0152518161312d0152f35b6001600160401b0319166001600160401b039081179091556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a13880620001b6565b60405163f92ee8a960e01b8152600490fd5b60018101808211620003b8575b60ff8360081c1681106200036757506200036190620005cb565b6200014c565b620003b290620003ac6200037b84620005db565b90546200038884620005db565b9054600391821b1c6001600160a01b039081169390911b9190911c161415620005ad565b620005cb565b62000347565b634e487b7160e01b600052601160045260246000fd5b620003d981620005db565b9054600382901b81901c6001600160a01b031660009081527f49bca747e973430e858f2f5de357b8dba36ea6d375b81bdb5d53dfaabf0b3a7f602052604090819020905192906001600160401b0360608501908111908511176200055b5760608401604052546200047b60ff821615801592838752602087019360ff808360081c1615928315875260101c16908160408a0152926200053e575b5050620005ad565b60018060401b03600160ff6040870151161b87161615159051151592600092835b60ff8a60081c168110620004ec575b50505082620004e6959492620004cb620003ac95620004d49414620005ad565b151514620005ad565b60ff60408188169201511610620005ad565b62000139565b620004f781620005db565b9054600391821b1c6001600160a01b039081169184901b85901c161462000529576200052390620005cb565b6200049c565b5060019350849150829050620004cb620004ab565b9091508162000551575b50388062000473565b9050153862000548565b634e487b7160e01b600052604160045260246000fd5b60405163e543ef0560e01b8152600490fd5b1591508162000596575b503880620000b5565b9050386200058d565b925038620000ac565b600080fd5b15620005b557565b634e487b7160e01b600052600160045260246000fd5b6000198114620003b85760010190565b7e758a264b9bdbe3295fe36bd6ff7abaa122f48bf70e90af04a1b8a32d21e4e18054821015620006145760005260206000200190600090565b634e487b7160e01b600052603260045260246000fdfe6080604052600436101561001257600080fd5b6000803560e01c80630271725014612a42578063036de8af146129b75780630677df54146129985780630900f01014612531578063186ce612146124dc57806319017175146124a65780631f97c9a8146122b4578063203e4a9b14611fb657806323d75e3114611f82578063295a521214611f28578063396c16b714611eec5780633b97e85614611ed15780633f4ba83a14611e435780634b4fd03b14611de5578063689f90c314611da357806374aa7bfc14611d5f5780637c91863414611c0a5780638129fc1c146119e75780638413bcba146118cb5780638456cb591461184e57806386e11ffa1461182957806389c619dd146117c95780638da5cb5b146117935780638e3ba8c91461175c5780638fd3ab801461161d5780639057412d146114a0578063961b94d01461144257806397c35146146111ba5780639a8a05921461117b5780639d78245414610f405780639f86029c14610c2f5780639fd0506d14610bf9578063b187bd2614610bcb578063b293f97f14610b35578063b4d591bb14610a74578063c0b07bde14610a2e578063c128d170146109b2578063d788c14714610927578063da4856a1146108f4578063e5a9860314610848578063e75235b81461081a578063f2fde38b146106d5578063f5cfec18146106b2578063f7514fbc146102b4578063fc0c546a1461026f5763fd96063c1461021757600080fd5b3461026c57602036600319011261026c576060610235600435615228565b6040805182516001600160481b031681526020808401516001600160401b031690820152918101516001600160a01b031690820152f35b80fd5b503461026c578060031936011261026c576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b503461026c57602036600319011261026c576004356001600160401b03811681036106ae576102e1615a50565b6002600080516020615b21833981519152541461069c576001600160401b038116600052600080516020615c0183398151915260205260406000206040519061032982612b1a565b805482526001810154602083015261ffff60028201546001600160481b03811660408501526001600160401b038160481c16606085015260881c16608083015260018060a01b0360038201541660a083015260405190818560048301549261039084613587565b808452936001811690811561067a5750600114610636575b506103b592500382612ba1565b60c08201526001600160401b03606082015116156106155760a08101516001600160a01b03163381036105e85750606061045860407ff80e572ae1b63e2449629b6c7d783add85c36473926f216077f17ee002bcfd07936001600160401b038616600052600080516020615c01833981519152602052610437826000206135d8565b01516104416149cd565b906001600160401b0360ff82169160081c166158bf565b926001600160401b0360405191168152336020820152836040820152a17f000000000000000000000000000000000000000000000000000000000000000060028110156105d25780610522575060405163a9059cbb60e01b6020820152336024820152604481019190915261050d906104de81606481015b03601f198101835282612ba1565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316614218565b6001600080516020615c218339815191525580f35b600181036105b657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156105b1576040516340c10f1960e01b815233600482015260248101929092526000908290604490829084905af180156105a557610596575b5061050d565b61059f90612b07565b38610590565b6040513d6000823e3d90fd5b600080fd5b6040516366001a8960e01b815260ff9091166004820152602490fd5b634e487b7160e01b600052602160045260246000fd5b60405163ceb40a8560e01b81523360048201526001600160a01b03919091166024820152604490fd5b0390fd5b604051635feafa3160e11b81526001600160401b0383166004820152602490fd5b60040187525060208620909186915b81831061065e5750509060206103b592820101386103a8565b6020919350806001915483858801015201910190918392610645565b9050602092506103b594915060ff191682840152151560051b820101386103a8565b6040516309e3d0f360e11b8152600490fd5b5080fd5b503461026c578060031936011261026c5760206106cd615211565b604051908152f35b503461026c57602036600319011261026c576001600160a01b03600435818116908181036107e55761071690610709615a17565b610711615a17565b6159a3565b7f3031d39df71efbb605646fc51d7571499445af538fa6dd17ce8c07e8118ed97891825460ff600080516020615ba183398151915254168082036107fc575050908391825b84548110156107f8578460005281817f357eda4c1707ce60b55a439f3dc12fcacea5ca0fd863e2fc179a916cf05fccd1015416803b156107f457848091602460405180948193632c7b84dd60e11b83528960048401525af19081156107e95785916107d1575b50506107cc90612de1565b61075b565b6107da90612b07565b6107e55783386107c1565b8380fd5b6040513d87823e3d90fd5b8480fd5b8380f35b604492506040519163d2a13a2960e01b835260048301526024820152fd5b503461026c578060031936011261026c57602060ff600080516020615aa18339815191525416604051908152f35b503461026c57602036600319011261026c5760043560ff8116908181036105b157610871615a17565b81156108e2577f2a855b929b9a53c6fb5b5ed248b27e502b709c088e036a5aa17620c8fc5085a9916108dc60ff92600080516020615aa1833981519152805493851985161790556108c0613060565b6040805160ff9490951684168552921660208401528291820190565b0390a180f35b60405163831761d760e01b8152600490fd5b503461026c5761090336612c24565b906002600080516020615b21833981519152541461069c5761092492613129565b80f35b503461026c57602036600319011261026c5761ffff610944612a9d565b61094c6151f2565b5016600052600080516020615bc18339815191526020526109ae6109736040600020614dcd565b6040519182918291909160406001600160401b038160608401956001600160481b038082511686526020820151166020860152015116910152565b0390f35b503461026c57602036600319011261026c5761ffff906109d0612a9d565b9060206040516109df81612b50565b828152015216600052600080516020615a8183398151915260205260408060002060ff8251610a0d81612b50565b60208260018554958685520154169101908152835192835251166020820152f35b503461026c578060031936011261026c576109ae604051610a4e81612b50565b60058152640302e312e360dc1b6020820152604051918291602083526020830190612ae2565b503461026c578060031936011261026c576040518091600080516020615b6183398151915290815480845260208094019081938352600080516020615ac183398151915290835b818110610b185750505084610ad1910385612ba1565b60405193838594850191818652518092526040850193925b828110610af857505050500390f35b83516001600160a01b031685528695509381019392810192600101610ae9565b82546001600160a01b031684529286019260019283019201610abb565b5060c036600319011261026c57610b4a612aae565b906084359182151583036106ae5760a4356001600160401b039283821161026c5750610b7a903690600401612bdd565b610b82615a50565b6002600080516020615b21833981519152541461069c57602093610bb0926064359060443590600435613c9c565b6001600080516020615c218339815191525560405191168152f35b503461026c578060031936011261026c5760206002600080516020615b218339815191525414604051908152f35b503461026c578060031936011261026c57600080516020615c41833981519152546040516001600160a01b039091168152602090f35b503461026c576020806003193601126106ae576001600160a01b039060043582811691908281036107f457610c62615a17565b8215610f2e5782600052600080516020615be183398151915280835260ff91826040600020541615610f1557846000528184528260406000205460081c1615610efc5784600052818452604060002061ff001990818154169055600080516020615ba1833981519152928354858160081c16928315610ee85761ff0060001980950160081b169116178455600080516020615b418339815191528054918860005287526001600160401b03600192610d2f82858a60406000205460101c161b198316169282168310614a9f565b6001600160401b0319161790558897600080516020615b618339815191528054938b5b858110610de2575b505050505050918091610da26040969594610d957f697a3853515b88013ad432f29f53d406debc9509ed6d9313dcfe115250fcd18f99614a9f565b610d9d614abc565b614ba7565b5460081c16600080516020615aa18339815191529081548381168210610dd4575b50505416908351928352820152a180f35b60ff19161781553880610dc3565b838b610ded8361302f565b929054600393841b1c1614610e0b5750610e0690612de1565b610d52565b9590918093959798999a9b9c508101908111610ed45790610e3f84610e32610e5e9461302f565b905490891b1c169161302f565b90919082549060031b9160018060a01b03809116831b921b1916179055565b82548015610ec057946040999794610da2948a9894610d95947f697a3853515b88013ad432f29f53d406debc9509ed6d9313dcfe115250fcd18f9e9c990192610ea68461302f565b81939154921b1b1916905555998496979899839650610d5a565b634e487b7160e01b8c52603160045260248cfd5b634e487b7160e01b8d52601160045260248dfd5b634e487b7160e01b8b52601160045260248bfd5b6040516307d86e9160e21b815260048101869052602490fd5b604051630d583f4760e41b815260048101869052602490fd5b604051632f44bd7760e01b8152600490fd5b503461026c57610f4f36612c24565b9033600052600080516020615be183398151915260209080825260ff60406000205460081c161561116357600080516020615b2183398151915291600283541461069c5761ffff861680600052600080516020615a8183398151915282528460406000205403611145575060405163b3f07bbd60e01b815291818380610fd9898b600484016130ff565b038173__$93083e246e55d56d98f3df2872cd16bfd0$__5af492831561113a57889361110b575b503360005280825261101d60ff60406000205460101c1684612ff9565b6110f25760606110d193927f35a2101eaac94b493e0dfca061f9a7f087913fde8678e7cde0aca9897edba0e592336000528082528a6001600160401b03610100600160481b03604082600160ff836000205460101c161b1693898152600080516020615ae1833981519152875220928354928360081c161760081b1690610100600160481b03191617905533600052815260ff60406000205460101c166040519185835233908301526040820152a1612f8c565b6110d9578480f35b5460021461069c576110ea92613129565b388080808480f35b604051631089c4a160e11b815260048101849052602490fd5b9092508181813d8311611133575b6111238183612ba1565b810103126105b157519138611000565b503d611119565b6040513d8a823e3d90fd5b6044908560405191635788c0fd60e11b835260048301526024820152fd5b60405163a0ae911d60e01b8152336004820152602490fd5b503461026c578060031936011261026c57602060405161ffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b50602036600319011261026c576001600160401b036004351690816004350361026c576111e5615a50565b6002600080516020615b21833981519152541461069c5781600052600080516020615c018339815191526020526040600020916040519261122584612b1a565b805484526001810154602085015261ffff60028201546001600160481b03811660408701526001600160401b038160481c16606087015260881c16608085015260018060a01b0360038201541660a08501526040518381949060048401549361128d85613587565b808552946001811690811561141e57506001146113d9575b50506112b392500383612ba1565b60c083019182526001600160401b03606084015116156113c1576112e46001600160401b0360608501511642612f7f565b6001600160401b037f00000000000000000000000000000000000000000000000000000000000000001611611396579161137391602093600052600080516020615c01833981519152845261133c60406000206135d8565b6001600160481b036040830151169161ffff608082015116815190868301519260a0600180821b0391015116935194600435614412565b6001600080516020615c21833981519152556001600160401b0360405191168152f35b6044906001600160401b036060850151166040519163c06cf05f60e01b835260048301526024820152fd5b60249060405190635feafa3160e11b82526004820152fd5b60049193949250018252602082205b8183106114025750509060206112b39282010138806112a5565b60209193508060019154838589010152019101909184926113e8565b915050602092506112b394915060ff191682840152151560051b82010138806112a5565b50606036600319011261026c57611457612aae565b604435611462615a50565b6002600080516020615b21833981519152541461069c5760209181611373926040519261148e84612b50565b6001845285368186013760043561363a565b503461026c57604036600319011261026c576114ba612a9d565b6024356001600160401b038111611619576114d9903690600401612bdd565b91604051918290600080516020615b61833981519152828154918287526020809701908652600080516020615ac183398151915292865b888282106115fa5750505061152792500383612ba1565b826115518351966040519788928392635b10743960e11b8452604060048501526044840190612ae2565b906024830152038173__$93083e246e55d56d98f3df2872cd16bfd0$__5af49081156115ef5783949561158a94926115cb575b50612e24565b604051926040840160408552835180915285606086019401915b8181106115b75750505082938301520390f35b8251855293860193918601916001016115a4565b6115e89192503d8087833e6115e08183612ba1565b810190612d0f565b9038611584565b6040513d85823e3d90fd5b85546001600160a01b0316845260019586019588955093019201611510565b8280fd5b503461026c578060031936011261026c57611636614cee565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0080546001600160401b038082169060018201918183116117465760ff8460401c16908115611739575b5061172757600160401b911680926001600160481b03191617179081835560ff7f7487ca88d037ca20519908b1ee7556206bef53bce0226a348750cb9d4f688e4e541615611715577fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2926020926116f5613060565b6116fd614abc565b68ff000000000000000019169055604051908152a180f35b604051632866815360e11b8152600490fd5b60405163f92ee8a960e01b8152600490fd5b9050818316111538611680565b634e487b7160e01b600052601160045260246000fd5b503461026c57604036600319011261026c5760243560ff811681036105b157611789602091600435612ff9565b6040519015158152f35b503461026c578060031936011261026c57600080516020615b01833981519152546040516001600160a01b039091168152602090f35b503461026c57602036600319011261026c5761181e6001600160401b036020926040600080516020615b4183398151915254916004358152600080516020615ae18339815191528652205460081c16166157e1565b60ff60405191168152f35b503461026c578060031936011261026c576118426151f2565b506109ae610973614d85565b503461026c578060031936011261026c57600080516020615b0183398151915254611881906001600160a01b0316614d32565b600080516020615b21833981519152600281541461069c57600290557f0e2fb031ee032dc02d8011dc50b816eb450cf856abd8261680dac74f72165bd2602060405160018152a180f35b503461026c57602036600319011261026c576004356118e8615a50565b6002600080516020615b21833981519152541461069c5761190881615228565b602081016001600160401b039081815116156119ce5761192b8282511642612f7f565b827f000000000000000000000000000000000000000000000000000000000000000016116119ac578385527f4e8909a01183a67951f5a6147d6e76ed02ea890c72afea01a9edee91edc609b860205260408086208681556001018690558301518351869161050d916001600160481b0316906001600160a01b031687614893565b516040516301cb739d60e71b8152600481019490945216602483015250604490fd5b604051630301bcaf60e61b815260048101859052602490fd5b503461026c578060031936011261026c57611a00614cee565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805460ff8160401c1615906001600160401b03811680159081611c02575b6001149081611bf8575b159081611bef575b506117275767ffffffffffffffff198116600117835581611bd0575b50611a76615962565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0381163303611ba75750611ab0615962565b611ab8615962565b611ac0615962565b6001600080516020615b2183398151915255600080516020615c4183398151915280546001600160a01b03191633179055611af9615962565b611b01615962565b611b0a336159a3565b611b12615962565b611b1a615962565b6001600080516020615c2183398151915255611b51610100600160481b0360ff611b4a611b456149cd565b615888565b1617614e2d565b611b59613060565b611b61614abc565b611b69575080f35b68ff00000000000000001981541690557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a180f35b604051636345072160e11b81526001600160a01b03919091166004820152336024820152604490fd5b68ffffffffffffffffff19166801000000000000000117825538611a6d565b90501538611a51565b303b159150611a49565b839150611a3f565b503461026c57608036600319011261026c57611c24612a9d565b6024356044359160ff83168093036105b15761ffff90611c42615a17565b16918215611d4d578115611d3b578015611d29577f1456404e7f41f35c3daac941bb50bad417a66275c3040061b4287d787719599d9160809184600052600080516020615a81833981519152918260205260ff604060002081600160405192611caa84612b50565b805484520154169460208201958652886000526020526001604060002084815501848319825416179055611d0c611ceb611ce26149cd565b8060643561591a565b89600052600080516020615bc183398151915260205260406000209061502b565b51935116604051938452602084015260408301526060820152a280f35b60405163ade64f0b60e01b8152600490fd5b60405163f839a0cb60e01b8152600490fd5b60405163100b0f2760e11b8152600490fd5b503461026c578060031936011261026c5760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b503461026c578060031936011261026c57602060ff7f5443fea4dc453d96b81ce55b62e11a4094cc4cbb8a360956a7253cfdb42506cb54166040519015158152f35b503461026c578060031936011261026c577f0000000000000000000000000000000000000000000000000000000000000000906002821015611e2f5760208260ff60405191168152f35b634e487b7160e01b81526021600452602490fd5b503461026c578060031936011261026c57600080516020615b0183398151915254611e76906001600160a01b0316614d32565b600080516020615b218339815191526002815403611ebf57600190557fe11c2112add17fb763d3bd59f63b10429c3e11373da4fb8ef6725107a2fdc4b06020604051838152a180f35b604051637e38d1d360e11b8152600490fd5b503461026c578060031936011261026c57602061181e6149cd565b503461026c57602036600319011261026c5760ff60406020926004358152600080516020615ae183398151915284522054166040519015158152f35b503461026c578060031936011261026c576040517f00000000000000000000000000000000000000000000000000000000000000006002811015611f6e57602092508152f35b634e487b7160e01b83526021600452602483fd5b503461026c578060031936011261026c5760206001600160401b03600080516020615b818339815191525416604051908152f35b503461026c576020806003193601126106ae576004356001600160a01b038116918282036107e557611fe6615a17565b8215610f2e5782600052600080516020615be18339815191529182825260ff90816040600020541660001461218a5784600052838352604060002061010061ff00198254161790555b600080516020615b6183398151915290815491600160401b8310156121745782610e3f9160016120619501905561302f565b600080516020615ba183398151915292835461ff00612084848360081c16614a8e565b60081b169061ff00191617809455600080516020615b4183398151915280546001600160401b0390818116918860005284875260018660406000205460101c161b16821791821461215b5767ffffffffffffffff19161790557ff05962b5774c658e85ed80c91a75af9d66d2af2253dda480f90bce78aff5eda594606094909390929091612110614abc565b84600052825280600080516020615aa183398151915280548281161561214c575b5054169260405194855260081c16908301526040820152a180f35b60ff1916600117815538612131565b604051638d68f84d60e01b815260048101899052602490fd5b634e487b7160e01b600052604160045260246000fd5b600080516020615ba18339815191528281541660408110156122a257604051906121b382612b35565b6001825285820190600182526040830190815288600052878752604060002092511515918662ff000061ff0086549351151560081b16935160101b1693169062ffffff1916171717905580548361220b818316614a8e565b169060ff19161790557f3031d39df71efbb605646fc51d7571499445af538fa6dd17ce8c07e8118ed978805490600160401b821015612174576001820180825582101561228c576000527f357eda4c1707ce60b55a439f3dc12fcacea5ca0fd863e2fc179a916cf05fccd10180546001600160a01b0319168617905561202f565b634e487b7160e01b600052603260045260246000fd5b60405163891684c360e01b8152600490fd5b503461026c57602036600319011261026c576004356001600160401b0381168091036106ae57606060c06040516122ea81612b1a565b84815284602082015284604082015284838201528460808201528460a08201520152600052600080516020615c0183398151915260205260406000206040519061233382612b1a565b805482526001810154602083015261ffff60028201546001600160481b03811660408501526001600160401b038160481c16606085015260881c16608083015260018060a01b0360038201541660a08301526040518381949060048401549361239b85613587565b8085529460018116908115612482575060011461243d575b50506123c192500383612ba1565b60c081019182526109ae6040519283926020845280516020850152602081015160408501526001600160481b0360408201511660608501526001600160401b03606082015116608085015261ffff60808201511660a085015260a0600180821b039101511660c08401525160e080840152610100830190612ae2565b60049193949250018252602082205b8183106124665750509060206123c19282010138806123b3565b602091935080600191548385890101520191019091849261244c565b915050602092506123c194915060ff191682840152151560051b82010138806123b3565b503461026c57602036600319011261026c576124c0615a17565b6109246124d76124ce6149cd565b8060043561591a565b614e2d565b503461026c57604036600319011261026c576109246124f9612aae565b612501615a17565b61ffff61250f6124ce6149cd565b9116600052600080516020615bc183398151915260205260406000209061502b565b503461026c576020806003193601126106ae576001600160a01b03600435818116908181036107f457612562615a17565b61256a614cee565b3b1561293d577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916821790557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a27f7487ca88d037ca20519908b1ee7556206bef53bce0226a348750cb9d4f688e4e918254916125f760ff841615614a9f565b60ff199283166001178455303b156107f45760405163011fa75760e71b8152858160048183305af180156128f25761292a575b5060405163689f90c360e01b81528281600481305afa9081156128f25786916128fd575b5015612686575b50507f5443fea4dc453d96b81ce55b62e11a4094cc4cbb8a360956a7253cfdb42506cb818154169055815416905580f35b604051637e062a3560e11b81528281600481305afa9081156128f25786916128b4575b50816126d9927f000000000000000000000000000000000000000000000000000000000000000016911614614a9f565b6040516314ad290960e11b81528181600481305afa9081156107e957859161287e575b507f000000000000000000000000000000000000000000000000000000000000000090600282101561286a57600281101561286a5761273b9114614a9f565b604051634d4502c960e11b81528181600481305afa80156107e9578590612834575b612790915061ffff807f000000000000000000000000000000000000000000000000000000000000000016911614614a9f565b604051631d2a9eff60e21b8152908082600481305afa9081156107e95785916127f4575b506127ed91506001600160401b03807f000000000000000000000000000000000000000000000000000000000000000016911614614a9f565b3880612655565b905081813d831161282d575b61280a8183612ba1565b810103126107e557516001600160401b03811681036107e5576127ed90386127b4565b503d612800565b508181813d8311612863575b61284a8183612ba1565b810103126107f45761285e6127909161311a565b61275d565b503d612840565b634e487b7160e01b86526021600452602486fd5b90508181813d83116128ad575b6128958183612ba1565b810103126107f4575160028110156107f457386126fc565b503d61288b565b90508281813d83116128eb575b6128cb8183612ba1565b810103126128e757519080821682036128e757906126d96126a9565b8580fd5b503d6128c1565b6040513d88823e3d90fd5b61291d9150833d8511612923575b6129158183612ba1565b810190614200565b3861264e565b503d61290b565b61293690959195612b07565b933861262a565b60405162461bcd60e51b815260048101849052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b503461026c57602036600319011261026c576020611789600435612f8c565b503461026c57602036600319011261026c576004356001600160a01b0381811691829003611619576129f981600080516020615b018339815191525416614d32565b600080516020615c4183398151915280546001600160a01b031981168417909155167f51c4874e0f23f262e04a38c51751336dde72126d67f53eb672aaff02996b3ef68380a380f35b503461026c57602036600319011261026c576106cd612a95612a90604060209461ffff612a6d612a9d565b612a756151f2565b50168152600080516020615bc1833981519152865220614dcd565b6152be565b6104416149cd565b6004359061ffff821682036105b157565b6024359061ffff821682036105b157565b60005b838110612ad25750506000910152565b8181015183820152602001612ac2565b90602091612afb81518092818552858086019101612abf565b601f01601f1916010190565b6001600160401b03811161217457604052565b60e081019081106001600160401b0382111761217457604052565b606081019081106001600160401b0382111761217457604052565b604081019081106001600160401b0382111761217457604052565b608081019081106001600160401b0382111761217457604052565b60a081019081106001600160401b0382111761217457604052565b90601f801991011681019081106001600160401b0382111761217457604052565b6001600160401b03811161217457601f01601f191660200190565b81601f820112156105b157803590612bf482612bc2565b92612c026040519485612ba1565b828452602083830101116105b157816000926020809301838601378301015290565b90600319906060828401126105b15760043561ffff811681036105b1579260243592604435916001600160401b03918284116105b15760609084830301126105b15760405192612c7384612b35565b806004013584526024810135602085015260448101359283116105b157612c9d9201600401612bdd565b604082015290565b6001600160401b0381116121745760051b60200190565b519060ff821682036105b157565b81601f820112156105b1578051612ce081612bc2565b92612cee6040519485612ba1565b818452602082840101116105b157612d0c9160208085019101612abf565b90565b9060209081838203126105b15782516001600160401b03938482116105b157019080601f830112156105b1578151612d4681612ca5565b94604090612d5682519788612ba1565b828752858088019360051b860101948486116105b157868101935b868510612d8357505050505050505090565b84518381116105b15782019084601f1983890301126105b157845190612da882612b50565b612db38a8401612cbc565b825285830151918583116105b157612dd2898c80969581960101612cca565b83820152815201940193612d71565b60001981146117465760010190565b805182101561228c5760209160051b010190565b9060406020612d0c9360ff81511684520151918160208201520190612ae2565b909291805191612e3383612ca5565b92604091612e4383519586612ba1565b818552601f19612e5283612ca5565b01602090368288013760009788955b848710612e7357505050505050509190565b909192939495988685612eec868d612e9260018060a01b039188612df0565b511680600052600080516020615be18339815191528252612ebd60ff866000205460101c1689612df0565b51908551808095819463b5634c7360e01b835261ffff60049916898401526024998a8401526044830190612e04565b03915afa908115612f7457908d91600091612f42575b50612f0e81928d612df0565b528301809311612f2f575050612f249099612de1565b959493929190612e61565b601190634e487b7160e01b600052526000fd5b91508782813d8311612f6d575b612f598183612ba1565b8101031261026c5750518c90612f0e612f02565b503d612f4f565b8a513d6000823e3d90fd5b9190820391821161174657565b6001600160401b039060ff612fe581600080516020615aa18339815191525416938493600080516020615b418339815191525490600052600080516020615ae183398151915260205260406000205460081c16166157e1565b1610159081612ff2575090565b9050151590565b906001600160401b0391600052600080516020615ae1833981519152602052600160ff60406000205460081c92161b1616151590565b600080516020615b61833981519152805482101561228c57600052600080516020615ac18339815191520190600090565b60ff600080516020615aa1833981519152541660405161307f81612b50565b60ff600080516020615ba183398151915254818116835260081c168060208301528083116130ba57505160ff166130b35750565b156108e257565b82604491604051916313c3d1b160e01b835260048301526024820152fd5b9060606040612d0c9380518452602081015160208501520151918160408201520190612ae2565b60409061ffff612d0c949316815281602082015201906130d8565b519061ffff821682036105b157565b91907f000000000000000000000000000000000000000000000000000000000000000046810361344957508161315f9184613467565b9190916134445760408091015191815192635399ded560e11b8452608084806131946020948560048401526024830190612ae2565b038173__$93083e246e55d56d98f3df2872cd16bfd0$__5af4938415613439576000946133c4575b5061ffff9283606086015116847f0000000000000000000000000000000000000000000000000000000000000000168082036133a95750506131fc6149cd565b8161322587519280613220816001600160401b03968760ff82169160081c166158bf565b61591a565b960151908160a01c613392576001600160a01b039182169560007f000000000000000000000000000000000000000000000000000000000000000083161561338b57506132706151f2565b508816600052600080516020615bc18339815191528452613296612a9084600020614dcd565b6132a08882615853565b81808960081c169160081c16105b6132d357505050506132c36132d194846155b1565b6132cc83615491565b614893565b565b7f7f63c9251d82a933210c2b6d0b0f116252c3c116788120e64e8e8215df6f316297509561336f839596949760019394519261330e84612b35565b6001600160481b038091168452898401908242168252888501978852896000527f4e8909a01183a67951f5a6147d6e76ed02ea890c72afea01a9edee91edc609b88b52886000209451166001600160481b03198554161784555116826157a0565b019151166001600160601b0360a01b82541617905551908152a1565b90506132ae565b50602491519063033b960d60e41b82526004820152fd5b6044925191631ee5902560e11b835260048301526024820152fd5b6080949194813d8211613431575b816133df60809383612ba1565b810103126106ae578351916133f383612b6b565b8151906001600160481b038216820361026c57508252848101518583015283810151848301526134259060600161311a565b606082015292386131bc565b3d91506133d2565b83513d6000823e3d90fd5b505050565b604490604051906377d879fb60e01b82526004820152466024820152fd5b60405163b3f07bbd60e01b81529193926020918391829161348c9190600484016130ff565b038173__$93083e246e55d56d98f3df2872cd16bfd0$__5af49081156105a55760009161351d575b506134be81612f8c565b15613505576134cc8161354e565b92836134da57509150600090565b7f4069dff8c9df7e38d2867c0910bd96fd61787695e5380281148c04932d02bef2600080a360009190565b60249060405190630451c4fb60e41b82526004820152fd5b906020823d8211613546575b8161353660209383612ba1565b8101031261026c575051386134b4565b3d9150613529565b600052600080516020615ae18339815191526020526040600020805460ff81166135805760ff19166001179055600090565b5050600190565b90600182811c921680156135b7575b60208310146135a157565b634e487b7160e01b600052602260045260246000fd5b91607f1691613596565b8181106135cc575050565b600081556001016135c1565b6004600091828155826001820155826002820155826003820155016135fd8154613587565b8061360757505050565b82601f821160011461361857505055565b9091808252613636601f60208420940160051c8401600185016135c1565b5555565b9194939290946000958315613c8a578115613c78578215613c66577f00000000000000000000000000000000000000000000000000000000000000006136803082614a36565b906136c360018060a01b03821696604051906323b872dd60e01b60208301523360248301523060448301526064820152606481526136bd81612b86565b87614218565b6136d6826136d13084614a36565b612f7f565b957f00000000000000000000000000000000000000000000000000000000000000006002811015613c52579060018b9214613bcb575b5050505061ffff8116600052600080516020615a8183398151915260205260ff600160406000200154168015611d295761374f6137476149cd565b91828761591a565b906001600160401b038260081c1661376c60ff84169283836158bf565b808803613ba4575061378e61379391613786611b456149cd565b9384916158bf565b615369565b98600080516020615b8183398151915254966001600160401b0380891614613b905767ffffffffffffffff1988166001600160401b03898116600101811691909117600080516020615b81833981519152557f00000000000000000000000000000000000000000000000000000000000000001615613b8a576138146151f2565b50613820612a90614d85565b61383d8c610100600160481b0360ff87169160081b161782615853565b6001600160401b03808d610100600160481b0360ff88169160081b161760081c169160081c16105b613b64578180613b5c575b6138b957505082612d0c9899610100600160481b0360ff8461389d826138a99716848660081b16176153d1565b169160081b1617615679565b6001600160401b03339516614412565b61ffff95979896919a506001600160481b039392506138d6615211565b604051916001600160401b038b168352602083015260408201527ff33512b84e24a49905c26c6991942fc5a9652411769fc1e448f967cdb049f08a60603392a26040519661392388612b1a565b875260208701521660408501526001600160401b03421660608501521660808301523360a083015260c08201526001600160401b038216600052600080516020615c0183398151915260205260c0600460406000208351815560208401516001820155600281016001600160481b036040860151166001600160481b03198254161781556139be6001600160401b03606087015116826157a0565b608085015181549061ffff60881b9060881b169061ffff60881b19161790556003810160018060a01b0360a0860151166001600160601b0360a01b82541617905501910151938451906001600160401b038211613b4857613a1f8354613587565b601f8111613b0d575b50602090601f8311600114613aa157906001600160401b03959683613a96575b50508160011b916000199060031b1c19161790555b7f69add1952a6a6b9cb86f04d05f0cb605cbb469a50ae916139d34495a9991481f60206040518484168152a1613a92346143bb565b1690565b015190503880613a48565b95601f19831684885260208820975b818110613af55750916001600160401b03969791846001959410613adc575b505050811b019055613a5d565b015160001960f88460031b161c19169055388080613acf565b83830151895560019098019760209384019301613ab0565b613b389084835260208320601f850160051c81019160208610613b3e575b601f0160051c01906135c1565b38613a28565b9091508190613b2b565b634e487b7160e01b81526041600452602490fd5b506000613870565b604490613b6f615211565b90604051916326fb55dd60e01b835260048301526024820152fd5b81613865565b634e487b7160e01b82526011600452602482fd5b87613bb160449282612f7f565b604051916338f831a560e11b835260048301526024820152fd5b803b156106ae578190602460405180948193630852cd8d60e31b83528c60048401525af18015613c4757613c32575b50613c06903090614a36565b808203613c1457888161370c565b60449250604051916302156a8f60e01b835260048301526024820152fd5b98613c40613c06929a612b07565b9890613bfa565b6040513d8c823e3d90fd5b634e487b7160e01b8b52602160045260248bfd5b60405163717f139360e11b8152600490fd5b604051634e46966960e11b8152600490fd5b604051631f2a200560e01b8152600490fd5b95949392919060008715613c8a578215613c78578315613c66577f0000000000000000000000000000000000000000000000000000000000000000613ce13082614a36565b90613d2460018060a01b0382169a604051906323b872dd60e01b6020830152336024830152306044830152606482015260648152613d1e81612b86565b8b614218565b613d32826136d13084614a36565b997f000000000000000000000000000000000000000000000000000000000000000060028110156141ec57600114614182575b50505061ffff8216600052600080516020615a8183398151915260205260ff600160406000200154168015611d2957613da7613d9f6149cd565b91828b61591a565b916001600160401b038360081c16613dc460ff85169384836158bf565b808c03614175575061378e613de691613dde611b456149cd565b9485916158bf565b99600080516020615b8183398151915254976001600160401b03808a16146141615767ffffffffffffffff1989166001600160401b038a8116600101811691909117600080516020615b81833981519152557f0000000000000000000000000000000000000000000000000000000000000000161561415b57613e676151f2565b508b6001600160401b0380613e7d612a90614d85565b9260081b610100600160481b031660ff881617613e9a8185615853565b60081c169160081c16105b811580614154575b6141495781614141575b50613ee857505082612d0c9899610100600160481b0360ff6138a994169160081b1617613ee3816153d1565b615679565b61ffff95979896919a506001600160481b03939250613f05615211565b604051916001600160401b038b168352602083015260408201527ff33512b84e24a49905c26c6991942fc5a9652411769fc1e448f967cdb049f08a60603392a260405196613f5288612b1a565b875260208701521660408501526001600160401b03421660608501521660808301523360a083015260c08201526001600160401b038216600052600080516020615c0183398151915260205260c0600460406000208351815560208401516001820155600281016001600160481b036040860151166001600160481b0319825416178155613fed6001600160401b03606087015116826157a0565b608085015181549061ffff60881b9060881b169061ffff60881b19161790556003810160018060a01b0360a0860151166001600160601b0360a01b82541617905501910151938451906001600160401b038211613b485761404e8354613587565b601f8111614111575b50602090601f83116001146140bf57906001600160401b03959683613a965750508160011b916000199060031b1c19161790557f69add1952a6a6b9cb86f04d05f0cb605cbb469a50ae916139d34495a9991481f60206040518484168152a1613a92346143bb565b95601f19831684885260208820975b8181106140f95750916001600160401b03969791846001959410613adc57505050811b019055613a5d565b838301518955600190980197602093840193016140ce565b61413b9084835260208320601f850160051c81019160208610613b3e57601f0160051c01906135c1565b38614057565b905038613eb7565b604483613b6f615211565b5080613ead565b82613ea5565b634e487b7160e01b83526011600452602483fd5b8b613bb160449282612f7f565b803b156107e55783809160248d6040519485938492630852cd8d60e31b845260048401525af180156141e1576141cc575b506141bf903090614a36565b808203613c145780613d65565b926141da6141bf9294612b07565b92906141b3565b6040513d86823e3d90fd5b634e487b7160e01b85526021600452602485fd5b908160209103126105b1575180151581036105b15790565b604051614276916001600160a01b031661423182612b50565b6000806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af16142706142f2565b91614322565b8051908161428357505050565b8280614293938301019101614200565b1561429b5750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b3d1561431d573d9061430382612bc2565b916143116040519384612ba1565b82523d6000602084013e565b606090565b919290156143845750815115614336575090565b3b1561433f5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156143975750805190602001fd5b60405162461bcd60e51b815260206004820152908190610611906024830190612ae2565b600080808084335af16143cc6142f2565b50156143d55750565b60249060405190630b288dc560e21b82526004820152fd5b906020828203126105b15781516001600160401b0381116105b157612d0c9201612cca565b959492949391936040518081600080516020615b6183398151915260208154938481520190600052600080516020615ac18339815191529260005b81811061487157505061446292500382612ba1565b7f3031d39df71efbb605646fc51d7571499445af538fa6dd17ce8c07e8118ed978549181511561485f576144b56000916040519485928392635b10743960e11b8452604060048501526044840190612ae2565b906024830152038173__$93083e246e55d56d98f3df2872cd16bfd0$__5af49182156105a557600092614842575b506144ef818388612e24565b95863410614823576145018734612f7f565b80614814575b506040519061451582612b6b565b6001600160481b0386811683527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166020840190815260408085018d815261ffff8d81166060880190815292516315cfa3cb60e11b81529651909416600487015291516024860152905160448501525116606483015260008260848173__$93083e246e55d56d98f3df2872cd16bfd0$__5af49182156105a557614614926000928d9284926147f8575b506001600160401b03604051936145dd85612b35565b16835260018060a01b031660208301526040820152604051809381926311692f3760e31b83526020600484015260248301906130d8565b038173__$93083e246e55d56d98f3df2872cd16bfd0$__5af49081156105a5576000916147d5575b5061ffff8816600052600080516020615a818339815191526020526040600020549383519385156147b95760005b8581106146dd5750505050505050927fe54e51e42099622516fa3b48e9733581c9dbdcb771cafb093f745a0532a35982949261ffff926146ae60c0966104416149cd565b906040519586526020860152604085015260608401521660808201526001600160401b03841660a0820152a190565b6001600160a01b036146ef8284612df0565b5116906146fc8187612df0565b5182600052600080516020615be183398151915260205261472860ff60406000205460101c1686612df0565b51833b156105b15761476e9361ffff8f936000948f8e906147808d6040519b8c998a988997634b5b050560e01b895216600488015260a0602488015260a4870190612e04565b85810360031901604487015290612ae2565b916064840152608483015203925af19182156105a5576147a5926147aa575b50612de1565b61466a565b6147b390612b07565b3861479f565b604051630ebc95af60e21b815261ffff8b166004820152602490fd5b6147f291503d806000833e6147ea8183612ba1565b8101906143ed565b3861463c565b61480d9192503d8086833e6147ea8183612ba1565b90386145c7565b61481d906143bb565b38614507565b6040516306a91e3760e51b815260048101889052346024820152604490fd5b6148589192503d806000833e6115e08183612ba1565b90386144e3565b6040516334e7b19560e11b8152600490fd5b84546001600160a01b031683526001948501948694506020909301920161444d565b92916148a1906104416149cd565b906000937f504e6efe18ab9eed10dc6501a417f5b12a2f7f2b1593aed9b89f9bce3cf29a918580a27f0000000000000000000000000000000000000000000000000000000000000000936002851015611e2f5784614936575060405163a9059cbb60e01b60208201526001600160a01b03909116602482015260448101919091529091506132d1906104de81606481016104d0565b9193600181036105b657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b15611619576040516340c10f1960e01b81526001600160a01b03919091166004820152602481019490945291929181908390604490829084905af19081156149c157506149b85750565b6132d190612b07565b604051903d90823e3d90fd5b600080604051602081019063313ce56760e01b8252600481526149ef81612b50565b51907f00000000000000000000000000000000000000000000000000000000000000005afa50614a1d6142f2565b6020818051810103126105b1576020612d0c9101612cbc565b6040516370a0823160e01b602082019081526001600160a01b039093166024808301919091528152600092839291614a6d81612b35565b51915afa50614a7a6142f2565b6020818051810103126105b1576020015190565b60ff1660ff81146117465760010190565b15614aa657565b634e487b7160e01b600052600160045260246000fd5b600080516020615ba18339815191525460ff8160081c16614aed600080516020615b61833981519152548214614a9f565b60005b818110614b7b575060005b818110614b14575050604060ff6132d192161115614a9f565b60018101808211611746575b828110614b365750614b3190612de1565b614afb565b614b7690614b71614b468461302f565b905490614b528461302f565b92909160018060a01b03809354600395861b1c16931b1c161415614a9f565b612de1565b614b20565b80614b71614b8b614ba29361302f565b905460039190911b1c6001600160a01b0316614ba7565b614af0565b6001600160a01b039081166000818152600080516020615be18339815191526020526040908190209051929190614bdd84612b35565b5460ff91614c19838316158015938488526020880197604087808460081c16159384158c5260101c1691019581875292614cd4575b5050614a9f565b600080516020615b4183398151915254946001600160401b0360019687868651161b1616151590511515916000968791600080516020615ba18339815191525497878960081c16935b848110614c96575b5050505050816132d196614c84869594614c8c9414614a9f565b151514614a9f565b5116911611614a9f565b8282614ca18361302f565b90549060031b1c1614614cbc57614cb790612de1565b614c62565b50919850849250839150614c849050826132d1614c6a565b90915081614ce5575b503880614c12565b90501538614cdd565b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614614d2057565b604051633c64f99360e21b8152600490fd5b600080516020615c4183398151915254336001600160a01b039182161415919082614d78575b5050614d6057565b60405163e2a08e5d60e01b8152336004820152602490fd5b1633141590503880614d58565b60405190614d9282612b35565b8160406001600160401b03600080516020615c61833981519152546001600160481b0380821685528160481c16602085015260901c16910152565b90604051614dda81612b35565b60406001600160401b038294546001600160481b0380821685528160481c16602085015260901c16910152565b90600160481b600160901b0382549160481b1690600160481b600160901b031916179055565b600080516020615c618339815191529081546001600160481b03908181166001600160401b036008918184841c16801580615020575b15614ed1575050855471ffffffffffffffffff0000000000000000001916604886901b600160481b600160901b03161786555050505b825479ffffffffffffffff000000000000000000ffffffffffffffffff19169116174260901b67ffffffffffffffff60901b16179055565b86614edd612a90614d85565b926000614eea8383615831565b15614fb65750614f099291614efe91615853565b8388861c16906157c8565b610100600160481b039290841b831660ff861617614f278184615831565b15614fa8578160ff9282614f3e614f4b9487615853565b871c169084871c166157c8565b9116921b16175b614f5c8482615831565b614f8657600160481b600160901b039060481b1690600160481b600160901b031916178355614e99565b604051631e74e8fb60e31b815290831660048201528383166024820152604490fd5b5050905060ff915016614f52565b9493959290614fc890614fd293615853565b8389841c166157c8565b9260ff881694838087610100600160481b038098871b1617614ff48185615853565b851c1691841c160192831161500c57501b1617614f52565b634e487b7160e01b81526011600452602490fd5b5060ff851615614e63565b919080546001600160481b03808216916001600160401b03926008908483831c168015806151e7575b156150ba57505050508461506c6132d1959685614e07565b835467ffffffffffffffff60901b19919092161679ffffffffffffffff000000000000000000ffffffffffffffffff1990911617429190911660901b67ffffffffffffffff60901b16179055565b8590896150c9612a908a614dcd565b9360006150d68383615831565b156151915750916150ee6150f99260ff979894615853565b838c881c16906157c8565b610100600160481b039490861b85169116176151158184615831565b156151835760ff918161512b6151389386615853565b861c168784871c166157c8565b9116921b16175b6151498682615831565b615161579461515c6132d1959685614e07565b61506c565b604051631e74e8fb60e31b815290821660048201529085166024820152604490fd5b5050905060ff91501661513f565b9496506151ac93506151a291615853565b868a851c166157c8565b9160ff891693868086610100600160481b038097861b16176151ce8185615853565b841c1691831c16019186831161500c57501b161761513f565b5060ff841615615054565b604051906151ff82612b35565b60006040838281528260208201520152565b6152196151f2565b50612d0c612a95612a90614d85565b6152306151f2565b506000527f4e8909a01183a67951f5a6147d6e76ed02ea890c72afea01a9edee91edc609b860205260406000206040519061526a82612b35565b80546001600160481b038116835260481c6001600160401b03166020830152600101546001600160a01b0316604082015290565b81156152a8570490565b634e487b7160e01b600052601260045260246000fd5b6001600160401b0390817f0000000000000000000000000000000000000000000000000000000000000000169182156153525761533f828260ff936040610100600160481b0396015116420381615323602085019889519383875160081c160261529e565b9160081c1601915160081c1680821060001461534b5750615369565b9251169160081b161790565b9050615369565b506020015160ff16610100600160481b0317919050565b6001600160401b039081811161537d571690565b60405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203660448201526534206269747360d01b6064820152608490fd5b6001600160401b0390817f0000000000000000000000000000000000000000000000000000000000000000161561548d5761540a6151f2565b50600160481b600160901b03615421612a90614d85565b610100600160481b0360ff61545c600080516020615c61833981519152968088549761544d8188615853565b60081c16908560081c166157c8565b92169160081b161760481b16906001600160401b0360901b4260901b1690600160481b600160d01b03191617179055565b5050565b6001600160401b0390817f0000000000000000000000000000000000000000000000000000000000000000161561548d576154ca6151f2565b506154d6612a90614d85565b90600160481b600160901b03600080516020615c6183398151915293845493816001600160401b0360901b4260901b16946155118184615853565b60081c16828260081c160182811160001461559d5750610100600160481b0360ff61553b84615369565b92169160081b1617906001600160481b038516906155598284615853565b80856001600160401b0360901b1988161760081c16908360081c161060001461559657505b60481b1691600160481b600160d01b03191617179055565b905061557e565b60ff61553b610100600160481b0392615369565b6001600160401b03807f0000000000000000000000000000000000000000000000000000000000000000161561344457610100600160481b0360ff61566b61ffff6132d1966155fe6151f2565b50169384600052600080516020615bc183398151915280602052615628612a906040600020614dcd565b60009687526020919091526040909520805467ffffffffffffffff60901b191642831660901b67ffffffffffffffff60901b1617815595819061544d8188615853565b92169160081b161790614e07565b6001600160401b03807f000000000000000000000000000000000000000000000000000000000000000016156134445761ffff6132d1936156b86151f2565b5016600090808252600080516020615bc1833981519152806020526156e2612a9060408520614dcd565b91835260205260408220805467ffffffffffffffff60901b191642851660901b67ffffffffffffffff60901b1617815593839061571f8184615853565b60081c16838260081c160183811160001461578c5750610100600160481b0360ff61574985615369565b92169160081b1617918084546001600160481b0381169361576a8587615853565b5060081c16908360081c1610600014615784575090614e07565b905090614e07565b60ff615749610100600160481b0392615369565b9067ffffffffffffffff60481b82549160481b169067ffffffffffffffff60481b1916179055565b6001600160401b03918216908216039190821161174657565b60009182915b6001600160401b03908181168015615829576000190191821161581557169161580f90614a8e565b916157e7565b634e487b7160e01b85526011600452602485fd5b505050915090565b9061583c8183615853565b6001600160401b03809160081c169160081c161190565b60ff9182169116818103615865575050565b604051635ce6db6160e11b815260ff918216600482015291166024820152604490fd5b60ff811660081015612d0c5750600890565b9060ff8091169116039060ff821161174657565b60ff16604d811161174657600a0a90565b919060ff821660ff82168181146159135711156158f2576158e7612d0c93926158ec9261589a565b6158ae565b9061529e565b6158e7906158ff9261589a565b908181029181830414901517156117465790565b5050505090565b61594d61378e60ff92610100600160481b03949561593787615888565b90858116868316101561595857509586916158bf565b92169160081b161790565b90509586916158bf565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c161561599157565b604051631afcd79f60e31b8152600490fd5b6001600160a01b039081169081156159fe57600080516020615b0183398151915280546001600160a01b031981168417909155167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b604051631e4fbdf760e01b815260006004820152602490fd5b600080516020615b01833981519152546001600160a01b03163303615a3857565b60405163118cdaa760e01b8152336004820152602490fd5b600080516020615c218339815191526002815414615a6e5760029055565b604051633ee5aeb560e01b8152600490fdfeebcc9f646b0f459ff8f387587d536b0af3484cf442e1577400f322334e7d1ef047028352a8b3feae1a85fba43bc13f990568bb1637dce33d3dbfd791a0808b7f6c3cb3f3ae91330f31ba2bc0ff8855fc834fb66dc27e8e0b1a398617dabaa5a668dfeeddfa5e4e9adceec01a3aba274bdcbab3f6ac9956417a4332f2b08abdda9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930064bacf405c5d7f563d3ba5252584a52c37e4fee380fd825b10666c27b8258022fd6568c039679b3b7cc93c26c41d9379b7b1bec1677120493b467688302cb11f00758a264b9bdbe3295fe36bd6ff7abaa122f48bf70e90af04a1b8a32d21e4e1ad78307a8b51804c575f26039dcb87c58925afb3b7c08732f3b21b942aed7a768561949d1c6242cee5c5a5aeb6b9c190ee611d7742fcec65d9e5b1341ea04d89efb21dcaedea63b55c44882f329622e13a8d0f5b947b3a372826208a9003da1549bca747e973430e858f2f5de357b8dba36ea6d375b81bdb5d53dfaabf0b3a7f852fa0677fef8612c6c15b518c9fa56761e9ed15cfd5c6e5399e5467985ac7ed9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00bfa91572ce1e5fe8776a160d3b1f862e83f5ee2c080a7423b4761602a3ad12497c25289a27ec8c9be54d4a154cf80490d69bda989cdb8328232e08fea9220420a2646970667358221220ff24bb6218d11a60fad2e17b2c54e55dfe3f8155f61d7f10dfd1f2886b23efbc64736f6c63430008130033";
1814
+ const isSuperArgs = (xs) => {
1815
+ return (typeof xs[0] === "string" ||
1816
+ Array.isArray(xs[0]) ||
1817
+ "_isInterface" in xs[0]);
1818
+ };
1819
+ export class NttManager__factory extends ContractFactory {
1820
+ constructor(...args) {
1821
+ if (isSuperArgs(args)) {
1822
+ super(...args);
1823
+ }
1824
+ else {
1825
+ const [linkLibraryAddresses, signer] = args;
1826
+ super(_abi, NttManager__factory.linkBytecode(linkLibraryAddresses), signer);
1827
+ }
1828
+ }
1829
+ static linkBytecode(linkLibraryAddresses) {
1830
+ let linkedBytecode = _bytecode;
1831
+ linkedBytecode = linkedBytecode.replace(new RegExp("__\\$93083e246e55d56d98f3df2872cd16bfd0\\$__", "g"), linkLibraryAddresses["src/libraries/TransceiverStructs.sol:TransceiverStructs"]
1832
+ .replace(/^0x/, "")
1833
+ .toLowerCase());
1834
+ return linkedBytecode;
1835
+ }
1836
+ getDeployTransaction(_token, _mode, _chainId, _rateLimitDuration, _skipRateLimiting, overrides) {
1837
+ return super.getDeployTransaction(_token, _mode, _chainId, _rateLimitDuration, _skipRateLimiting, overrides || {});
1838
+ }
1839
+ deploy(_token, _mode, _chainId, _rateLimitDuration, _skipRateLimiting, overrides) {
1840
+ return super.deploy(_token, _mode, _chainId, _rateLimitDuration, _skipRateLimiting, overrides || {});
1841
+ }
1842
+ connect(runner) {
1843
+ return super.connect(runner);
1844
+ }
1845
+ static bytecode = _bytecode;
1846
+ static abi = _abi;
1847
+ static createInterface() {
1848
+ return new Interface(_abi);
1849
+ }
1850
+ static connect(address, runner) {
1851
+ return new Contract(address, _abi, runner);
1852
+ }
1853
+ }
1854
+ //# sourceMappingURL=NttManager__factory.js.map