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