@hyperlane-xyz/core 1.1.3 → 1.1.4

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 (176) hide show
  1. package/contracts/GasRouter.sol +103 -0
  2. package/contracts/OwnableMulticall.sol +5 -4
  3. package/contracts/PausableReentrancyGuard.sol +2 -2
  4. package/contracts/igps/InterchainGasPaymaster.sol +2 -1
  5. package/contracts/libs/Call.sol +108 -19
  6. package/contracts/middleware/InterchainAccountRouter.sol +47 -34
  7. package/contracts/middleware/InterchainCallMessage.sol +112 -0
  8. package/contracts/middleware/InterchainQueryRouter.sol +36 -80
  9. package/contracts/mock/MockHyperlaneEnvironment.sol +4 -4
  10. package/contracts/test/TestGasRouter.sol +28 -0
  11. package/contracts/test/TestInterchainGasPaymaster.sol +8 -17
  12. package/contracts/test/TestQuery.sol +11 -6
  13. package/contracts/test/TestQuerySender.sol +22 -11
  14. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.d.ts +75 -0
  15. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.d.ts.map +1 -0
  16. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.js +4 -0
  17. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.js.map +1 -0
  18. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.d.ts +2 -0
  19. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.d.ts.map +1 -0
  20. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.js +3 -0
  21. package/dist/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.js.map +1 -0
  22. package/dist/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +3 -0
  23. package/dist/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map +1 -0
  24. package/dist/@openzeppelin/contracts/token/ERC20/extensions/index.js +4 -0
  25. package/dist/@openzeppelin/contracts/token/ERC20/extensions/index.js.map +1 -0
  26. package/dist/@openzeppelin/contracts/token/ERC20/index.d.ts +2 -0
  27. package/dist/@openzeppelin/contracts/token/ERC20/index.d.ts.map +1 -1
  28. package/dist/@openzeppelin/contracts/token/ERC20/index.js +1 -0
  29. package/dist/@openzeppelin/contracts/token/ERC20/index.js.map +1 -1
  30. package/dist/contracts/GasRouter.d.ts +336 -0
  31. package/dist/contracts/GasRouter.d.ts.map +1 -0
  32. package/dist/contracts/GasRouter.js +4 -0
  33. package/dist/contracts/GasRouter.js.map +1 -0
  34. package/dist/contracts/InterchainGasPaymaster.d.ts +162 -0
  35. package/dist/contracts/InterchainGasPaymaster.d.ts.map +1 -0
  36. package/dist/contracts/InterchainGasPaymaster.js +4 -0
  37. package/dist/contracts/InterchainGasPaymaster.js.map +1 -0
  38. package/dist/contracts/OwnableMulticall.d.ts +13 -5
  39. package/dist/contracts/OwnableMulticall.d.ts.map +1 -1
  40. package/dist/contracts/igps/GasOverheadIgp.d.ts +194 -0
  41. package/dist/contracts/igps/GasOverheadIgp.d.ts.map +1 -0
  42. package/dist/contracts/igps/GasOverheadIgp.js +4 -0
  43. package/dist/contracts/igps/GasOverheadIgp.js.map +1 -0
  44. package/dist/contracts/index.d.ts +1 -0
  45. package/dist/contracts/index.d.ts.map +1 -1
  46. package/dist/contracts/middleware/InterchainAccountRouter.d.ts +60 -44
  47. package/dist/contracts/middleware/InterchainAccountRouter.d.ts.map +1 -1
  48. package/dist/contracts/middleware/InterchainQueryRouter.d.ts +36 -57
  49. package/dist/contracts/middleware/InterchainQueryRouter.d.ts.map +1 -1
  50. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.d.ts +78 -0
  51. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.d.ts.map +1 -0
  52. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.js +4 -0
  53. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.js.map +1 -0
  54. package/dist/contracts/mock/MockCircleBridge.d.ts +86 -0
  55. package/dist/contracts/mock/MockCircleBridge.d.ts.map +1 -0
  56. package/dist/contracts/mock/MockCircleBridge.js +4 -0
  57. package/dist/contracts/mock/MockCircleBridge.js.map +1 -0
  58. package/dist/contracts/mock/MockInterchainAccountRouter.d.ts +422 -0
  59. package/dist/contracts/mock/MockInterchainAccountRouter.d.ts.map +1 -0
  60. package/dist/contracts/mock/MockInterchainAccountRouter.js +4 -0
  61. package/dist/contracts/mock/MockInterchainAccountRouter.js.map +1 -0
  62. package/dist/contracts/test/TestGasRouter.d.ts +441 -0
  63. package/dist/contracts/test/TestGasRouter.d.ts.map +1 -0
  64. package/dist/contracts/test/TestGasRouter.js +4 -0
  65. package/dist/contracts/test/TestGasRouter.js.map +1 -0
  66. package/dist/contracts/test/TestInterchainGasPaymaster.d.ts +122 -12
  67. package/dist/contracts/test/TestInterchainGasPaymaster.d.ts.map +1 -1
  68. package/dist/contracts/test/TestQuery.d.ts +9 -9
  69. package/dist/contracts/test/TestQuery.d.ts.map +1 -1
  70. package/dist/contracts/test/index.d.ts +1 -0
  71. package/dist/contracts/test/index.d.ts.map +1 -1
  72. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit__factory.d.ts +23 -0
  73. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit__factory.d.ts.map +1 -0
  74. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit__factory.js +93 -0
  75. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit__factory.js.map +1 -0
  76. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.d.ts +2 -0
  77. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.d.ts.map +1 -0
  78. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.js +9 -0
  79. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.js.map +1 -0
  80. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +2 -0
  81. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts.map +1 -0
  82. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js +31 -0
  83. package/dist/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js.map +1 -0
  84. package/dist/factories/@openzeppelin/contracts/token/ERC20/index.d.ts +1 -0
  85. package/dist/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map +1 -1
  86. package/dist/factories/@openzeppelin/contracts/token/ERC20/index.js +25 -1
  87. package/dist/factories/@openzeppelin/contracts/token/ERC20/index.js.map +1 -1
  88. package/dist/factories/contracts/GasRouter__factory.d.ts +52 -0
  89. package/dist/factories/contracts/GasRouter__factory.d.ts.map +1 -0
  90. package/dist/factories/contracts/GasRouter__factory.js +392 -0
  91. package/dist/factories/contracts/GasRouter__factory.js.map +1 -0
  92. package/dist/factories/contracts/InterchainGasPaymaster__factory.d.ts +62 -0
  93. package/dist/factories/contracts/InterchainGasPaymaster__factory.d.ts.map +1 -0
  94. package/dist/factories/contracts/InterchainGasPaymaster__factory.js +178 -0
  95. package/dist/factories/contracts/InterchainGasPaymaster__factory.js.map +1 -0
  96. package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
  97. package/dist/factories/contracts/Mailbox__factory.js +1 -1
  98. package/dist/factories/contracts/OwnableMulticall__factory.d.ts +20 -3
  99. package/dist/factories/contracts/OwnableMulticall__factory.d.ts.map +1 -1
  100. package/dist/factories/contracts/OwnableMulticall__factory.js +23 -7
  101. package/dist/factories/contracts/OwnableMulticall__factory.js.map +1 -1
  102. package/dist/factories/contracts/igps/GasOverheadIgp__factory.d.ts +75 -0
  103. package/dist/factories/contracts/igps/GasOverheadIgp__factory.d.ts.map +1 -0
  104. package/dist/factories/contracts/igps/GasOverheadIgp__factory.js +263 -0
  105. package/dist/factories/contracts/igps/GasOverheadIgp__factory.js.map +1 -0
  106. package/dist/factories/contracts/igps/InterchainGasPaymaster__factory.d.ts +1 -1
  107. package/dist/factories/contracts/igps/InterchainGasPaymaster__factory.js +2 -2
  108. package/dist/factories/contracts/index.d.ts +1 -0
  109. package/dist/factories/contracts/index.d.ts.map +1 -1
  110. package/dist/factories/contracts/index.js +3 -1
  111. package/dist/factories/contracts/index.js.map +1 -1
  112. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +13 -3
  113. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts.map +1 -1
  114. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +70 -39
  115. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js.map +1 -1
  116. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +13 -3
  117. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts.map +1 -1
  118. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +24 -92
  119. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js.map +1 -1
  120. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.d.ts +36 -0
  121. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.d.ts.map +1 -0
  122. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.js +104 -0
  123. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.js.map +1 -0
  124. package/dist/factories/contracts/mock/MockCircleBridge__factory.d.ts +59 -0
  125. package/dist/factories/contracts/mock/MockCircleBridge__factory.d.ts.map +1 -0
  126. package/dist/factories/contracts/mock/MockCircleBridge__factory.js +151 -0
  127. package/dist/factories/contracts/mock/MockCircleBridge__factory.js.map +1 -0
  128. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  129. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts.map +1 -1
  130. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +2 -2
  131. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js.map +1 -1
  132. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.d.ts +69 -0
  133. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.d.ts.map +1 -0
  134. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.js +556 -0
  135. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.js.map +1 -0
  136. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +64 -0
  137. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts.map +1 -0
  138. package/dist/factories/contracts/test/TestGasRouter__factory.js +579 -0
  139. package/dist/factories/contracts/test/TestGasRouter__factory.js.map +1 -0
  140. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts +1 -1
  141. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts.map +1 -1
  142. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js +97 -5
  143. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js.map +1 -1
  144. package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  145. package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
  146. package/dist/factories/contracts/test/TestQuerySender__factory.d.ts +1 -1
  147. package/dist/factories/contracts/test/TestQuerySender__factory.d.ts.map +1 -1
  148. package/dist/factories/contracts/test/TestQuerySender__factory.js +1 -1
  149. package/dist/factories/contracts/test/TestQuerySender__factory.js.map +1 -1
  150. package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  151. package/dist/factories/contracts/test/TestQuery__factory.d.ts.map +1 -1
  152. package/dist/factories/contracts/test/TestQuery__factory.js +2 -2
  153. package/dist/factories/contracts/test/TestQuery__factory.js.map +1 -1
  154. package/dist/factories/contracts/test/index.d.ts +1 -0
  155. package/dist/factories/contracts/test/index.d.ts.map +1 -1
  156. package/dist/factories/contracts/test/index.js +3 -1
  157. package/dist/factories/contracts/test/index.js.map +1 -1
  158. package/dist/factories/interfaces/IInterchainAccountRouter__factory.d.ts +12 -2
  159. package/dist/factories/interfaces/IInterchainAccountRouter__factory.d.ts.map +1 -1
  160. package/dist/factories/interfaces/IInterchainAccountRouter__factory.js +27 -20
  161. package/dist/factories/interfaces/IInterchainAccountRouter__factory.js.map +1 -1
  162. package/dist/factories/interfaces/IInterchainQueryRouter__factory.d.ts +12 -2
  163. package/dist/factories/interfaces/IInterchainQueryRouter__factory.d.ts.map +1 -1
  164. package/dist/factories/interfaces/IInterchainQueryRouter__factory.js +17 -85
  165. package/dist/factories/interfaces/IInterchainQueryRouter__factory.js.map +1 -1
  166. package/dist/index.d.ts +6 -0
  167. package/dist/index.d.ts.map +1 -1
  168. package/dist/index.js +8 -2
  169. package/dist/index.js.map +1 -1
  170. package/dist/interfaces/IInterchainAccountRouter.d.ts +35 -35
  171. package/dist/interfaces/IInterchainAccountRouter.d.ts.map +1 -1
  172. package/dist/interfaces/IInterchainQueryRouter.d.ts +23 -44
  173. package/dist/interfaces/IInterchainQueryRouter.d.ts.map +1 -1
  174. package/interfaces/IInterchainAccountRouter.sol +5 -6
  175. package/interfaces/IInterchainQueryRouter.sol +1 -15
  176. package/package.json +5 -4
@@ -0,0 +1,556 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MockInterchainAccountRouter__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ inputs: [
9
+ {
10
+ internalType: "uint32",
11
+ name: "_originDomain",
12
+ type: "uint32",
13
+ },
14
+ ],
15
+ stateMutability: "nonpayable",
16
+ type: "constructor",
17
+ },
18
+ {
19
+ anonymous: false,
20
+ inputs: [
21
+ {
22
+ indexed: false,
23
+ internalType: "uint8",
24
+ name: "version",
25
+ type: "uint8",
26
+ },
27
+ ],
28
+ name: "Initialized",
29
+ type: "event",
30
+ },
31
+ {
32
+ anonymous: false,
33
+ inputs: [
34
+ {
35
+ indexed: true,
36
+ internalType: "uint32",
37
+ name: "origin",
38
+ type: "uint32",
39
+ },
40
+ {
41
+ indexed: false,
42
+ internalType: "address",
43
+ name: "sender",
44
+ type: "address",
45
+ },
46
+ {
47
+ indexed: false,
48
+ internalType: "address",
49
+ name: "account",
50
+ type: "address",
51
+ },
52
+ ],
53
+ name: "InterchainAccountCreated",
54
+ type: "event",
55
+ },
56
+ {
57
+ anonymous: false,
58
+ inputs: [
59
+ {
60
+ indexed: true,
61
+ internalType: "address",
62
+ name: "interchainGasPaymaster",
63
+ type: "address",
64
+ },
65
+ ],
66
+ name: "InterchainGasPaymasterSet",
67
+ type: "event",
68
+ },
69
+ {
70
+ anonymous: false,
71
+ inputs: [
72
+ {
73
+ indexed: true,
74
+ internalType: "address",
75
+ name: "module",
76
+ type: "address",
77
+ },
78
+ ],
79
+ name: "InterchainSecurityModuleSet",
80
+ type: "event",
81
+ },
82
+ {
83
+ anonymous: false,
84
+ inputs: [
85
+ {
86
+ indexed: true,
87
+ internalType: "address",
88
+ name: "mailbox",
89
+ type: "address",
90
+ },
91
+ ],
92
+ name: "MailboxSet",
93
+ type: "event",
94
+ },
95
+ {
96
+ anonymous: false,
97
+ inputs: [
98
+ {
99
+ indexed: true,
100
+ internalType: "address",
101
+ name: "previousOwner",
102
+ type: "address",
103
+ },
104
+ {
105
+ indexed: true,
106
+ internalType: "address",
107
+ name: "newOwner",
108
+ type: "address",
109
+ },
110
+ ],
111
+ name: "OwnershipTransferred",
112
+ type: "event",
113
+ },
114
+ {
115
+ anonymous: false,
116
+ inputs: [
117
+ {
118
+ indexed: true,
119
+ internalType: "uint32",
120
+ name: "domain",
121
+ type: "uint32",
122
+ },
123
+ {
124
+ indexed: true,
125
+ internalType: "bytes32",
126
+ name: "router",
127
+ type: "bytes32",
128
+ },
129
+ ],
130
+ name: "RemoteRouterEnrolled",
131
+ type: "event",
132
+ },
133
+ {
134
+ inputs: [
135
+ {
136
+ internalType: "uint32",
137
+ name: "_destinationDomain",
138
+ type: "uint32",
139
+ },
140
+ {
141
+ components: [
142
+ {
143
+ internalType: "address",
144
+ name: "to",
145
+ type: "address",
146
+ },
147
+ {
148
+ internalType: "bytes",
149
+ name: "data",
150
+ type: "bytes",
151
+ },
152
+ ],
153
+ internalType: "struct Call[]",
154
+ name: "calls",
155
+ type: "tuple[]",
156
+ },
157
+ ],
158
+ name: "dispatch",
159
+ outputs: [
160
+ {
161
+ internalType: "bytes32",
162
+ name: "",
163
+ type: "bytes32",
164
+ },
165
+ ],
166
+ stateMutability: "nonpayable",
167
+ type: "function",
168
+ },
169
+ {
170
+ inputs: [
171
+ {
172
+ internalType: "uint32",
173
+ name: "_destinationDomain",
174
+ type: "uint32",
175
+ },
176
+ {
177
+ internalType: "address",
178
+ name: "target",
179
+ type: "address",
180
+ },
181
+ {
182
+ internalType: "bytes",
183
+ name: "data",
184
+ type: "bytes",
185
+ },
186
+ ],
187
+ name: "dispatch",
188
+ outputs: [
189
+ {
190
+ internalType: "bytes32",
191
+ name: "",
192
+ type: "bytes32",
193
+ },
194
+ ],
195
+ stateMutability: "nonpayable",
196
+ type: "function",
197
+ },
198
+ {
199
+ inputs: [],
200
+ name: "domains",
201
+ outputs: [
202
+ {
203
+ internalType: "uint32[]",
204
+ name: "",
205
+ type: "uint32[]",
206
+ },
207
+ ],
208
+ stateMutability: "view",
209
+ type: "function",
210
+ },
211
+ {
212
+ inputs: [
213
+ {
214
+ internalType: "uint32",
215
+ name: "_domain",
216
+ type: "uint32",
217
+ },
218
+ {
219
+ internalType: "bytes32",
220
+ name: "_router",
221
+ type: "bytes32",
222
+ },
223
+ ],
224
+ name: "enrollRemoteRouter",
225
+ outputs: [],
226
+ stateMutability: "nonpayable",
227
+ type: "function",
228
+ },
229
+ {
230
+ inputs: [
231
+ {
232
+ internalType: "uint32[]",
233
+ name: "_domains",
234
+ type: "uint32[]",
235
+ },
236
+ {
237
+ internalType: "bytes32[]",
238
+ name: "_addresses",
239
+ type: "bytes32[]",
240
+ },
241
+ ],
242
+ name: "enrollRemoteRouters",
243
+ outputs: [],
244
+ stateMutability: "nonpayable",
245
+ type: "function",
246
+ },
247
+ {
248
+ inputs: [
249
+ {
250
+ internalType: "uint32",
251
+ name: "_origin",
252
+ type: "uint32",
253
+ },
254
+ {
255
+ internalType: "address",
256
+ name: "_sender",
257
+ type: "address",
258
+ },
259
+ ],
260
+ name: "getDeployedInterchainAccount",
261
+ outputs: [
262
+ {
263
+ internalType: "contract OwnableMulticall",
264
+ name: "",
265
+ type: "address",
266
+ },
267
+ ],
268
+ stateMutability: "nonpayable",
269
+ type: "function",
270
+ },
271
+ {
272
+ inputs: [
273
+ {
274
+ internalType: "uint32",
275
+ name: "_origin",
276
+ type: "uint32",
277
+ },
278
+ {
279
+ internalType: "address",
280
+ name: "_sender",
281
+ type: "address",
282
+ },
283
+ ],
284
+ name: "getInterchainAccount",
285
+ outputs: [
286
+ {
287
+ internalType: "address",
288
+ name: "",
289
+ type: "address",
290
+ },
291
+ ],
292
+ stateMutability: "view",
293
+ type: "function",
294
+ },
295
+ {
296
+ inputs: [
297
+ {
298
+ internalType: "uint32",
299
+ name: "_origin",
300
+ type: "uint32",
301
+ },
302
+ {
303
+ internalType: "bytes32",
304
+ name: "_sender",
305
+ type: "bytes32",
306
+ },
307
+ {
308
+ internalType: "bytes",
309
+ name: "_message",
310
+ type: "bytes",
311
+ },
312
+ ],
313
+ name: "handle",
314
+ outputs: [],
315
+ stateMutability: "nonpayable",
316
+ type: "function",
317
+ },
318
+ {
319
+ inputs: [],
320
+ name: "implementation",
321
+ outputs: [
322
+ {
323
+ internalType: "address",
324
+ name: "",
325
+ type: "address",
326
+ },
327
+ ],
328
+ stateMutability: "view",
329
+ type: "function",
330
+ },
331
+ {
332
+ inputs: [
333
+ {
334
+ internalType: "address",
335
+ name: "_mailbox",
336
+ type: "address",
337
+ },
338
+ {
339
+ internalType: "address",
340
+ name: "_interchainGasPaymaster",
341
+ type: "address",
342
+ },
343
+ ],
344
+ name: "initialize",
345
+ outputs: [],
346
+ stateMutability: "nonpayable",
347
+ type: "function",
348
+ },
349
+ {
350
+ inputs: [
351
+ {
352
+ internalType: "address",
353
+ name: "_mailbox",
354
+ type: "address",
355
+ },
356
+ {
357
+ internalType: "address",
358
+ name: "_interchainGasPaymaster",
359
+ type: "address",
360
+ },
361
+ {
362
+ internalType: "address",
363
+ name: "_interchainSecurityModule",
364
+ type: "address",
365
+ },
366
+ ],
367
+ name: "initialize",
368
+ outputs: [],
369
+ stateMutability: "nonpayable",
370
+ type: "function",
371
+ },
372
+ {
373
+ inputs: [],
374
+ name: "interchainGasPaymaster",
375
+ outputs: [
376
+ {
377
+ internalType: "contract IInterchainGasPaymaster",
378
+ name: "",
379
+ type: "address",
380
+ },
381
+ ],
382
+ stateMutability: "view",
383
+ type: "function",
384
+ },
385
+ {
386
+ inputs: [],
387
+ name: "interchainSecurityModule",
388
+ outputs: [
389
+ {
390
+ internalType: "contract IInterchainSecurityModule",
391
+ name: "",
392
+ type: "address",
393
+ },
394
+ ],
395
+ stateMutability: "view",
396
+ type: "function",
397
+ },
398
+ {
399
+ inputs: [],
400
+ name: "mailbox",
401
+ outputs: [
402
+ {
403
+ internalType: "contract IMailbox",
404
+ name: "",
405
+ type: "address",
406
+ },
407
+ ],
408
+ stateMutability: "view",
409
+ type: "function",
410
+ },
411
+ {
412
+ inputs: [],
413
+ name: "originDomain",
414
+ outputs: [
415
+ {
416
+ internalType: "uint32",
417
+ name: "",
418
+ type: "uint32",
419
+ },
420
+ ],
421
+ stateMutability: "view",
422
+ type: "function",
423
+ },
424
+ {
425
+ inputs: [],
426
+ name: "owner",
427
+ outputs: [
428
+ {
429
+ internalType: "address",
430
+ name: "",
431
+ type: "address",
432
+ },
433
+ ],
434
+ stateMutability: "view",
435
+ type: "function",
436
+ },
437
+ {
438
+ inputs: [],
439
+ name: "processNextPendingCall",
440
+ outputs: [],
441
+ stateMutability: "nonpayable",
442
+ type: "function",
443
+ },
444
+ {
445
+ inputs: [],
446
+ name: "renounceOwnership",
447
+ outputs: [],
448
+ stateMutability: "nonpayable",
449
+ type: "function",
450
+ },
451
+ {
452
+ inputs: [
453
+ {
454
+ internalType: "uint32",
455
+ name: "_domain",
456
+ type: "uint32",
457
+ },
458
+ ],
459
+ name: "routers",
460
+ outputs: [
461
+ {
462
+ internalType: "bytes32",
463
+ name: "",
464
+ type: "bytes32",
465
+ },
466
+ ],
467
+ stateMutability: "view",
468
+ type: "function",
469
+ },
470
+ {
471
+ inputs: [
472
+ {
473
+ internalType: "address",
474
+ name: "_interchainGasPaymaster",
475
+ type: "address",
476
+ },
477
+ ],
478
+ name: "setInterchainGasPaymaster",
479
+ outputs: [],
480
+ stateMutability: "nonpayable",
481
+ type: "function",
482
+ },
483
+ {
484
+ inputs: [
485
+ {
486
+ internalType: "address",
487
+ name: "_module",
488
+ type: "address",
489
+ },
490
+ ],
491
+ name: "setInterchainSecurityModule",
492
+ outputs: [],
493
+ stateMutability: "nonpayable",
494
+ type: "function",
495
+ },
496
+ {
497
+ inputs: [
498
+ {
499
+ internalType: "address",
500
+ name: "_mailbox",
501
+ type: "address",
502
+ },
503
+ ],
504
+ name: "setMailbox",
505
+ outputs: [],
506
+ stateMutability: "nonpayable",
507
+ type: "function",
508
+ },
509
+ {
510
+ inputs: [
511
+ {
512
+ internalType: "address",
513
+ name: "newOwner",
514
+ type: "address",
515
+ },
516
+ ],
517
+ name: "transferOwnership",
518
+ outputs: [],
519
+ stateMutability: "nonpayable",
520
+ type: "function",
521
+ },
522
+ ];
523
+ const _bytecode = "0x60c0604052600060ce55600060cf553480156200001b57600080fd5b50604051620033a5380380620033a58339810160408190526200003e9162000146565b6040516200004c9062000138565b604051809103906000f08015801562000069573d6000803e3d6000fd5b506001600160a01b03166080816001600160a01b03168152505060006200009d608051620000c960201b62000f301760201c565b805160209091012060a0525060cc805463ffffffff191663ffffffff9290921691909117905562000175565b6040517f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020820152606082811b6001600160601b03191660348301526e5af43d82803e903d91602b57fd5bf360881b6048830152906057016040516020818303038152906040529050919050565b6107c68062002bdf83390190565b6000602082840312156200015957600080fd5b815163ffffffff811681146200016e57600080fd5b9392505050565b60805160a051612a3d620001a2600039600061144001526000818161026501526109b10152612a3d6000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c8063af27c321116100e3578063de523cf31161008c578063f2fde38b11610066578063f2fde38b1461038c578063f3c61d6b1461039f578063f6aa1640146103b257600080fd5b8063de523cf314610346578063e9198bf914610366578063f1bd6f0a1461037957600080fd5b8063c0c53b8b116100bd578063c0c53b8b146102ee578063cee85d7e14610301578063d5438eae1461032657600080fd5b8063af27c321146102b5578063b49c53a7146102c8578063bcc1e6d4146102db57600080fd5b8063485cc95511610145578063715018a61161011f578063715018a61461028757806371b037bd1461028f5780638da5cb5b1461029757600080fd5b8063485cc9551461023a57806356d5d4751461024d5780635c60da1b1461026057600080fd5b80632ead72f6116101765780632ead72f6146101cd57806339bb4ad9146101e0578063440df4f41461022557600080fd5b80630e72cc0614610192578063169a1d72146101a7575b600080fd5b6101a56101a0366004611d54565b6103c5565b005b6101ba6101b5366004611dd1565b6103d9565b6040519081526020015b60405180910390f35b6101ba6101db366004611e24565b610412565b6066546102009073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c4565b61022d610454565b6040516101c49190611e3f565b6101a5610248366004611e89565b61050f565b6101a561025b366004611f04565b6106aa565b6102007f000000000000000000000000000000000000000000000000000000000000000081565b6101a561079d565b6101a56107b1565b60335473ffffffffffffffffffffffffffffffffffffffff16610200565b6102006102c3366004611f5e565b61092c565b6101a56102d6366004611f7a565b610ae1565b6101ba6102e9366004611fa4565b610af7565b6101a56102fc366004611fef565b610bd7565b60cc546103119063ffffffff1681565b60405163ffffffff90911681526020016101c4565b6065546102009073ffffffffffffffffffffffffffffffffffffffff1681565b6067546102009073ffffffffffffffffffffffffffffffffffffffff1681565b6101a561037436600461203a565b610d6f565b6101a5610387366004611d54565b610e46565b6101a561039a366004611d54565b610e57565b6101a56103ad366004611d54565b610f0b565b6102006103c0366004611f5e565b610f1c565b6103cd610fc5565b6103d681611046565b50565b6000610408843385856040516020016103f49392919061209a565b604051602081830303815290604052611135565b90505b9392505050565b6000610428609863ffffffff808516906111ec16565b1561044757610441609863ffffffff808516906111f816565b92915050565b506000919050565b919050565b609880546060919060008167ffffffffffffffff8111156104775761047761220f565b6040519080825280602002602001820160405280156104a0578160200160208202803683370190505b50905060005b82811015610507578381815481106104c0576104c061223e565b906000526020600020015460001c8282815181106104e0576104e061223e565b63ffffffff90921660209283029190910190910152806104ff8161229c565b9150506104a6565b509392505050565b600054610100900460ff161580801561052f5750600054600160ff909116105b806105495750303b158015610549575060005460ff166001145b6105da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561063857600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6106428383611204565b80156106a557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60655473ffffffffffffffffffffffffffffffffffffffff16331461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f7800000000000000000000000000000000000000000000000060448201526064016105d1565b838361073782826112a5565b6040518060800160405280604381526020016129c56043913990610788576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d19190612342565b50610795868686866112b9565b505050505050565b6107a5610fc5565b6107af6000611348565b565b60cf54600090815260cd602090815260408083208151808301909252805463ffffffff16825260018101805492939192918401916107ee90612355565b80601f016020809104026020016040519081016040528092919081815260200182805461081a90612355565b80156108675780601f1061083c57610100808354040283529160200191610867565b820191906000526020600020905b81548152906001019060200180831161084a57829003601f168201915b5050505050815250509050600080826020015180602001905181019061088d919061248a565b60cc5491935091506108a59063ffffffff168361092c565b73ffffffffffffffffffffffffffffffffffffffff166388b75514826040518263ffffffff1660e01b81526004016108dd9190612676565b600060405180830381600087803b1580156108f757600080fd5b505af115801561090b573d6000803e3d6000fd5b50505050600160cf60008282546109229190612689565b9091555050505050565b60008061093984846113bf565b9050600061094682611438565b905073ffffffffffffffffffffffffffffffffffffffff81163b610ad957604080517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000060208201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060601b1660348201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048820152815160378183030181526057909101909152610a1d60008483611464565b91508173ffffffffffffffffffffffffffffffffffffffff16638129fc1c6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610a6757600080fd5b505af1158015610a7b573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff808a1682528616602082015263ffffffff8a1693507ff85636abc4529dc6cacede936fb884e38132d0e5a059a9b57149485cbaa2eaaa92500160405180910390a2505b949350505050565b610ae9610fc5565b610af382826115c3565b5050565b604080516001808252818301909252600091829190816020015b604080518082019091526000815260606020820152815260200190600190039081610b1157905050905060405180604001604052808673ffffffffffffffffffffffffffffffffffffffff16815260200185858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509390945250508351849250610bab57610bab61223e565b6020026020010181905250610bcd8633836040516020016103f492919061269c565b9695505050505050565b600054610100900460ff1615808015610bf75750600054600160ff909116105b80610c115750303b158015610c11575060005460ff166001145b610c9d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105d1565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610cfb57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610d06848484611610565b8015610d6957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b610d77610fc5565b828114610de0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064016105d1565b8260005b8181101561079557610e34868683818110610e0157610e0161223e565b9050602002016020810190610e169190611e24565b858584818110610e2857610e2861223e565b905060200201356115c3565b610e3f600182612689565b9050610de4565b610e4e610fc5565b6103d6816116b2565b610e5f610fc5565b73ffffffffffffffffffffffffffffffffffffffff8116610f02576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105d1565b6103d681611348565b610f13610fc5565b6103d6816117a1565b600061040b610f2b84846113bf565b611438565b6040517f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020820152606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660348301527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048830152906057016040516020818303038152906040529050919050565b60335473ffffffffffffffffffffffffffffffffffffffff1633146107af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105d1565b8073ffffffffffffffffffffffffffffffffffffffff81163b6110c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105d1565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a25050565b60408051808201825260cc5463ffffffff9081168252602080830185815260ce54600090815260cd909252938120835181547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000169316929092178255925160018201906111a29082612711565b50905050600160ce60008282546111b99190612689565b909155505060ce546040805160208101929092520160405160208183030381529060405280519060200120905092915050565b600061040b8383611890565b600061040b838361189c565b600054610100900460ff1661129b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b610af38282611926565b6000816112b184610412565b149392505050565b6000806112c88385018561282b565b915091506112d6868361092c565b73ffffffffffffffffffffffffffffffffffffffff166388b75514826040518263ffffffff1660e01b815260040161130e9190612676565b600060405180830381600087803b15801561132857600080fd5b505af115801561133c573d6000803e3d6000fd5b50505050505050505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b1660208201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606083901b16602482015260009060380160405160208183030381529060405261040b90612982565b6000610441827f00000000000000000000000000000000000000000000000000000000000000006119cf565b6000834710156114d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064016105d1565b815160000361153b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016105d1565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff811661040b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016105d1565b6115d9609863ffffffff8085169084906119dc16565b604051819063ffffffff8416907f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc645890600090a35050565b600054610100900460ff166116a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b6106a58383836119e7565b8073ffffffffffffffffffffffffffffffffffffffff81163b611731576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105d1565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b611820576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105d1565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b600061040b8383611a91565b6000818152600283016020526040812054801515806118c057506118c08484611890565b61040b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f456e756d657261626c654d61703a206e6f6e6578697374656e74206b6579000060448201526064016105d1565b600054610100900460ff166119bd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b6119c6816116b2565b610af382611aa9565b600061040b838330611b51565b610d69838383611b7b565b600054610100900460ff16611a7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b611a8781611046565b6106a58383611926565b6000818152600183016020526040812054151561040b565b600054610100900460ff16611b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b611b49816117a1565b6103d6611b98565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b600082815260028401602052604081208290556104088484611c37565b600054610100900460ff16611c2f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b6107af611c43565b600061040b8383611ce3565b600054610100900460ff16611cda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105d1565b6107af33611348565b6000818152600183016020526040812054611d2a57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610441565b506000610441565b73ffffffffffffffffffffffffffffffffffffffff811681146103d657600080fd5b600060208284031215611d6657600080fd5b813561040b81611d32565b803563ffffffff8116811461044f57600080fd5b60008083601f840112611d9757600080fd5b50813567ffffffffffffffff811115611daf57600080fd5b6020830191508360208260051b8501011115611dca57600080fd5b9250929050565b600080600060408486031215611de657600080fd5b611def84611d71565b9250602084013567ffffffffffffffff811115611e0b57600080fd5b611e1786828701611d85565b9497909650939450505050565b600060208284031215611e3657600080fd5b61040b82611d71565b6020808252825182820181905260009190848201906040850190845b81811015611e7d57835163ffffffff1683529284019291840191600101611e5b565b50909695505050505050565b60008060408385031215611e9c57600080fd5b8235611ea781611d32565b91506020830135611eb781611d32565b809150509250929050565b60008083601f840112611ed457600080fd5b50813567ffffffffffffffff811115611eec57600080fd5b602083019150836020828501011115611dca57600080fd5b60008060008060608587031215611f1a57600080fd5b611f2385611d71565b935060208501359250604085013567ffffffffffffffff811115611f4657600080fd5b611f5287828801611ec2565b95989497509550505050565b60008060408385031215611f7157600080fd5b611ea783611d71565b60008060408385031215611f8d57600080fd5b611f9683611d71565b946020939093013593505050565b60008060008060608587031215611fba57600080fd5b611fc385611d71565b93506020850135611fd381611d32565b9250604085013567ffffffffffffffff811115611f4657600080fd5b60008060006060848603121561200457600080fd5b833561200f81611d32565b9250602084013561201f81611d32565b9150604084013561202f81611d32565b809150509250925092565b6000806000806040858703121561205057600080fd5b843567ffffffffffffffff8082111561206857600080fd5b61207488838901611d85565b9096509450602087013591508082111561208d57600080fd5b50611f5287828801611d85565b73ffffffffffffffffffffffffffffffffffffffff848116825260406020808401829052838201859052600092606091828601600588901b8701840189875b8a8110156121fe577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa08a840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18d360301811261213a57600080fd5b8c01803561214781611d32565b8716845280860135368290037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe101811261218057600080fd5b01858101903567ffffffffffffffff81111561219b57600080fd5b8036038213156121aa57600080fd5b8987860152808a86015280828a87013760008582018a015294860194601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690930187019250908401906001016120d9565b50909b9a5050505050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036122cd576122cd61226d565b5060010190565b60005b838110156122ef5781810151838201526020016122d7565b50506000910152565b600081518084526123108160208601602086016122d4565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061040b60208301846122f8565b600181811c9082168061236957607f821691505b6020821081036123a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6040805190810167ffffffffffffffff811182821017156123cb576123cb61220f565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156124185761241861220f565b604052919050565b600067ffffffffffffffff82111561243a5761243a61220f565b5060051b60200190565b600067ffffffffffffffff82111561245e5761245e61220f565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600080604080848603121561249e57600080fd5b83516124a981611d32565b8093505060208085015167ffffffffffffffff808211156124c957600080fd5b818701915087601f8301126124dd57600080fd5b81516124f06124eb82612420565b6123d1565b81815260059190911b8301840190848101908a83111561250f57600080fd5b8585015b838110156125e55780518581111561252b5760008081fd5b8601808d037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00189131561255f5760008081fd5b6125676123a8565b8882015161257481611d32565b8152818a0151878111156125885760008081fd5b8083019250508d603f83011261259e5760008081fd5b888201516125ae6124eb82612444565b8181528f8c8386010111156125c35760008081fd5b6125d2828c83018e87016122d4565b828b015250845250918601918601612513565b50809750505050505050509250929050565b600081518084526020808501808196508360051b8101915082860160005b858110156126695782840389528151805173ffffffffffffffffffffffffffffffffffffffff1685528501516040868601819052612655818701836122f8565b9a87019a9550505090840190600101612615565b5091979650505050505050565b60208152600061040b60208301846125f7565b808201808211156104415761044161226d565b73ffffffffffffffffffffffffffffffffffffffff8316815260406020820152600061040860408301846125f7565b601f8211156106a557600081815260208120601f850160051c810160208610156126f25750805b601f850160051c820191505b81811015610795578281556001016126fe565b815167ffffffffffffffff81111561272b5761272b61220f565b61273f816127398454612355565b846126cb565b602080601f831160018114612792576000841561275c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b178555610795565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156127df578886015182559484019460019091019084016127c0565b508582101561281b57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600080604080848603121561283f57600080fd5b833561284a81611d32565b925060208481013567ffffffffffffffff8082111561286857600080fd5b818701915087601f83011261287c57600080fd5b813561288a6124eb82612420565b81815260059190911b8301840190848101908a8311156128a957600080fd5b8585015b838110156125e5578035858111156128c55760008081fd5b8601808d037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018913156128f95760008081fd5b6129016123a8565b8882013561290e81611d32565b8152818a0135878111156129225760008081fd5b8083019250508d603f8301126129385760008081fd5b888201356129486124eb82612444565b8181528f8c83860101111561295d5760008081fd5b818c85018c83013760009181018b0191909152818a01528452509186019186016128ad565b805160208083015191908110156123a2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60209190910360031b1b1691905056fe4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e2e2044696420796f7520737065636966792074686520726967687420646f6d61696e2049443fa26469706673582212204e387b77ce1949eca99a6a7d61c7fc0d68aa0361bbffb6dcc22dd6180cbf6b7c64736f6c63430008110033608060405234801561001057600080fd5b5061001a3361001f565b610071565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610746806100806000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c806388b755141161005057806388b755141461007e5780638da5cb5b14610091578063f2fde38b146100bd57600080fd5b8063715018a61461006c5780638129fc1c14610076575b600080fd5b6100746100d0565b005b6100746100e4565b61007461008c366004610535565b61027c565b6033546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100746100cb3660046105aa565b610389565b6100d861043d565b6100e260006104be565b565b600054610100900460ff16158080156101045750600054600160ff909116105b8061011e5750303b15801561011e575060005460ff166001145b6101af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561020d57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610216336104be565b801561027957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b61028461043d565b8060005b81811015610383576000808585848181106102a5576102a56105e7565b90506020028101906102b79190610616565b6102c59060208101906105aa565b73ffffffffffffffffffffffffffffffffffffffff168686858181106102ed576102ed6105e7565b90506020028101906102ff9190610616565b61030d906020810190610654565b60405161031b9291906106c0565b6000604051808303816000865af19150503d8060008114610358576040519150601f19603f3d011682016040523d82523d6000602084013e61035d565b606091505b50915091508161036e578060208201fd5b5061037c90506001826106d0565b9050610288565b50505050565b61039161043d565b73ffffffffffffffffffffffffffffffffffffffff8116610434576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016101a6565b610279816104be565b60335473ffffffffffffffffffffffffffffffffffffffff1633146100e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101a6565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000806020838503121561054857600080fd5b823567ffffffffffffffff8082111561056057600080fd5b818501915085601f83011261057457600080fd5b81358181111561058357600080fd5b8660208260051b850101111561059857600080fd5b60209290920196919550909350505050565b6000602082840312156105bc57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146105e057600080fd5b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261064a57600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261068957600080fd5b83018035915067ffffffffffffffff8211156106a457600080fd5b6020019150368190038213156106b957600080fd5b9250929050565b8183823760009101908152919050565b8082018082111561070a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220aca81483affd5825840dd4629d625e998815c8274f906ac07ba39b374950322664736f6c63430008110033";
524
+ const isSuperArgs = (xs) => xs.length > 1;
525
+ class MockInterchainAccountRouter__factory extends ethers_1.ContractFactory {
526
+ constructor(...args) {
527
+ if (isSuperArgs(args)) {
528
+ super(...args);
529
+ }
530
+ else {
531
+ super(_abi, _bytecode, args[0]);
532
+ }
533
+ }
534
+ deploy(_originDomain, overrides) {
535
+ return super.deploy(_originDomain, overrides || {});
536
+ }
537
+ getDeployTransaction(_originDomain, overrides) {
538
+ return super.getDeployTransaction(_originDomain, overrides || {});
539
+ }
540
+ attach(address) {
541
+ return super.attach(address);
542
+ }
543
+ connect(signer) {
544
+ return super.connect(signer);
545
+ }
546
+ static createInterface() {
547
+ return new ethers_1.utils.Interface(_abi);
548
+ }
549
+ static connect(address, signerOrProvider) {
550
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
551
+ }
552
+ }
553
+ exports.MockInterchainAccountRouter__factory = MockInterchainAccountRouter__factory;
554
+ MockInterchainAccountRouter__factory.bytecode = _bytecode;
555
+ MockInterchainAccountRouter__factory.abi = _abi;
556
+ //# sourceMappingURL=MockInterchainAccountRouter__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockInterchainAccountRouter__factory.js","sourceRoot":"","sources":["../../../../types/factories/contracts/mock/MockInterchainAccountRouter__factory.ts"],"names":[],"mappings":"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"}