@hyperlane-xyz/core 1.3.8 → 1.4.1

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 (373) hide show
  1. package/contracts/hooks/{ERC5164MessageHook.sol → ERC5164/ERC5164MessageHook.sol} +4 -4
  2. package/contracts/hooks/OptimismMessageHook.sol +1 -1
  3. package/contracts/interfaces/IInterchainSecurityModule.sol +2 -2
  4. package/contracts/isms/{native/AbstractNativeISM.sol → hook/AbstractHookISM.sol} +4 -7
  5. package/contracts/isms/hook/CrossChainEnabled.sol +57 -0
  6. package/contracts/isms/{native → hook}/ERC5164ISM.sol +4 -4
  7. package/contracts/isms/hook/optimism/CrossChainEnabledOptimism.sol +50 -0
  8. package/contracts/isms/hook/optimism/LibOptimism.sol +41 -0
  9. package/contracts/isms/{native → hook/optimism}/OptimismISM.sol +8 -8
  10. package/contracts/middleware/InterchainAccountRouter.sol +8 -14
  11. package/dist/@openzeppelin/contracts/index.d.ts +0 -2
  12. package/dist/@openzeppelin/contracts/index.d.ts.map +1 -1
  13. package/dist/contracts/hooks/{ERC5164MessageHook.d.ts → ERC5164/ERC5164MessageHook.d.ts} +1 -1
  14. package/dist/contracts/hooks/ERC5164/ERC5164MessageHook.d.ts.map +1 -0
  15. package/dist/contracts/hooks/ERC5164/ERC5164MessageHook.js.map +1 -0
  16. package/dist/contracts/hooks/ERC5164/index.d.ts +1 -0
  17. package/dist/contracts/hooks/ERC5164/index.d.ts.map +1 -1
  18. package/dist/contracts/hooks/index.d.ts +0 -1
  19. package/dist/contracts/hooks/index.d.ts.map +1 -1
  20. package/dist/contracts/isms/{native/AbstractNativeISM.d.ts → hook/AbstractHookISM.d.ts} +11 -11
  21. package/dist/contracts/isms/hook/AbstractHookISM.d.ts.map +1 -0
  22. package/dist/contracts/isms/hook/AbstractHookISM.js +4 -0
  23. package/dist/contracts/isms/hook/AbstractHookISM.js.map +1 -0
  24. package/dist/contracts/isms/hook/CrossChainEnabled.d.ts +28 -0
  25. package/dist/contracts/isms/hook/CrossChainEnabled.d.ts.map +1 -0
  26. package/dist/contracts/isms/{native/AbstractNativeISM.js → hook/CrossChainEnabled.js} +1 -1
  27. package/dist/contracts/isms/hook/CrossChainEnabled.js.map +1 -0
  28. package/dist/contracts/isms/{native → hook}/ERC5164ISM.d.ts +7 -7
  29. package/dist/contracts/isms/hook/ERC5164ISM.d.ts.map +1 -0
  30. package/dist/contracts/isms/hook/ERC5164ISM.js.map +1 -0
  31. package/dist/contracts/isms/hook/index.d.ts +6 -0
  32. package/dist/contracts/isms/hook/index.d.ts.map +1 -0
  33. package/dist/contracts/isms/hook/index.js.map +1 -0
  34. package/dist/contracts/isms/hook/optimism/CrossChainEnabledOptimism.d.ts +28 -0
  35. package/dist/contracts/isms/hook/optimism/CrossChainEnabledOptimism.d.ts.map +1 -0
  36. package/dist/{@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger.js → contracts/isms/hook/optimism/CrossChainEnabledOptimism.js} +1 -1
  37. package/dist/contracts/isms/hook/optimism/CrossChainEnabledOptimism.js.map +1 -0
  38. package/dist/contracts/isms/hook/optimism/LibOptimism.d.ts +28 -0
  39. package/dist/contracts/isms/hook/optimism/LibOptimism.d.ts.map +1 -0
  40. package/dist/contracts/{libs/TestMerkle.sol/MerkleTree.js → isms/hook/optimism/LibOptimism.js} +1 -1
  41. package/dist/contracts/isms/hook/optimism/LibOptimism.js.map +1 -0
  42. package/dist/contracts/isms/{native → hook/optimism}/OptimismISM.d.ts +8 -8
  43. package/dist/contracts/isms/hook/optimism/OptimismISM.d.ts.map +1 -0
  44. package/dist/contracts/isms/hook/optimism/OptimismISM.js.map +1 -0
  45. package/dist/contracts/isms/hook/optimism/index.d.ts +4 -0
  46. package/dist/contracts/isms/hook/optimism/index.d.ts.map +1 -0
  47. package/dist/contracts/isms/hook/optimism/index.js.map +1 -0
  48. package/dist/contracts/isms/index.d.ts +2 -2
  49. package/dist/contracts/isms/index.d.ts.map +1 -1
  50. package/dist/factories/@openzeppelin/contracts/index.d.ts +0 -1
  51. package/dist/factories/@openzeppelin/contracts/index.d.ts.map +1 -1
  52. package/dist/factories/@openzeppelin/contracts/index.js +1 -2
  53. package/dist/factories/@openzeppelin/contracts/index.js.map +1 -1
  54. package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
  55. package/dist/factories/contracts/Mailbox__factory.js +1 -1
  56. package/dist/factories/contracts/ValidatorAnnounce__factory.d.ts +1 -1
  57. package/dist/factories/contracts/ValidatorAnnounce__factory.js +1 -1
  58. package/dist/factories/contracts/hooks/{ERC5164MessageHook__factory.d.ts → ERC5164/ERC5164MessageHook__factory.d.ts} +2 -2
  59. package/dist/factories/contracts/hooks/ERC5164/ERC5164MessageHook__factory.d.ts.map +1 -0
  60. package/dist/factories/contracts/hooks/{ERC5164MessageHook__factory.js → ERC5164/ERC5164MessageHook__factory.js} +1 -1
  61. package/dist/factories/contracts/hooks/ERC5164/ERC5164MessageHook__factory.js.map +1 -0
  62. package/dist/factories/contracts/hooks/ERC5164/index.d.ts +1 -0
  63. package/dist/factories/contracts/hooks/ERC5164/index.d.ts.map +1 -1
  64. package/dist/factories/contracts/hooks/ERC5164/index.js +3 -1
  65. package/dist/factories/contracts/hooks/ERC5164/index.js.map +1 -1
  66. package/dist/factories/contracts/hooks/OptimismMessageHook__factory.d.ts +1 -1
  67. package/dist/factories/contracts/hooks/OptimismMessageHook__factory.js +1 -1
  68. package/dist/factories/contracts/hooks/index.d.ts +0 -1
  69. package/dist/factories/contracts/hooks/index.d.ts.map +1 -1
  70. package/dist/factories/contracts/hooks/index.js +1 -3
  71. package/dist/factories/contracts/hooks/index.js.map +1 -1
  72. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
  73. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
  74. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
  75. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
  76. package/dist/factories/contracts/isms/{native/AbstractNativeISM__factory.d.ts → hook/AbstractHookISM__factory.d.ts} +5 -5
  77. package/dist/factories/contracts/isms/hook/AbstractHookISM__factory.d.ts.map +1 -0
  78. package/dist/factories/contracts/isms/{native/AbstractNativeISM__factory.js → hook/AbstractHookISM__factory.js} +12 -7
  79. package/dist/factories/contracts/isms/hook/AbstractHookISM__factory.js.map +1 -0
  80. package/dist/factories/contracts/isms/hook/CrossChainEnabled__factory.d.ts +17 -0
  81. package/dist/factories/contracts/isms/hook/CrossChainEnabled__factory.d.ts.map +1 -0
  82. package/dist/factories/contracts/isms/hook/CrossChainEnabled__factory.js +39 -0
  83. package/dist/factories/contracts/isms/hook/CrossChainEnabled__factory.js.map +1 -0
  84. package/dist/factories/contracts/isms/{native → hook}/ERC5164ISM__factory.d.ts +2 -2
  85. package/dist/factories/contracts/isms/hook/ERC5164ISM__factory.d.ts.map +1 -0
  86. package/dist/factories/contracts/isms/{native → hook}/ERC5164ISM__factory.js +8 -3
  87. package/dist/factories/contracts/isms/hook/ERC5164ISM__factory.js.map +1 -0
  88. package/dist/factories/contracts/isms/hook/index.d.ts +5 -0
  89. package/dist/factories/contracts/isms/hook/index.d.ts.map +1 -0
  90. package/dist/factories/{@openzeppelin/contracts/vendor → contracts/isms/hook}/index.js +7 -1
  91. package/dist/factories/contracts/isms/hook/index.js.map +1 -0
  92. package/dist/factories/contracts/isms/hook/optimism/CrossChainEnabledOptimism__factory.d.ts +17 -0
  93. package/dist/factories/contracts/isms/hook/optimism/CrossChainEnabledOptimism__factory.d.ts.map +1 -0
  94. package/dist/factories/contracts/isms/hook/optimism/CrossChainEnabledOptimism__factory.js +39 -0
  95. package/dist/factories/contracts/isms/hook/optimism/CrossChainEnabledOptimism__factory.js.map +1 -0
  96. package/dist/factories/contracts/isms/hook/optimism/LibOptimism__factory.d.ts +25 -0
  97. package/dist/factories/contracts/isms/hook/optimism/LibOptimism__factory.d.ts.map +1 -0
  98. package/dist/factories/contracts/isms/hook/optimism/LibOptimism__factory.js +46 -0
  99. package/dist/factories/contracts/isms/hook/optimism/LibOptimism__factory.js.map +1 -0
  100. package/dist/factories/contracts/isms/hook/optimism/OptimismISM__factory.d.ts +70 -0
  101. package/dist/factories/contracts/isms/hook/optimism/OptimismISM__factory.d.ts.map +1 -0
  102. package/dist/factories/contracts/isms/{native → hook/optimism}/OptimismISM__factory.js +29 -3
  103. package/dist/factories/contracts/isms/hook/optimism/OptimismISM__factory.js.map +1 -0
  104. package/dist/factories/contracts/isms/hook/optimism/index.d.ts +4 -0
  105. package/dist/factories/contracts/isms/hook/optimism/index.d.ts.map +1 -0
  106. package/dist/factories/contracts/isms/hook/optimism/index.js +13 -0
  107. package/dist/factories/contracts/isms/hook/optimism/index.js.map +1 -0
  108. package/dist/factories/contracts/isms/index.d.ts +1 -1
  109. package/dist/factories/contracts/isms/index.d.ts.map +1 -1
  110. package/dist/factories/contracts/isms/index.js +2 -2
  111. package/dist/factories/contracts/isms/index.js.map +1 -1
  112. package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.d.ts +1 -1
  113. package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.js +1 -1
  114. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
  115. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
  116. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +1 -1
  117. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +1 -1
  118. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
  119. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
  120. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +1 -1
  121. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +1 -1
  122. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.d.ts +1 -1
  123. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.js +1 -1
  124. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
  125. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
  126. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
  127. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
  128. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +3 -3
  129. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts.map +1 -1
  130. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +5 -10
  131. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js.map +1 -1
  132. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
  133. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
  134. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
  135. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
  136. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
  137. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
  138. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
  139. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
  140. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  141. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
  142. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
  143. package/dist/factories/contracts/mock/MockMailbox__factory.js +1 -1
  144. package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts +1 -1
  145. package/dist/factories/contracts/test/LightTestRecipient__factory.js +1 -1
  146. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
  147. package/dist/factories/contracts/test/TestGasRouter__factory.js +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/TestLegacyMultisigIsm__factory.d.ts +1 -1
  151. package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.js +1 -1
  152. package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  153. package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
  154. package/dist/factories/contracts/test/TestMultisigIsm__factory.d.ts +1 -1
  155. package/dist/factories/contracts/test/TestMultisigIsm__factory.js +1 -1
  156. package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  157. package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
  158. package/dist/factories/contracts/test/TestRecipient__factory.d.ts +1 -1
  159. package/dist/factories/contracts/test/TestRecipient__factory.js +1 -1
  160. package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
  161. package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
  162. package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
  163. package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
  164. package/dist/index.d.ts +14 -8
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +17 -11
  167. package/dist/index.js.map +1 -1
  168. package/package.json +3 -3
  169. package/dist/@openzeppelin/contracts/vendor/index.d.ts +0 -3
  170. package/dist/@openzeppelin/contracts/vendor/index.d.ts.map +0 -1
  171. package/dist/@openzeppelin/contracts/vendor/index.js.map +0 -1
  172. package/dist/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger.d.ts +0 -102
  173. package/dist/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger.d.ts.map +0 -1
  174. package/dist/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger.js.map +0 -1
  175. package/dist/@openzeppelin/contracts/vendor/optimism/index.d.ts +0 -2
  176. package/dist/@openzeppelin/contracts/vendor/optimism/index.d.ts.map +0 -1
  177. package/dist/@openzeppelin/contracts/vendor/optimism/index.js.map +0 -1
  178. package/dist/contracts/CheckpointFraudProofs.d.ts +0 -103
  179. package/dist/contracts/CheckpointFraudProofs.d.ts.map +0 -1
  180. package/dist/contracts/CheckpointFraudProofs.js +0 -4
  181. package/dist/contracts/CheckpointFraudProofs.js.map +0 -1
  182. package/dist/contracts/hooks/ERC5164MessageHook.d.ts.map +0 -1
  183. package/dist/contracts/hooks/ERC5164MessageHook.js.map +0 -1
  184. package/dist/contracts/isms/native/AbstractNativeISM.d.ts.map +0 -1
  185. package/dist/contracts/isms/native/AbstractNativeISM.js.map +0 -1
  186. package/dist/contracts/isms/native/ERC5164ISM.d.ts.map +0 -1
  187. package/dist/contracts/isms/native/ERC5164ISM.js.map +0 -1
  188. package/dist/contracts/isms/native/OptimismISM.d.ts.map +0 -1
  189. package/dist/contracts/isms/native/OptimismISM.js.map +0 -1
  190. package/dist/contracts/isms/native/index.d.ts +0 -4
  191. package/dist/contracts/isms/native/index.d.ts.map +0 -1
  192. package/dist/contracts/isms/native/index.js +0 -3
  193. package/dist/contracts/isms/native/index.js.map +0 -1
  194. package/dist/contracts/libs/TestMerkle.sol/MerkleTree.d.ts +0 -77
  195. package/dist/contracts/libs/TestMerkle.sol/MerkleTree.d.ts.map +0 -1
  196. package/dist/contracts/libs/TestMerkle.sol/MerkleTree.js.map +0 -1
  197. package/dist/contracts/libs/TestMerkle.sol/index.d.ts +0 -2
  198. package/dist/contracts/libs/TestMerkle.sol/index.d.ts.map +0 -1
  199. package/dist/contracts/libs/TestMerkle.sol/index.js +0 -3
  200. package/dist/contracts/libs/TestMerkle.sol/index.js.map +0 -1
  201. package/dist/factories/@openzeppelin/contracts/vendor/index.d.ts +0 -2
  202. package/dist/factories/@openzeppelin/contracts/vendor/index.d.ts.map +0 -1
  203. package/dist/factories/@openzeppelin/contracts/vendor/index.js.map +0 -1
  204. package/dist/factories/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger__factory.d.ts +0 -43
  205. package/dist/factories/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger__factory.d.ts.map +0 -1
  206. package/dist/factories/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger__factory.js +0 -117
  207. package/dist/factories/@openzeppelin/contracts/vendor/optimism/ICrossDomainMessenger__factory.js.map +0 -1
  208. package/dist/factories/@openzeppelin/contracts/vendor/optimism/index.d.ts +0 -2
  209. package/dist/factories/@openzeppelin/contracts/vendor/optimism/index.d.ts.map +0 -1
  210. package/dist/factories/@openzeppelin/contracts/vendor/optimism/index.js +0 -9
  211. package/dist/factories/@openzeppelin/contracts/vendor/optimism/index.js.map +0 -1
  212. package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts +0 -45
  213. package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts.map +0 -1
  214. package/dist/factories/contracts/CheckpointFraudProofs__factory.js +0 -231
  215. package/dist/factories/contracts/CheckpointFraudProofs__factory.js.map +0 -1
  216. package/dist/factories/contracts/hooks/ERC5164MessageHook__factory.d.ts.map +0 -1
  217. package/dist/factories/contracts/hooks/ERC5164MessageHook__factory.js.map +0 -1
  218. package/dist/factories/contracts/isms/native/AbstractNativeISM__factory.d.ts.map +0 -1
  219. package/dist/factories/contracts/isms/native/AbstractNativeISM__factory.js.map +0 -1
  220. package/dist/factories/contracts/isms/native/ERC5164ISM__factory.d.ts.map +0 -1
  221. package/dist/factories/contracts/isms/native/ERC5164ISM__factory.js.map +0 -1
  222. package/dist/factories/contracts/isms/native/OptimismISM__factory.d.ts +0 -66
  223. package/dist/factories/contracts/isms/native/OptimismISM__factory.d.ts.map +0 -1
  224. package/dist/factories/contracts/isms/native/OptimismISM__factory.js.map +0 -1
  225. package/dist/factories/contracts/isms/native/index.d.ts +0 -4
  226. package/dist/factories/contracts/isms/native/index.d.ts.map +0 -1
  227. package/dist/factories/contracts/isms/native/index.js +0 -13
  228. package/dist/factories/contracts/isms/native/index.js.map +0 -1
  229. package/dist/factories/contracts/libs/TestMerkle.sol/MerkleTree__factory.d.ts +0 -41
  230. package/dist/factories/contracts/libs/TestMerkle.sol/MerkleTree__factory.d.ts.map +0 -1
  231. package/dist/factories/contracts/libs/TestMerkle.sol/MerkleTree__factory.js +0 -151
  232. package/dist/factories/contracts/libs/TestMerkle.sol/MerkleTree__factory.js.map +0 -1
  233. package/dist/factories/contracts/libs/TestMerkle.sol/index.d.ts +0 -2
  234. package/dist/factories/contracts/libs/TestMerkle.sol/index.d.ts.map +0 -1
  235. package/dist/factories/contracts/libs/TestMerkle.sol/index.js +0 -9
  236. package/dist/factories/contracts/libs/TestMerkle.sol/index.js.map +0 -1
  237. package/docs/book.css +0 -13
  238. package/docs/book.toml +0 -12
  239. package/docs/solidity.min.js +0 -74
  240. package/docs/src/README.md +0 -15
  241. package/docs/src/SUMMARY.md +0 -128
  242. package/docs/src/contracts/GasRouter.sol/abstract.GasRouter.md +0 -124
  243. package/docs/src/contracts/HyperlaneConnectionClient.sol/abstract.HyperlaneConnectionClient.md +0 -191
  244. package/docs/src/contracts/Mailbox.sol/contract.Mailbox.md +0 -251
  245. package/docs/src/contracts/OwnableMulticall.sol/contract.OwnableMulticall.md +0 -41
  246. package/docs/src/contracts/PausableReentrancyGuard.sol/abstract.PausableReentrancyGuardUpgradeable.md +0 -100
  247. package/docs/src/contracts/README.md +0 -19
  248. package/docs/src/contracts/Router.sol/abstract.Router.md +0 -255
  249. package/docs/src/contracts/ValidatorAnnounce.sol/contract.ValidatorAnnounce.md +0 -117
  250. package/docs/src/contracts/hooks/OptimismMessageHook.sol/contract.OptimismMessageHook.md +0 -71
  251. package/docs/src/contracts/hooks/README.md +0 -4
  252. package/docs/src/contracts/igps/InterchainGasPaymaster.sol/contract.InterchainGasPaymaster.md +0 -231
  253. package/docs/src/contracts/igps/OverheadIgp.sol/contract.OverheadIgp.md +0 -161
  254. package/docs/src/contracts/igps/README.md +0 -6
  255. package/docs/src/contracts/igps/gas-oracles/README.md +0 -4
  256. package/docs/src/contracts/igps/gas-oracles/StorageGasOracle.sol/contract.StorageGasOracle.md +0 -114
  257. package/docs/src/contracts/interfaces/IGasOracle.sol/interface.IGasOracle.md +0 -25
  258. package/docs/src/contracts/interfaces/IHyperlaneConnectionClient.sol/interface.IHyperlaneConnectionClient.md +0 -43
  259. package/docs/src/contracts/interfaces/IInterchainGasPaymaster.sol/interface.IInterchainGasPaymaster.md +0 -33
  260. package/docs/src/contracts/interfaces/IInterchainSecurityModule.sol/interface.IInterchainSecurityModule.md +0 -55
  261. package/docs/src/contracts/interfaces/IInterchainSecurityModule.sol/interface.ISpecifiesInterchainSecurityModule.md +0 -12
  262. package/docs/src/contracts/interfaces/ILiquidityLayerMessageRecipient.sol/interface.ILiquidityLayerMessageRecipient.md +0 -13
  263. package/docs/src/contracts/interfaces/ILiquidityLayerRouter.sol/interface.ILiquidityLayerRouter.md +0 -19
  264. package/docs/src/contracts/interfaces/IMailbox.sol/interface.IMailbox.md +0 -103
  265. package/docs/src/contracts/interfaces/IMessageRecipient.sol/interface.IMessageRecipient.md +0 -12
  266. package/docs/src/contracts/interfaces/IRouter.sol/interface.IRouter.md +0 -33
  267. package/docs/src/contracts/interfaces/IValidatorAnnounce.sol/interface.IValidatorAnnounce.md +0 -78
  268. package/docs/src/contracts/interfaces/README.md +0 -17
  269. package/docs/src/contracts/interfaces/hooks/IMessageHook.sol/interface.IMessageHook.md +0 -12
  270. package/docs/src/contracts/interfaces/hooks/README.md +0 -4
  271. package/docs/src/contracts/interfaces/isms/IAggregationIsm.sol/interface.IAggregationIsm.md +0 -36
  272. package/docs/src/contracts/interfaces/isms/IMultisigIsm.sol/interface.IMultisigIsm.md +0 -36
  273. package/docs/src/contracts/interfaces/isms/IRoutingIsm.sol/interface.IRoutingIsm.md +0 -31
  274. package/docs/src/contracts/interfaces/isms/README.md +0 -6
  275. package/docs/src/contracts/interfaces/middleware/IInterchainAccountRouter.sol/interface.IInterchainAccountRouter.md +0 -64
  276. package/docs/src/contracts/interfaces/middleware/IInterchainQueryRouter.sol/interface.IInterchainQueryRouter.md +0 -21
  277. package/docs/src/contracts/interfaces/middleware/README.md +0 -5
  278. package/docs/src/contracts/isms/README.md +0 -7
  279. package/docs/src/contracts/isms/aggregation/AbstractAggregationIsm.sol/abstract.AbstractAggregationIsm.md +0 -60
  280. package/docs/src/contracts/isms/aggregation/README.md +0 -6
  281. package/docs/src/contracts/isms/aggregation/StaticAggregationIsm.sol/contract.StaticAggregationIsm.md +0 -30
  282. package/docs/src/contracts/isms/aggregation/StaticAggregationIsmFactory.sol/contract.StaticAggregationIsmFactory.md +0 -15
  283. package/docs/src/contracts/isms/multisig/AbstractMerkleRootMultisigIsm.sol/abstract.AbstractMerkleRootMultisigIsm.md +0 -78
  284. package/docs/src/contracts/isms/multisig/AbstractMessageIdMultisigIsm.sol/abstract.AbstractMessageIdMultisigIsm.md +0 -69
  285. package/docs/src/contracts/isms/multisig/AbstractMultisigIsm.sol/abstract.AbstractMultisigIsm.md +0 -102
  286. package/docs/src/contracts/isms/multisig/LegacyMultisigIsm.sol/contract.LegacyMultisigIsm.md +0 -355
  287. package/docs/src/contracts/isms/multisig/README.md +0 -12
  288. package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/abstract.AbstractMetaProxyMultisigIsm.md +0 -36
  289. package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMerkleRootMultisigIsm.md +0 -11
  290. package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMerkleRootMultisigIsmFactory.md +0 -15
  291. package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMessageIdMultisigIsm.md +0 -10
  292. package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMessageIdMultisigIsmFactory.md +0 -15
  293. package/docs/src/contracts/isms/native/AbstractNativeISM.sol/abstract.AbstractNativeISM.md +0 -44
  294. package/docs/src/contracts/isms/native/OptimismISM.sol/contract.OptimismISM.md +0 -66
  295. package/docs/src/contracts/isms/native/README.md +0 -5
  296. package/docs/src/contracts/isms/routing/AbstractRoutingIsm.sol/abstract.AbstractRoutingIsm.md +0 -55
  297. package/docs/src/contracts/isms/routing/DomainRoutingIsm.sol/contract.DomainRoutingIsm.md +0 -112
  298. package/docs/src/contracts/isms/routing/DomainRoutingIsmFactory.sol/contract.DomainRoutingIsmFactory.md +0 -47
  299. package/docs/src/contracts/isms/routing/InterchainAccountIsm.sol/contract.InterchainAccountIsm.md +0 -44
  300. package/docs/src/contracts/isms/routing/README.md +0 -7
  301. package/docs/src/contracts/libs/Call.sol/library.CallLib.md +0 -124
  302. package/docs/src/contracts/libs/CheckpointLib.sol/library.CheckpointLib.md +0 -61
  303. package/docs/src/contracts/libs/EnumerableMapExtended.sol/library.EnumerableMapExtended.md +0 -63
  304. package/docs/src/contracts/libs/LegacyCheckpointLib.sol/library.LegacyCheckpointLib.md +0 -55
  305. package/docs/src/contracts/libs/Merkle.sol/library.MerkleLib.md +0 -354
  306. package/docs/src/contracts/libs/Message.sol/library.Message.md +0 -304
  307. package/docs/src/contracts/libs/MetaProxy.sol/library.MetaProxy.md +0 -36
  308. package/docs/src/contracts/libs/MinimalProxy.sol/library.MinimalProxy.md +0 -34
  309. package/docs/src/contracts/libs/README.md +0 -16
  310. package/docs/src/contracts/libs/StaticMOfNAddressSetFactory.sol/abstract.StaticMOfNAddressSetFactory.md +0 -123
  311. package/docs/src/contracts/libs/TestMerkle.sol/contract.MerkleTree.md +0 -66
  312. package/docs/src/contracts/libs/TypeCasts.sol/library.TypeCasts.md +0 -19
  313. package/docs/src/contracts/libs/ValidatorAnnouncements.sol/library.ValidatorAnnouncements.md +0 -31
  314. package/docs/src/contracts/libs/isms/AggregationIsmMetadata.sol/library.AggregationIsmMetadata.md +0 -97
  315. package/docs/src/contracts/libs/isms/LegacyMultisigIsmMetadata.sol/library.LegacyMultisigIsmMetadata.md +0 -296
  316. package/docs/src/contracts/libs/isms/MerkleRootMultisigIsmMetadata.sol/library.MerkleRootMultisigIsmMetadata.md +0 -177
  317. package/docs/src/contracts/libs/isms/MessageIdMultisigIsmMetadata.sol/library.MessageIdMultisigIsmMetadata.md +0 -109
  318. package/docs/src/contracts/libs/isms/README.md +0 -7
  319. package/docs/src/contracts/libs/middleware/InterchainAccountMessage.sol/library.InterchainAccountMessage.md +0 -134
  320. package/docs/src/contracts/libs/middleware/InterchainQueryMessage.sol/library.InterchainQueryMessage.md +0 -203
  321. package/docs/src/contracts/libs/middleware/README.md +0 -5
  322. package/docs/src/contracts/middleware/InterchainAccountRouter.sol/contract.InterchainAccountRouter.md +0 -545
  323. package/docs/src/contracts/middleware/InterchainQueryRouter.sol/contract.InterchainQueryRouter.md +0 -119
  324. package/docs/src/contracts/middleware/README.md +0 -6
  325. package/docs/src/contracts/middleware/liquidity-layer/LiquidityLayerRouter.sol/contract.LiquidityLayerRouter.md +0 -81
  326. package/docs/src/contracts/middleware/liquidity-layer/README.md +0 -6
  327. package/docs/src/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.sol/contract.CircleBridgeAdapter.md +0 -197
  328. package/docs/src/contracts/middleware/liquidity-layer/adapters/PortalAdapter.sol/contract.PortalAdapter.md +0 -189
  329. package/docs/src/contracts/middleware/liquidity-layer/adapters/README.md +0 -5
  330. package/docs/src/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.sol/interface.ILiquidityLayerAdapter.md +0 -23
  331. package/docs/src/contracts/middleware/liquidity-layer/interfaces/README.md +0 -6
  332. package/docs/src/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.sol/interface.ICircleMessageTransmitter.md +0 -54
  333. package/docs/src/contracts/middleware/liquidity-layer/interfaces/circle/ITokenMessenger.sol/interface.ITokenMessenger.md +0 -92
  334. package/docs/src/contracts/middleware/liquidity-layer/interfaces/circle/README.md +0 -5
  335. package/docs/src/contracts/middleware/liquidity-layer/interfaces/portal/IPortalTokenBridge.sol/interface.IPortalTokenBridge.md +0 -131
  336. package/docs/src/contracts/middleware/liquidity-layer/interfaces/portal/README.md +0 -4
  337. package/docs/src/contracts/mock/MockCircleMessageTransmitter.sol/contract.MockCircleMessageTransmitter.md +0 -58
  338. package/docs/src/contracts/mock/MockCircleTokenMessenger.sol/contract.MockCircleTokenMessenger.md +0 -44
  339. package/docs/src/contracts/mock/MockHyperlaneEnvironment.sol/contract.MockHyperlaneEnvironment.md +0 -69
  340. package/docs/src/contracts/mock/MockMailbox.sol/contract.MockMailbox.md +0 -137
  341. package/docs/src/contracts/mock/MockPortalBridge.sol/contract.MockPortalBridge.md +0 -82
  342. package/docs/src/contracts/mock/MockToken.sol/contract.MockToken.md +0 -22
  343. package/docs/src/contracts/mock/README.md +0 -9
  344. package/docs/src/contracts/test/LightTestRecipient.sol/contract.LightTestRecipient.md +0 -15
  345. package/docs/src/contracts/test/README.md +0 -20
  346. package/docs/src/contracts/test/TestGasRouter.sol/contract.TestGasRouter.md +0 -27
  347. package/docs/src/contracts/test/TestHyperlaneConnectionClient.sol/contract.TestHyperlaneConnectionClient.md +0 -29
  348. package/docs/src/contracts/test/TestInterchainGasPaymaster.sol/contract.TestInterchainGasPaymaster.md +0 -30
  349. package/docs/src/contracts/test/TestLegacyMultisigIsm.sol/contract.TestLegacyMultisigIsm.md +0 -15
  350. package/docs/src/contracts/test/TestLiquidityLayerMessageRecipient.sol/contract.TestLiquidityLayerMessageRecipient.md +0 -23
  351. package/docs/src/contracts/test/TestMailbox.sol/contract.TestMailbox.md +0 -29
  352. package/docs/src/contracts/test/TestMerkle.sol/contract.TestMerkle.md +0 -50
  353. package/docs/src/contracts/test/TestMessage.sol/contract.TestMessage.md +0 -68
  354. package/docs/src/contracts/test/TestMultisigIsm.sol/contract.TestMultisigIsm.md +0 -51
  355. package/docs/src/contracts/test/TestQuery.sol/contract.TestQuery.md +0 -45
  356. package/docs/src/contracts/test/TestQuerySender.sol/contract.TestQuerySender.md +0 -128
  357. package/docs/src/contracts/test/TestRecipient.sol/contract.TestRecipient.md +0 -78
  358. package/docs/src/contracts/test/TestRouter.sol/contract.TestRouter.md +0 -63
  359. package/docs/src/contracts/test/TestSendReceiver.sol/contract.TestSendReceiver.md +0 -49
  360. package/docs/src/contracts/test/TestTokenRecipient.sol/contract.TestTokenRecipient.md +0 -80
  361. package/docs/src/contracts/test/bad-recipient/BadRecipient1.sol/contract.BadRecipient1.md +0 -15
  362. package/docs/src/contracts/test/bad-recipient/BadRecipient2.sol/contract.BadRecipient2.md +0 -12
  363. package/docs/src/contracts/test/bad-recipient/BadRecipient3.sol/contract.BadRecipient3.md +0 -15
  364. package/docs/src/contracts/test/bad-recipient/BadRecipient5.sol/contract.BadRecipient5.md +0 -15
  365. package/docs/src/contracts/test/bad-recipient/BadRecipient6.sol/contract.BadRecipient6.md +0 -15
  366. package/docs/src/contracts/test/bad-recipient/README.md +0 -8
  367. package/docs/src/contracts/upgrade/README.md +0 -4
  368. package/docs/src/contracts/upgrade/Versioned.sol/contract.Versioned.md +0 -14
  369. /package/dist/contracts/hooks/{ERC5164MessageHook.js → ERC5164/ERC5164MessageHook.js} +0 -0
  370. /package/dist/contracts/isms/{native → hook}/ERC5164ISM.js +0 -0
  371. /package/dist/{@openzeppelin/contracts/vendor → contracts/isms/hook}/index.js +0 -0
  372. /package/dist/contracts/isms/{native → hook/optimism}/OptimismISM.js +0 -0
  373. /package/dist/{@openzeppelin/contracts/vendor → contracts/isms/hook}/optimism/index.js +0 -0
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.CrossChainEnabledOptimism__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ inputs: [
9
+ {
10
+ internalType: "address",
11
+ name: "actual",
12
+ type: "address",
13
+ },
14
+ {
15
+ internalType: "address",
16
+ name: "expected",
17
+ type: "address",
18
+ },
19
+ ],
20
+ name: "InvalidCrossChainSender",
21
+ type: "error",
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: "NotCrossChainCall",
26
+ type: "error",
27
+ },
28
+ ];
29
+ class CrossChainEnabledOptimism__factory {
30
+ static createInterface() {
31
+ return new ethers_1.utils.Interface(_abi);
32
+ }
33
+ static connect(address, signerOrProvider) {
34
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
35
+ }
36
+ }
37
+ exports.CrossChainEnabledOptimism__factory = CrossChainEnabledOptimism__factory;
38
+ CrossChainEnabledOptimism__factory.abi = _abi;
39
+ //# sourceMappingURL=CrossChainEnabledOptimism__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CrossChainEnabledOptimism__factory.js","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/CrossChainEnabledOptimism__factory.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAU/C,mCAAiD;AAEjD,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,yBAAyB;QAC/B,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,OAAO;KACd;CACF,CAAC;AAEF,MAAa,kCAAkC;IAE7C,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,cAAK,CAAC,SAAS,CAAC,IAAI,CAAuC,CAAC;IACzE,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,iBAAQ,CACjB,OAAO,EACP,IAAI,EACJ,gBAAgB,CACY,CAAC;IACjC,CAAC;;AAdH,gFAeC;AAdiB,sCAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { LibOptimism, LibOptimismInterface } from "../../../../../contracts/isms/hook/optimism/LibOptimism";
2
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
3
+ import { Signer, ContractFactory, Overrides } from "ethers";
4
+ declare type LibOptimismConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
5
+ export declare class LibOptimism__factory extends ContractFactory {
6
+ constructor(...args: LibOptimismConstructorParams);
7
+ deploy(overrides?: Overrides & {
8
+ from?: string | Promise<string>;
9
+ }): Promise<LibOptimism>;
10
+ getDeployTransaction(overrides?: Overrides & {
11
+ from?: string | Promise<string>;
12
+ }): TransactionRequest;
13
+ attach(address: string): LibOptimism;
14
+ connect(signer: Signer): LibOptimism__factory;
15
+ static readonly bytecode = "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220dd02514cad8e588ecdc5383ebe17c462ec8b359e599f21a3d1ca2dd2a8143d2d64736f6c63430008110033";
16
+ static readonly abi: {
17
+ inputs: never[];
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ static createInterface(): LibOptimismInterface;
22
+ static connect(address: string, signerOrProvider: Signer | Provider): LibOptimism;
23
+ }
24
+ export {};
25
+ //# sourceMappingURL=LibOptimism__factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LibOptimism__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/LibOptimism__factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,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;AAa7E,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,MAAM,CACb,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,GAC1D,OAAO,CAAC,WAAW,CAAC;IAGd,oBAAoB,CAC3B,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,WAAW;IAGpC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB;IAItD,MAAM,CAAC,QAAQ,CAAC,QAAQ,kSAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;QAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAClC,WAAW;CAGf"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.LibOptimism__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ inputs: [],
9
+ name: "NotCrossChainCall",
10
+ type: "error",
11
+ },
12
+ ];
13
+ const _bytecode = "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220dd02514cad8e588ecdc5383ebe17c462ec8b359e599f21a3d1ca2dd2a8143d2d64736f6c63430008110033";
14
+ const isSuperArgs = (xs) => xs.length > 1;
15
+ class LibOptimism__factory extends ethers_1.ContractFactory {
16
+ constructor(...args) {
17
+ if (isSuperArgs(args)) {
18
+ super(...args);
19
+ }
20
+ else {
21
+ super(_abi, _bytecode, args[0]);
22
+ }
23
+ }
24
+ deploy(overrides) {
25
+ return super.deploy(overrides || {});
26
+ }
27
+ getDeployTransaction(overrides) {
28
+ return super.getDeployTransaction(overrides || {});
29
+ }
30
+ attach(address) {
31
+ return super.attach(address);
32
+ }
33
+ connect(signer) {
34
+ return super.connect(signer);
35
+ }
36
+ static createInterface() {
37
+ return new ethers_1.utils.Interface(_abi);
38
+ }
39
+ static connect(address, signerOrProvider) {
40
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
41
+ }
42
+ }
43
+ exports.LibOptimism__factory = LibOptimism__factory;
44
+ LibOptimism__factory.bytecode = _bytecode;
45
+ LibOptimism__factory.abi = _abi;
46
+ //# sourceMappingURL=LibOptimism__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LibOptimism__factory.js","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/LibOptimism__factory.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;AAU/C,mCAA6E;AAE7E,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,OAAO;KACd;CACF,CAAC;AAEF,MAAM,SAAS,GACb,8RAA8R,CAAC;AAMjS,MAAM,WAAW,GAAG,CAClB,EAAgC,EACqB,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,oBAAqB,SAAQ,wBAAe;IACvD,YAAY,GAAG,IAAkC;QAC/C,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,CAAyB,CAAC;IAC/D,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,CAAgB,CAAC;IAC9C,CAAC;IACQ,OAAO,CAAC,MAAc;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAyB,CAAC;IACvD,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,cAAK,CAAC,SAAS,CAAC,IAAI,CAAyB,CAAC;IAC3D,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAgB,CAAC;IACtE,CAAC;;AApCH,oDAqCC;AAXiB,6BAAQ,GAAG,SAAS,CAAC;AACrB,wBAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,70 @@
1
+ import type { OptimismISM, OptimismISMInterface } from "../../../../../contracts/isms/hook/optimism/OptimismISM";
2
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
3
+ import { Signer, ContractFactory, Overrides } from "ethers";
4
+ declare type OptimismISMConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
5
+ export declare class OptimismISM__factory extends ContractFactory {
6
+ constructor(...args: OptimismISMConstructorParams);
7
+ deploy(_l2Messenger: string, overrides?: Overrides & {
8
+ from?: string | Promise<string>;
9
+ }): Promise<OptimismISM>;
10
+ getDeployTransaction(_l2Messenger: string, overrides?: Overrides & {
11
+ from?: string | Promise<string>;
12
+ }): TransactionRequest;
13
+ attach(address: string): OptimismISM;
14
+ connect(signer: Signer): OptimismISM__factory;
15
+ static readonly bytecode = "0x60a060405234801561001057600080fd5b506040516109d63803806109d683398101604081905261002f916100b5565b6001600160a01b038116608052610050816100a6602090811b61054e17901c565b6100a05760405162461bcd60e51b815260206004820181905260248201527f4f7074696d69736d49534d3a20696e76616c6964204c324d657373656e676572604482015260640160405180910390fd5b506100e5565b6001600160a01b03163b151590565b6000602082840312156100c757600080fd5b81516001600160a01b03811681146100de57600080fd5b9392505050565b6080516108cf6101076000396000818161058301526105e001526108cf6000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80636465e69f116100505780636465e69f1461011457806386f8011f1461012e578063f7e83aee1461014157600080fd5b8063106ddb18146100775780635161ad8b146100c1578063529fe082146100d6575b600080fd5b6002546100979073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6100d46100cf3660046106f6565b610154565b005b6101046100e43660046106f6565b600160209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016100b8565b61011c600681565b60405160ff90911681526020016100b8565b6100d461013c36600461073d565b61028e565b61010461014f3660046107aa565b6104d6565b60025473ffffffffffffffffffffffffffffffffffffffff1661017561056a565b73ffffffffffffffffffffffffffffffffffffffff161461021d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4f7074696d69736d49534d3a2073656e646572206973206e6f7420746865206860448201527f6f6f6b000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b600081815260016020818152604080842086855290915280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690921790915551829184917ff9347035c6654873e4aa34118c96b53189dc92edcb628c7bad1f9bce9089ecfe9190a35050565b600054610100900460ff16158080156102ae5750600054600160ff909116105b806102c85750303b1580156102c8575060005460ff166001145b610354576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610214565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156103b257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff821661042f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7074696d69736d49534d3a20696e76616c6964206c31486f6f6b00000000006044820152606401610214565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905580156104d257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b60008061051884848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061060992505050565b905060006105268585610614565b60009283526001602090815260408085209285529190529091205460ff169695505050505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b600073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633146105db576040517f4a74df9200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6106047f0000000000000000000000000000000000000000000000000000000000000000610636565b905090565b805160209091012090565b6000610624602960098486610816565b61062d91610840565b90505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82163314610687576040517f4a74df9200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610630919061087c565b6000806040838503121561070957600080fd5b50508035926020909101359150565b73ffffffffffffffffffffffffffffffffffffffff8116811461073a57600080fd5b50565b60006020828403121561074f57600080fd5b813561075a81610718565b9392505050565b60008083601f84011261077357600080fd5b50813567ffffffffffffffff81111561078b57600080fd5b6020830191508360208285010111156107a357600080fd5b9250929050565b600080600080604085870312156107c057600080fd5b843567ffffffffffffffff808211156107d857600080fd5b6107e488838901610761565b909650945060208701359150808211156107fd57600080fd5b5061080a87828801610761565b95989497509550505050565b6000808585111561082657600080fd5b8386111561083357600080fd5b5050820193919092039150565b80356020831015610630577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b60006020828403121561088e57600080fd5b815161075a8161071856fea2646970667358221220ab16f5a2c29ceb53aa1e36020074bd24d7190179b0a15fffbbe6ef2850a734aa64736f6c63430008110033";
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
+ anonymous?: undefined;
26
+ outputs?: undefined;
27
+ } | {
28
+ inputs: {
29
+ internalType: string;
30
+ name: string;
31
+ type: string;
32
+ }[];
33
+ name: string;
34
+ type: string;
35
+ stateMutability?: undefined;
36
+ anonymous?: undefined;
37
+ outputs?: undefined;
38
+ } | {
39
+ anonymous: boolean;
40
+ inputs: {
41
+ indexed: boolean;
42
+ internalType: string;
43
+ name: string;
44
+ type: string;
45
+ }[];
46
+ name: string;
47
+ type: string;
48
+ stateMutability?: undefined;
49
+ outputs?: undefined;
50
+ } | {
51
+ inputs: {
52
+ internalType: string;
53
+ name: string;
54
+ type: string;
55
+ }[];
56
+ name: string;
57
+ outputs: {
58
+ internalType: string;
59
+ name: string;
60
+ type: string;
61
+ }[];
62
+ stateMutability: string;
63
+ type: string;
64
+ anonymous?: undefined;
65
+ })[];
66
+ static createInterface(): OptimismISMInterface;
67
+ static connect(address: string, signerOrProvider: Signer | Provider): OptimismISM;
68
+ }
69
+ export {};
70
+ //# sourceMappingURL=OptimismISM__factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptimismISM__factory.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/OptimismISM__factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,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;AAsL7E,aAAK,4BAA4B,GAC7B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,GAAG,IAAI,EAAE,4BAA4B;IAQxC,MAAM,CACb,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,GAC1D,OAAO,CAAC,WAAW,CAAC;IAGd,oBAAoB,CAC3B,YAAY,EAAE,MAAM,EACpB,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,WAAW;IAGpC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB;IAItD,MAAM,CAAC,QAAQ,CAAC,QAAQ,o7JAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,oBAAoB;IAG9C,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAClC,WAAW;CAGf"}
@@ -15,6 +15,27 @@ const _abi = [
15
15
  stateMutability: "nonpayable",
16
16
  type: "constructor",
17
17
  },
18
+ {
19
+ inputs: [
20
+ {
21
+ internalType: "address",
22
+ name: "actual",
23
+ type: "address",
24
+ },
25
+ {
26
+ internalType: "address",
27
+ name: "expected",
28
+ type: "address",
29
+ },
30
+ ],
31
+ name: "InvalidCrossChainSender",
32
+ type: "error",
33
+ },
34
+ {
35
+ inputs: [],
36
+ name: "NotCrossChainCall",
37
+ type: "error",
38
+ },
18
39
  {
19
40
  inputs: [],
20
41
  name: "NotCrossChainCall",
@@ -98,13 +119,18 @@ const _abi = [
98
119
  name: "",
99
120
  type: "bytes32",
100
121
  },
122
+ {
123
+ internalType: "bytes32",
124
+ name: "",
125
+ type: "bytes32",
126
+ },
101
127
  ],
102
128
  name: "verifiedMessageIds",
103
129
  outputs: [
104
130
  {
105
- internalType: "bytes32",
131
+ internalType: "bool",
106
132
  name: "",
107
- type: "bytes32",
133
+ type: "bool",
108
134
  },
109
135
  ],
110
136
  stateMutability: "view",
@@ -153,7 +179,7 @@ const _abi = [
153
179
  type: "function",
154
180
  },
155
181
  ];
156
- const _bytecode = "0x60a060405234801561001057600080fd5b506040516109b23803806109b283398101604081905261002f916100b5565b6001600160a01b038116608052610050816100a6602090811b61051117901c565b6100a05760405162461bcd60e51b815260206004820181905260248201527f4f7074696d69736d49534d3a20696e76616c6964204c324d657373656e676572604482015260640160405180910390fd5b506100e5565b6001600160a01b03163b151590565b6000602082840312156100c757600080fd5b81516001600160a01b03811681146100de57600080fd5b9392505050565b6080516108ab6101076000396000818161054601526105a301526108ab6000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80636465e69f116100505780636465e69f1461010457806386f8011f1461011e578063f7e83aee1461013157600080fd5b80630ee26cd914610077578063106ddb18146100aa5780635161ad8b146100ef575b600080fd5b6100976100853660046106b9565b60016020526000908152604090205481565b6040519081526020015b60405180910390f35b6002546100ca9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100a1565b6101026100fd3660046106d2565b610154565b005b61010c600081565b60405160ff90911681526020016100a1565b61010261012c366004610719565b61025c565b61014461013f366004610786565b6104a4565b60405190151581526020016100a1565b60025473ffffffffffffffffffffffffffffffffffffffff1661017561052d565b73ffffffffffffffffffffffffffffffffffffffff161461021d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4f7074696d69736d49534d3a2073656e646572206973206e6f7420746865206860448201527f6f6f6b000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60008181526001602052604080822084905551829184917ff9347035c6654873e4aa34118c96b53189dc92edcb628c7bad1f9bce9089ecfe9190a35050565b600054610100900460ff161580801561027c5750600054600160ff909116105b806102965750303b158015610296575060005460ff166001145b610322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610214565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561038057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff82166103fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7074696d69736d49534d3a20696e76616c6964206c31486f6f6b00000000006044820152606401610214565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905580156104a057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b6000806104e684848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506105cc92505050565b905060006104f485856105d7565b600092835260016020526040909220549091149695505050505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b600073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016331461059e576040517f4a74df9200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6105c77f00000000000000000000000000000000000000000000000000000000000000006105f9565b905090565b805160209091012090565b60006105e76029600984866107f2565b6105f09161081c565b90505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff8216331461064a576040517f4a74df9200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa158015610695573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f39190610858565b6000602082840312156106cb57600080fd5b5035919050565b600080604083850312156106e557600080fd5b50508035926020909101359150565b73ffffffffffffffffffffffffffffffffffffffff8116811461071657600080fd5b50565b60006020828403121561072b57600080fd5b8135610736816106f4565b9392505050565b60008083601f84011261074f57600080fd5b50813567ffffffffffffffff81111561076757600080fd5b60208301915083602082850101111561077f57600080fd5b9250929050565b6000806000806040858703121561079c57600080fd5b843567ffffffffffffffff808211156107b457600080fd5b6107c08883890161073d565b909650945060208701359150808211156107d957600080fd5b506107e68782880161073d565b95989497509550505050565b6000808585111561080257600080fd5b8386111561080f57600080fd5b5050820193919092039150565b803560208310156105f3577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b60006020828403121561086a57600080fd5b8151610736816106f456fea264697066735822122068fe8600e17a898b8e66d4c746f1a943263e76b0022a32a279873822bbcc952264736f6c63430008110033";
182
+ const _bytecode = "0x60a060405234801561001057600080fd5b506040516109d63803806109d683398101604081905261002f916100b5565b6001600160a01b038116608052610050816100a6602090811b61054e17901c565b6100a05760405162461bcd60e51b815260206004820181905260248201527f4f7074696d69736d49534d3a20696e76616c6964204c324d657373656e676572604482015260640160405180910390fd5b506100e5565b6001600160a01b03163b151590565b6000602082840312156100c757600080fd5b81516001600160a01b03811681146100de57600080fd5b9392505050565b6080516108cf6101076000396000818161058301526105e001526108cf6000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80636465e69f116100505780636465e69f1461011457806386f8011f1461012e578063f7e83aee1461014157600080fd5b8063106ddb18146100775780635161ad8b146100c1578063529fe082146100d6575b600080fd5b6002546100979073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6100d46100cf3660046106f6565b610154565b005b6101046100e43660046106f6565b600160209081526000928352604080842090915290825290205460ff1681565b60405190151581526020016100b8565b61011c600681565b60405160ff90911681526020016100b8565b6100d461013c36600461073d565b61028e565b61010461014f3660046107aa565b6104d6565b60025473ffffffffffffffffffffffffffffffffffffffff1661017561056a565b73ffffffffffffffffffffffffffffffffffffffff161461021d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4f7074696d69736d49534d3a2073656e646572206973206e6f7420746865206860448201527f6f6f6b000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b600081815260016020818152604080842086855290915280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690921790915551829184917ff9347035c6654873e4aa34118c96b53189dc92edcb628c7bad1f9bce9089ecfe9190a35050565b600054610100900460ff16158080156102ae5750600054600160ff909116105b806102c85750303b1580156102c8575060005460ff166001145b610354576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610214565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156103b257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff821661042f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f4f7074696d69736d49534d3a20696e76616c6964206c31486f6f6b00000000006044820152606401610214565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff841617905580156104d257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050565b60008061051884848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061060992505050565b905060006105268585610614565b60009283526001602090815260408085209285529190529091205460ff169695505050505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b600073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001633146105db576040517f4a74df9200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6106047f0000000000000000000000000000000000000000000000000000000000000000610636565b905090565b805160209091012090565b6000610624602960098486610816565b61062d91610840565b90505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82163314610687576040517f4a74df9200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610630919061087c565b6000806040838503121561070957600080fd5b50508035926020909101359150565b73ffffffffffffffffffffffffffffffffffffffff8116811461073a57600080fd5b50565b60006020828403121561074f57600080fd5b813561075a81610718565b9392505050565b60008083601f84011261077357600080fd5b50813567ffffffffffffffff81111561078b57600080fd5b6020830191508360208285010111156107a357600080fd5b9250929050565b600080600080604085870312156107c057600080fd5b843567ffffffffffffffff808211156107d857600080fd5b6107e488838901610761565b909650945060208701359150808211156107fd57600080fd5b5061080a87828801610761565b95989497509550505050565b6000808585111561082657600080fd5b8386111561083357600080fd5b5050820193919092039150565b80356020831015610630577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b60006020828403121561088e57600080fd5b815161075a8161071856fea2646970667358221220ab16f5a2c29ceb53aa1e36020074bd24d7190179b0a15fffbbe6ef2850a734aa64736f6c63430008110033";
157
183
  const isSuperArgs = (xs) => xs.length > 1;
158
184
  class OptimismISM__factory extends ethers_1.ContractFactory {
159
185
  constructor(...args) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptimismISM__factory.js","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/OptimismISM__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,cAAc;gBACpB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,aAAa;KACpB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,yBAAyB;QAC/B,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,IAAI,EAAE,OAAO;KACd;IACD;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,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,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,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,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,EAAE;gBACR,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,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACF,CAAC;AAEF,MAAM,SAAS,GACb,g7JAAg7J,CAAC;AAMn7J,MAAM,WAAW,GAAG,CAClB,EAAgC,EACqB,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAa,oBAAqB,SAAQ,wBAAe;IACvD,YAAY,GAAG,IAAkC;QAC/C,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,YAAoB,EACpB,SAA2D;QAE3D,OAAO,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,IAAI,EAAE,CAAyB,CAAC;IAC7E,CAAC;IACQ,oBAAoB,CAC3B,YAAoB,EACpB,SAA2D;QAE3D,OAAO,KAAK,CAAC,oBAAoB,CAAC,YAAY,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC;IACQ,MAAM,CAAC,OAAe;QAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAgB,CAAC;IAC9C,CAAC;IACQ,OAAO,CAAC,MAAc;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAyB,CAAC;IACvD,CAAC;IAID,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,cAAK,CAAC,SAAS,CAAC,IAAI,CAAyB,CAAC;IAC3D,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,iBAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAgB,CAAC;IACtE,CAAC;;AAtCH,oDAuCC;AAXiB,6BAAQ,GAAG,SAAS,CAAC;AACrB,wBAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { CrossChainEnabledOptimism__factory } from "./CrossChainEnabledOptimism__factory";
2
+ export { LibOptimism__factory } from "./LibOptimism__factory";
3
+ export { OptimismISM__factory } from "./OptimismISM__factory";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OptimismISM__factory = exports.LibOptimism__factory = exports.CrossChainEnabledOptimism__factory = void 0;
4
+ /* Autogenerated file. Do not edit manually. */
5
+ /* tslint:disable */
6
+ /* eslint-disable */
7
+ var CrossChainEnabledOptimism__factory_1 = require("./CrossChainEnabledOptimism__factory");
8
+ Object.defineProperty(exports, "CrossChainEnabledOptimism__factory", { enumerable: true, get: function () { return CrossChainEnabledOptimism__factory_1.CrossChainEnabledOptimism__factory; } });
9
+ var LibOptimism__factory_1 = require("./LibOptimism__factory");
10
+ Object.defineProperty(exports, "LibOptimism__factory", { enumerable: true, get: function () { return LibOptimism__factory_1.LibOptimism__factory; } });
11
+ var OptimismISM__factory_1 = require("./OptimismISM__factory");
12
+ Object.defineProperty(exports, "OptimismISM__factory", { enumerable: true, get: function () { return OptimismISM__factory_1.OptimismISM__factory; } });
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../types/factories/contracts/isms/hook/optimism/index.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,2FAA0F;AAAjF,wJAAA,kCAAkC,OAAA;AAC3C,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA"}
@@ -1,5 +1,5 @@
1
1
  export * as aggregation from "./aggregation";
2
+ export * as hook from "./hook";
2
3
  export * as multisig from "./multisig";
3
- export * as native from "./native";
4
4
  export * as routing from "./routing";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/isms/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../types/factories/contracts/isms/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"}
@@ -23,12 +23,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.routing = exports.native = exports.multisig = exports.aggregation = void 0;
26
+ exports.routing = exports.multisig = exports.hook = exports.aggregation = void 0;
27
27
  /* Autogenerated file. Do not edit manually. */
28
28
  /* tslint:disable */
29
29
  /* eslint-disable */
30
30
  exports.aggregation = __importStar(require("./aggregation"));
31
+ exports.hook = __importStar(require("./hook"));
31
32
  exports.multisig = __importStar(require("./multisig"));
32
- exports.native = __importStar(require("./native"));
33
33
  exports.routing = __importStar(require("./routing"));
34
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../types/factories/contracts/isms/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,6DAA6C;AAC7C,uDAAuC;AACvC,mDAAmC;AACnC,qDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../types/factories/contracts/isms/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,6DAA6C;AAC7C,+CAA+B;AAC/B,uDAAuC;AACvC,qDAAqC"}
@@ -12,7 +12,7 @@ export declare class LegacyMultisigIsm__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): LegacyMultisigIsm;
14
14
  connect(signer: Signer): LegacyMultisigIsm__factory;
15
- static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6121928061007e6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063f211b73211610066578063f211b73214610247578063f2fde38b1461026a578063f7e83aee1461027d578063fe9f5ab11461029057600080fd5b8063715018a6146101e45780638da5cb5b146101ec5780639a6e9a2414610214578063e7d5d3a11461023457600080fd5b8063414c676f116100d3578063414c676f146101845780634422cc2a146101975780635d94f2b9146101aa5780636465e69f146101ca57600080fd5b8063020addf114610105578063174769dc1461012b5780632e0ed234146101405780634098991214610161575b600080fd5b6101186101133660046119c1565b6102a3565b6040519081526020015b60405180910390f35b61013e610139366004611a21565b6102c7565b005b61015361014e366004611acf565b610439565b604051610122929190611b62565b61017461016f366004611bab565b61047d565b6040519015158152602001610122565b61013e610192366004611a21565b6104ab565b61013e6101a5366004611bef565b61058b565b6101186101b83660046119c1565b60036020526000908152604090205481565b6101d2600381565b60405160ff9091168152602001610122565b61013e61069c565b60005460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610122565b6102276102223660046119c1565b6106b0565b6040516101229190611c19565b61013e610242366004611bab565b610781565b6101d26102553660046119c1565b60016020526000908152604090205460ff1681565b61013e610278366004611c2c565b610907565b61017461028b366004611c47565b6109be565b61013e61029e366004611bab565b610aaf565b63ffffffff811660009081526002602052604081206102c190610aca565b92915050565b6102cf610ad4565b8281811461033e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60005b818110156104315736600085858481811061035e5761035e611ca7565b90506020028101906103709190611cd6565b90925090508060005b818110156103e9576103d78a8a8781811061039657610396611ca7565b90506020020160208101906103ab91906119c1565b8585848181106103bd576103bd611ca7565b90506020020160208101906103d29190611c2c565b610b55565b6103e2600182611d6d565b9050610379565b506104198989868181106103ff576103ff611ca7565b905060200201602081019061041491906119c1565b610cb7565b5050505060018161042a9190611d6d565b9050610341565b505050505050565b60606000806104488585610d7c565b90506000610455826106b0565b63ffffffff9092166000908152600160205260409020549193505060ff1690505b9250929050565b63ffffffff808316600090815260026020526040812090916104a39082908590610d9f16565b949350505050565b6104b3610ad4565b8281811461051d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610335565b60005b818110156104315761057986868381811061053d5761053d611ca7565b905060200201602081019061055291906119c1565b85858481811061056457610564611ca7565b90506020020160208101906101a59190611d80565b610584600182611d6d565b9050610520565b610593610ad4565b60008160ff161180156105b157506105aa826102a3565b8160ff1611155b610617576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f2172616e676500000000000000000000000000000000000000000000000000006044820152606401610335565b63ffffffff821660008181526001602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660ff861690811790915591519182527ff25cfff98c95cf069df801752174d854732576e4b283bc4299386f65676e386a910160405180910390a261069782610cb7565b505050565b6106a4610ad4565b6106ae6000610dd1565b565b63ffffffff811660009081526002602052604081206060916106d182610aca565b905060008167ffffffffffffffff8111156106ee576106ee611dca565b604051908082528060200260200182016040528015610717578160200160208202803683370190505b50905060005b828110156107785761072f8482610e46565b82828151811061074157610741611ca7565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061077081611df9565b91505061071d565b50949350505050565b610789610ad4565b63ffffffff80831660009081526002602052604090206107ab918390610e5216565b610811576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21656e726f6c6c656400000000000000000000000000000000000000000000006044820152606401610335565b600061081c836102a3565b63ffffffff841660009081526001602052604090205490915060ff168110156108a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f76696f6c617465732071756f72756d207468726573686f6c64000000000000006044820152606401610335565b6108aa83610cb7565b508173ffffffffffffffffffffffffffffffffffffffff168363ffffffff167fa4c7a7b783c9afd72ed0b93a7e67ca063acdaa9c3b3268bd43abe1199bdad27c836040516108fa91815260200190565b60405180910390a3505050565b61090f610ad4565b73ffffffffffffffffffffffffffffffffffffffff81166109b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610335565b6109bb81610dd1565b50565b60006109cc85858585610e74565b610a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216d65726b6c65000000000000000000000000000000000000000000000000006044820152606401610335565b610a3e85858585610eee565b610aa4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f21736967730000000000000000000000000000000000000000000000000000006044820152606401610335565b506001949350505050565b610ab7610ad4565b610ac18282610b55565b61069782610cb7565b60006102c1825490565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610335565b73ffffffffffffffffffffffffffffffffffffffff8116610bd2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610335565b63ffffffff8083166000908152600260205260409020610bf491839061116616565b610c5a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f616c726561647920656e726f6c6c6564000000000000000000000000000000006044820152606401610335565b8073ffffffffffffffffffffffffffffffffffffffff168263ffffffff167f890997ec79a2b993cbc6e69433ed0ffa6303de16e3c21e315ba91c21ab5ec15a610ca2856102a3565b60405190815260200160405180910390a35050565b600080610cc3836106b0565b63ffffffff8416600090815260016020908152604080832054905193945060ff1692610cf3918491869101611e31565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152828252805160209182012063ffffffff8916600081815260038452849020829055845290830181905292507f6f17fabbcaf1b0e8cfbc153d8884a27de46c3076c2de8ac2aef0094a134909e3910160405180910390a1949350505050565b6000610d8c600960058486611ea9565b610d9591611ed3565b60e01c9392505050565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260018301602052604081205415155b9392505050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610dca8383611188565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166111b2565b600080610ed8610eb985858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506112a592505050565b610ec388886112b0565b610ecd87876112d4565b63ffffffff166112e4565b9050610ee48686611395565b1495945050505050565b600080610efb86866113ad565b9050600080610f0a8686610d7c565b9050600083610f198a8a6113d2565b604051602001610f2b93929190611f1b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152815160209283012063ffffffff8516600090815260039093529120549091508114610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f21636f6d6d69746d656e740000000000000000000000000000000000000000006044820152606401610335565b61100782610fee8b8b6113f7565b610ff88c8c611395565b6110028d8d611407565b611417565b92505050600061101788886114cb565b90506000805b8460ff16811015611156576000611073856110398d8d866114ed565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061153392505050565b90505b83831080156110bb575061108b8b8b8561154f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b156110d0576110c983611df9565b9250611076565b838310611139576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f217468726573686f6c64000000000000000000000000000000000000000000006044820152606401610335565b61114283611df9565b9250508061114f90611df9565b905061101d565b5060019998505050505050505050565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166115af565b600082600001828154811061119f5761119f611ca7565b9060005260206000200154905092915050565b6000818152600183016020526040812054801561129b5760006111d6600183611f5a565b85549091506000906111ea90600190611f5a565b905081811461124f57600086600001828154811061120a5761120a611ca7565b906000526020600020015490508087600001848154811061122d5761122d611ca7565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061126057611260611f6d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506102c1565b60009150506102c1565b805160209091012090565b6112b8611989565b6112c761044460448486611ea9565b810190610dca9190611f9c565b6000610d8c600560018486611ea9565b8260005b602081101561138d57600183821c16600085836020811061130b5761130b611ca7565b602002015190508160010361134b576040805160208101839052908101859052606001604051602081830303815290604052805190602001209350611378565b60408051602081018690529081018290526060016040516020818303038152906040528051906020012093505b5050808061138590611df9565b9150506112e8565b509392505050565b60006113a46020828486611ea9565b610dca91612042565b60006113bf6104456104448486611ea9565b6113c89161207e565b60f81c9392505050565b36600083836113e186866115fe565b6113ec928290611ea9565b915091509250929050565b60006113a4604460248486611ea9565b6000610d8c602460208486611ea9565b6000806114248686611625565b60408051602080820184905281830188905260e087901b7fffffffff00000000000000000000000000000000000000000000000000000000166060830152825160448184030181526064830184528051908201207f19457468657265756d205369676e6564204d6573736167653a0a333200000000608484015260a0808401919091528351808403909101815260c090920190925280519101209091509695505050505050565b600060206114d984846115fe565b6114e39084611f5a565b610dca91906120c4565b366000806114fc6041856120ff565b61150890610445611d6d565b90506000611517604183611d6d565b90506115258183888a611ea9565b935093505050935093915050565b600080600061154285856116a5565b9150915061138d816116e7565b60008061155d8360206120ff565b61156786866115fe565b6115719190611d6d565b61157c90600c611d6d565b9050600061158b826014611d6d565b905061159981838789611ea9565b6115a291612116565b60601c9695505050505050565b60008181526001830160205260408120546115f6575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102c1565b5060006102c1565b6000604161160c84846113ad565b60ff1661161991906120ff565b610dca90610445611d6d565b6040805160e084901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018490527f48595045524c414e45000000000000000000000000000000000000000000000060448301528251602d818403018152604d9092019092528051910120600090610dca565b60008082516041036116db5760208301516040840151606085015160001a6116cf8782858561189a565b94509450505050610476565b50600090506002610476565b60008160048111156116fb576116fb611d9b565b036117035750565b600181600481111561171757611717611d9b565b0361177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610335565b600281600481111561179257611792611d9b565b036117f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610335565b600381600481111561180d5761180d611d9b565b036109bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610335565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156118d15750600090506003611980565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611925573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661197957600060019250925050611980565b9150600090505b94509492505050565b6040518061040001604052806020906020820280368337509192915050565b803563ffffffff811681146119bc57600080fd5b919050565b6000602082840312156119d357600080fd5b610dca826119a8565b60008083601f8401126119ee57600080fd5b50813567ffffffffffffffff811115611a0657600080fd5b6020830191508360208260051b850101111561047657600080fd5b60008060008060408587031215611a3757600080fd5b843567ffffffffffffffff80821115611a4f57600080fd5b611a5b888389016119dc565b90965094506020870135915080821115611a7457600080fd5b50611a81878288016119dc565b95989497509550505050565b60008083601f840112611a9f57600080fd5b50813567ffffffffffffffff811115611ab757600080fd5b60208301915083602082850101111561047657600080fd5b60008060208385031215611ae257600080fd5b823567ffffffffffffffff811115611af957600080fd5b611b0585828601611a8d565b90969095509350505050565b600081518084526020808501945080840160005b83811015611b5757815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611b25565b509495945050505050565b604081526000611b756040830185611b11565b905060ff831660208301529392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146119bc57600080fd5b60008060408385031215611bbe57600080fd5b611bc7836119a8565b9150611bd560208401611b87565b90509250929050565b803560ff811681146119bc57600080fd5b60008060408385031215611c0257600080fd5b611c0b836119a8565b9150611bd560208401611bde565b602081526000610dca6020830184611b11565b600060208284031215611c3e57600080fd5b610dca82611b87565b60008060008060408587031215611c5d57600080fd5b843567ffffffffffffffff80821115611c7557600080fd5b611c8188838901611a8d565b90965094506020870135915080821115611c9a57600080fd5b50611a8187828801611a8d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611d0b57600080fd5b83018035915067ffffffffffffffff821115611d2657600080fd5b6020019150600581901b360382131561047657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156102c1576102c1611d3e565b600060208284031215611d9257600080fd5b610dca82611bde565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611e2a57611e2a611d3e565b5060010190565b7fff000000000000000000000000000000000000000000000000000000000000008360f81b168152600060018083018451602080870160005b83811015611e9b57815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201908501611e6a565b509298975050505050505050565b60008085851115611eb957600080fd5b83861115611ec657600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015611f135780818660040360031b1b83161692505b505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008460f81b168152818360018301376000910160010190815292915050565b818103818111156102c1576102c1611d3e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6000610400808385031215611fb057600080fd5b83601f840112611fbf57600080fd5b60405181810181811067ffffffffffffffff82111715612008577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405290830190808583111561201d57600080fd5b845b8381101561203757803582526020918201910161201f565b509095945050505050565b803560208310156102c1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008135818116916001851015611f135760019490940360031b84901b1690921692915050565b6000826120fa577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b80820281158282048414176102c1576102c1611d3e565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008135818116916014851015611f135760149490940360031b84901b169092169291505056fea2646970667358221220b6ed1d263e40750e3b009505774edd080a2fa6184f9b2acdabe0619f6da4a3ee64736f6c63430008110033";
15
+ static readonly bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6121928061007e6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063f211b73211610066578063f211b73214610247578063f2fde38b1461026a578063f7e83aee1461027d578063fe9f5ab11461029057600080fd5b8063715018a6146101e45780638da5cb5b146101ec5780639a6e9a2414610214578063e7d5d3a11461023457600080fd5b8063414c676f116100d3578063414c676f146101845780634422cc2a146101975780635d94f2b9146101aa5780636465e69f146101ca57600080fd5b8063020addf114610105578063174769dc1461012b5780632e0ed234146101405780634098991214610161575b600080fd5b6101186101133660046119c1565b6102a3565b6040519081526020015b60405180910390f35b61013e610139366004611a21565b6102c7565b005b61015361014e366004611acf565b610439565b604051610122929190611b62565b61017461016f366004611bab565b61047d565b6040519015158152602001610122565b61013e610192366004611a21565b6104ab565b61013e6101a5366004611bef565b61058b565b6101186101b83660046119c1565b60036020526000908152604090205481565b6101d2600381565b60405160ff9091168152602001610122565b61013e61069c565b60005460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610122565b6102276102223660046119c1565b6106b0565b6040516101229190611c19565b61013e610242366004611bab565b610781565b6101d26102553660046119c1565b60016020526000908152604090205460ff1681565b61013e610278366004611c2c565b610907565b61017461028b366004611c47565b6109be565b61013e61029e366004611bab565b610aaf565b63ffffffff811660009081526002602052604081206102c190610aca565b92915050565b6102cf610ad4565b8281811461033e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60005b818110156104315736600085858481811061035e5761035e611ca7565b90506020028101906103709190611cd6565b90925090508060005b818110156103e9576103d78a8a8781811061039657610396611ca7565b90506020020160208101906103ab91906119c1565b8585848181106103bd576103bd611ca7565b90506020020160208101906103d29190611c2c565b610b55565b6103e2600182611d6d565b9050610379565b506104198989868181106103ff576103ff611ca7565b905060200201602081019061041491906119c1565b610cb7565b5050505060018161042a9190611d6d565b9050610341565b505050505050565b60606000806104488585610d7c565b90506000610455826106b0565b63ffffffff9092166000908152600160205260409020549193505060ff1690505b9250929050565b63ffffffff808316600090815260026020526040812090916104a39082908590610d9f16565b949350505050565b6104b3610ad4565b8281811461051d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610335565b60005b818110156104315761057986868381811061053d5761053d611ca7565b905060200201602081019061055291906119c1565b85858481811061056457610564611ca7565b90506020020160208101906101a59190611d80565b610584600182611d6d565b9050610520565b610593610ad4565b60008160ff161180156105b157506105aa826102a3565b8160ff1611155b610617576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f2172616e676500000000000000000000000000000000000000000000000000006044820152606401610335565b63ffffffff821660008181526001602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660ff861690811790915591519182527ff25cfff98c95cf069df801752174d854732576e4b283bc4299386f65676e386a910160405180910390a261069782610cb7565b505050565b6106a4610ad4565b6106ae6000610dd1565b565b63ffffffff811660009081526002602052604081206060916106d182610aca565b905060008167ffffffffffffffff8111156106ee576106ee611dca565b604051908082528060200260200182016040528015610717578160200160208202803683370190505b50905060005b828110156107785761072f8482610e46565b82828151811061074157610741611ca7565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061077081611df9565b91505061071d565b50949350505050565b610789610ad4565b63ffffffff80831660009081526002602052604090206107ab918390610e5216565b610811576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21656e726f6c6c656400000000000000000000000000000000000000000000006044820152606401610335565b600061081c836102a3565b63ffffffff841660009081526001602052604090205490915060ff168110156108a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f76696f6c617465732071756f72756d207468726573686f6c64000000000000006044820152606401610335565b6108aa83610cb7565b508173ffffffffffffffffffffffffffffffffffffffff168363ffffffff167fa4c7a7b783c9afd72ed0b93a7e67ca063acdaa9c3b3268bd43abe1199bdad27c836040516108fa91815260200190565b60405180910390a3505050565b61090f610ad4565b73ffffffffffffffffffffffffffffffffffffffff81166109b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610335565b6109bb81610dd1565b50565b60006109cc85858585610e74565b610a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216d65726b6c65000000000000000000000000000000000000000000000000006044820152606401610335565b610a3e85858585610eee565b610aa4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f21736967730000000000000000000000000000000000000000000000000000006044820152606401610335565b506001949350505050565b610ab7610ad4565b610ac18282610b55565b61069782610cb7565b60006102c1825490565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610335565b73ffffffffffffffffffffffffffffffffffffffff8116610bd2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610335565b63ffffffff8083166000908152600260205260409020610bf491839061116616565b610c5a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f616c726561647920656e726f6c6c6564000000000000000000000000000000006044820152606401610335565b8073ffffffffffffffffffffffffffffffffffffffff168263ffffffff167f890997ec79a2b993cbc6e69433ed0ffa6303de16e3c21e315ba91c21ab5ec15a610ca2856102a3565b60405190815260200160405180910390a35050565b600080610cc3836106b0565b63ffffffff8416600090815260016020908152604080832054905193945060ff1692610cf3918491869101611e31565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152828252805160209182012063ffffffff8916600081815260038452849020829055845290830181905292507f6f17fabbcaf1b0e8cfbc153d8884a27de46c3076c2de8ac2aef0094a134909e3910160405180910390a1949350505050565b6000610d8c600960058486611ea9565b610d9591611ed3565b60e01c9392505050565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260018301602052604081205415155b9392505050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610dca8383611188565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166111b2565b600080610ed8610eb985858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506112a592505050565b610ec388886112b0565b610ecd87876112d4565b63ffffffff166112e4565b9050610ee48686611395565b1495945050505050565b600080610efb86866113ad565b9050600080610f0a8686610d7c565b9050600083610f198a8a6113d2565b604051602001610f2b93929190611f1b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152815160209283012063ffffffff8516600090815260039093529120549091508114610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f21636f6d6d69746d656e740000000000000000000000000000000000000000006044820152606401610335565b61100782610fee8b8b6113f7565b610ff88c8c611395565b6110028d8d611407565b611417565b92505050600061101788886114cb565b90506000805b8460ff16811015611156576000611073856110398d8d866114ed565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061153392505050565b90505b83831080156110bb575061108b8b8b8561154f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b156110d0576110c983611df9565b9250611076565b838310611139576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f217468726573686f6c64000000000000000000000000000000000000000000006044820152606401610335565b61114283611df9565b9250508061114f90611df9565b905061101d565b5060019998505050505050505050565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166115af565b600082600001828154811061119f5761119f611ca7565b9060005260206000200154905092915050565b6000818152600183016020526040812054801561129b5760006111d6600183611f5a565b85549091506000906111ea90600190611f5a565b905081811461124f57600086600001828154811061120a5761120a611ca7565b906000526020600020015490508087600001848154811061122d5761122d611ca7565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061126057611260611f6d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506102c1565b60009150506102c1565b805160209091012090565b6112b8611989565b6112c761044460448486611ea9565b810190610dca9190611f9c565b6000610d8c600560018486611ea9565b8260005b602081101561138d57600183821c16600085836020811061130b5761130b611ca7565b602002015190508160010361134b576040805160208101839052908101859052606001604051602081830303815290604052805190602001209350611378565b60408051602081018690529081018290526060016040516020818303038152906040528051906020012093505b5050808061138590611df9565b9150506112e8565b509392505050565b60006113a46020828486611ea9565b610dca91612042565b60006113bf6104456104448486611ea9565b6113c89161207e565b60f81c9392505050565b36600083836113e186866115fe565b6113ec928290611ea9565b915091509250929050565b60006113a4604460248486611ea9565b6000610d8c602460208486611ea9565b6000806114248686611625565b60408051602080820184905281830188905260e087901b7fffffffff00000000000000000000000000000000000000000000000000000000166060830152825160448184030181526064830184528051908201207f19457468657265756d205369676e6564204d6573736167653a0a333200000000608484015260a0808401919091528351808403909101815260c090920190925280519101209091509695505050505050565b600060206114d984846115fe565b6114e39084611f5a565b610dca91906120c4565b366000806114fc6041856120ff565b61150890610445611d6d565b90506000611517604183611d6d565b90506115258183888a611ea9565b935093505050935093915050565b600080600061154285856116a5565b9150915061138d816116e7565b60008061155d8360206120ff565b61156786866115fe565b6115719190611d6d565b61157c90600c611d6d565b9050600061158b826014611d6d565b905061159981838789611ea9565b6115a291612116565b60601c9695505050505050565b60008181526001830160205260408120546115f6575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102c1565b5060006102c1565b6000604161160c84846113ad565b60ff1661161991906120ff565b610dca90610445611d6d565b6040805160e084901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018490527f48595045524c414e45000000000000000000000000000000000000000000000060448301528251602d818403018152604d9092019092528051910120600090610dca565b60008082516041036116db5760208301516040840151606085015160001a6116cf8782858561189a565b94509450505050610476565b50600090506002610476565b60008160048111156116fb576116fb611d9b565b036117035750565b600181600481111561171757611717611d9b565b0361177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610335565b600281600481111561179257611792611d9b565b036117f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610335565b600381600481111561180d5761180d611d9b565b036109bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610335565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156118d15750600090506003611980565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611925573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661197957600060019250925050611980565b9150600090505b94509492505050565b6040518061040001604052806020906020820280368337509192915050565b803563ffffffff811681146119bc57600080fd5b919050565b6000602082840312156119d357600080fd5b610dca826119a8565b60008083601f8401126119ee57600080fd5b50813567ffffffffffffffff811115611a0657600080fd5b6020830191508360208260051b850101111561047657600080fd5b60008060008060408587031215611a3757600080fd5b843567ffffffffffffffff80821115611a4f57600080fd5b611a5b888389016119dc565b90965094506020870135915080821115611a7457600080fd5b50611a81878288016119dc565b95989497509550505050565b60008083601f840112611a9f57600080fd5b50813567ffffffffffffffff811115611ab757600080fd5b60208301915083602082850101111561047657600080fd5b60008060208385031215611ae257600080fd5b823567ffffffffffffffff811115611af957600080fd5b611b0585828601611a8d565b90969095509350505050565b600081518084526020808501945080840160005b83811015611b5757815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611b25565b509495945050505050565b604081526000611b756040830185611b11565b905060ff831660208301529392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146119bc57600080fd5b60008060408385031215611bbe57600080fd5b611bc7836119a8565b9150611bd560208401611b87565b90509250929050565b803560ff811681146119bc57600080fd5b60008060408385031215611c0257600080fd5b611c0b836119a8565b9150611bd560208401611bde565b602081526000610dca6020830184611b11565b600060208284031215611c3e57600080fd5b610dca82611b87565b60008060008060408587031215611c5d57600080fd5b843567ffffffffffffffff80821115611c7557600080fd5b611c8188838901611a8d565b90965094506020870135915080821115611c9a57600080fd5b50611a8187828801611a8d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611d0b57600080fd5b83018035915067ffffffffffffffff821115611d2657600080fd5b6020019150600581901b360382131561047657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156102c1576102c1611d3e565b600060208284031215611d9257600080fd5b610dca82611bde565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611e2a57611e2a611d3e565b5060010190565b7fff000000000000000000000000000000000000000000000000000000000000008360f81b168152600060018083018451602080870160005b83811015611e9b57815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201908501611e6a565b509298975050505050505050565b60008085851115611eb957600080fd5b83861115611ec657600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015611f135780818660040360031b1b83161692505b505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008460f81b168152818360018301376000910160010190815292915050565b818103818111156102c1576102c1611d3e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6000610400808385031215611fb057600080fd5b83601f840112611fbf57600080fd5b60405181810181811067ffffffffffffffff82111715612008577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405290830190808583111561201d57600080fd5b845b8381101561203757803582526020918201910161201f565b509095945050505050565b803560208310156102c1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008135818116916001851015611f135760019490940360031b84901b1690921692915050565b6000826120fa577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b80820281158282048414176102c1576102c1611d3e565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008135818116916014851015611f135760149490940360031b84901b169092169291505056fea264697066735822122037fd2d2df3447845d14df6e132a3bfe84b2c7a85e4e3d90bbeb4c960b05b3b4664736f6c63430008110033";
16
16
  static readonly abi: ({
17
17
  inputs: never[];
18
18
  stateMutability: string;
@@ -401,7 +401,7 @@ const _abi = [
401
401
  type: "function",
402
402
  },
403
403
  ];
404
- const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6121928061007e6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063f211b73211610066578063f211b73214610247578063f2fde38b1461026a578063f7e83aee1461027d578063fe9f5ab11461029057600080fd5b8063715018a6146101e45780638da5cb5b146101ec5780639a6e9a2414610214578063e7d5d3a11461023457600080fd5b8063414c676f116100d3578063414c676f146101845780634422cc2a146101975780635d94f2b9146101aa5780636465e69f146101ca57600080fd5b8063020addf114610105578063174769dc1461012b5780632e0ed234146101405780634098991214610161575b600080fd5b6101186101133660046119c1565b6102a3565b6040519081526020015b60405180910390f35b61013e610139366004611a21565b6102c7565b005b61015361014e366004611acf565b610439565b604051610122929190611b62565b61017461016f366004611bab565b61047d565b6040519015158152602001610122565b61013e610192366004611a21565b6104ab565b61013e6101a5366004611bef565b61058b565b6101186101b83660046119c1565b60036020526000908152604090205481565b6101d2600381565b60405160ff9091168152602001610122565b61013e61069c565b60005460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610122565b6102276102223660046119c1565b6106b0565b6040516101229190611c19565b61013e610242366004611bab565b610781565b6101d26102553660046119c1565b60016020526000908152604090205460ff1681565b61013e610278366004611c2c565b610907565b61017461028b366004611c47565b6109be565b61013e61029e366004611bab565b610aaf565b63ffffffff811660009081526002602052604081206102c190610aca565b92915050565b6102cf610ad4565b8281811461033e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60005b818110156104315736600085858481811061035e5761035e611ca7565b90506020028101906103709190611cd6565b90925090508060005b818110156103e9576103d78a8a8781811061039657610396611ca7565b90506020020160208101906103ab91906119c1565b8585848181106103bd576103bd611ca7565b90506020020160208101906103d29190611c2c565b610b55565b6103e2600182611d6d565b9050610379565b506104198989868181106103ff576103ff611ca7565b905060200201602081019061041491906119c1565b610cb7565b5050505060018161042a9190611d6d565b9050610341565b505050505050565b60606000806104488585610d7c565b90506000610455826106b0565b63ffffffff9092166000908152600160205260409020549193505060ff1690505b9250929050565b63ffffffff808316600090815260026020526040812090916104a39082908590610d9f16565b949350505050565b6104b3610ad4565b8281811461051d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610335565b60005b818110156104315761057986868381811061053d5761053d611ca7565b905060200201602081019061055291906119c1565b85858481811061056457610564611ca7565b90506020020160208101906101a59190611d80565b610584600182611d6d565b9050610520565b610593610ad4565b60008160ff161180156105b157506105aa826102a3565b8160ff1611155b610617576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f2172616e676500000000000000000000000000000000000000000000000000006044820152606401610335565b63ffffffff821660008181526001602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660ff861690811790915591519182527ff25cfff98c95cf069df801752174d854732576e4b283bc4299386f65676e386a910160405180910390a261069782610cb7565b505050565b6106a4610ad4565b6106ae6000610dd1565b565b63ffffffff811660009081526002602052604081206060916106d182610aca565b905060008167ffffffffffffffff8111156106ee576106ee611dca565b604051908082528060200260200182016040528015610717578160200160208202803683370190505b50905060005b828110156107785761072f8482610e46565b82828151811061074157610741611ca7565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061077081611df9565b91505061071d565b50949350505050565b610789610ad4565b63ffffffff80831660009081526002602052604090206107ab918390610e5216565b610811576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21656e726f6c6c656400000000000000000000000000000000000000000000006044820152606401610335565b600061081c836102a3565b63ffffffff841660009081526001602052604090205490915060ff168110156108a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f76696f6c617465732071756f72756d207468726573686f6c64000000000000006044820152606401610335565b6108aa83610cb7565b508173ffffffffffffffffffffffffffffffffffffffff168363ffffffff167fa4c7a7b783c9afd72ed0b93a7e67ca063acdaa9c3b3268bd43abe1199bdad27c836040516108fa91815260200190565b60405180910390a3505050565b61090f610ad4565b73ffffffffffffffffffffffffffffffffffffffff81166109b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610335565b6109bb81610dd1565b50565b60006109cc85858585610e74565b610a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216d65726b6c65000000000000000000000000000000000000000000000000006044820152606401610335565b610a3e85858585610eee565b610aa4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f21736967730000000000000000000000000000000000000000000000000000006044820152606401610335565b506001949350505050565b610ab7610ad4565b610ac18282610b55565b61069782610cb7565b60006102c1825490565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610335565b73ffffffffffffffffffffffffffffffffffffffff8116610bd2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610335565b63ffffffff8083166000908152600260205260409020610bf491839061116616565b610c5a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f616c726561647920656e726f6c6c6564000000000000000000000000000000006044820152606401610335565b8073ffffffffffffffffffffffffffffffffffffffff168263ffffffff167f890997ec79a2b993cbc6e69433ed0ffa6303de16e3c21e315ba91c21ab5ec15a610ca2856102a3565b60405190815260200160405180910390a35050565b600080610cc3836106b0565b63ffffffff8416600090815260016020908152604080832054905193945060ff1692610cf3918491869101611e31565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152828252805160209182012063ffffffff8916600081815260038452849020829055845290830181905292507f6f17fabbcaf1b0e8cfbc153d8884a27de46c3076c2de8ac2aef0094a134909e3910160405180910390a1949350505050565b6000610d8c600960058486611ea9565b610d9591611ed3565b60e01c9392505050565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260018301602052604081205415155b9392505050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610dca8383611188565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166111b2565b600080610ed8610eb985858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506112a592505050565b610ec388886112b0565b610ecd87876112d4565b63ffffffff166112e4565b9050610ee48686611395565b1495945050505050565b600080610efb86866113ad565b9050600080610f0a8686610d7c565b9050600083610f198a8a6113d2565b604051602001610f2b93929190611f1b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152815160209283012063ffffffff8516600090815260039093529120549091508114610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f21636f6d6d69746d656e740000000000000000000000000000000000000000006044820152606401610335565b61100782610fee8b8b6113f7565b610ff88c8c611395565b6110028d8d611407565b611417565b92505050600061101788886114cb565b90506000805b8460ff16811015611156576000611073856110398d8d866114ed565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061153392505050565b90505b83831080156110bb575061108b8b8b8561154f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b156110d0576110c983611df9565b9250611076565b838310611139576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f217468726573686f6c64000000000000000000000000000000000000000000006044820152606401610335565b61114283611df9565b9250508061114f90611df9565b905061101d565b5060019998505050505050505050565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166115af565b600082600001828154811061119f5761119f611ca7565b9060005260206000200154905092915050565b6000818152600183016020526040812054801561129b5760006111d6600183611f5a565b85549091506000906111ea90600190611f5a565b905081811461124f57600086600001828154811061120a5761120a611ca7565b906000526020600020015490508087600001848154811061122d5761122d611ca7565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061126057611260611f6d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506102c1565b60009150506102c1565b805160209091012090565b6112b8611989565b6112c761044460448486611ea9565b810190610dca9190611f9c565b6000610d8c600560018486611ea9565b8260005b602081101561138d57600183821c16600085836020811061130b5761130b611ca7565b602002015190508160010361134b576040805160208101839052908101859052606001604051602081830303815290604052805190602001209350611378565b60408051602081018690529081018290526060016040516020818303038152906040528051906020012093505b5050808061138590611df9565b9150506112e8565b509392505050565b60006113a46020828486611ea9565b610dca91612042565b60006113bf6104456104448486611ea9565b6113c89161207e565b60f81c9392505050565b36600083836113e186866115fe565b6113ec928290611ea9565b915091509250929050565b60006113a4604460248486611ea9565b6000610d8c602460208486611ea9565b6000806114248686611625565b60408051602080820184905281830188905260e087901b7fffffffff00000000000000000000000000000000000000000000000000000000166060830152825160448184030181526064830184528051908201207f19457468657265756d205369676e6564204d6573736167653a0a333200000000608484015260a0808401919091528351808403909101815260c090920190925280519101209091509695505050505050565b600060206114d984846115fe565b6114e39084611f5a565b610dca91906120c4565b366000806114fc6041856120ff565b61150890610445611d6d565b90506000611517604183611d6d565b90506115258183888a611ea9565b935093505050935093915050565b600080600061154285856116a5565b9150915061138d816116e7565b60008061155d8360206120ff565b61156786866115fe565b6115719190611d6d565b61157c90600c611d6d565b9050600061158b826014611d6d565b905061159981838789611ea9565b6115a291612116565b60601c9695505050505050565b60008181526001830160205260408120546115f6575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102c1565b5060006102c1565b6000604161160c84846113ad565b60ff1661161991906120ff565b610dca90610445611d6d565b6040805160e084901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018490527f48595045524c414e45000000000000000000000000000000000000000000000060448301528251602d818403018152604d9092019092528051910120600090610dca565b60008082516041036116db5760208301516040840151606085015160001a6116cf8782858561189a565b94509450505050610476565b50600090506002610476565b60008160048111156116fb576116fb611d9b565b036117035750565b600181600481111561171757611717611d9b565b0361177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610335565b600281600481111561179257611792611d9b565b036117f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610335565b600381600481111561180d5761180d611d9b565b036109bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610335565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156118d15750600090506003611980565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611925573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661197957600060019250925050611980565b9150600090505b94509492505050565b6040518061040001604052806020906020820280368337509192915050565b803563ffffffff811681146119bc57600080fd5b919050565b6000602082840312156119d357600080fd5b610dca826119a8565b60008083601f8401126119ee57600080fd5b50813567ffffffffffffffff811115611a0657600080fd5b6020830191508360208260051b850101111561047657600080fd5b60008060008060408587031215611a3757600080fd5b843567ffffffffffffffff80821115611a4f57600080fd5b611a5b888389016119dc565b90965094506020870135915080821115611a7457600080fd5b50611a81878288016119dc565b95989497509550505050565b60008083601f840112611a9f57600080fd5b50813567ffffffffffffffff811115611ab757600080fd5b60208301915083602082850101111561047657600080fd5b60008060208385031215611ae257600080fd5b823567ffffffffffffffff811115611af957600080fd5b611b0585828601611a8d565b90969095509350505050565b600081518084526020808501945080840160005b83811015611b5757815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611b25565b509495945050505050565b604081526000611b756040830185611b11565b905060ff831660208301529392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146119bc57600080fd5b60008060408385031215611bbe57600080fd5b611bc7836119a8565b9150611bd560208401611b87565b90509250929050565b803560ff811681146119bc57600080fd5b60008060408385031215611c0257600080fd5b611c0b836119a8565b9150611bd560208401611bde565b602081526000610dca6020830184611b11565b600060208284031215611c3e57600080fd5b610dca82611b87565b60008060008060408587031215611c5d57600080fd5b843567ffffffffffffffff80821115611c7557600080fd5b611c8188838901611a8d565b90965094506020870135915080821115611c9a57600080fd5b50611a8187828801611a8d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611d0b57600080fd5b83018035915067ffffffffffffffff821115611d2657600080fd5b6020019150600581901b360382131561047657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156102c1576102c1611d3e565b600060208284031215611d9257600080fd5b610dca82611bde565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611e2a57611e2a611d3e565b5060010190565b7fff000000000000000000000000000000000000000000000000000000000000008360f81b168152600060018083018451602080870160005b83811015611e9b57815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201908501611e6a565b509298975050505050505050565b60008085851115611eb957600080fd5b83861115611ec657600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015611f135780818660040360031b1b83161692505b505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008460f81b168152818360018301376000910160010190815292915050565b818103818111156102c1576102c1611d3e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6000610400808385031215611fb057600080fd5b83601f840112611fbf57600080fd5b60405181810181811067ffffffffffffffff82111715612008577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405290830190808583111561201d57600080fd5b845b8381101561203757803582526020918201910161201f565b509095945050505050565b803560208310156102c1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008135818116916001851015611f135760019490940360031b84901b1690921692915050565b6000826120fa577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b80820281158282048414176102c1576102c1611d3e565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008135818116916014851015611f135760149490940360031b84901b169092169291505056fea2646970667358221220b6ed1d263e40750e3b009505774edd080a2fa6184f9b2acdabe0619f6da4a3ee64736f6c63430008110033";
404
+ const _bytecode = "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6121928061007e6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063f211b73211610066578063f211b73214610247578063f2fde38b1461026a578063f7e83aee1461027d578063fe9f5ab11461029057600080fd5b8063715018a6146101e45780638da5cb5b146101ec5780639a6e9a2414610214578063e7d5d3a11461023457600080fd5b8063414c676f116100d3578063414c676f146101845780634422cc2a146101975780635d94f2b9146101aa5780636465e69f146101ca57600080fd5b8063020addf114610105578063174769dc1461012b5780632e0ed234146101405780634098991214610161575b600080fd5b6101186101133660046119c1565b6102a3565b6040519081526020015b60405180910390f35b61013e610139366004611a21565b6102c7565b005b61015361014e366004611acf565b610439565b604051610122929190611b62565b61017461016f366004611bab565b61047d565b6040519015158152602001610122565b61013e610192366004611a21565b6104ab565b61013e6101a5366004611bef565b61058b565b6101186101b83660046119c1565b60036020526000908152604090205481565b6101d2600381565b60405160ff9091168152602001610122565b61013e61069c565b60005460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610122565b6102276102223660046119c1565b6106b0565b6040516101229190611c19565b61013e610242366004611bab565b610781565b6101d26102553660046119c1565b60016020526000908152604090205460ff1681565b61013e610278366004611c2c565b610907565b61017461028b366004611c47565b6109be565b61013e61029e366004611bab565b610aaf565b63ffffffff811660009081526002602052604081206102c190610aca565b92915050565b6102cf610ad4565b8281811461033e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e6774680000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60005b818110156104315736600085858481811061035e5761035e611ca7565b90506020028101906103709190611cd6565b90925090508060005b818110156103e9576103d78a8a8781811061039657610396611ca7565b90506020020160208101906103ab91906119c1565b8585848181106103bd576103bd611ca7565b90506020020160208101906103d29190611c2c565b610b55565b6103e2600182611d6d565b9050610379565b506104198989868181106103ff576103ff611ca7565b905060200201602081019061041491906119c1565b610cb7565b5050505060018161042a9190611d6d565b9050610341565b505050505050565b60606000806104488585610d7c565b90506000610455826106b0565b63ffffffff9092166000908152600160205260409020549193505060ff1690505b9250929050565b63ffffffff808316600090815260026020526040812090916104a39082908590610d9f16565b949350505050565b6104b3610ad4565b8281811461051d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610335565b60005b818110156104315761057986868381811061053d5761053d611ca7565b905060200201602081019061055291906119c1565b85858481811061056457610564611ca7565b90506020020160208101906101a59190611d80565b610584600182611d6d565b9050610520565b610593610ad4565b60008160ff161180156105b157506105aa826102a3565b8160ff1611155b610617576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f2172616e676500000000000000000000000000000000000000000000000000006044820152606401610335565b63ffffffff821660008181526001602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660ff861690811790915591519182527ff25cfff98c95cf069df801752174d854732576e4b283bc4299386f65676e386a910160405180910390a261069782610cb7565b505050565b6106a4610ad4565b6106ae6000610dd1565b565b63ffffffff811660009081526002602052604081206060916106d182610aca565b905060008167ffffffffffffffff8111156106ee576106ee611dca565b604051908082528060200260200182016040528015610717578160200160208202803683370190505b50905060005b828110156107785761072f8482610e46565b82828151811061074157610741611ca7565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061077081611df9565b91505061071d565b50949350505050565b610789610ad4565b63ffffffff80831660009081526002602052604090206107ab918390610e5216565b610811576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21656e726f6c6c656400000000000000000000000000000000000000000000006044820152606401610335565b600061081c836102a3565b63ffffffff841660009081526001602052604090205490915060ff168110156108a1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f76696f6c617465732071756f72756d207468726573686f6c64000000000000006044820152606401610335565b6108aa83610cb7565b508173ffffffffffffffffffffffffffffffffffffffff168363ffffffff167fa4c7a7b783c9afd72ed0b93a7e67ca063acdaa9c3b3268bd43abe1199bdad27c836040516108fa91815260200190565b60405180910390a3505050565b61090f610ad4565b73ffffffffffffffffffffffffffffffffffffffff81166109b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610335565b6109bb81610dd1565b50565b60006109cc85858585610e74565b610a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216d65726b6c65000000000000000000000000000000000000000000000000006044820152606401610335565b610a3e85858585610eee565b610aa4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600560248201527f21736967730000000000000000000000000000000000000000000000000000006044820152606401610335565b506001949350505050565b610ab7610ad4565b610ac18282610b55565b61069782610cb7565b60006102c1825490565b60005473ffffffffffffffffffffffffffffffffffffffff1633146106ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610335565b73ffffffffffffffffffffffffffffffffffffffff8116610bd2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610335565b63ffffffff8083166000908152600260205260409020610bf491839061116616565b610c5a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f616c726561647920656e726f6c6c6564000000000000000000000000000000006044820152606401610335565b8073ffffffffffffffffffffffffffffffffffffffff168263ffffffff167f890997ec79a2b993cbc6e69433ed0ffa6303de16e3c21e315ba91c21ab5ec15a610ca2856102a3565b60405190815260200160405180910390a35050565b600080610cc3836106b0565b63ffffffff8416600090815260016020908152604080832054905193945060ff1692610cf3918491869101611e31565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018152828252805160209182012063ffffffff8916600081815260038452849020829055845290830181905292507f6f17fabbcaf1b0e8cfbc153d8884a27de46c3076c2de8ac2aef0094a134909e3910160405180910390a1949350505050565b6000610d8c600960058486611ea9565b610d9591611ed3565b60e01c9392505050565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260018301602052604081205415155b9392505050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000610dca8383611188565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166111b2565b600080610ed8610eb985858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506112a592505050565b610ec388886112b0565b610ecd87876112d4565b63ffffffff166112e4565b9050610ee48686611395565b1495945050505050565b600080610efb86866113ad565b9050600080610f0a8686610d7c565b9050600083610f198a8a6113d2565b604051602001610f2b93929190611f1b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152918152815160209283012063ffffffff8516600090815260039093529120549091508114610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f21636f6d6d69746d656e740000000000000000000000000000000000000000006044820152606401610335565b61100782610fee8b8b6113f7565b610ff88c8c611395565b6110028d8d611407565b611417565b92505050600061101788886114cb565b90506000805b8460ff16811015611156576000611073856110398d8d866114ed565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061153392505050565b90505b83831080156110bb575061108b8b8b8561154f565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b156110d0576110c983611df9565b9250611076565b838310611139576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f217468726573686f6c64000000000000000000000000000000000000000000006044820152606401610335565b61114283611df9565b9250508061114f90611df9565b905061101d565b5060019998505050505050505050565b6000610dca8373ffffffffffffffffffffffffffffffffffffffff84166115af565b600082600001828154811061119f5761119f611ca7565b9060005260206000200154905092915050565b6000818152600183016020526040812054801561129b5760006111d6600183611f5a565b85549091506000906111ea90600190611f5a565b905081811461124f57600086600001828154811061120a5761120a611ca7565b906000526020600020015490508087600001848154811061122d5761122d611ca7565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061126057611260611f6d565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506102c1565b60009150506102c1565b805160209091012090565b6112b8611989565b6112c761044460448486611ea9565b810190610dca9190611f9c565b6000610d8c600560018486611ea9565b8260005b602081101561138d57600183821c16600085836020811061130b5761130b611ca7565b602002015190508160010361134b576040805160208101839052908101859052606001604051602081830303815290604052805190602001209350611378565b60408051602081018690529081018290526060016040516020818303038152906040528051906020012093505b5050808061138590611df9565b9150506112e8565b509392505050565b60006113a46020828486611ea9565b610dca91612042565b60006113bf6104456104448486611ea9565b6113c89161207e565b60f81c9392505050565b36600083836113e186866115fe565b6113ec928290611ea9565b915091509250929050565b60006113a4604460248486611ea9565b6000610d8c602460208486611ea9565b6000806114248686611625565b60408051602080820184905281830188905260e087901b7fffffffff00000000000000000000000000000000000000000000000000000000166060830152825160448184030181526064830184528051908201207f19457468657265756d205369676e6564204d6573736167653a0a333200000000608484015260a0808401919091528351808403909101815260c090920190925280519101209091509695505050505050565b600060206114d984846115fe565b6114e39084611f5a565b610dca91906120c4565b366000806114fc6041856120ff565b61150890610445611d6d565b90506000611517604183611d6d565b90506115258183888a611ea9565b935093505050935093915050565b600080600061154285856116a5565b9150915061138d816116e7565b60008061155d8360206120ff565b61156786866115fe565b6115719190611d6d565b61157c90600c611d6d565b9050600061158b826014611d6d565b905061159981838789611ea9565b6115a291612116565b60601c9695505050505050565b60008181526001830160205260408120546115f6575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556102c1565b5060006102c1565b6000604161160c84846113ad565b60ff1661161991906120ff565b610dca90610445611d6d565b6040805160e084901b7fffffffff0000000000000000000000000000000000000000000000000000000016602080830191909152602482018490527f48595045524c414e45000000000000000000000000000000000000000000000060448301528251602d818403018152604d9092019092528051910120600090610dca565b60008082516041036116db5760208301516040840151606085015160001a6116cf8782858561189a565b94509450505050610476565b50600090506002610476565b60008160048111156116fb576116fb611d9b565b036117035750565b600181600481111561171757611717611d9b565b0361177e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610335565b600281600481111561179257611792611d9b565b036117f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610335565b600381600481111561180d5761180d611d9b565b036109bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610335565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156118d15750600090506003611980565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015611925573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661197957600060019250925050611980565b9150600090505b94509492505050565b6040518061040001604052806020906020820280368337509192915050565b803563ffffffff811681146119bc57600080fd5b919050565b6000602082840312156119d357600080fd5b610dca826119a8565b60008083601f8401126119ee57600080fd5b50813567ffffffffffffffff811115611a0657600080fd5b6020830191508360208260051b850101111561047657600080fd5b60008060008060408587031215611a3757600080fd5b843567ffffffffffffffff80821115611a4f57600080fd5b611a5b888389016119dc565b90965094506020870135915080821115611a7457600080fd5b50611a81878288016119dc565b95989497509550505050565b60008083601f840112611a9f57600080fd5b50813567ffffffffffffffff811115611ab757600080fd5b60208301915083602082850101111561047657600080fd5b60008060208385031215611ae257600080fd5b823567ffffffffffffffff811115611af957600080fd5b611b0585828601611a8d565b90969095509350505050565b600081518084526020808501945080840160005b83811015611b5757815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101611b25565b509495945050505050565b604081526000611b756040830185611b11565b905060ff831660208301529392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146119bc57600080fd5b60008060408385031215611bbe57600080fd5b611bc7836119a8565b9150611bd560208401611b87565b90509250929050565b803560ff811681146119bc57600080fd5b60008060408385031215611c0257600080fd5b611c0b836119a8565b9150611bd560208401611bde565b602081526000610dca6020830184611b11565b600060208284031215611c3e57600080fd5b610dca82611b87565b60008060008060408587031215611c5d57600080fd5b843567ffffffffffffffff80821115611c7557600080fd5b611c8188838901611a8d565b90965094506020870135915080821115611c9a57600080fd5b50611a8187828801611a8d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611d0b57600080fd5b83018035915067ffffffffffffffff821115611d2657600080fd5b6020019150600581901b360382131561047657600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156102c1576102c1611d3e565b600060208284031215611d9257600080fd5b610dca82611bde565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611e2a57611e2a611d3e565b5060010190565b7fff000000000000000000000000000000000000000000000000000000000000008360f81b168152600060018083018451602080870160005b83811015611e9b57815173ffffffffffffffffffffffffffffffffffffffff16855293820193908201908501611e6a565b509298975050505050505050565b60008085851115611eb957600080fd5b83861115611ec657600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015611f135780818660040360031b1b83161692505b505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008460f81b168152818360018301376000910160010190815292915050565b818103818111156102c1576102c1611d3e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6000610400808385031215611fb057600080fd5b83601f840112611fbf57600080fd5b60405181810181811067ffffffffffffffff82111715612008577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405290830190808583111561201d57600080fd5b845b8381101561203757803582526020918201910161201f565b509095945050505050565b803560208310156102c1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008135818116916001851015611f135760019490940360031b84901b1690921692915050565b6000826120fa577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b80820281158282048414176102c1576102c1611d3e565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008135818116916014851015611f135760149490940360031b84901b169092169291505056fea264697066735822122037fd2d2df3447845d14df6e132a3bfe84b2c7a85e4e3d90bbeb4c960b05b3b4664736f6c63430008110033";
405
405
  const isSuperArgs = (xs) => xs.length > 1;
406
406
  class LegacyMultisigIsm__factory extends ethers_1.ContractFactory {
407
407
  constructor(...args) {
@@ -12,7 +12,7 @@ export declare class StaticMerkleRootMultisigIsmFactory__factory extends Contrac
12
12
  }): TransactionRequest;
13
13
  attach(address: string): StaticMerkleRootMultisigIsmFactory;
14
14
  connect(signer: Signer): StaticMerkleRootMultisigIsmFactory__factory;
15
- static readonly bytecode = "0x60a060405234801561001057600080fd5b5061001961002a565b6001600160a01b0316608052610067565b60006040516100389061005a565b604051809103906000f080158015610054573d6000803e3d6000fd5b50905090565b610f3d806105e283390190565b608051610560610082600039600061013c01526105606000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d4277ebc1461003b578063ed547bf714610077575b600080fd5b61004e6100493660046103a1565b61008a565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61004e6100853660046103a1565b6100b4565b600080600061009a868686610109565b915091506100a88282610179565b925050505b9392505050565b60008060006100c4868686610109565b9150915060006100d48383610179565b905073ffffffffffffffffffffffffffffffffffffffff81163b6100a8576100fe60008484610195565b979650505050505050565b6000606060008585856040516020016101249392919061042d565b604051602081830303815290604052905060006101617f0000000000000000000000000000000000000000000000000000000000000000836102f9565b82516020909301929092209791965090945050505050565b8051602082012060009061018d848261036f565b949350505050565b600083471015610206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b8151600003610271576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016101fd565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff81166100ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016101fd565b60607f600b380380600b3d393df3363d3d373d3d3d3d60368038038091363936013d738360601b7f5af43d3d93803e603457fd5bf30000000000000000000000000000000000000084855160405160200161035895949392919061049a565b604051602081830303815290604052905092915050565b60006100ad8383306000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b6000806000604084860312156103b657600080fd5b833567ffffffffffffffff808211156103ce57600080fd5b818601915086601f8301126103e257600080fd5b8135818111156103f157600080fd5b8760208260051b850101111561040657600080fd5b6020928301955093505084013560ff8116811461042257600080fd5b809150509250925092565b604080825281018390526000846060830182805b8781101561048257833573ffffffffffffffffffffffffffffffffffffffff811680821461046d578384fd5b84525060209384019390920191600101610441565b5050809250505060ff83166020830152949350505050565b858152600060207fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008716818401527fffffffffffffffffffffffffff0000000000000000000000000000000000000086166034840152845160005b81811015610511578681018301518582016041015282016104f5565b506041930192830193909352506061019594505050505056fea26469706673582212205d9b1ce24512419b7f97fa52e39b99eec77c5569ee3769e416e3332888ce0f6c64736f6c63430008110033608060405234801561001057600080fd5b50610f1d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80632e0ed234146100465780636465e69f14610070578063f7e83aee1461008a575b600080fd5b610059610054366004610a0c565b6100ad565b604051610067929190610a4e565b60405180910390f35b610078600481565b60405160ff9091168152602001610067565b61009d610098366004610ab2565b6100d8565b6040519015158152602001610067565b606060006100b96102bc565b8060200190518101906100cc9190610bb2565b915091505b9250929050565b6000806100e7868686866102ec565b90506000806100f686866100ad565b9150915060008160ff1611610192576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f4e6f204d756c746973696749534d207468726573686f6c642070726573656e7460448201527f20666f72206d657373616765000000000000000000000000000000000000000060648201526084015b60405180910390fd5b81516000805b8360ff168110156102ab5760006101b9876101b48e8e86610487565b6104d1565b90505b838310801561021057508583815181106101d8576101d8610cbf565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b156102255761021e83610d1d565b92506101bc565b83831061028e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f217468726573686f6c64000000000000000000000000000000000000000000006044820152606401610189565b61029783610d1d565b925050806102a490610d1d565b9050610198565b5060019a9950505050505050505050565b60608060203603803580820391506040519250602081018301604052808352602083018183823750919392505050565b60008061035061033185858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104f792505050565b61033b8888610502565b610345878761053f565b63ffffffff16610562565b905061047d61035f8585610613565b6103698888610623565b836103748a8a61064c565b61037e8b8b61066d565b604080517fffffffff0000000000000000000000000000000000000000000000000000000060e097881b811660208084019190915260248301979097527f48595045524c414e45000000000000000000000000000000000000000000000060448301528251808303602d018152604d83018452805190880120606d830152608d8201959095529290951b90921660ad82015260b1808201929092528351808203909201825260d1810184528151918301919091207f19457468657265756d205369676e6564204d6573736167653a0a33320000000060f183015261010d808301919091528351808303909101815261012d909101909252815191012090565b9695505050505050565b606061049484848461067e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092979650505050505050565b60008060006104e085856106c4565b915091506104ed81610706565b5090505b92915050565b805160209091012090565b61050a6109ab565b8260448361051a61040083610d55565b61ffff169261052b93929190610d77565b8101906105389190610da1565b9392505050565b600061054f600560018486610d77565b61055891610e20565b60e01c9392505050565b8260005b602081101561060b57600183821c16600085836020811061058957610589610cbf565b60200201519050816001036105c95760408051602081018390529081018590526060016040516020818303038152906040528051906020012093506105f6565b60408051602081018690529081018290526060016040516020818303038152906040528051906020012093505b5050808061060390610d1d565b915050610566565b509392505050565b600061054f600960058486610d77565b6000828183610633826020610e68565b60ff169261064393929190610d77565b61053891610e81565b60008260208361065d826004610e68565b60ff169261054f93929190610d77565b600082602483610633826020610e68565b3660008061068d604185610ebd565b61069990610444610ed4565b905060006106a8604183610ed4565b90506106b68183888a610d77565b935093505050935093915050565b60008082516041036106fa5760208301516040840151606085015160001a6106ee878285856108bc565b945094505050506100d1565b506000905060026100d1565b600081600481111561071a5761071a610c90565b036107225750565b600181600481111561073657610736610c90565b0361079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610189565b60028160048111156107b1576107b1610c90565b03610818576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610189565b600381600481111561082c5761082c610c90565b036108b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610189565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156108f357506000905060036109a2565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610947573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661099b576000600192509250506109a2565b9150600090505b94509492505050565b6040518061040001604052806020906020820280368337509192915050565b60008083601f8401126109dc57600080fd5b50813567ffffffffffffffff8111156109f457600080fd5b6020830191508360208285010111156100d157600080fd5b60008060208385031215610a1f57600080fd5b823567ffffffffffffffff811115610a3657600080fd5b610a42858286016109ca565b90969095509350505050565b604080825283519082018190526000906020906060840190828701845b82811015610a9d57815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610a6b565b50505060ff9490941692019190915250919050565b60008060008060408587031215610ac857600080fd5b843567ffffffffffffffff80821115610ae057600080fd5b610aec888389016109ca565b90965094506020870135915080821115610b0557600080fd5b50610b12878288016109ca565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b9457610b94610b1e565b604052919050565b805160ff81168114610bad57600080fd5b919050565b60008060408385031215610bc557600080fd5b825167ffffffffffffffff80821115610bdd57600080fd5b818501915085601f830112610bf157600080fd5b8151602082821115610c0557610c05610b1e565b8160051b9250610c16818401610b4d565b8281529284018101928181019089851115610c3057600080fd5b948201945b84861015610c74578551935073ffffffffffffffffffffffffffffffffffffffff84168414610c645760008081fd5b8382529482019490820190610c35565b9650610c839050878201610b9c565b9450505050509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610d4e57610d4e610cee565b5060010190565b61ffff818116838216019080821115610d7057610d70610cee565b5092915050565b60008085851115610d8757600080fd5b83861115610d9457600080fd5b5050820193919092039150565b6000610400808385031215610db557600080fd5b83601f840112610dc457600080fd5b60405181810181811067ffffffffffffffff82111715610de657610de6610b1e565b604052908301908085831115610dfb57600080fd5b845b83811015610e15578035825260209182019101610dfd565b509095945050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015610e605780818660040360031b1b83161692505b505092915050565b60ff81811683821601908111156104f1576104f1610cee565b803560208310156104f1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b80820281158282048414176104f1576104f1610cee565b808201808211156104f1576104f1610cee56fea26469706673582212200e8b8e520a373250629672deb003bea411a79ae181be8106bc92add98bca25ad64736f6c63430008110033";
15
+ static readonly bytecode = "0x60a060405234801561001057600080fd5b5061001961002a565b6001600160a01b0316608052610067565b60006040516100389061005a565b604051809103906000f080158015610054573d6000803e3d6000fd5b50905090565b610f3d806105e283390190565b608051610560610082600039600061013c01526105606000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d4277ebc1461003b578063ed547bf714610077575b600080fd5b61004e6100493660046103a1565b61008a565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61004e6100853660046103a1565b6100b4565b600080600061009a868686610109565b915091506100a88282610179565b925050505b9392505050565b60008060006100c4868686610109565b9150915060006100d48383610179565b905073ffffffffffffffffffffffffffffffffffffffff81163b6100a8576100fe60008484610195565b979650505050505050565b6000606060008585856040516020016101249392919061042d565b604051602081830303815290604052905060006101617f0000000000000000000000000000000000000000000000000000000000000000836102f9565b82516020909301929092209791965090945050505050565b8051602082012060009061018d848261036f565b949350505050565b600083471015610206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b8151600003610271576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016101fd565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff81166100ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016101fd565b60607f600b380380600b3d393df3363d3d373d3d3d3d60368038038091363936013d738360601b7f5af43d3d93803e603457fd5bf30000000000000000000000000000000000000084855160405160200161035895949392919061049a565b604051602081830303815290604052905092915050565b60006100ad8383306000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b6000806000604084860312156103b657600080fd5b833567ffffffffffffffff808211156103ce57600080fd5b818601915086601f8301126103e257600080fd5b8135818111156103f157600080fd5b8760208260051b850101111561040657600080fd5b6020928301955093505084013560ff8116811461042257600080fd5b809150509250925092565b604080825281018390526000846060830182805b8781101561048257833573ffffffffffffffffffffffffffffffffffffffff811680821461046d578384fd5b84525060209384019390920191600101610441565b5050809250505060ff83166020830152949350505050565b858152600060207fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008716818401527fffffffffffffffffffffffffff0000000000000000000000000000000000000086166034840152845160005b81811015610511578681018301518582016041015282016104f5565b506041930192830193909352506061019594505050505056fea26469706673582212209a1305a7404ae0d56967a8801ec9c97e329a8a3f75fcbe82937d1cb6cf26627264736f6c63430008110033608060405234801561001057600080fd5b50610f1d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80632e0ed234146100465780636465e69f14610070578063f7e83aee1461008a575b600080fd5b610059610054366004610a0c565b6100ad565b604051610067929190610a4e565b60405180910390f35b610078600481565b60405160ff9091168152602001610067565b61009d610098366004610ab2565b6100d8565b6040519015158152602001610067565b606060006100b96102bc565b8060200190518101906100cc9190610bb2565b915091505b9250929050565b6000806100e7868686866102ec565b90506000806100f686866100ad565b9150915060008160ff1611610192576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f4e6f204d756c746973696749534d207468726573686f6c642070726573656e7460448201527f20666f72206d657373616765000000000000000000000000000000000000000060648201526084015b60405180910390fd5b81516000805b8360ff168110156102ab5760006101b9876101b48e8e86610487565b6104d1565b90505b838310801561021057508583815181106101d8576101d8610cbf565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b156102255761021e83610d1d565b92506101bc565b83831061028e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f217468726573686f6c64000000000000000000000000000000000000000000006044820152606401610189565b61029783610d1d565b925050806102a490610d1d565b9050610198565b5060019a9950505050505050505050565b60608060203603803580820391506040519250602081018301604052808352602083018183823750919392505050565b60008061035061033185858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506104f792505050565b61033b8888610502565b610345878761053f565b63ffffffff16610562565b905061047d61035f8585610613565b6103698888610623565b836103748a8a61064c565b61037e8b8b61066d565b604080517fffffffff0000000000000000000000000000000000000000000000000000000060e097881b811660208084019190915260248301979097527f48595045524c414e45000000000000000000000000000000000000000000000060448301528251808303602d018152604d83018452805190880120606d830152608d8201959095529290951b90921660ad82015260b1808201929092528351808203909201825260d1810184528151918301919091207f19457468657265756d205369676e6564204d6573736167653a0a33320000000060f183015261010d808301919091528351808303909101815261012d909101909252815191012090565b9695505050505050565b606061049484848461067e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092979650505050505050565b60008060006104e085856106c4565b915091506104ed81610706565b5090505b92915050565b805160209091012090565b61050a6109ab565b8260448361051a61040083610d55565b61ffff169261052b93929190610d77565b8101906105389190610da1565b9392505050565b600061054f600560018486610d77565b61055891610e20565b60e01c9392505050565b8260005b602081101561060b57600183821c16600085836020811061058957610589610cbf565b60200201519050816001036105c95760408051602081018390529081018590526060016040516020818303038152906040528051906020012093506105f6565b60408051602081018690529081018290526060016040516020818303038152906040528051906020012093505b5050808061060390610d1d565b915050610566565b509392505050565b600061054f600960058486610d77565b6000828183610633826020610e68565b60ff169261064393929190610d77565b61053891610e81565b60008260208361065d826004610e68565b60ff169261054f93929190610d77565b600082602483610633826020610e68565b3660008061068d604185610ebd565b61069990610444610ed4565b905060006106a8604183610ed4565b90506106b68183888a610d77565b935093505050935093915050565b60008082516041036106fa5760208301516040840151606085015160001a6106ee878285856108bc565b945094505050506100d1565b506000905060026100d1565b600081600481111561071a5761071a610c90565b036107225750565b600181600481111561073657610736610c90565b0361079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610189565b60028160048111156107b1576107b1610c90565b03610818576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610189565b600381600481111561082c5761082c610c90565b036108b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610189565b50565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156108f357506000905060036109a2565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015610947573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661099b576000600192509250506109a2565b9150600090505b94509492505050565b6040518061040001604052806020906020820280368337509192915050565b60008083601f8401126109dc57600080fd5b50813567ffffffffffffffff8111156109f457600080fd5b6020830191508360208285010111156100d157600080fd5b60008060208385031215610a1f57600080fd5b823567ffffffffffffffff811115610a3657600080fd5b610a42858286016109ca565b90969095509350505050565b604080825283519082018190526000906020906060840190828701845b82811015610a9d57815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610a6b565b50505060ff9490941692019190915250919050565b60008060008060408587031215610ac857600080fd5b843567ffffffffffffffff80821115610ae057600080fd5b610aec888389016109ca565b90965094506020870135915080821115610b0557600080fd5b50610b12878288016109ca565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b9457610b94610b1e565b604052919050565b805160ff81168114610bad57600080fd5b919050565b60008060408385031215610bc557600080fd5b825167ffffffffffffffff80821115610bdd57600080fd5b818501915085601f830112610bf157600080fd5b8151602082821115610c0557610c05610b1e565b8160051b9250610c16818401610b4d565b8281529284018101928181019089851115610c3057600080fd5b948201945b84861015610c74578551935073ffffffffffffffffffffffffffffffffffffffff84168414610c645760008081fd5b8382529482019490820190610c35565b9650610c839050878201610b9c565b9450505050509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610d4e57610d4e610cee565b5060010190565b61ffff818116838216019080821115610d7057610d70610cee565b5092915050565b60008085851115610d8757600080fd5b83861115610d9457600080fd5b5050820193919092039150565b6000610400808385031215610db557600080fd5b83601f840112610dc457600080fd5b60405181810181811067ffffffffffffffff82111715610de657610de6610b1e565b604052908301908085831115610dfb57600080fd5b845b83811015610e15578035825260209182019101610dfd565b509095945050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015610e605780818660040360031b1b83161692505b505092915050565b60ff81811683821601908111156104f1576104f1610cee565b803560208310156104f1577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b80820281158282048414176104f1576104f1610cee565b808201808211156104f1576104f1610cee56fea2646970667358221220c60b93a3ad818e2b28cc0365235be4a44a2edc9d1ce39622cc040f189eb1ca3364736f6c63430008110033";
16
16
  static readonly abi: {
17
17
  inputs: {
18
18
  internalType: string;