@wormhole-foundation/sdk-evm-ntt 3.0.0-multi-token.beta.0 → 3.0.0-multi-token.beta.2

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