@hyperlane-xyz/core 1.3.1 → 1.3.3

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 (425) hide show
  1. package/README.md +0 -1
  2. package/contracts/Mailbox.sol +2 -1
  3. package/contracts/Router.sol +6 -5
  4. package/contracts/interfaces/IInterchainSecurityModule.sol +1 -1
  5. package/contracts/interfaces/{IAggregationIsm.sol → isms/IAggregationIsm.sol} +2 -2
  6. package/contracts/interfaces/isms/IMultisigIsm.sol +1 -1
  7. package/contracts/interfaces/isms/IRoutingIsm.sol +17 -0
  8. package/contracts/isms/aggregation/AbstractAggregationIsm.sol +3 -2
  9. package/contracts/isms/multisig/AbstractMultisigIsm.sol +6 -5
  10. package/contracts/isms/multisig/LegacyMultisigIsm.sol +15 -11
  11. package/contracts/isms/routing/AbstractRoutingIsm.sol +45 -0
  12. package/contracts/isms/routing/DomainRoutingIsm.sol +105 -0
  13. package/contracts/isms/routing/DomainRoutingIsmFactory.sol +46 -0
  14. package/contracts/isms/routing/InterchainAccountIsm.sol +42 -0
  15. package/contracts/libs/MetaProxy.sol +2 -2
  16. package/contracts/libs/MinimalProxy.sol +10 -2
  17. package/contracts/libs/middleware/InterchainAccountMessage.sol +9 -0
  18. package/contracts/middleware/InterchainQueryRouter.sol +0 -1
  19. package/contracts/middleware/liquidity-layer/LiquidityLayerRouter.sol +4 -6
  20. package/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.sol +9 -10
  21. package/contracts/middleware/liquidity-layer/adapters/PortalAdapter.sol +1 -1
  22. package/contracts/mock/MockHyperlaneEnvironment.sol +3 -0
  23. package/contracts/mock/MockMailbox.sol +60 -9
  24. package/contracts/test/TestIsm.sol +4 -0
  25. package/dist/contracts/interfaces/index.d.ts +0 -1
  26. package/dist/contracts/interfaces/index.d.ts.map +1 -1
  27. package/dist/contracts/interfaces/{IAggregationIsm.d.ts → isms/IAggregationIsm.d.ts} +1 -1
  28. package/dist/contracts/interfaces/isms/IAggregationIsm.d.ts.map +1 -0
  29. package/dist/contracts/interfaces/isms/IAggregationIsm.js.map +1 -0
  30. package/dist/{interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.d.ts → contracts/interfaces/isms/IRoutingIsm.d.ts} +14 -6
  31. package/dist/contracts/interfaces/isms/IRoutingIsm.d.ts.map +1 -0
  32. package/dist/contracts/{isms/MultisigIsm.js → interfaces/isms/IRoutingIsm.js} +1 -1
  33. package/dist/contracts/interfaces/isms/IRoutingIsm.js.map +1 -0
  34. package/dist/contracts/interfaces/isms/index.d.ts +2 -0
  35. package/dist/contracts/interfaces/isms/index.d.ts.map +1 -1
  36. package/dist/contracts/isms/index.d.ts +2 -0
  37. package/dist/contracts/isms/index.d.ts.map +1 -1
  38. package/dist/{interfaces/IAggregationIsm.d.ts → contracts/isms/routing/AbstractRoutingIsm.d.ts} +14 -23
  39. package/dist/contracts/isms/routing/AbstractRoutingIsm.d.ts.map +1 -0
  40. package/dist/contracts/{Create2Factory.js → isms/routing/AbstractRoutingIsm.js} +1 -1
  41. package/dist/contracts/isms/routing/AbstractRoutingIsm.js.map +1 -0
  42. package/dist/contracts/isms/routing/DomainRoutingIsm.d.ts +197 -0
  43. package/dist/contracts/isms/routing/DomainRoutingIsm.d.ts.map +1 -0
  44. package/dist/contracts/{libs/ImmutableOwnable.js → isms/routing/DomainRoutingIsm.js} +1 -1
  45. package/dist/contracts/isms/routing/DomainRoutingIsm.js.map +1 -0
  46. package/dist/contracts/isms/routing/DomainRoutingIsmFactory.d.ts +64 -0
  47. package/dist/contracts/isms/routing/DomainRoutingIsmFactory.d.ts.map +1 -0
  48. package/dist/contracts/{InterchainGasPaymaster.js → isms/routing/DomainRoutingIsmFactory.js} +1 -1
  49. package/dist/contracts/isms/routing/DomainRoutingIsmFactory.js.map +1 -0
  50. package/dist/{interfaces/IMultisigIsm.d.ts → contracts/isms/routing/InterchainAccountIsm.d.ts} +14 -29
  51. package/dist/contracts/isms/routing/InterchainAccountIsm.d.ts.map +1 -0
  52. package/dist/contracts/isms/routing/InterchainAccountIsm.js +4 -0
  53. package/dist/contracts/isms/routing/InterchainAccountIsm.js.map +1 -0
  54. package/dist/contracts/isms/routing/index.d.ts +5 -0
  55. package/dist/contracts/isms/routing/index.d.ts.map +1 -0
  56. package/dist/contracts/isms/routing/index.js.map +1 -0
  57. package/dist/contracts/middleware/liquidity-layer/adapters/PortalAdapter.d.ts +9 -1
  58. package/dist/contracts/middleware/liquidity-layer/adapters/PortalAdapter.d.ts.map +1 -1
  59. package/dist/contracts/mock/MockMailbox.d.ts +47 -17
  60. package/dist/contracts/mock/MockMailbox.d.ts.map +1 -1
  61. package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
  62. package/dist/factories/contracts/Mailbox__factory.js +1 -1
  63. package/dist/factories/contracts/ValidatorAnnounce__factory.d.ts +1 -1
  64. package/dist/factories/contracts/ValidatorAnnounce__factory.js +1 -1
  65. package/dist/factories/contracts/interfaces/index.d.ts +0 -1
  66. package/dist/factories/contracts/interfaces/index.d.ts.map +1 -1
  67. package/dist/factories/contracts/interfaces/index.js +1 -3
  68. package/dist/factories/contracts/interfaces/index.js.map +1 -1
  69. package/dist/factories/{interfaces → contracts/interfaces/isms}/IAggregationIsm__factory.d.ts +1 -1
  70. package/dist/factories/contracts/interfaces/isms/IAggregationIsm__factory.d.ts.map +1 -0
  71. package/dist/factories/contracts/interfaces/isms/IAggregationIsm__factory.js.map +1 -0
  72. package/dist/factories/{interfaces/IGasOracle__factory.d.ts → contracts/interfaces/isms/IRoutingIsm__factory.d.ts} +5 -5
  73. package/dist/factories/contracts/interfaces/isms/IRoutingIsm__factory.d.ts.map +1 -0
  74. package/dist/factories/{interfaces/isms/IMultisigIsm__factory.js → contracts/interfaces/isms/IRoutingIsm__factory.js} +9 -14
  75. package/dist/factories/contracts/interfaces/isms/IRoutingIsm__factory.js.map +1 -0
  76. package/dist/factories/contracts/interfaces/isms/index.d.ts +2 -0
  77. package/dist/factories/contracts/interfaces/isms/index.d.ts.map +1 -1
  78. package/dist/factories/contracts/interfaces/isms/index.js +5 -1
  79. package/dist/factories/contracts/interfaces/isms/index.js.map +1 -1
  80. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
  81. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
  82. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
  83. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
  84. package/dist/factories/contracts/isms/index.d.ts +1 -0
  85. package/dist/factories/contracts/isms/index.d.ts.map +1 -1
  86. package/dist/factories/contracts/isms/index.js +2 -1
  87. package/dist/factories/contracts/isms/index.js.map +1 -1
  88. package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.d.ts +1 -1
  89. package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.d.ts.map +1 -1
  90. package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.js +1 -1
  91. package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.js.map +1 -1
  92. package/dist/factories/contracts/isms/multisig/StaticMultisigIsmFactory__factory.d.ts +1 -1
  93. package/dist/factories/contracts/isms/multisig/StaticMultisigIsmFactory__factory.js +1 -1
  94. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm__factory.d.ts +1 -1
  95. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm__factory.js +1 -1
  96. package/dist/factories/contracts/{interfaces/IAggregationIsm__factory.d.ts → isms/routing/AbstractRoutingIsm__factory.d.ts} +5 -5
  97. package/dist/factories/contracts/isms/routing/AbstractRoutingIsm__factory.d.ts.map +1 -0
  98. package/dist/factories/{interfaces/IMultisigIsm__factory.js → contracts/isms/routing/AbstractRoutingIsm__factory.js} +9 -14
  99. package/dist/factories/contracts/isms/routing/AbstractRoutingIsm__factory.js.map +1 -0
  100. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.d.ts +55 -0
  101. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.d.ts.map +1 -0
  102. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.js +83 -0
  103. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.js.map +1 -0
  104. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +48 -0
  105. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts.map +1 -0
  106. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +254 -0
  107. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js.map +1 -0
  108. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +45 -0
  109. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts.map +1 -0
  110. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +108 -0
  111. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js.map +1 -0
  112. package/dist/factories/contracts/isms/routing/index.d.ts +5 -0
  113. package/dist/factories/contracts/isms/routing/index.d.ts.map +1 -0
  114. package/dist/factories/contracts/isms/routing/index.js +15 -0
  115. package/dist/factories/contracts/isms/routing/index.js.map +1 -0
  116. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
  117. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
  118. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
  119. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts.map +1 -1
  120. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
  121. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js.map +1 -1
  122. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
  123. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts.map +1 -1
  124. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
  125. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js.map +1 -1
  126. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
  127. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts.map +1 -1
  128. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
  129. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js.map +1 -1
  130. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
  131. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts.map +1 -1
  132. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +14 -1
  133. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js.map +1 -1
  134. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  135. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts.map +1 -1
  136. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
  137. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js.map +1 -1
  138. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
  139. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts.map +1 -1
  140. package/dist/factories/contracts/mock/MockMailbox__factory.js +45 -9
  141. package/dist/factories/contracts/mock/MockMailbox__factory.js.map +1 -1
  142. package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts +1 -1
  143. package/dist/factories/contracts/test/LightTestRecipient__factory.js +1 -1
  144. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
  145. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts.map +1 -1
  146. package/dist/factories/contracts/test/TestGasRouter__factory.js +1 -1
  147. package/dist/factories/contracts/test/TestGasRouter__factory.js.map +1 -1
  148. package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.d.ts +1 -1
  149. package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.js +1 -1
  150. package/dist/factories/contracts/test/TestIsm__factory.d.ts +9 -3
  151. package/dist/factories/contracts/test/TestIsm__factory.d.ts.map +1 -1
  152. package/dist/factories/contracts/test/TestIsm__factory.js +6 -1
  153. package/dist/factories/contracts/test/TestIsm__factory.js.map +1 -1
  154. package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.d.ts +1 -1
  155. package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.d.ts.map +1 -1
  156. package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.js +1 -1
  157. package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.js.map +1 -1
  158. package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  159. package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
  160. package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  161. package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
  162. package/dist/factories/contracts/test/TestRecipient__factory.d.ts +1 -1
  163. package/dist/factories/contracts/test/TestRecipient__factory.js +1 -1
  164. package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
  165. package/dist/factories/contracts/test/TestRouter__factory.d.ts.map +1 -1
  166. package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
  167. package/dist/factories/contracts/test/TestRouter__factory.js.map +1 -1
  168. package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
  169. package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
  170. package/dist/index.d.ts +12 -2
  171. package/dist/index.d.ts.map +1 -1
  172. package/dist/index.js +14 -4
  173. package/dist/index.js.map +1 -1
  174. package/package.json +5 -4
  175. package/dist/contracts/Create2Factory.d.ts +0 -94
  176. package/dist/contracts/Create2Factory.d.ts.map +0 -1
  177. package/dist/contracts/Create2Factory.js.map +0 -1
  178. package/dist/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient.d.ts +0 -202
  179. package/dist/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient.d.ts.map +0 -1
  180. package/dist/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient.js +0 -4
  181. package/dist/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient.js.map +0 -1
  182. package/dist/contracts/ImmutableConnectionClient.sol/index.d.ts +0 -2
  183. package/dist/contracts/ImmutableConnectionClient.sol/index.d.ts.map +0 -1
  184. package/dist/contracts/ImmutableConnectionClient.sol/index.js.map +0 -1
  185. package/dist/contracts/InterchainGasPaymaster.d.ts +0 -162
  186. package/dist/contracts/InterchainGasPaymaster.d.ts.map +0 -1
  187. package/dist/contracts/InterchainGasPaymaster.js.map +0 -1
  188. package/dist/contracts/interfaces/IAggregationIsm.d.ts.map +0 -1
  189. package/dist/contracts/interfaces/IAggregationIsm.js.map +0 -1
  190. package/dist/contracts/isms/MultisigIsm.d.ts +0 -290
  191. package/dist/contracts/isms/MultisigIsm.d.ts.map +0 -1
  192. package/dist/contracts/isms/MultisigIsm.js.map +0 -1
  193. package/dist/contracts/libs/ImmutableOwnable.d.ts +0 -43
  194. package/dist/contracts/libs/ImmutableOwnable.d.ts.map +0 -1
  195. package/dist/contracts/libs/ImmutableOwnable.js.map +0 -1
  196. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.d.ts +0 -78
  197. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.d.ts.map +0 -1
  198. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.js +0 -4
  199. package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.js.map +0 -1
  200. package/dist/contracts/mock/MockCircleBridge.d.ts +0 -86
  201. package/dist/contracts/mock/MockCircleBridge.d.ts.map +0 -1
  202. package/dist/contracts/mock/MockCircleBridge.js +0 -4
  203. package/dist/contracts/mock/MockCircleBridge.js.map +0 -1
  204. package/dist/contracts/mock/MockInterchainAccountRouter.d.ts +0 -422
  205. package/dist/contracts/mock/MockInterchainAccountRouter.d.ts.map +0 -1
  206. package/dist/contracts/mock/MockInterchainAccountRouter.js +0 -4
  207. package/dist/contracts/mock/MockInterchainAccountRouter.js.map +0 -1
  208. package/dist/contracts/test/TestMultisigIsm.d.ts +0 -306
  209. package/dist/contracts/test/TestMultisigIsm.d.ts.map +0 -1
  210. package/dist/contracts/test/TestMultisigIsm.js +0 -4
  211. package/dist/contracts/test/TestMultisigIsm.js.map +0 -1
  212. package/dist/factories/contracts/Create2Factory__factory.d.ts +0 -55
  213. package/dist/factories/contracts/Create2Factory__factory.d.ts.map +0 -1
  214. package/dist/factories/contracts/Create2Factory__factory.js +0 -163
  215. package/dist/factories/contracts/Create2Factory__factory.js.map +0 -1
  216. package/dist/factories/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient__factory.d.ts +0 -43
  217. package/dist/factories/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient__factory.d.ts.map +0 -1
  218. package/dist/factories/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient__factory.js +0 -200
  219. package/dist/factories/contracts/ImmutableConnectionClient.sol/HyperlaneConnectionClient__factory.js.map +0 -1
  220. package/dist/factories/contracts/ImmutableConnectionClient.sol/index.d.ts +0 -2
  221. package/dist/factories/contracts/ImmutableConnectionClient.sol/index.d.ts.map +0 -1
  222. package/dist/factories/contracts/ImmutableConnectionClient.sol/index.js +0 -9
  223. package/dist/factories/contracts/ImmutableConnectionClient.sol/index.js.map +0 -1
  224. package/dist/factories/contracts/InterchainGasPaymaster__factory.d.ts +0 -62
  225. package/dist/factories/contracts/InterchainGasPaymaster__factory.d.ts.map +0 -1
  226. package/dist/factories/contracts/InterchainGasPaymaster__factory.js +0 -178
  227. package/dist/factories/contracts/InterchainGasPaymaster__factory.js.map +0 -1
  228. package/dist/factories/contracts/interfaces/IAggregationIsm__factory.d.ts.map +0 -1
  229. package/dist/factories/contracts/interfaces/IAggregationIsm__factory.js.map +0 -1
  230. package/dist/factories/contracts/isms/MultisigIsm__factory.d.ts +0 -55
  231. package/dist/factories/contracts/isms/MultisigIsm__factory.d.ts.map +0 -1
  232. package/dist/factories/contracts/isms/MultisigIsm__factory.js +0 -437
  233. package/dist/factories/contracts/isms/MultisigIsm__factory.js.map +0 -1
  234. package/dist/factories/contracts/libs/ImmutableOwnable__factory.d.ts +0 -19
  235. package/dist/factories/contracts/libs/ImmutableOwnable__factory.d.ts.map +0 -1
  236. package/dist/factories/contracts/libs/ImmutableOwnable__factory.js +0 -31
  237. package/dist/factories/contracts/libs/ImmutableOwnable__factory.js.map +0 -1
  238. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.d.ts +0 -36
  239. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.d.ts.map +0 -1
  240. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.js +0 -104
  241. package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.js.map +0 -1
  242. package/dist/factories/contracts/mock/MockCircleBridge__factory.d.ts +0 -59
  243. package/dist/factories/contracts/mock/MockCircleBridge__factory.d.ts.map +0 -1
  244. package/dist/factories/contracts/mock/MockCircleBridge__factory.js +0 -151
  245. package/dist/factories/contracts/mock/MockCircleBridge__factory.js.map +0 -1
  246. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.d.ts +0 -69
  247. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.d.ts.map +0 -1
  248. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.js +0 -556
  249. package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.js.map +0 -1
  250. package/dist/factories/contracts/test/TestMultisigIsm__factory.d.ts +0 -48
  251. package/dist/factories/contracts/test/TestMultisigIsm__factory.d.ts.map +0 -1
  252. package/dist/factories/contracts/test/TestMultisigIsm__factory.js +0 -480
  253. package/dist/factories/contracts/test/TestMultisigIsm__factory.js.map +0 -1
  254. package/dist/factories/interfaces/IAggregationIsm__factory.d.ts.map +0 -1
  255. package/dist/factories/interfaces/IAggregationIsm__factory.js +0 -79
  256. package/dist/factories/interfaces/IAggregationIsm__factory.js.map +0 -1
  257. package/dist/factories/interfaces/IGasOracle__factory.d.ts.map +0 -1
  258. package/dist/factories/interfaces/IGasOracle__factory.js +0 -42
  259. package/dist/factories/interfaces/IGasOracle__factory.js.map +0 -1
  260. package/dist/factories/interfaces/IHyperlaneConnectionClient__factory.d.ts +0 -29
  261. package/dist/factories/interfaces/IHyperlaneConnectionClient__factory.d.ts.map +0 -1
  262. package/dist/factories/interfaces/IHyperlaneConnectionClient__factory.js +0 -96
  263. package/dist/factories/interfaces/IHyperlaneConnectionClient__factory.js.map +0 -1
  264. package/dist/factories/interfaces/IInterchainAccountRouter__factory.d.ts +0 -33
  265. package/dist/factories/interfaces/IInterchainAccountRouter__factory.d.ts.map +0 -1
  266. package/dist/factories/interfaces/IInterchainAccountRouter__factory.js +0 -107
  267. package/dist/factories/interfaces/IInterchainAccountRouter__factory.js.map +0 -1
  268. package/dist/factories/interfaces/IInterchainGasPaymaster__factory.d.ts +0 -19
  269. package/dist/factories/interfaces/IInterchainGasPaymaster__factory.d.ts.map +0 -1
  270. package/dist/factories/interfaces/IInterchainGasPaymaster__factory.js +0 -46
  271. package/dist/factories/interfaces/IInterchainGasPaymaster__factory.js.map +0 -1
  272. package/dist/factories/interfaces/IInterchainQueryRouter__factory.d.ts +0 -33
  273. package/dist/factories/interfaces/IInterchainQueryRouter__factory.d.ts.map +0 -1
  274. package/dist/factories/interfaces/IInterchainQueryRouter__factory.js +0 -134
  275. package/dist/factories/interfaces/IInterchainQueryRouter__factory.js.map +0 -1
  276. package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.d.ts +0 -23
  277. package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.d.ts.map +0 -1
  278. package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.js +0 -55
  279. package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.js.map +0 -1
  280. package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.d.ts +0 -19
  281. package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.d.ts.map +0 -1
  282. package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.js +0 -31
  283. package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.js.map +0 -1
  284. package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.d.ts +0 -3
  285. package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.d.ts.map +0 -1
  286. package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.js +0 -11
  287. package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.js.map +0 -1
  288. package/dist/factories/interfaces/ILiquidityLayerMessageRecipient__factory.d.ts +0 -19
  289. package/dist/factories/interfaces/ILiquidityLayerMessageRecipient__factory.d.ts.map +0 -1
  290. package/dist/factories/interfaces/ILiquidityLayerMessageRecipient__factory.js +0 -51
  291. package/dist/factories/interfaces/ILiquidityLayerMessageRecipient__factory.js.map +0 -1
  292. package/dist/factories/interfaces/ILiquidityLayerRouter__factory.d.ts +0 -23
  293. package/dist/factories/interfaces/ILiquidityLayerRouter__factory.d.ts.map +0 -1
  294. package/dist/factories/interfaces/ILiquidityLayerRouter__factory.js +0 -62
  295. package/dist/factories/interfaces/ILiquidityLayerRouter__factory.js.map +0 -1
  296. package/dist/factories/interfaces/IMailbox__factory.d.ts +0 -23
  297. package/dist/factories/interfaces/IMailbox__factory.d.ts.map +0 -1
  298. package/dist/factories/interfaces/IMailbox__factory.js +0 -141
  299. package/dist/factories/interfaces/IMailbox__factory.js.map +0 -1
  300. package/dist/factories/interfaces/IMessageRecipient__factory.d.ts +0 -19
  301. package/dist/factories/interfaces/IMessageRecipient__factory.d.ts.map +0 -1
  302. package/dist/factories/interfaces/IMessageRecipient__factory.js +0 -41
  303. package/dist/factories/interfaces/IMessageRecipient__factory.js.map +0 -1
  304. package/dist/factories/interfaces/IMultisigIsm__factory.d.ts +0 -23
  305. package/dist/factories/interfaces/IMultisigIsm__factory.d.ts.map +0 -1
  306. package/dist/factories/interfaces/IMultisigIsm__factory.js.map +0 -1
  307. package/dist/factories/interfaces/IRouter__factory.d.ts +0 -23
  308. package/dist/factories/interfaces/IRouter__factory.d.ts.map +0 -1
  309. package/dist/factories/interfaces/IRouter__factory.js +0 -86
  310. package/dist/factories/interfaces/IRouter__factory.js.map +0 -1
  311. package/dist/factories/interfaces/IValidatorAnnounce__factory.d.ts +0 -23
  312. package/dist/factories/interfaces/IValidatorAnnounce__factory.d.ts.map +0 -1
  313. package/dist/factories/interfaces/IValidatorAnnounce__factory.js +0 -105
  314. package/dist/factories/interfaces/IValidatorAnnounce__factory.js.map +0 -1
  315. package/dist/factories/interfaces/index.d.ts +0 -10
  316. package/dist/factories/interfaces/index.d.ts.map +0 -1
  317. package/dist/factories/interfaces/index.js +0 -47
  318. package/dist/factories/interfaces/index.js.map +0 -1
  319. package/dist/factories/interfaces/isms/IMultisigIsm__factory.d.ts +0 -23
  320. package/dist/factories/interfaces/isms/IMultisigIsm__factory.d.ts.map +0 -1
  321. package/dist/factories/interfaces/isms/IMultisigIsm__factory.js.map +0 -1
  322. package/dist/factories/interfaces/isms/index.d.ts +0 -2
  323. package/dist/factories/interfaces/isms/index.d.ts.map +0 -1
  324. package/dist/factories/interfaces/isms/index.js +0 -9
  325. package/dist/factories/interfaces/isms/index.js.map +0 -1
  326. package/dist/factories/interfaces/middleware/IInterchainAccountRouter__factory.d.ts +0 -33
  327. package/dist/factories/interfaces/middleware/IInterchainAccountRouter__factory.d.ts.map +0 -1
  328. package/dist/factories/interfaces/middleware/IInterchainAccountRouter__factory.js +0 -265
  329. package/dist/factories/interfaces/middleware/IInterchainAccountRouter__factory.js.map +0 -1
  330. package/dist/factories/interfaces/middleware/IInterchainQueryRouter__factory.d.ts +0 -43
  331. package/dist/factories/interfaces/middleware/IInterchainQueryRouter__factory.d.ts.map +0 -1
  332. package/dist/factories/interfaces/middleware/IInterchainQueryRouter__factory.js +0 -100
  333. package/dist/factories/interfaces/middleware/IInterchainQueryRouter__factory.js.map +0 -1
  334. package/dist/factories/interfaces/middleware/index.d.ts +0 -3
  335. package/dist/factories/interfaces/middleware/index.d.ts.map +0 -1
  336. package/dist/factories/interfaces/middleware/index.js +0 -11
  337. package/dist/factories/interfaces/middleware/index.js.map +0 -1
  338. package/dist/interfaces/IAggregationIsm.d.ts.map +0 -1
  339. package/dist/interfaces/IAggregationIsm.js +0 -4
  340. package/dist/interfaces/IAggregationIsm.js.map +0 -1
  341. package/dist/interfaces/IGasOracle.d.ts +0 -61
  342. package/dist/interfaces/IGasOracle.d.ts.map +0 -1
  343. package/dist/interfaces/IGasOracle.js +0 -4
  344. package/dist/interfaces/IGasOracle.js.map +0 -1
  345. package/dist/interfaces/IHyperlaneConnectionClient.d.ts +0 -107
  346. package/dist/interfaces/IHyperlaneConnectionClient.d.ts.map +0 -1
  347. package/dist/interfaces/IHyperlaneConnectionClient.js +0 -4
  348. package/dist/interfaces/IHyperlaneConnectionClient.js.map +0 -1
  349. package/dist/interfaces/IInterchainAccountRouter.d.ts +0 -83
  350. package/dist/interfaces/IInterchainAccountRouter.d.ts.map +0 -1
  351. package/dist/interfaces/IInterchainAccountRouter.js +0 -4
  352. package/dist/interfaces/IInterchainAccountRouter.js.map +0 -1
  353. package/dist/interfaces/IInterchainGasPaymaster.d.ts +0 -51
  354. package/dist/interfaces/IInterchainGasPaymaster.d.ts.map +0 -1
  355. package/dist/interfaces/IInterchainGasPaymaster.js +0 -4
  356. package/dist/interfaces/IInterchainGasPaymaster.js.map +0 -1
  357. package/dist/interfaces/IInterchainQueryRouter.d.ts +0 -91
  358. package/dist/interfaces/IInterchainQueryRouter.d.ts.map +0 -1
  359. package/dist/interfaces/IInterchainQueryRouter.js +0 -4
  360. package/dist/interfaces/IInterchainQueryRouter.js.map +0 -1
  361. package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.d.ts.map +0 -1
  362. package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.js +0 -4
  363. package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.js.map +0 -1
  364. package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.d.ts +0 -43
  365. package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.d.ts.map +0 -1
  366. package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.js +0 -4
  367. package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.js.map +0 -1
  368. package/dist/interfaces/IInterchainSecurityModule.sol/index.d.ts +0 -3
  369. package/dist/interfaces/IInterchainSecurityModule.sol/index.d.ts.map +0 -1
  370. package/dist/interfaces/IInterchainSecurityModule.sol/index.js +0 -3
  371. package/dist/interfaces/IInterchainSecurityModule.sol/index.js.map +0 -1
  372. package/dist/interfaces/ILiquidityLayerMessageRecipient.d.ts +0 -51
  373. package/dist/interfaces/ILiquidityLayerMessageRecipient.d.ts.map +0 -1
  374. package/dist/interfaces/ILiquidityLayerMessageRecipient.js +0 -4
  375. package/dist/interfaces/ILiquidityLayerMessageRecipient.js.map +0 -1
  376. package/dist/interfaces/ILiquidityLayerRouter.d.ts +0 -51
  377. package/dist/interfaces/ILiquidityLayerRouter.d.ts.map +0 -1
  378. package/dist/interfaces/ILiquidityLayerRouter.js +0 -4
  379. package/dist/interfaces/ILiquidityLayerRouter.js.map +0 -1
  380. package/dist/interfaces/IMailbox.d.ts +0 -107
  381. package/dist/interfaces/IMailbox.d.ts.map +0 -1
  382. package/dist/interfaces/IMailbox.js +0 -4
  383. package/dist/interfaces/IMailbox.js.map +0 -1
  384. package/dist/interfaces/IMessageRecipient.d.ts +0 -51
  385. package/dist/interfaces/IMessageRecipient.d.ts.map +0 -1
  386. package/dist/interfaces/IMessageRecipient.js +0 -4
  387. package/dist/interfaces/IMessageRecipient.js.map +0 -1
  388. package/dist/interfaces/IMultisigIsm.d.ts.map +0 -1
  389. package/dist/interfaces/IMultisigIsm.js +0 -4
  390. package/dist/interfaces/IMultisigIsm.js.map +0 -1
  391. package/dist/interfaces/IRouter.d.ts +0 -83
  392. package/dist/interfaces/IRouter.d.ts.map +0 -1
  393. package/dist/interfaces/IRouter.js +0 -4
  394. package/dist/interfaces/IRouter.js.map +0 -1
  395. package/dist/interfaces/IValidatorAnnounce.d.ts +0 -83
  396. package/dist/interfaces/IValidatorAnnounce.d.ts.map +0 -1
  397. package/dist/interfaces/IValidatorAnnounce.js +0 -4
  398. package/dist/interfaces/IValidatorAnnounce.js.map +0 -1
  399. package/dist/interfaces/index.d.ts +0 -11
  400. package/dist/interfaces/index.d.ts.map +0 -1
  401. package/dist/interfaces/index.js +0 -4
  402. package/dist/interfaces/index.js.map +0 -1
  403. package/dist/interfaces/isms/IMultisigIsm.d.ts +0 -82
  404. package/dist/interfaces/isms/IMultisigIsm.d.ts.map +0 -1
  405. package/dist/interfaces/isms/IMultisigIsm.js +0 -4
  406. package/dist/interfaces/isms/IMultisigIsm.js.map +0 -1
  407. package/dist/interfaces/isms/index.d.ts +0 -2
  408. package/dist/interfaces/isms/index.d.ts.map +0 -1
  409. package/dist/interfaces/isms/index.js +0 -3
  410. package/dist/interfaces/isms/index.js.map +0 -1
  411. package/dist/interfaces/middleware/IInterchainAccountRouter.d.ts +0 -127
  412. package/dist/interfaces/middleware/IInterchainAccountRouter.d.ts.map +0 -1
  413. package/dist/interfaces/middleware/IInterchainAccountRouter.js +0 -4
  414. package/dist/interfaces/middleware/IInterchainAccountRouter.js.map +0 -1
  415. package/dist/interfaces/middleware/IInterchainQueryRouter.d.ts +0 -88
  416. package/dist/interfaces/middleware/IInterchainQueryRouter.d.ts.map +0 -1
  417. package/dist/interfaces/middleware/IInterchainQueryRouter.js +0 -4
  418. package/dist/interfaces/middleware/IInterchainQueryRouter.js.map +0 -1
  419. package/dist/interfaces/middleware/index.d.ts +0 -3
  420. package/dist/interfaces/middleware/index.d.ts.map +0 -1
  421. package/dist/interfaces/middleware/index.js +0 -3
  422. package/dist/interfaces/middleware/index.js.map +0 -1
  423. /package/dist/contracts/interfaces/{IAggregationIsm.js → isms/IAggregationIsm.js} +0 -0
  424. /package/dist/contracts/{ImmutableConnectionClient.sol → isms/routing}/index.js +0 -0
  425. /package/dist/factories/contracts/interfaces/{IAggregationIsm__factory.js → isms/IAggregationIsm__factory.js} +0 -0
@@ -0,0 +1,254 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.DomainRoutingIsm__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ anonymous: false,
9
+ inputs: [
10
+ {
11
+ indexed: false,
12
+ internalType: "uint8",
13
+ name: "version",
14
+ type: "uint8",
15
+ },
16
+ ],
17
+ name: "Initialized",
18
+ type: "event",
19
+ },
20
+ {
21
+ anonymous: false,
22
+ inputs: [
23
+ {
24
+ indexed: true,
25
+ internalType: "uint32",
26
+ name: "domain",
27
+ type: "uint32",
28
+ },
29
+ {
30
+ indexed: false,
31
+ internalType: "contract IInterchainSecurityModule",
32
+ name: "module",
33
+ type: "address",
34
+ },
35
+ ],
36
+ name: "ModuleSet",
37
+ type: "event",
38
+ },
39
+ {
40
+ anonymous: false,
41
+ inputs: [
42
+ {
43
+ indexed: true,
44
+ internalType: "address",
45
+ name: "previousOwner",
46
+ type: "address",
47
+ },
48
+ {
49
+ indexed: true,
50
+ internalType: "address",
51
+ name: "newOwner",
52
+ type: "address",
53
+ },
54
+ ],
55
+ name: "OwnershipTransferred",
56
+ type: "event",
57
+ },
58
+ {
59
+ inputs: [
60
+ {
61
+ internalType: "address",
62
+ name: "_owner",
63
+ type: "address",
64
+ },
65
+ {
66
+ internalType: "uint32[]",
67
+ name: "_domains",
68
+ type: "uint32[]",
69
+ },
70
+ {
71
+ internalType: "contract IInterchainSecurityModule[]",
72
+ name: "_modules",
73
+ type: "address[]",
74
+ },
75
+ ],
76
+ name: "initialize",
77
+ outputs: [],
78
+ stateMutability: "nonpayable",
79
+ type: "function",
80
+ },
81
+ {
82
+ inputs: [
83
+ {
84
+ internalType: "address",
85
+ name: "_owner",
86
+ type: "address",
87
+ },
88
+ ],
89
+ name: "initialize",
90
+ outputs: [],
91
+ stateMutability: "nonpayable",
92
+ type: "function",
93
+ },
94
+ {
95
+ inputs: [],
96
+ name: "moduleType",
97
+ outputs: [
98
+ {
99
+ internalType: "uint8",
100
+ name: "",
101
+ type: "uint8",
102
+ },
103
+ ],
104
+ stateMutability: "view",
105
+ type: "function",
106
+ },
107
+ {
108
+ inputs: [
109
+ {
110
+ internalType: "uint32",
111
+ name: "",
112
+ type: "uint32",
113
+ },
114
+ ],
115
+ name: "modules",
116
+ outputs: [
117
+ {
118
+ internalType: "contract IInterchainSecurityModule",
119
+ name: "",
120
+ type: "address",
121
+ },
122
+ ],
123
+ stateMutability: "view",
124
+ type: "function",
125
+ },
126
+ {
127
+ inputs: [],
128
+ name: "owner",
129
+ outputs: [
130
+ {
131
+ internalType: "address",
132
+ name: "",
133
+ type: "address",
134
+ },
135
+ ],
136
+ stateMutability: "view",
137
+ type: "function",
138
+ },
139
+ {
140
+ inputs: [],
141
+ name: "renounceOwnership",
142
+ outputs: [],
143
+ stateMutability: "nonpayable",
144
+ type: "function",
145
+ },
146
+ {
147
+ inputs: [
148
+ {
149
+ internalType: "bytes",
150
+ name: "_message",
151
+ type: "bytes",
152
+ },
153
+ ],
154
+ name: "route",
155
+ outputs: [
156
+ {
157
+ internalType: "contract IInterchainSecurityModule",
158
+ name: "",
159
+ type: "address",
160
+ },
161
+ ],
162
+ stateMutability: "view",
163
+ type: "function",
164
+ },
165
+ {
166
+ inputs: [
167
+ {
168
+ internalType: "uint32",
169
+ name: "_domain",
170
+ type: "uint32",
171
+ },
172
+ {
173
+ internalType: "contract IInterchainSecurityModule",
174
+ name: "_module",
175
+ type: "address",
176
+ },
177
+ ],
178
+ name: "set",
179
+ outputs: [],
180
+ stateMutability: "nonpayable",
181
+ type: "function",
182
+ },
183
+ {
184
+ inputs: [
185
+ {
186
+ internalType: "address",
187
+ name: "newOwner",
188
+ type: "address",
189
+ },
190
+ ],
191
+ name: "transferOwnership",
192
+ outputs: [],
193
+ stateMutability: "nonpayable",
194
+ type: "function",
195
+ },
196
+ {
197
+ inputs: [
198
+ {
199
+ internalType: "bytes",
200
+ name: "_metadata",
201
+ type: "bytes",
202
+ },
203
+ {
204
+ internalType: "bytes",
205
+ name: "_message",
206
+ type: "bytes",
207
+ },
208
+ ],
209
+ name: "verify",
210
+ outputs: [
211
+ {
212
+ internalType: "bool",
213
+ name: "",
214
+ type: "bool",
215
+ },
216
+ ],
217
+ stateMutability: "nonpayable",
218
+ type: "function",
219
+ },
220
+ ];
221
+ const _bytecode = "0x608060405234801561001057600080fd5b50610fc6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80638da5cb5b11610076578063c4d66de81161005b578063c4d66de81461019e578063f2fde38b146101b1578063f7e83aee146101c457600080fd5b80638da5cb5b1461016d5780639d8ecd851461018b57600080fd5b806354c05fbe116100a757806354c05fbe146101155780636465e69f1461014b578063715018a61461016557600080fd5b806315ce45a2146100c35780634c0a2ffc14610100575b600080fd5b6100d66100d1366004610bd3565b6101e7565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61011361010e366004610c50565b61029a565b005b6100d6610123366004610c87565b60656020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b610153600181565b60405160ff90911681526020016100f7565b6101136102b0565b60335473ffffffffffffffffffffffffffffffffffffffff166100d6565b610113610199366004610ce7565b6102c4565b6101136101ac366004610d6a565b610541565b6101136101bf366004610d6a565b6106dc565b6101d76101d2366004610d87565b610793565b60405190151581526020016100f7565b600080606560006101f88686610829565b63ffffffff16815260208101919091526040016000205473ffffffffffffffffffffffffffffffffffffffff16905080610293576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4e6f2049534d20666f756e6420666f72206f726967696e20646f6d61696e000060448201526064015b60405180910390fd5b9392505050565b6102a261084c565b6102ac82826108cd565b5050565b6102b861084c565b6102c260006109d9565b565b600054610100900460ff16158080156102e45750600054600160ff909116105b806102fe5750303b1580156102fe575060005460ff166001145b61038a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161028a565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156103e857600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6103f0610a50565b838214610459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6c656e677468206d69736d617463680000000000000000000000000000000000604482015260640161028a565b8360005b818110156104cb576104bb87878381811061047a5761047a610df3565b905060200201602081019061048f9190610c87565b8686848181106104a1576104a1610df3565b90506020020160208101906104b69190610d6a565b6108cd565b6104c481610e22565b905061045d565b506104d5876109d9565b50801561053957600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b600054610100900460ff16158080156105615750600054600160ff909116105b8061057b5750303b15801561057b575060005460ff166001145b610607576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a6564000000000000000000000000000000000000606482015260840161028a565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561066557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b61066d610a50565b610676826109d9565b80156102ac57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6106e461084c565b73ffffffffffffffffffffffffffffffffffffffff8116610787576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161028a565b610790816109d9565b50565b600061079f83836101e7565b73ffffffffffffffffffffffffffffffffffffffff1663f7e83aee868686866040518563ffffffff1660e01b81526004016107dd9493929190610eca565b6020604051808303816000875af11580156107fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108209190610efc565b95945050505050565b6000610839600960058486610f1e565b61084291610f48565b60e01c9392505050565b60335473ffffffffffffffffffffffffffffffffffffffff1633146102c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161028a565b73ffffffffffffffffffffffffffffffffffffffff81163b61094b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e74726163740000000000000000000000000000000000000000000000604482015260640161028a565b63ffffffff821660008181526065602090815260409182902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff861690811790915591519182527f834d0c4fb66203b6219238b31d4180fd7d009ac15b986467828687a59ee9f1db910160405180910390a25050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610ae7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161028a565b6102c2600054610100900460ff16610b81576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e67000000000000000000000000000000000000000000606482015260840161028a565b6102c2336109d9565b60008083601f840112610b9c57600080fd5b50813567ffffffffffffffff811115610bb457600080fd5b602083019150836020828501011115610bcc57600080fd5b9250929050565b60008060208385031215610be657600080fd5b823567ffffffffffffffff811115610bfd57600080fd5b610c0985828601610b8a565b90969095509350505050565b803563ffffffff81168114610c2957600080fd5b919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461079057600080fd5b60008060408385031215610c6357600080fd5b610c6c83610c15565b91506020830135610c7c81610c2e565b809150509250929050565b600060208284031215610c9957600080fd5b61029382610c15565b60008083601f840112610cb457600080fd5b50813567ffffffffffffffff811115610ccc57600080fd5b6020830191508360208260051b8501011115610bcc57600080fd5b600080600080600060608688031215610cff57600080fd5b8535610d0a81610c2e565b9450602086013567ffffffffffffffff80821115610d2757600080fd5b610d3389838a01610ca2565b90965094506040880135915080821115610d4c57600080fd5b50610d5988828901610ca2565b969995985093965092949392505050565b600060208284031215610d7c57600080fd5b813561029381610c2e565b60008060008060408587031215610d9d57600080fd5b843567ffffffffffffffff80821115610db557600080fd5b610dc188838901610b8a565b90965094506020870135915080821115610dda57600080fd5b50610de787828801610b8a565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e7a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000610ede604083018688610e81565b8281036020840152610ef1818587610e81565b979650505050505050565b600060208284031215610f0e57600080fd5b8151801515811461029357600080fd5b60008085851115610f2e57600080fd5b83861115610f3b57600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015610f885780818660040360031b1b83161692505b50509291505056fea26469706673582212202278be82744491919bcd3098f5fa4cc6749089ebb166a6aec186a7d51d7ce41464736f6c63430008110033";
222
+ const isSuperArgs = (xs) => xs.length > 1;
223
+ class DomainRoutingIsm__factory extends ethers_1.ContractFactory {
224
+ constructor(...args) {
225
+ if (isSuperArgs(args)) {
226
+ super(...args);
227
+ }
228
+ else {
229
+ super(_abi, _bytecode, args[0]);
230
+ }
231
+ }
232
+ deploy(overrides) {
233
+ return super.deploy(overrides || {});
234
+ }
235
+ getDeployTransaction(overrides) {
236
+ return super.getDeployTransaction(overrides || {});
237
+ }
238
+ attach(address) {
239
+ return super.attach(address);
240
+ }
241
+ connect(signer) {
242
+ return super.connect(signer);
243
+ }
244
+ static createInterface() {
245
+ return new ethers_1.utils.Interface(_abi);
246
+ }
247
+ static connect(address, signerOrProvider) {
248
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
249
+ }
250
+ }
251
+ exports.DomainRoutingIsm__factory = DomainRoutingIsm__factory;
252
+ DomainRoutingIsm__factory.bytecode = _bytecode;
253
+ DomainRoutingIsm__factory.abi = _abi;
254
+ //# sourceMappingURL=DomainRoutingIsm__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DomainRoutingIsm__factory.js","sourceRoot":"","sources":["../../../../../types/factories/contracts/isms/routing/DomainRoutingIsm__factory.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAU/C,mCAA6E;AAE7E,MAAM,IAAI,GAAG;IACX;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,OAAO;KACd;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,QAAQ;gBACtB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;aACf;YACD;gBACE,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,oCAAoC;gBAClD,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,OAAO;KACd;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,sBAAsB;QAC5B,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,UAAU;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,UAAU;aACjB;YACD;gBACE,YAAY,EAAE,sCAAsC;gBACpD,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,WAAW;aAClB;SACF;QACD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;aACd;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,QAAQ;gBACtB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,QAAQ;aACf;SACF;QACD,IAAI,EAAE,SAAS;QACf,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,oCAAoC;gBAClD,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,OAAO;QACb,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,oCAAoC;gBAClD,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,QAAQ;gBACtB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;aACf;YACD;gBACE,YAAY,EAAE,oCAAoC;gBAClD,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAO;aACd;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACF,CAAC;AAEF,MAAM,SAAS,GACb,g9PAAg9P,CAAC;AAMn9P,MAAM,WAAW,GAAG,CAClB,EAAqC,EACgB,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,yBAA0B,SAAQ,wBAAe;IAC5D,YAAY,GAAG,IAAuC;QACpD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;YACrB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;SAChB;aAAM;YACL,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;IACH,CAAC;IAEQ,MAAM,CACb,SAA2D;QAE3D,OAAO,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAA8B,CAAC;IACpE,CAAC;IACQ,oBAAoB,CAC3B,SAA2D;QAE3D,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IACQ,MAAM,CAAC,OAAe;QAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAqB,CAAC;IACnD,CAAC;IACQ,OAAO,CAAC,MAAc;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAA8B,CAAC;IAC5D,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,cAAK,CAAC,SAAS,CAAC,IAAI,CAA8B,CAAC;IAChE,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAqB,CAAC;IAC3E,CAAC;;AApCH,8DAqCC;AAXiB,kCAAQ,GAAG,SAAS,CAAC;AACrB,6BAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { InterchainAccountIsm, InterchainAccountIsmInterface } from "../../../../contracts/isms/routing/InterchainAccountIsm";
2
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
3
+ import { Signer, ContractFactory, Overrides } from "ethers";
4
+ declare type InterchainAccountIsmConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
5
+ export declare class InterchainAccountIsm__factory extends ContractFactory {
6
+ constructor(...args: InterchainAccountIsmConstructorParams);
7
+ deploy(_mailbox: string, overrides?: Overrides & {
8
+ from?: string | Promise<string>;
9
+ }): Promise<InterchainAccountIsm>;
10
+ getDeployTransaction(_mailbox: string, overrides?: Overrides & {
11
+ from?: string | Promise<string>;
12
+ }): TransactionRequest;
13
+ attach(address: string): InterchainAccountIsm;
14
+ connect(signer: Signer): InterchainAccountIsm__factory;
15
+ static readonly bytecode = "0x60a060405234801561001057600080fd5b5060405161056338038061056383398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516104d961008a600039600060f401526104d96000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806315ce45a2146100465780636465e69f14610083578063f7e83aee1461009d575b600080fd5b6100596100543660046102a9565b6100c0565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61008b600181565b60405160ff909116815260200161007a565b6100b06100ab3660046102eb565b610192565b604051901515815260200161007a565b6000806100d56100d08585610228565b610244565b905073ffffffffffffffffffffffffffffffffffffffff8116610189577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636e5f516e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561015d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101819190610357565b91505061018c565b90505b92915050565b600061019e83836100c0565b73ffffffffffffffffffffffffffffffffffffffff1663f7e83aee868686866040518563ffffffff1660e01b81526004016101dc94939291906103dd565b6020604051808303816000875af11580156101fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021f919061040f565b95945050505050565b36600061023883604d8187610431565b915091505b9250929050565b60006102546040602c8486610431565b61025d9161045b565b60601c9392505050565b60008083601f84011261027957600080fd5b50813567ffffffffffffffff81111561029157600080fd5b60208301915083602082850101111561023d57600080fd5b600080602083850312156102bc57600080fd5b823567ffffffffffffffff8111156102d357600080fd5b6102df85828601610267565b90969095509350505050565b6000806000806040858703121561030157600080fd5b843567ffffffffffffffff8082111561031957600080fd5b61032588838901610267565b9096509450602087013591508082111561033e57600080fd5b5061034b87828801610267565b95989497509550505050565b60006020828403121561036957600080fd5b815173ffffffffffffffffffffffffffffffffffffffff8116811461038d57600080fd5b9392505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b6040815260006103f1604083018688610394565b8281036020840152610404818587610394565b979650505050505050565b60006020828403121561042157600080fd5b8151801515811461038d57600080fd5b6000808585111561044157600080fd5b8386111561044e57600080fd5b5050820193919092039150565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000813581811691601485101561049b5780818660140360031b1b83161692505b50509291505056fea2646970667358221220ea613b7c788dd955f17a1f1ad7786a807273bcbb1ca12330ad86b7a482df850f64736f6c63430008110033";
16
+ static readonly abi: ({
17
+ inputs: {
18
+ internalType: string;
19
+ name: string;
20
+ type: string;
21
+ }[];
22
+ stateMutability: string;
23
+ type: string;
24
+ name?: undefined;
25
+ outputs?: undefined;
26
+ } | {
27
+ inputs: {
28
+ internalType: string;
29
+ name: string;
30
+ type: string;
31
+ }[];
32
+ name: string;
33
+ outputs: {
34
+ internalType: string;
35
+ name: string;
36
+ type: string;
37
+ }[];
38
+ stateMutability: string;
39
+ type: string;
40
+ })[];
41
+ static createInterface(): InterchainAccountIsmInterface;
42
+ static connect(address: string, signerOrProvider: Signer | Provider): InterchainAccountIsm;
43
+ }
44
+ export {};
45
+ //# sourceMappingURL=InterchainAccountIsm__factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InterchainAccountIsm__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/isms/routing/InterchainAccountIsm__factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,yDAAyD,CAAC;AACjE,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAmB,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AA2E7E,aAAK,qCAAqC,GACtC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,6BAA8B,SAAQ,eAAe;gBACpD,GAAG,IAAI,EAAE,qCAAqC;IAQjD,MAAM,CACb,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,GAC1D,OAAO,CAAC,oBAAoB,CAAC;IAMvB,oBAAoB,CAC3B,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,GAC1D,kBAAkB;IAGZ,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,oBAAoB;IAG7C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,6BAA6B;IAI/D,MAAM,CAAC,QAAQ,CAAC,QAAQ,8sFAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;SAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,6BAA6B;IAGvD,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAClC,oBAAoB;CAOxB"}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.InterchainAccountIsm__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ inputs: [
9
+ {
10
+ internalType: "address",
11
+ name: "_mailbox",
12
+ type: "address",
13
+ },
14
+ ],
15
+ stateMutability: "nonpayable",
16
+ type: "constructor",
17
+ },
18
+ {
19
+ inputs: [],
20
+ name: "moduleType",
21
+ outputs: [
22
+ {
23
+ internalType: "uint8",
24
+ name: "",
25
+ type: "uint8",
26
+ },
27
+ ],
28
+ stateMutability: "view",
29
+ type: "function",
30
+ },
31
+ {
32
+ inputs: [
33
+ {
34
+ internalType: "bytes",
35
+ name: "_message",
36
+ type: "bytes",
37
+ },
38
+ ],
39
+ name: "route",
40
+ outputs: [
41
+ {
42
+ internalType: "contract IInterchainSecurityModule",
43
+ name: "",
44
+ type: "address",
45
+ },
46
+ ],
47
+ stateMutability: "view",
48
+ type: "function",
49
+ },
50
+ {
51
+ inputs: [
52
+ {
53
+ internalType: "bytes",
54
+ name: "_metadata",
55
+ type: "bytes",
56
+ },
57
+ {
58
+ internalType: "bytes",
59
+ name: "_message",
60
+ type: "bytes",
61
+ },
62
+ ],
63
+ name: "verify",
64
+ outputs: [
65
+ {
66
+ internalType: "bool",
67
+ name: "",
68
+ type: "bool",
69
+ },
70
+ ],
71
+ stateMutability: "nonpayable",
72
+ type: "function",
73
+ },
74
+ ];
75
+ const _bytecode = "0x60a060405234801561001057600080fd5b5060405161056338038061056383398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516104d961008a600039600060f401526104d96000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806315ce45a2146100465780636465e69f14610083578063f7e83aee1461009d575b600080fd5b6100596100543660046102a9565b6100c0565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b61008b600181565b60405160ff909116815260200161007a565b6100b06100ab3660046102eb565b610192565b604051901515815260200161007a565b6000806100d56100d08585610228565b610244565b905073ffffffffffffffffffffffffffffffffffffffff8116610189577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636e5f516e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561015d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101819190610357565b91505061018c565b90505b92915050565b600061019e83836100c0565b73ffffffffffffffffffffffffffffffffffffffff1663f7e83aee868686866040518563ffffffff1660e01b81526004016101dc94939291906103dd565b6020604051808303816000875af11580156101fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021f919061040f565b95945050505050565b36600061023883604d8187610431565b915091505b9250929050565b60006102546040602c8486610431565b61025d9161045b565b60601c9392505050565b60008083601f84011261027957600080fd5b50813567ffffffffffffffff81111561029157600080fd5b60208301915083602082850101111561023d57600080fd5b600080602083850312156102bc57600080fd5b823567ffffffffffffffff8111156102d357600080fd5b6102df85828601610267565b90969095509350505050565b6000806000806040858703121561030157600080fd5b843567ffffffffffffffff8082111561031957600080fd5b61032588838901610267565b9096509450602087013591508082111561033e57600080fd5b5061034b87828801610267565b95989497509550505050565b60006020828403121561036957600080fd5b815173ffffffffffffffffffffffffffffffffffffffff8116811461038d57600080fd5b9392505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b6040815260006103f1604083018688610394565b8281036020840152610404818587610394565b979650505050505050565b60006020828403121561042157600080fd5b8151801515811461038d57600080fd5b6000808585111561044157600080fd5b8386111561044e57600080fd5b5050820193919092039150565b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000813581811691601485101561049b5780818660140360031b1b83161692505b50509291505056fea2646970667358221220ea613b7c788dd955f17a1f1ad7786a807273bcbb1ca12330ad86b7a482df850f64736f6c63430008110033";
76
+ const isSuperArgs = (xs) => xs.length > 1;
77
+ class InterchainAccountIsm__factory extends ethers_1.ContractFactory {
78
+ constructor(...args) {
79
+ if (isSuperArgs(args)) {
80
+ super(...args);
81
+ }
82
+ else {
83
+ super(_abi, _bytecode, args[0]);
84
+ }
85
+ }
86
+ deploy(_mailbox, overrides) {
87
+ return super.deploy(_mailbox, overrides || {});
88
+ }
89
+ getDeployTransaction(_mailbox, overrides) {
90
+ return super.getDeployTransaction(_mailbox, overrides || {});
91
+ }
92
+ attach(address) {
93
+ return super.attach(address);
94
+ }
95
+ connect(signer) {
96
+ return super.connect(signer);
97
+ }
98
+ static createInterface() {
99
+ return new ethers_1.utils.Interface(_abi);
100
+ }
101
+ static connect(address, signerOrProvider) {
102
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
103
+ }
104
+ }
105
+ exports.InterchainAccountIsm__factory = InterchainAccountIsm__factory;
106
+ InterchainAccountIsm__factory.bytecode = _bytecode;
107
+ InterchainAccountIsm__factory.abi = _abi;
108
+ //# sourceMappingURL=InterchainAccountIsm__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InterchainAccountIsm__factory.js","sourceRoot":"","sources":["../../../../../types/factories/contracts/isms/routing/InterchainAccountIsm__factory.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAU/C,mCAA6E;AAE7E,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,aAAa;KACpB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;aACd;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,oCAAoC;gBAClD,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAO;aACd;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACF,CAAC;AAEF,MAAM,SAAS,GACb,0sFAA0sF,CAAC;AAM7sF,MAAM,WAAW,GAAG,CAClB,EAAyC,EACY,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,6BAA8B,SAAQ,wBAAe;IAChE,YAAY,GAAG,IAA2C;QACxD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;YACrB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;SAChB;aAAM;YACL,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACjC;IACH,CAAC;IAEQ,MAAM,CACb,QAAgB,EAChB,SAA2D;QAE3D,OAAO,KAAK,CAAC,MAAM,CACjB,QAAQ,EACR,SAAS,IAAI,EAAE,CACiB,CAAC;IACrC,CAAC;IACQ,oBAAoB,CAC3B,QAAgB,EAChB,SAA2D;QAE3D,OAAO,KAAK,CAAC,oBAAoB,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IACQ,MAAM,CAAC,OAAe;QAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAyB,CAAC;IACvD,CAAC;IACQ,OAAO,CAAC,MAAc;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAkC,CAAC;IAChE,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,cAAK,CAAC,SAAS,CAAC,IAAI,CAAkC,CAAC;IACpE,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,iBAAQ,CACjB,OAAO,EACP,IAAI,EACJ,gBAAgB,CACO,CAAC;IAC5B,CAAC;;AA7CH,sEA8CC;AAfiB,sCAAQ,GAAG,SAAS,CAAC;AACrB,iCAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { AbstractRoutingIsm__factory } from "./AbstractRoutingIsm__factory";
2
+ export { DomainRoutingIsm__factory } from "./DomainRoutingIsm__factory";
3
+ export { DomainRoutingIsmFactory__factory } from "./DomainRoutingIsmFactory__factory";
4
+ export { InterchainAccountIsm__factory } from "./InterchainAccountIsm__factory";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/isms/routing/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InterchainAccountIsm__factory = exports.DomainRoutingIsmFactory__factory = exports.DomainRoutingIsm__factory = exports.AbstractRoutingIsm__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ var AbstractRoutingIsm__factory_1 = require("./AbstractRoutingIsm__factory");
8
+ Object.defineProperty(exports, "AbstractRoutingIsm__factory", { enumerable: true, get: function () { return AbstractRoutingIsm__factory_1.AbstractRoutingIsm__factory; } });
9
+ var DomainRoutingIsm__factory_1 = require("./DomainRoutingIsm__factory");
10
+ Object.defineProperty(exports, "DomainRoutingIsm__factory", { enumerable: true, get: function () { return DomainRoutingIsm__factory_1.DomainRoutingIsm__factory; } });
11
+ var DomainRoutingIsmFactory__factory_1 = require("./DomainRoutingIsmFactory__factory");
12
+ Object.defineProperty(exports, "DomainRoutingIsmFactory__factory", { enumerable: true, get: function () { return DomainRoutingIsmFactory__factory_1.DomainRoutingIsmFactory__factory; } });
13
+ var InterchainAccountIsm__factory_1 = require("./InterchainAccountIsm__factory");
14
+ Object.defineProperty(exports, "InterchainAccountIsm__factory", { enumerable: true, get: function () { return InterchainAccountIsm__factory_1.InterchainAccountIsm__factory; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../types/factories/contracts/isms/routing/index.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,6EAA4E;AAAnE,0IAAA,2BAA2B,OAAA;AACpC,yEAAwE;AAA/D,sIAAA,yBAAyB,OAAA;AAClC,uFAAsF;AAA7E,oJAAA,gCAAgC,OAAA;AACzC,iFAAgF;AAAvE,8IAAA,6BAA6B,OAAA"}
@@ -12,7 +12,7 @@ export declare class InterchainAccountRouter__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): InterchainAccountRouter;
14
14
  connect(signer: Signer): InterchainAccountRouter__factory;
15
- static readonly bytecode = "0x60e06040523480156200001157600080fd5b506040516200310238038062003102833981016040819052620000349162000152565b63ffffffff82166080526001600160a01b038116620000505750305b806040516200005f9062000144565b6001600160a01b039091168152602001604051809103906000f0801580156200008c573d6000803e3d6000fd5b506001600160a01b031660a0816001600160a01b0316815250506000620000c060a051620000d560201b620010b41760201c565b805160209091012060c05250620001a4915050565b6040517f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020820152606082811b6001600160601b03191660348301526e5af43d82803e903d91602b57fd5bf360881b6048830152906057016040516020818303038152906040529050919050565b6107f8806200290a83390190565b600080604083850312156200016657600080fd5b825163ffffffff811681146200017b57600080fd5b60208401519092506001600160a01b03811681146200019957600080fd5b809150509250929050565b60805160a05160c05161272f620001db60003960006117bd015260006107fa015260008181610c9e0152610fbf015261272f6000f3fe608060405234801561001057600080fd5b50600436106101ae5760003560e01c8063940c14dd116100ee578063de523cf311610097578063f1bd6f0a11610071578063f1bd6f0a146103d2578063f2fde38b146103e5578063f3c61d6b146103f8578063f8c8765e1461040b57600080fd5b8063de523cf31461038c578063e9198bf9146103ac578063ef96bb4b146103bf57600080fd5b8063b49c53a7116100c8578063b49c53a714610346578063d5438eae14610359578063dd91cc871461037957600080fd5b8063940c14dd1461030d5780639662e8ac14610320578063a5da36111461033357600080fd5b806339bb4ad91161015b5780635a007b7e116101355780635a007b7e146102b4578063715018a6146102d45780638da5cb5b146102dc5780638e45f8fc146102fa57600080fd5b806339bb4ad91461026c578063440df4f41461028c57806356d5d475146102a157600080fd5b80630e72cc061161018c5780630e72cc06146102265780631ddce514146102395780632ead72f61461024c57600080fd5b8063061197d5146101b357806309643ff7146101d95780630e258285146101ee575b600080fd5b6101c66101c1366004611d02565b61041e565b6040519081526020015b60405180910390f35b6101ec6101e7366004611d6c565b610446565b005b6102016101fc366004611dca565b61045e565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d0565b6101ec610234366004611dff565b610495565b6101c6610247366004611f4f565b6104a9565b6101c661025a366004611fb9565b60996020526000908152604090205481565b6066546102019073ffffffffffffffffffffffffffffffffffffffff1681565b6102946104f2565b6040516101d09190611fd6565b6101ec6102af366004612020565b610576565b6101c66102c2366004611fb9565b609a6020526000908152604090205481565b6101ec6106b1565b60335473ffffffffffffffffffffffffffffffffffffffff16610201565b6102016103083660046120a9565b6106c5565b61020161031b3660046120ff565b610708565b61020161032e3660046120a9565b6108cf565b6102016103413660046120ff565b6108f4565b6101ec61035436600461213c565b610979565b6065546102019073ffffffffffffffffffffffffffffffffffffffff1681565b6101c6610387366004612168565b610991565b6067546102019073ffffffffffffffffffffffffffffffffffffffff1681565b6101ec6103ba3660046121bd565b6109cb565b6102016103cd366004612229565b610aac565b6101ec6103e0366004611dff565b610d20565b6101ec6103f3366004611dff565b610d31565b6101ec610406366004611dff565b610de5565b6101ec61041936600461226c565b610df6565b60008061042d33868686611149565b905061043b8787878461116d565b979650505050505050565b61044e6112dc565b61045983838361135d565b505050565b63ffffffff8216600090815260996020908152604080832054609a90925282205461048a848383610aac565b925050505b92915050565b61049d6112dc565b6104a681611551565b50565b63ffffffff8416600090815260996020908152604080832054609a909252822054826104d8338389898961165f565b90506104e68884848461116d565b98975050505050505050565b6060609880548060200260200160405190810160405280929190818152602001828054801561056c57602002820191906000526020600020906000905b82829054906101000a900463ffffffff1663ffffffff168152602001906004019060208260030104928301926001038202915080841161052f5790505b5050505050905090565b60655473ffffffffffffffffffffffffffffffffffffffff1633146105fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f7800000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600080600061060b8585611720565b925092509250600061062088858961031b8790565b6040517f65604f8300000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff8216906365604f8390610675908590600401612361565b600060405180830381600087803b15801561068f57600080fd5b505af11580156106a3573d6000803e3d6000fd5b505050505050505050505050565b6106b96112dc565b6106c3600061173e565b565b60006106ff8573ffffffffffffffffffffffffffffffffffffffff861673ffffffffffffffffffffffffffffffffffffffff861685610708565b95945050505050565b6040805160e086901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018690526044820185905273ffffffffffffffffffffffffffffffffffffffff84166064808401919091528351808403909101815260849092019092528051910120600090600061078f826117b5565b905073ffffffffffffffffffffffffffffffffffffffff81163b6108c557604080517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000060208201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060601b1660348201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048820152815160378183030181526057909101909152610866600084836117e1565b6040805173ffffffffffffffffffffffffffffffffffffffff808916825283166020820152919350889163ffffffff8b16917fee33e8a4a721d99ee890b32b36b48bc5a14d276b7e2510763a52f839d178edf6910160405180910390a3505b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff83811690851661043b878284875b6040805160e086901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018690526044820185905273ffffffffffffffffffffffffffffffffffffffff841660648084019190915283518084039091018152608490920190925280519101206000906106ff906117b5565b6109816112dc565b61098d8282600061135d565b5050565b63ffffffff8316600090815260996020908152604080832054609a9092528220546109bf868383888861041e565b925050505b9392505050565b6109d36112dc565b828114610a3c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064016105f3565b60005b83811015610aa557610a93858583818110610a5c57610a5c612374565b9050602002016020810190610a719190611fb9565b848484818110610a8357610a83612374565b905060200201356000801b61135d565b610a9e6001826123a3565b9050610a3f565b5050505050565b600073ffffffffffffffffffffffffffffffffffffffff8316610b51576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f6e6f20726f757465722073706563696669656420666f722064657374696e617460448201527f696f6e000000000000000000000000000000000000000000000000000000000060648201526084016105f3565b604080517fd6000000000000000000000000000000000000000000000000000000000000006020808301919091527f94000000000000000000000000000000000000000000000000000000000000006021830152606086811b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000090811660228501527f01000000000000000000000000000000000000000000000000000000000000006036850152845160178186030181526037850186528051908401207f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000060578601529182901b16606b8401527f5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000607f8401528351606e818503018152608e840185528051818401207fffffffff000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060e01b1660ae86015273ffffffffffffffffffffffffffffffffffffffff8a811660b28701523060d2870152881660f2808701919091528651808703909101815261011290950190955283519390920192909220919290916104e6818389611940565b610d286112dc565b6104a68161196a565b610d396112dc565b73ffffffffffffffffffffffffffffffffffffffff8116610ddc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105f3565b6104a68161173e565b610ded6112dc565b6104a681611a59565b600054610100900460ff1615808015610e165750600054600160ff909116105b80610e305750303b158015610e30575060005460ff166001145b610ebc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105f3565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610f1a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610f2685858585611b48565b606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638d3638f46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb791906123dd565b63ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff161461104b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f646f6d61696e206d69736d61746368000000000000000000000000000000000060448201526064016105f3565b8015610aa557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b6040517f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020820152606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660348301527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048830152906057016040516020818303038152906040529050919050565b60606106ff73ffffffffffffffffffffffffffffffffffffffff8616858585611c09565b6000836111fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f6e6f20726f757465722073706563696669656420666f722064657374696e617460448201527f696f6e000000000000000000000000000000000000000000000000000000000060648201526084016105f3565b6040805185815260208101859052339163ffffffff8816917f4fd2d122031a8a1e6c1aed1e9128109dff5ce6b929edfa90cc52abd95f086e73910160405180910390a36065546040517ffa31de0100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063fa31de0190611299908890889087906004016123fa565b6020604051808303816000875af11580156112b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ff919061241f565b60335473ffffffffffffffffffffffffffffffffffffffff1633146106c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105f3565b816113c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c696420726f7574657220616464726573730000000000000000000060448201526064016105f3565b63ffffffff831660009081526099602052604090205415611467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f726f7574657220616e642049534d2064656661756c74732061726520696d6d7560448201527f7461626c65206f6e63652073657400000000000000000000000000000000000060648201526084016105f3565b6098805460018101909155600881047f2237a976fa961f5921fd19f2b03c925c725d77b20ce8f790c19709c03de4d81401805463ffffffff86811660046007909516949094026101000a8481029102199091161790556000818152609960209081526040808320869055609a82529182902084905590518481527f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc6458910160405180910390a28263ffffffff167fba9685b280b1e8f64909e2dfd7465463e6a0eabbaafd732402e7a619699a38218260405161154491815260200190565b60405180910390a2505050565b73ffffffffffffffffffffffffffffffffffffffff8116158061158a575073ffffffffffffffffffffffffffffffffffffffff81163b15155b6115f0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105f3565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a250565b60408051600180825281830190925260609160009190816020015b6040805160608082018352600080835260208301529181019190915281526020019060019003908161167a5790505090506116b6858585611c3b565b816000815181106116c9576116c9612374565b60200260200101819052506116f18773ffffffffffffffffffffffffffffffffffffffff1690565b868260405160200161170593929190612438565b60405160208183030381529060405291505095945050505050565b600080606061173184860186612457565b9250925092509250925092565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600061048f827f0000000000000000000000000000000000000000000000000000000000000000611c97565b60008347101561184d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064016105f3565b81516000036118b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016105f3565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff81166109c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016105f3565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b8073ffffffffffffffffffffffffffffffffffffffff81163b6119e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105f3565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b611ad8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105f3565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b600054610100900460ff16611bdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105f3565b611be884611a59565b611bf18361196a565b611bfa82611551565b611c038161173e565b50505050565b606084848484604051602001611c229493929190612594565b6040516020818303038152906040529050949350505050565b604080516060808201835260008083526020830152918101919091526040518060600160405280611c7f8673ffffffffffffffffffffffffffffffffffffffff1690565b81526020018481526020018381525090509392505050565b60006109c4838330611940565b63ffffffff811681146104a657600080fd5b60008083601f840112611cc857600080fd5b50813567ffffffffffffffff811115611ce057600080fd5b6020830191508360208260051b8501011115611cfb57600080fd5b9250929050565b600080600080600060808688031215611d1a57600080fd5b8535611d2581611ca4565b94506020860135935060408601359250606086013567ffffffffffffffff811115611d4f57600080fd5b611d5b88828901611cb6565b969995985093965092949392505050565b600080600060608486031215611d8157600080fd5b8335611d8c81611ca4565b95602085013595506040909401359392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611dc557600080fd5b919050565b60008060408385031215611ddd57600080fd5b8235611de881611ca4565b9150611df660208401611da1565b90509250929050565b600060208284031215611e1157600080fd5b6109c482611da1565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715611e6c57611e6c611e1a565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611eb957611eb9611e1a565b604052919050565b600082601f830112611ed257600080fd5b813567ffffffffffffffff811115611eec57611eec611e1a565b611f1d60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611e72565b818152846020838601011115611f3257600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060808587031215611f6557600080fd5b8435611f7081611ca4565b9350611f7e60208601611da1565b925060408501359150606085013567ffffffffffffffff811115611fa157600080fd5b611fad87828801611ec1565b91505092959194509250565b600060208284031215611fcb57600080fd5b81356109c481611ca4565b6020808252825182820181905260009190848201906040850190845b8181101561201457835163ffffffff1683529284019291840191600101611ff2565b50909695505050505050565b6000806000806060858703121561203657600080fd5b843561204181611ca4565b935060208501359250604085013567ffffffffffffffff8082111561206557600080fd5b818701915087601f83011261207957600080fd5b81358181111561208857600080fd5b88602082850101111561209a57600080fd5b95989497505060200194505050565b600080600080608085870312156120bf57600080fd5b84356120ca81611ca4565b93506120d860208601611da1565b92506120e660408601611da1565b91506120f460608601611da1565b905092959194509250565b6000806000806080858703121561211557600080fd5b843561212081611ca4565b935060208501359250604085013591506120f460608601611da1565b6000806040838503121561214f57600080fd5b823561215a81611ca4565b946020939093013593505050565b60008060006040848603121561217d57600080fd5b833561218881611ca4565b9250602084013567ffffffffffffffff8111156121a457600080fd5b6121b086828701611cb6565b9497909650939450505050565b600080600080604085870312156121d357600080fd5b843567ffffffffffffffff808211156121eb57600080fd5b6121f788838901611cb6565b9096509450602087013591508082111561221057600080fd5b5061221d87828801611cb6565b95989497509550505050565b60008060006060848603121561223e57600080fd5b61224784611da1565b925061225560208501611da1565b915061226360408501611da1565b90509250925092565b6000806000806080858703121561228257600080fd5b6120ca85611da1565b6000815180845260005b818110156122b157602081850181015186830182015201612295565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6000815180845260208085019450848260051b860182860160005b8581101561235457838303895281518051845285810151868501526040908101516060918501829052906123408186018361228b565b9a87019a945050509084019060010161230a565b5090979650505050505050565b6020815260006109c460208301846122ef565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b8082018082111561048f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000602082840312156123ef57600080fd5b81516109c481611ca4565b63ffffffff841681528260208201526060604082015260006106ff606083018461228b565b60006020828403121561243157600080fd5b5051919050565b8381528260208201526060604082015260006106ff60608301846122ef565b60008060006060848603121561246c57600080fd5b833592506020808501359250604085013567ffffffffffffffff8082111561249357600080fd5b818701915087601f8301126124a757600080fd5b8135818111156124b9576124b9611e1a565b8060051b6124c8858201611e72565b918252838101850191858101908b8411156124e257600080fd5b86860192505b83831015612583578235858111156125005760008081fd5b86016060818e037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00112156125355760008081fd5b61253d611e49565b88820135815260408201358982015260608201358781111561255f5760008081fd5b61256d8f8b83860101611ec1565b60408301525083525091860191908601906124e8565b809750505050505050509250925092565b60006060808301878452602087818601526040838187015282878452608093508387019050838860051b8801018960005b8a8110156126e7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808a840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa18d360301811261262657600080fd5b8c0180358452868101358785015285810135368290037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe101811261266957600080fd5b01868101903567ffffffffffffffff81111561268457600080fd5b80360382131561269357600080fd5b8987860152808a86015280828a87013760008582018a015294870194601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690930187019250908501906001016125c5565b50909c9b50505050505050505050505056fea2646970667358221220f58d8b1fc1933ea74ba8134b697d4ab4514cc40ecf2abdad4190f9e7e78414dc64736f6c6343000811003360a060405234801561001057600080fd5b506040516107f83803806107f883398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161076861009060003960008181606d015260d001526107686000f3fe60806040526004361061002d5760003560e01c806365604f83146100395780638da5cb5b1461005b57600080fd5b3661003457005b600080fd5b34801561004557600080fd5b506100596100543660046103f7565b6100b8565b005b34801561006757600080fd5b5061008f7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461015c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f216f776e6572000000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b61016e6101698284610513565b610172565b5050565b80516000905b808210156101ae576101a283838151811061019557610195610649565b60200260200101516101b3565b50816001019150610178565b505050565b80516060906101cb90836040015184602001516101d1565b92915050565b60606101f784848460405180606001604052806029815260200161070a602991396101ff565b949350505050565b606082471015610291576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610153565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516102ba919061069c565b60006040518083038185875af1925050503d80600081146102f7576040519150601f19603f3d011682016040523d82523d6000602084013e6102fc565b606091505b509150915061030d87838387610318565b979650505050505050565b606083156103ae5782516000036103a75773ffffffffffffffffffffffffffffffffffffffff85163b6103a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610153565b50816101f7565b6101f783838151156103c35781518083602001fd5b806040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161015391906106b8565b6000806020838503121561040a57600080fd5b823567ffffffffffffffff8082111561042257600080fd5b818501915085601f83011261043657600080fd5b81358181111561044557600080fd5b8660208260051b850101111561045a57600080fd5b60209290920196919550909350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516060810167ffffffffffffffff811182821017156104be576104be61046c565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561050b5761050b61046c565b604052919050565b600067ffffffffffffffff8084111561052e5761052e61046c565b8360051b602061053f8183016104c4565b86815291850191818101903684111561055757600080fd5b865b8481101561063d578035868111156105715760008081fd5b880160603682900312156105855760008081fd5b61058d61049b565b813581528582013586820152604080830135898111156105ad5760008081fd5b9290920191601f36818501126105c35760008081fd5b83358a8111156105d5576105d561046c565b610604897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe084840116016104c4565b9150808252368982870101111561061b5760008081fd5b808986018a840137600090820189015290820152845250918301918301610559565b50979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b8381101561069357818101518382015260200161067b565b50506000910152565b600082516106ae818460208701610678565b9190910192915050565b60208152600082518060208401526106d7816040850160208701610678565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a264697066735822122034404533c9ccf1b4047181fc80a826748034c6b8fcbd897a7f6cfa6b9256f04d64736f6c63430008110033";
15
+ static readonly bytecode = "0x60e06040523480156200001157600080fd5b506040516200310238038062003102833981016040819052620000349162000152565b63ffffffff82166080526001600160a01b038116620000505750305b806040516200005f9062000144565b6001600160a01b039091168152602001604051809103906000f0801580156200008c573d6000803e3d6000fd5b506001600160a01b031660a0816001600160a01b0316815250506000620000c060a051620000d560201b620010b41760201c565b805160209091012060c05250620001a4915050565b6040517f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020820152606082811b6001600160601b03191660348301526e5af43d82803e903d91602b57fd5bf360881b6048830152906057016040516020818303038152906040529050919050565b6107f8806200290a83390190565b600080604083850312156200016657600080fd5b825163ffffffff811681146200017b57600080fd5b60208401519092506001600160a01b03811681146200019957600080fd5b809150509250929050565b60805160a05160c05161272f620001db60003960006117bd015260006107fa015260008181610c9e0152610fbf015261272f6000f3fe608060405234801561001057600080fd5b50600436106101ae5760003560e01c8063940c14dd116100ee578063de523cf311610097578063f1bd6f0a11610071578063f1bd6f0a146103d2578063f2fde38b146103e5578063f3c61d6b146103f8578063f8c8765e1461040b57600080fd5b8063de523cf31461038c578063e9198bf9146103ac578063ef96bb4b146103bf57600080fd5b8063b49c53a7116100c8578063b49c53a714610346578063d5438eae14610359578063dd91cc871461037957600080fd5b8063940c14dd1461030d5780639662e8ac14610320578063a5da36111461033357600080fd5b806339bb4ad91161015b5780635a007b7e116101355780635a007b7e146102b4578063715018a6146102d45780638da5cb5b146102dc5780638e45f8fc146102fa57600080fd5b806339bb4ad91461026c578063440df4f41461028c57806356d5d475146102a157600080fd5b80630e72cc061161018c5780630e72cc06146102265780631ddce514146102395780632ead72f61461024c57600080fd5b8063061197d5146101b357806309643ff7146101d95780630e258285146101ee575b600080fd5b6101c66101c1366004611d02565b61041e565b6040519081526020015b60405180910390f35b6101ec6101e7366004611d6c565b610446565b005b6102016101fc366004611dca565b61045e565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101d0565b6101ec610234366004611dff565b610495565b6101c6610247366004611f4f565b6104a9565b6101c661025a366004611fb9565b60996020526000908152604090205481565b6066546102019073ffffffffffffffffffffffffffffffffffffffff1681565b6102946104f2565b6040516101d09190611fd6565b6101ec6102af366004612020565b610576565b6101c66102c2366004611fb9565b609a6020526000908152604090205481565b6101ec6106b1565b60335473ffffffffffffffffffffffffffffffffffffffff16610201565b6102016103083660046120a9565b6106c5565b61020161031b3660046120ff565b610708565b61020161032e3660046120a9565b6108cf565b6102016103413660046120ff565b6108f4565b6101ec61035436600461213c565b610979565b6065546102019073ffffffffffffffffffffffffffffffffffffffff1681565b6101c6610387366004612168565b610991565b6067546102019073ffffffffffffffffffffffffffffffffffffffff1681565b6101ec6103ba3660046121bd565b6109cb565b6102016103cd366004612229565b610aac565b6101ec6103e0366004611dff565b610d20565b6101ec6103f3366004611dff565b610d31565b6101ec610406366004611dff565b610de5565b6101ec61041936600461226c565b610df6565b60008061042d33868686611149565b905061043b8787878461116d565b979650505050505050565b61044e6112dc565b61045983838361135d565b505050565b63ffffffff8216600090815260996020908152604080832054609a90925282205461048a848383610aac565b925050505b92915050565b61049d6112dc565b6104a681611551565b50565b63ffffffff8416600090815260996020908152604080832054609a909252822054826104d8338389898961165f565b90506104e68884848461116d565b98975050505050505050565b6060609880548060200260200160405190810160405280929190818152602001828054801561056c57602002820191906000526020600020906000905b82829054906101000a900463ffffffff1663ffffffff168152602001906004019060208260030104928301926001038202915080841161052f5790505b5050505050905090565b60655473ffffffffffffffffffffffffffffffffffffffff1633146105fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f7800000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b600080600061060b8585611720565b925092509250600061062088858961031b8790565b6040517f65604f8300000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff8216906365604f8390610675908590600401612361565b600060405180830381600087803b15801561068f57600080fd5b505af11580156106a3573d6000803e3d6000fd5b505050505050505050505050565b6106b96112dc565b6106c3600061173e565b565b60006106ff8573ffffffffffffffffffffffffffffffffffffffff861673ffffffffffffffffffffffffffffffffffffffff861685610708565b95945050505050565b6040805160e086901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018690526044820185905273ffffffffffffffffffffffffffffffffffffffff84166064808401919091528351808403909101815260849092019092528051910120600090600061078f826117b5565b905073ffffffffffffffffffffffffffffffffffffffff81163b6108c557604080517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000060208201527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060601b1660348201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048820152815160378183030181526057909101909152610866600084836117e1565b6040805173ffffffffffffffffffffffffffffffffffffffff808916825283166020820152919350889163ffffffff8b16917fee33e8a4a721d99ee890b32b36b48bc5a14d276b7e2510763a52f839d178edf6910160405180910390a3505b9695505050505050565b600073ffffffffffffffffffffffffffffffffffffffff83811690851661043b878284875b6040805160e086901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018690526044820185905273ffffffffffffffffffffffffffffffffffffffff841660648084019190915283518084039091018152608490920190925280519101206000906106ff906117b5565b6109816112dc565b61098d8282600061135d565b5050565b63ffffffff8316600090815260996020908152604080832054609a9092528220546109bf868383888861041e565b925050505b9392505050565b6109d36112dc565b828114610a3c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064016105f3565b60005b83811015610aa557610a93858583818110610a5c57610a5c612374565b9050602002016020810190610a719190611fb9565b848484818110610a8357610a83612374565b905060200201356000801b61135d565b610a9e6001826123a3565b9050610a3f565b5050505050565b600073ffffffffffffffffffffffffffffffffffffffff8316610b51576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f6e6f20726f757465722073706563696669656420666f722064657374696e617460448201527f696f6e000000000000000000000000000000000000000000000000000000000060648201526084016105f3565b604080517fd6000000000000000000000000000000000000000000000000000000000000006020808301919091527f94000000000000000000000000000000000000000000000000000000000000006021830152606086811b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000090811660228501527f01000000000000000000000000000000000000000000000000000000000000006036850152845160178186030181526037850186528051908401207f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000060578601529182901b16606b8401527f5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000607f8401528351606e818503018152608e840185528051818401207fffffffff000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000060e01b1660ae86015273ffffffffffffffffffffffffffffffffffffffff8a811660b28701523060d2870152881660f2808701919091528651808703909101815261011290950190955283519390920192909220919290916104e6818389611940565b610d286112dc565b6104a68161196a565b610d396112dc565b73ffffffffffffffffffffffffffffffffffffffff8116610ddc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016105f3565b6104a68161173e565b610ded6112dc565b6104a681611a59565b600054610100900460ff1615808015610e165750600054600160ff909116105b80610e305750303b158015610e30575060005460ff166001145b610ebc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105f3565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610f1a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610f2685858585611b48565b606560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638d3638f46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb791906123dd565b63ffffffff167f000000000000000000000000000000000000000000000000000000000000000063ffffffff161461104b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f646f6d61696e206d69736d61746368000000000000000000000000000000000060448201526064016105f3565b8015610aa557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b6040517f3d602d80600a3d3981f3363d3d373d3d3d363d730000000000000000000000006020820152606082811b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660348301527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006048830152906057016040516020818303038152906040529050919050565b60606106ff73ffffffffffffffffffffffffffffffffffffffff8616858585611c09565b6000836111fc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f6e6f20726f757465722073706563696669656420666f722064657374696e617460448201527f696f6e000000000000000000000000000000000000000000000000000000000060648201526084016105f3565b6040805185815260208101859052339163ffffffff8816917f4fd2d122031a8a1e6c1aed1e9128109dff5ce6b929edfa90cc52abd95f086e73910160405180910390a36065546040517ffa31de0100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063fa31de0190611299908890889087906004016123fa565b6020604051808303816000875af11580156112b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ff919061241f565b60335473ffffffffffffffffffffffffffffffffffffffff1633146106c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016105f3565b816113c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c696420726f7574657220616464726573730000000000000000000060448201526064016105f3565b63ffffffff831660009081526099602052604090205415611467576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f726f7574657220616e642049534d2064656661756c74732061726520696d6d7560448201527f7461626c65206f6e63652073657400000000000000000000000000000000000060648201526084016105f3565b6098805460018101909155600881047f2237a976fa961f5921fd19f2b03c925c725d77b20ce8f790c19709c03de4d81401805463ffffffff86811660046007909516949094026101000a8481029102199091161790556000818152609960209081526040808320869055609a82529182902084905590518481527f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc6458910160405180910390a28263ffffffff167fba9685b280b1e8f64909e2dfd7465463e6a0eabbaafd732402e7a619699a38218260405161154491815260200190565b60405180910390a2505050565b73ffffffffffffffffffffffffffffffffffffffff8116158061158a575073ffffffffffffffffffffffffffffffffffffffff81163b15155b6115f0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105f3565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a250565b60408051600180825281830190925260609160009190816020015b6040805160608082018352600080835260208301529181019190915281526020019060019003908161167a5790505090506116b6858585611c3b565b816000815181106116c9576116c9612374565b60200260200101819052506116f18773ffffffffffffffffffffffffffffffffffffffff1690565b868260405160200161170593929190612438565b60405160208183030381529060405291505095945050505050565b600080606061173184860186612457565b9250925092509250925092565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600061048f827f0000000000000000000000000000000000000000000000000000000000000000611c97565b60008347101561184d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064016105f3565b81516000036118b8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016105f3565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff81166109c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016105f3565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b8073ffffffffffffffffffffffffffffffffffffffff81163b6119e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105f3565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b611ad8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e7472616374000000000000000000000000000000000000000000000060448201526064016105f3565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b600054610100900460ff16611bdf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016105f3565b611be884611a59565b611bf18361196a565b611bfa82611551565b611c038161173e565b50505050565b606084848484604051602001611c229493929190612594565b6040516020818303038152906040529050949350505050565b604080516060808201835260008083526020830152918101919091526040518060600160405280611c7f8673ffffffffffffffffffffffffffffffffffffffff1690565b81526020018481526020018381525090509392505050565b60006109c4838330611940565b63ffffffff811681146104a657600080fd5b60008083601f840112611cc857600080fd5b50813567ffffffffffffffff811115611ce057600080fd5b6020830191508360208260051b8501011115611cfb57600080fd5b9250929050565b600080600080600060808688031215611d1a57600080fd5b8535611d2581611ca4565b94506020860135935060408601359250606086013567ffffffffffffffff811115611d4f57600080fd5b611d5b88828901611cb6565b969995985093965092949392505050565b600080600060608486031215611d8157600080fd5b8335611d8c81611ca4565b95602085013595506040909401359392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611dc557600080fd5b919050565b60008060408385031215611ddd57600080fd5b8235611de881611ca4565b9150611df660208401611da1565b90509250929050565b600060208284031215611e1157600080fd5b6109c482611da1565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715611e6c57611e6c611e1a565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611eb957611eb9611e1a565b604052919050565b600082601f830112611ed257600080fd5b813567ffffffffffffffff811115611eec57611eec611e1a565b611f1d60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611e72565b818152846020838601011115611f3257600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060808587031215611f6557600080fd5b8435611f7081611ca4565b9350611f7e60208601611da1565b925060408501359150606085013567ffffffffffffffff811115611fa157600080fd5b611fad87828801611ec1565b91505092959194509250565b600060208284031215611fcb57600080fd5b81356109c481611ca4565b6020808252825182820181905260009190848201906040850190845b8181101561201457835163ffffffff1683529284019291840191600101611ff2565b50909695505050505050565b6000806000806060858703121561203657600080fd5b843561204181611ca4565b935060208501359250604085013567ffffffffffffffff8082111561206557600080fd5b818701915087601f83011261207957600080fd5b81358181111561208857600080fd5b88602082850101111561209a57600080fd5b95989497505060200194505050565b600080600080608085870312156120bf57600080fd5b84356120ca81611ca4565b93506120d860208601611da1565b92506120e660408601611da1565b91506120f460608601611da1565b905092959194509250565b6000806000806080858703121561211557600080fd5b843561212081611ca4565b935060208501359250604085013591506120f460608601611da1565b6000806040838503121561214f57600080fd5b823561215a81611ca4565b946020939093013593505050565b60008060006040848603121561217d57600080fd5b833561218881611ca4565b9250602084013567ffffffffffffffff8111156121a457600080fd5b6121b086828701611cb6565b9497909650939450505050565b600080600080604085870312156121d357600080fd5b843567ffffffffffffffff808211156121eb57600080fd5b6121f788838901611cb6565b9096509450602087013591508082111561221057600080fd5b5061221d87828801611cb6565b95989497509550505050565b60008060006060848603121561223e57600080fd5b61224784611da1565b925061225560208501611da1565b915061226360408501611da1565b90509250925092565b6000806000806080858703121561228257600080fd5b6120ca85611da1565b6000815180845260005b818110156122b157602081850181015186830182015201612295565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6000815180845260208085019450848260051b860182860160005b8581101561235457838303895281518051845285810151868501526040908101516060918501829052906123408186018361228b565b9a87019a945050509084019060010161230a565b5090979650505050505050565b6020815260006109c460208301846122ef565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b8082018082111561048f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000602082840312156123ef57600080fd5b81516109c481611ca4565b63ffffffff841681528260208201526060604082015260006106ff606083018461228b565b60006020828403121561243157600080fd5b5051919050565b8381528260208201526060604082015260006106ff60608301846122ef565b60008060006060848603121561246c57600080fd5b833592506020808501359250604085013567ffffffffffffffff8082111561249357600080fd5b818701915087601f8301126124a757600080fd5b8135818111156124b9576124b9611e1a565b8060051b6124c8858201611e72565b918252838101850191858101908b8411156124e257600080fd5b86860192505b83831015612583578235858111156125005760008081fd5b86016060818e037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00112156125355760008081fd5b61253d611e49565b88820135815260408201358982015260608201358781111561255f5760008081fd5b61256d8f8b83860101611ec1565b60408301525083525091860191908601906124e8565b809750505050505050509250925092565b60006060808301878452602087818601526040838187015282878452608093508387019050838860051b8801018960005b8a8110156126e7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808a840301845281357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa18d360301811261262657600080fd5b8c0180358452868101358785015285810135368290037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe101811261266957600080fd5b01868101903567ffffffffffffffff81111561268457600080fd5b80360382131561269357600080fd5b8987860152808a86015280828a87013760008582018a015294870194601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690930187019250908501906001016125c5565b50909c9b50505050505050505050505056fea264697066735822122082f35cd9d77809325f3666b14b30bbc98364323019388208d6957d9b2044868d64736f6c6343000811003360a060405234801561001057600080fd5b506040516107f83803806107f883398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161076861009060003960008181606d015260d001526107686000f3fe60806040526004361061002d5760003560e01c806365604f83146100395780638da5cb5b1461005b57600080fd5b3661003457005b600080fd5b34801561004557600080fd5b506100596100543660046103f7565b6100b8565b005b34801561006757600080fd5b5061008f7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161461015c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f216f776e6572000000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b61016e6101698284610513565b610172565b5050565b80516000905b808210156101ae576101a283838151811061019557610195610649565b60200260200101516101b3565b50816001019150610178565b505050565b80516060906101cb90836040015184602001516101d1565b92915050565b60606101f784848460405180606001604052806029815260200161070a602991396101ff565b949350505050565b606082471015610291576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610153565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516102ba919061069c565b60006040518083038185875af1925050503d80600081146102f7576040519150601f19603f3d011682016040523d82523d6000602084013e6102fc565b606091505b509150915061030d87838387610318565b979650505050505050565b606083156103ae5782516000036103a75773ffffffffffffffffffffffffffffffffffffffff85163b6103a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610153565b50816101f7565b6101f783838151156103c35781518083602001fd5b806040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161015391906106b8565b6000806020838503121561040a57600080fd5b823567ffffffffffffffff8082111561042257600080fd5b818501915085601f83011261043657600080fd5b81358181111561044557600080fd5b8660208260051b850101111561045a57600080fd5b60209290920196919550909350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516060810167ffffffffffffffff811182821017156104be576104be61046c565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561050b5761050b61046c565b604052919050565b600067ffffffffffffffff8084111561052e5761052e61046c565b8360051b602061053f8183016104c4565b86815291850191818101903684111561055757600080fd5b865b8481101561063d578035868111156105715760008081fd5b880160603682900312156105855760008081fd5b61058d61049b565b813581528582013586820152604080830135898111156105ad5760008081fd5b9290920191601f36818501126105c35760008081fd5b83358a8111156105d5576105d561046c565b610604897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe084840116016104c4565b9150808252368982870101111561061b5760008081fd5b808986018a840137600090820189015290820152845250918301918301610559565b50979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b8381101561069357818101518382015260200161067b565b50506000910152565b600082516106ae818460208701610678565b9190910192915050565b60208152600082518060208401526106d7816040850160208701610678565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a264697066735822122034404533c9ccf1b4047181fc80a826748034c6b8fcbd897a7f6cfa6b9256f04d64736f6c63430008110033";
16
16
  static readonly abi: ({
17
17
  inputs: {
18
18
  internalType: string;