@hyperlane-xyz/core 5.4.1 → 5.4.2-superchain.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 (301) hide show
  1. package/contracts/PackageVersioned.sol +1 -1
  2. package/contracts/hooks/SuperchainHook.sol +82 -0
  3. package/contracts/interfaces/IInterchainSecurityModule.sol +2 -1
  4. package/contracts/interfaces/hooks/IPostDispatchHook.sol +2 -1
  5. package/contracts/interfaces/optimism/ICrossL2Inbox.sol +60 -0
  6. package/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger.sol +68 -0
  7. package/contracts/isms/hook/SuperchainIsm.sol +91 -0
  8. package/contracts/mock/MockOptimism.sol +73 -0
  9. package/dist/buildArtifact.js +1 -1
  10. package/dist/buildArtifact.json +1 -1
  11. package/dist/contracts/hooks/SuperchainHook.d.ts +411 -0
  12. package/dist/contracts/hooks/SuperchainHook.d.ts.map +1 -0
  13. package/dist/contracts/hooks/SuperchainHook.js +2 -0
  14. package/dist/contracts/hooks/SuperchainHook.js.map +1 -0
  15. package/dist/contracts/hooks/index.d.ts +1 -0
  16. package/dist/contracts/hooks/index.d.ts.map +1 -1
  17. package/dist/contracts/interfaces/optimism/ICrossL2Inbox.d.ts +233 -0
  18. package/dist/contracts/interfaces/optimism/ICrossL2Inbox.d.ts.map +1 -0
  19. package/dist/contracts/interfaces/optimism/ICrossL2Inbox.js +2 -0
  20. package/dist/contracts/interfaces/optimism/ICrossL2Inbox.js.map +1 -0
  21. package/dist/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger.d.ts +209 -0
  22. package/dist/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger.d.ts.map +1 -0
  23. package/dist/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger.js +2 -0
  24. package/dist/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger.js.map +1 -0
  25. package/dist/contracts/interfaces/optimism/index.d.ts +2 -0
  26. package/dist/contracts/interfaces/optimism/index.d.ts.map +1 -1
  27. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism.d.ts +273 -0
  28. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism.d.ts.map +1 -0
  29. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism.js +2 -0
  30. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism.js.map +1 -0
  31. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm.d.ts +288 -0
  32. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm.d.ts.map +1 -0
  33. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm.js +2 -0
  34. package/dist/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm.js.map +1 -0
  35. package/dist/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM.d.ts +273 -0
  36. package/dist/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM.d.ts.map +1 -0
  37. package/dist/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM.js +2 -0
  38. package/dist/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM.js.map +1 -0
  39. package/dist/contracts/isms/hook/SuperchainIsm.sol/index.d.ts +2 -0
  40. package/dist/contracts/isms/hook/SuperchainIsm.sol/index.d.ts.map +1 -0
  41. package/dist/contracts/isms/hook/SuperchainIsm.sol/index.js +2 -0
  42. package/dist/contracts/isms/hook/SuperchainIsm.sol/index.js.map +1 -0
  43. package/dist/contracts/isms/hook/index.d.ts +2 -0
  44. package/dist/contracts/isms/hook/index.d.ts.map +1 -1
  45. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm.d.ts +110 -0
  46. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm.d.ts.map +1 -0
  47. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm.js +2 -0
  48. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm.js.map +1 -0
  49. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm.d.ts +125 -0
  50. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm.d.ts.map +1 -0
  51. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm.js +2 -0
  52. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm.js.map +1 -0
  53. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.d.ts +3 -0
  54. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.d.ts.map +1 -0
  55. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.js +2 -0
  56. package/dist/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.js.map +1 -0
  57. package/dist/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger.d.ts +224 -0
  58. package/dist/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger.d.ts.map +1 -0
  59. package/dist/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger.js +2 -0
  60. package/dist/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger.js.map +1 -0
  61. package/dist/contracts/mock/MockOptimism.sol/index.d.ts +1 -0
  62. package/dist/contracts/mock/MockOptimism.sol/index.d.ts.map +1 -1
  63. package/dist/factories/contracts/AttributeCheckpointFraud__factory.d.ts +1 -1
  64. package/dist/factories/contracts/AttributeCheckpointFraud__factory.js +1 -1
  65. package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts +1 -1
  66. package/dist/factories/contracts/CheckpointFraudProofs__factory.js +1 -1
  67. package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
  68. package/dist/factories/contracts/Mailbox__factory.js +1 -1
  69. package/dist/factories/contracts/avs/ECDSAStakeRegistry__factory.d.ts +1 -1
  70. package/dist/factories/contracts/avs/ECDSAStakeRegistry__factory.js +1 -1
  71. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.d.ts +1 -1
  72. package/dist/factories/contracts/avs/HyperlaneServiceManager__factory.js +1 -1
  73. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts +1 -1
  74. package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.js +1 -1
  75. package/dist/factories/contracts/hooks/MerkleTreeHook__factory.d.ts +1 -1
  76. package/dist/factories/contracts/hooks/MerkleTreeHook__factory.js +1 -1
  77. package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.d.ts +1 -1
  78. package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.js +1 -1
  79. package/dist/factories/contracts/hooks/OPStackHook__factory.d.ts +1 -1
  80. package/dist/factories/contracts/hooks/OPStackHook__factory.js +1 -1
  81. package/dist/factories/contracts/hooks/PausableHook__factory.d.ts +1 -1
  82. package/dist/factories/contracts/hooks/PausableHook__factory.js +1 -1
  83. package/dist/factories/contracts/hooks/PolygonPosHook__factory.d.ts +1 -1
  84. package/dist/factories/contracts/hooks/PolygonPosHook__factory.js +1 -1
  85. package/dist/factories/contracts/hooks/ProtocolFee__factory.d.ts +1 -1
  86. package/dist/factories/contracts/hooks/ProtocolFee__factory.js +1 -1
  87. package/dist/factories/contracts/hooks/SuperchainHook__factory.d.ts +262 -0
  88. package/dist/factories/contracts/hooks/SuperchainHook__factory.d.ts.map +1 -0
  89. package/dist/factories/contracts/hooks/SuperchainHook__factory.js +352 -0
  90. package/dist/factories/contracts/hooks/SuperchainHook__factory.js.map +1 -0
  91. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.d.ts +1 -1
  92. package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.js +1 -1
  93. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.d.ts +1 -1
  94. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.js +1 -1
  95. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.d.ts +1 -1
  96. package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.js +1 -1
  97. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts +1 -1
  98. package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js +1 -1
  99. package/dist/factories/contracts/hooks/igp/StorageGasOracle__factory.d.ts +1 -1
  100. package/dist/factories/contracts/hooks/igp/StorageGasOracle__factory.js +1 -1
  101. package/dist/factories/contracts/hooks/index.d.ts +1 -0
  102. package/dist/factories/contracts/hooks/index.d.ts.map +1 -1
  103. package/dist/factories/contracts/hooks/index.js +1 -0
  104. package/dist/factories/contracts/hooks/index.js.map +1 -1
  105. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.d.ts +1 -1
  106. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.js +1 -1
  107. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.d.ts +1 -1
  108. package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.js +1 -1
  109. package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.d.ts +1 -1
  110. package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.js +1 -1
  111. package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.d.ts +1 -1
  112. package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.js +1 -1
  113. package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.d.ts +1 -1
  114. package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.js +1 -1
  115. package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.d.ts +1 -1
  116. package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.js +1 -1
  117. package/dist/factories/contracts/interfaces/optimism/ICrossL2Inbox__factory.d.ts +143 -0
  118. package/dist/factories/contracts/interfaces/optimism/ICrossL2Inbox__factory.d.ts.map +1 -0
  119. package/dist/factories/contracts/interfaces/optimism/ICrossL2Inbox__factory.js +189 -0
  120. package/dist/factories/contracts/interfaces/optimism/ICrossL2Inbox__factory.js.map +1 -0
  121. package/dist/factories/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger__factory.d.ts +140 -0
  122. package/dist/factories/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger__factory.d.ts.map +1 -0
  123. package/dist/factories/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger__factory.js +185 -0
  124. package/dist/factories/contracts/interfaces/optimism/IL2toL2CrossDomainMessenger__factory.js.map +1 -0
  125. package/dist/factories/contracts/interfaces/optimism/index.d.ts +2 -0
  126. package/dist/factories/contracts/interfaces/optimism/index.d.ts.map +1 -1
  127. package/dist/factories/contracts/interfaces/optimism/index.js +2 -0
  128. package/dist/factories/contracts/interfaces/optimism/index.js.map +1 -1
  129. package/dist/factories/contracts/isms/NoopIsm__factory.d.ts +1 -1
  130. package/dist/factories/contracts/isms/NoopIsm__factory.js +1 -1
  131. package/dist/factories/contracts/isms/PausableIsm__factory.d.ts +1 -1
  132. package/dist/factories/contracts/isms/PausableIsm__factory.js +1 -1
  133. package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.d.ts +1 -1
  134. package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.js +1 -1
  135. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
  136. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
  137. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
  138. package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
  139. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts +1 -1
  140. package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js +1 -1
  141. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts +1 -1
  142. package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.js +1 -1
  143. package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.d.ts +1 -1
  144. package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.js +1 -1
  145. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.d.ts +1 -1
  146. package/dist/factories/contracts/isms/hook/OPStackIsm__factory.js +1 -1
  147. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts +1 -1
  148. package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.js +1 -1
  149. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism__factory.d.ts +165 -0
  150. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism__factory.d.ts.map +1 -0
  151. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism__factory.js +229 -0
  152. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPL2ToL1Ism__factory.js.map +1 -0
  153. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm__factory.d.ts +175 -0
  154. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm__factory.d.ts.map +1 -0
  155. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm__factory.js +242 -0
  156. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/OPStackIsm__factory.js.map +1 -0
  157. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM__factory.d.ts +165 -0
  158. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM__factory.d.ts.map +1 -0
  159. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM__factory.js +229 -0
  160. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/SuperchainISM__factory.js.map +1 -0
  161. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/index.d.ts +2 -0
  162. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/index.d.ts.map +1 -0
  163. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/index.js +5 -0
  164. package/dist/factories/contracts/isms/hook/SuperchainIsm.sol/index.js.map +1 -0
  165. package/dist/factories/contracts/isms/hook/index.d.ts +1 -0
  166. package/dist/factories/contracts/isms/hook/index.d.ts.map +1 -1
  167. package/dist/factories/contracts/isms/hook/index.js +1 -0
  168. package/dist/factories/contracts/isms/hook/index.js.map +1 -1
  169. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts +1 -1
  170. package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js +1 -1
  171. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm__factory.d.ts +79 -0
  172. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm__factory.d.ts.map +1 -0
  173. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm__factory.js +109 -0
  174. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/AbstractRpcMultisigIsm__factory.js.map +1 -0
  175. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm__factory.d.ts +121 -0
  176. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm__factory.d.ts.map +1 -0
  177. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm__factory.js +171 -0
  178. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/RpcMultisigIsm__factory.js.map +1 -0
  179. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.d.ts +3 -0
  180. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.d.ts.map +1 -0
  181. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.js +6 -0
  182. package/dist/factories/contracts/isms/multisig/RpcValidatorMultisigIsm.sol/index.js.map +1 -0
  183. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
  184. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
  185. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +1 -1
  186. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +1 -1
  187. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
  188. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
  189. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +1 -1
  190. package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +1 -1
  191. package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.d.ts +1 -1
  192. package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.js +1 -1
  193. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.d.ts +1 -1
  194. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.js +1 -1
  195. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.d.ts +1 -1
  196. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.js +1 -1
  197. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.d.ts +1 -1
  198. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.js +1 -1
  199. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.d.ts +1 -1
  200. package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.js +1 -1
  201. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.d.ts +1 -1
  202. package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.js +1 -1
  203. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts +1 -1
  204. package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js +1 -1
  205. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
  206. package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
  207. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
  208. package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
  209. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.d.ts +1 -1
  210. package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.js +1 -1
  211. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
  212. package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
  213. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
  214. package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
  215. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
  216. package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
  217. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
  218. package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
  219. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
  220. package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
  221. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
  222. package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
  223. package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
  224. package/dist/factories/contracts/mock/MockMailbox__factory.js +1 -1
  225. package/dist/factories/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger__factory.d.ts +174 -0
  226. package/dist/factories/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger__factory.d.ts.map +1 -0
  227. package/dist/factories/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger__factory.js +237 -0
  228. package/dist/factories/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger__factory.js.map +1 -0
  229. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.d.ts +1 -1
  230. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.js +1 -1
  231. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.d.ts +1 -1
  232. package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.js +1 -1
  233. package/dist/factories/contracts/mock/MockOptimism.sol/index.d.ts +1 -0
  234. package/dist/factories/contracts/mock/MockOptimism.sol/index.d.ts.map +1 -1
  235. package/dist/factories/contracts/mock/MockOptimism.sol/index.js +1 -0
  236. package/dist/factories/contracts/mock/MockOptimism.sol/index.js.map +1 -1
  237. package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts +1 -1
  238. package/dist/factories/contracts/test/LightTestRecipient__factory.js +1 -1
  239. package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
  240. package/dist/factories/contracts/test/TestGasRouter__factory.js +1 -1
  241. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts +1 -1
  242. package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js +1 -1
  243. package/dist/factories/contracts/test/TestIsm__factory.d.ts +1 -1
  244. package/dist/factories/contracts/test/TestIsm__factory.js +1 -1
  245. package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
  246. package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
  247. package/dist/factories/contracts/test/TestMerkleTreeHook__factory.d.ts +1 -1
  248. package/dist/factories/contracts/test/TestMerkleTreeHook__factory.js +1 -1
  249. package/dist/factories/contracts/test/TestPostDispatchHook__factory.d.ts +1 -1
  250. package/dist/factories/contracts/test/TestPostDispatchHook__factory.js +1 -1
  251. package/dist/factories/contracts/test/TestQuerySender__factory.d.ts +1 -1
  252. package/dist/factories/contracts/test/TestQuerySender__factory.js +1 -1
  253. package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
  254. package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
  255. package/dist/factories/contracts/test/TestRecipient__factory.d.ts +1 -1
  256. package/dist/factories/contracts/test/TestRecipient__factory.js +1 -1
  257. package/dist/factories/contracts/test/TestRemoteChallenger__factory.d.ts +1 -1
  258. package/dist/factories/contracts/test/TestRemoteChallenger__factory.js +1 -1
  259. package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
  260. package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
  261. package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
  262. package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
  263. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.d.ts +1 -1
  264. package/dist/factories/contracts/test/avs/TestHyperlaneServiceManager__factory.js +1 -1
  265. package/dist/factories/contracts/token/HypERC20Collateral__factory.d.ts +1 -1
  266. package/dist/factories/contracts/token/HypERC20Collateral__factory.js +1 -1
  267. package/dist/factories/contracts/token/HypERC20__factory.d.ts +1 -1
  268. package/dist/factories/contracts/token/HypERC20__factory.js +1 -1
  269. package/dist/factories/contracts/token/HypERC721Collateral__factory.d.ts +1 -1
  270. package/dist/factories/contracts/token/HypERC721Collateral__factory.js +1 -1
  271. package/dist/factories/contracts/token/HypERC721__factory.d.ts +1 -1
  272. package/dist/factories/contracts/token/HypERC721__factory.js +1 -1
  273. package/dist/factories/contracts/token/HypNative__factory.d.ts +1 -1
  274. package/dist/factories/contracts/token/HypNative__factory.js +1 -1
  275. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.d.ts +1 -1
  276. package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.js +1 -1
  277. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.d.ts +1 -1
  278. package/dist/factories/contracts/token/extensions/FastHypERC20__factory.js +1 -1
  279. package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.d.ts +1 -1
  280. package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.js +1 -1
  281. package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.d.ts +1 -1
  282. package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.js +1 -1
  283. package/dist/factories/contracts/token/extensions/HypERC4626__factory.d.ts +1 -1
  284. package/dist/factories/contracts/token/extensions/HypERC4626__factory.js +1 -1
  285. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts +1 -1
  286. package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.js +1 -1
  287. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.d.ts +1 -1
  288. package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.js +1 -1
  289. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.d.ts +1 -1
  290. package/dist/factories/contracts/token/extensions/HypFiatToken__factory.js +1 -1
  291. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.d.ts +1 -1
  292. package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.js +1 -1
  293. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts +1 -1
  294. package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js +1 -1
  295. package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts +1 -1
  296. package/dist/factories/contracts/token/extensions/HypXERC20__factory.js +1 -1
  297. package/dist/index.d.ts +10 -0
  298. package/dist/index.d.ts.map +1 -1
  299. package/dist/index.js +5 -0
  300. package/dist/index.js.map +1 -1
  301. package/package.json +2 -2
@@ -785,7 +785,7 @@ const _abi = [
785
785
  type: "function",
786
786
  },
787
787
  ];
788
- const _bytecode = "0x60c0604052606b80546001600160401b03191690553480156200002157600080fd5b50604051620032dc380380620032dc833981016040819052620000449162000248565b4360805263ffffffff811660a05260405160009062000063906200022c565b604051809103906000f08015801562000080573d6000803e3d6000fd5b50606780546001600160a01b0319166001600160a01b038316179055604051909150600090620000b0906200023a565b604051809103906000f080158015620000cd573d6000803e3d6000fd5b50606880546001600160a01b0383166001600160a01b031991821681179092556069805490911690911790559050620001063362000119565b620001106200016b565b50505062000277565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1615620001d85760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146200022a576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6102258062002c6083390190565b6104578062002e8583390190565b6000602082840312156200025b57600080fd5b815163ffffffff811681146200027057600080fd5b9392505050565b60805160a0516129b5620002ab6000396000818161051301528181610cef01526119db015260006104df01526129b56000f3fe6080604052600436106102195760003560e01c80638da5cb5b1161011d578063d6d08a09116100b0578063f794687a1161007f578063f8c8765e11610064578063f8c8765e146107a7578063fa31de01146107c7578063ffa1ad74146107da57600080fd5b8063f794687a14610767578063f7ccd3211461078757600080fd5b8063d6d08a091461069b578063e495f1d4146106c8578063e70f48ac14610727578063f2fde38b1461074757600080fd5b80639c42bd18116100ec5780639c42bd18146105f6578063a3b4919f14610616578063affed0e014610659578063d12164e41461067657600080fd5b80638da5cb5b1461053557806392d28b3d1461056057806393c448471461058d57806399b04809146105d657600080fd5b806359b3f6e0116101b05780637c39d1301161017f5780638209d312116101645780638209d3121461049b57806382ea7bfe146104cd5780638d3638f41461050157600080fd5b80637c39d1301461046857806381d2ea951461047b57600080fd5b806359b3f6e01461036d5780635d1fe5a9146103e35780636e5f516e14610426578063715018a61461045357600080fd5b80631605c306116101ec5780631605c306146102e05780633288990c146102e85780633d1250b71461030857806348aee8d41461035a57600080fd5b806307a2fda11461021e57806310b83dc014610287578063134fbb4f146102a85780631426b7f4146102be575b600080fd5b34801561022a57600080fd5b5061026b61023936600461200d565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff1690565b60405165ffffffffffff90911681526020015b60405180910390f35b61029a6102953660046120a3565b610801565b60405190815260200161027e565b3480156102b457600080fd5b5061029a60665481565b3480156102ca57600080fd5b506102de6102d9366004612141565b610951565b005b6102de610a6c565b3480156102f457600080fd5b506102de61030336600461215e565b610bc9565b34801561031457600080fd5b506068546103359073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161027e565b61029a6103683660046121a0565b610c25565b34801561037957600080fd5b506102de61038836600461222a565b63ffffffff919091166000908152606c6020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055565b3480156103ef57600080fd5b506103356103fe36600461200d565b6000908152606a602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b34801561043257600080fd5b506067546103359073ffffffffffffffffffffffffffffffffffffffff1681565b34801561045f57600080fd5b506102de610c63565b6102de610476366004612261565b610c77565b34801561048757600080fd5b5061029a6104963660046120a3565b611119565b3480156104a757600080fd5b50606b546104b89063ffffffff1681565b60405163ffffffff909116815260200161027e565b3480156104d957600080fd5b5061029a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561050d57600080fd5b506104b87f000000000000000000000000000000000000000000000000000000000000000081565b34801561054157600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610335565b34801561056c57600080fd5b5061058061057b36600461200d565b6112ac565b60405161027e919061233b565b34801561059957600080fd5b506105806040518060400160405280600581526020017f352e342e3100000000000000000000000000000000000000000000000000000081525081565b3480156105e257600080fd5b506102de6105f1366004612141565b611346565b34801561060257600080fd5b5061029a61061136600461234e565b611461565b34801561062257600080fd5b5061033561063136600461239c565b606c6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b34801561066557600080fd5b506065546104b89063ffffffff1681565b34801561068257600080fd5b50606b546104b890640100000000900463ffffffff1681565b3480156106a757600080fd5b506069546103359073ffffffffffffffffffffffffffffffffffffffff1681565b3480156106d457600080fd5b506107176106e336600461200d565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff16151590565b604051901515815260200161027e565b34801561073357600080fd5b50610335610742366004612141565b61149d565b34801561075357600080fd5b506102de610762366004612141565b6115d4565b34801561077357600080fd5b506102de610782366004612141565b61168b565b34801561079357600080fd5b5061029a6107a23660046121a0565b6117a6565b3480156107b357600080fd5b506102de6107c23660046123b7565b6117d9565b61029a6107d536600461234e565b611993565b3480156107e657600080fd5b506107ef600381565b60405160ff909116815260200161027e565b600080610810898989896119c6565b905060006108238a8a8a8a8a8a8a611a04565b63ffffffff8b166000908152606c602052604090205490915073ffffffffffffffffffffffffffffffffffffffff16806108be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d697373696e672072656d6f7465206d61696c626f780000000000000000000060448201526064015b60405180910390fd5b6040517f3288990c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690633288990c9061091090869060040161233b565b600060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b50939d9c50505050505050505050505050565b610959611cd8565b73ffffffffffffffffffffffffffffffffffffffff81163b6109fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4d61696c626f783a20726571756972656420686f6f6b206e6f7420636f6e747260448201527f616374000000000000000000000000000000000000000000000000000000000060648201526084016108b5565b606980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f329ec8e2438a73828ecf31a6568d7a91d7b1d79e342b0692914fd053d1a002b190600090a250565b606b54640100000000900463ffffffff166000908152606d602052604081208054610a9690612413565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac290612413565b8015610b0f5780601f10610ae457610100808354040283529160200191610b0f565b820191906000526020600020905b815481529060010190602001808311610af257829003601f168201915b50506040517f7c39d1300000000000000000000000000000000000000000000000000000000081529394503093637c39d1309350349250610b5591508590600401612466565b6000604051808303818588803b158015610b6e57600080fd5b505af1158015610b82573d6000803e3d6000fd5b5050606b8054640100000000900463ffffffff169350915060049050610ba7836124b6565b91906101000a81548163ffffffff021916908363ffffffff1602179055505050565b606b5463ffffffff166000908152606d60205260409020610beb828483612557565b50606b805463ffffffff16906000610c02836124b6565b91906101000a81548163ffffffff021916908363ffffffff160217905550505050565b6000610c58878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610801565b979650505050505050565b610c6b611cd8565b610c756000611d59565b565b6003610c838383611dd0565b60ff1614610ced576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4d61696c626f783a206261642076657273696f6e00000000000000000000000060448201526064016108b5565b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff16610d1e8383611df4565b63ffffffff1614610d8b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d61696c626f783a20756e65787065637465642064657374696e6174696f6e0060448201526064016108b5565b6000610dcc83838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e1792505050565b6000818152606a602052604090205490915074010000000000000000000000000000000000000000900465ffffffffffff1615610e65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4d61696c626f783a20616c72656164792064656c69766572656400000000000060448201526064016108b5565b6000610e718484611e22565b90506000610e7e8261149d565b60408051808201825233815265ffffffffffff43811660208084019182526000898152606a9091529390932091518254935190911674010000000000000000000000000000000000000000027fffffffffffff000000000000000000000000000000000000000000000000000090931673ffffffffffffffffffffffffffffffffffffffff918216179290921790559091508216610f1c8686611e3b565b610f268787611e54565b63ffffffff167f0d381c2a574ae8f04e213db7cfb4df8df712cdbd427d9868ffef380660ca657460405160405180910390a460405183907f1cae38cdd3d3919489272725a5ae62a4f48b2989b0dae843d3c279fee18073a990600090a26040517ff7e83aee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063f7e83aee90610fdb908a908a908a908a906004016126ba565b6020604051808303816000875af1158015610ffa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101e91906126e1565b611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4d61696c626f783a2049534d20766572696669636174696f6e206661696c656460448201526064016108b5565b8173ffffffffffffffffffffffffffffffffffffffff166356d5d475346110ab8888611e54565b6110b58989611e3b565b6110bf8a8a611e64565b6040518663ffffffff1660e01b81526004016110de9493929190612703565b6000604051808303818588803b1580156110f757600080fd5b505af115801561110b573d6000803e3d6000fd5b505050505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82166111525760685473ffffffffffffffffffffffffffffffffffffffff1691505b6000611160898989896119c6565b6040517faaccd23000000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff84169063aaccd230906111b990889088908690600401612733565b602060405180830381865afa1580156111d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111fa9190612759565b6069546040517faaccd23000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063aaccd2309061125490899089908790600401612733565b602060405180830381865afa158015611271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112959190612759565b61129f9190612772565b9998505050505050505050565b606d60205260009081526040902080546112c590612413565b80601f01602080910402602001604051908101604052809291908181526020018280546112f190612413565b801561133e5780601f106113135761010080835404028352916020019161133e565b820191906000526020600020905b81548152906001019060200180831161132157829003601f168201915b505050505081565b61134e611cd8565b73ffffffffffffffffffffffffffffffffffffffff81163b6113f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4d61696c626f783a2064656661756c7420686f6f6b206e6f7420636f6e74726160448201527f637400000000000000000000000000000000000000000000000000000000000060648201526084016108b5565b606880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f65a63e5066ee2fcdf9d32a7f1bf7ce71c76066f19d0609dddccd334ab87237d790600090a250565b60006114948585858561147686808385612785565b60685473ffffffffffffffffffffffffffffffffffffffff16611119565b95945050505050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fde523cf30000000000000000000000000000000000000000000000000000000017905290516000918291829173ffffffffffffffffffffffffffffffffffffffff86169161151e91906127af565b600060405180830381855afa9150503d8060008114611559576040519150601f19603f3d011682016040523d82523d6000602084013e61155e565b606091505b50915091508180156115705750805115155b156115b35760008180602001905181019061158b91906127cb565b905073ffffffffffffffffffffffffffffffffffffffff8116156115b157949350505050565b505b505060675473ffffffffffffffffffffffffffffffffffffffff1692915050565b6115dc611cd8565b73ffffffffffffffffffffffffffffffffffffffff811661167f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108b5565b61168881611d59565b50565b611693611cd8565b73ffffffffffffffffffffffffffffffffffffffff81163b611737576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f783a2064656661756c742049534d206e6f7420636f6e7472616360448201527f740000000000000000000000000000000000000000000000000000000000000060648201526084016108b5565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517fa76ad0adbf45318f8633aa0210f711273d50fbb6fef76ed95bbae97082c75daa90600090a250565b6000610c58878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611119565b600054610100900460ff16158080156117f95750600054600160ff909116105b806118135750303b158015611813575060005460ff166001145b61189f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108b5565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156118fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b611905611e80565b61190e8461168b565b61191783611346565b61192082610951565b611929856115d4565b801561198c57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b6000611494858585856119a886808385612785565b60685473ffffffffffffffffffffffffffffffffffffffff16610801565b6065546060906114949060039063ffffffff167f00000000000000000000000000000000000000000000000000000000000000003389898989611f1f565b600073ffffffffffffffffffffffffffffffffffffffff8216611a3d5760685473ffffffffffffffffffffffffffffffffffffffff1691505b6000611a4b898989896119c6565b80516020820120606681905560658054929350909160019190600090611a7890849063ffffffff166127e8565b92506101000a81548163ffffffff021916908363ffffffff160217905550888a63ffffffff163373ffffffffffffffffffffffffffffffffffffffff167f769f711d20c679153d382254f59892613b58a97cc876b249134ac25c80f9c81485604051611ae4919061233b565b60405180910390a460405181907f788dbc1b7152732178210e7f4d9d010ef016f9eafbe66786bd7169f56e0c353a90600090a26069546040517faaccd23000000000000000000000000000000000000000000000000000000000815260009173ffffffffffffffffffffffffffffffffffffffff169063aaccd23090611b72908a908a908890600401612733565b602060405180830381865afa158015611b8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bb39190612759565b905080341015611bc05750345b6069546040517f086011b900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063086011b9908390611c1c908b908b908990600401612733565b6000604051808303818588803b158015611c3557600080fd5b505af1158015611c49573d6000803e3d6000fd5b50505050508473ffffffffffffffffffffffffffffffffffffffff1663086011b98234611c76919061280c565b8989876040518563ffffffff1660e01b8152600401611c9793929190612733565b6000604051808303818588803b158015611cb057600080fd5b505af1158015611cc4573d6000803e3d6000fd5b50949e9d5050505050505050505050505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610c75576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108b5565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000611ddf6001828486612785565b611de89161281f565b60f81c90505b92915050565b6000611e04602d60298486612785565b611e0d91612867565b60e01c9392505050565b805160209091012090565b6000611e34611e318484611f5d565b90565b9392505050565b6000611e4b602960098486612785565b611e34916128ad565b6000611e04600960058486612785565b366000611e7483604d8187612785565b915091505b9250929050565b600054610100900460ff16611f17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108b5565b610c75611f6d565b60608888888888888888604051602001611f409897969594939291906128e9565b604051602081830303815290604052905098975050505050505050565b6000611e4b604d602d8486612785565b600054610100900460ff16612004576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108b5565b610c7533611d59565b60006020828403121561201f57600080fd5b5035919050565b803563ffffffff8116811461203a57600080fd5b919050565b60008083601f84011261205157600080fd5b50813567ffffffffffffffff81111561206957600080fd5b602083019150836020828501011115611e7957600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461168857600080fd5b600080600080600080600060a0888a0312156120be57600080fd5b6120c788612026565b965060208801359550604088013567ffffffffffffffff808211156120eb57600080fd5b6120f78b838c0161203f565b909750955060608a013591508082111561211057600080fd5b5061211d8a828b0161203f565b909450925050608088013561213181612081565b8091505092959891949750929550565b60006020828403121561215357600080fd5b8135611e3481612081565b6000806020838503121561217157600080fd5b823567ffffffffffffffff81111561218857600080fd5b6121948582860161203f565b90969095509350505050565b600080600080600080608087890312156121b957600080fd5b6121c287612026565b955060208701359450604087013567ffffffffffffffff808211156121e657600080fd5b6121f28a838b0161203f565b9096509450606089013591508082111561220b57600080fd5b5061221889828a0161203f565b979a9699509497509295939492505050565b6000806040838503121561223d57600080fd5b61224683612026565b9150602083013561225681612081565b809150509250929050565b6000806000806040858703121561227757600080fd5b843567ffffffffffffffff8082111561228f57600080fd5b61229b8883890161203f565b909650945060208701359150808211156122b457600080fd5b506122c18782880161203f565b95989497509550505050565b60005b838110156122e85781810151838201526020016122d0565b50506000910152565b600081518084526123098160208601602086016122cd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611e3460208301846122f1565b6000806000806060858703121561236457600080fd5b61236d85612026565b935060208501359250604085013567ffffffffffffffff81111561239057600080fd5b6122c18782880161203f565b6000602082840312156123ae57600080fd5b611e3482612026565b600080600080608085870312156123cd57600080fd5b84356123d881612081565b935060208501356123e881612081565b925060408501356123f881612081565b9150606085013561240881612081565b939692955090935050565b600181811c9082168061242757607f821691505b602082108103612460577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6040815260006040820152606060208201526000611e3460608301846122f1565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600063ffffffff8083168181036124cf576124cf612487565b6001019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f82111561255257600081815260208120601f850160051c8101602086101561252f5750805b601f850160051c820191505b8181101561254e5782815560010161253b565b5050505b505050565b67ffffffffffffffff83111561256f5761256f6124d9565b6125838361257d8354612413565b83612508565b6000601f8411600181146125d5576000851561259f5750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b17835561198c565b6000838152602090207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0861690835b828110156126245786850135825560209485019460019092019101612604565b508682101561265f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555050505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b6040815260006126ce604083018688612671565b8281036020840152610c58818587612671565b6000602082840312156126f357600080fd5b81518015158114611e3457600080fd5b63ffffffff85168152836020820152606060408201526000612729606083018486612671565b9695505050505050565b604081526000612747604083018587612671565b828103602084015261272981856122f1565b60006020828403121561276b57600080fd5b5051919050565b80820180821115611dee57611dee612487565b6000808585111561279557600080fd5b838611156127a257600080fd5b5050820193919092039150565b600082516127c18184602087016122cd565b9190910192915050565b6000602082840312156127dd57600080fd5b8151611e3481612081565b63ffffffff81811683821601908082111561280557612805612487565b5092915050565b81810381811115611dee57611dee612487565b7fff00000000000000000000000000000000000000000000000000000000000000813581811691600185101561285f5780818660010360031b1b83161692505b505092915050565b7fffffffff00000000000000000000000000000000000000000000000000000000813581811691600485101561285f5760049490940360031b84901b1690921692915050565b80356020831015611dee577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008960f81b16815260007fffffffff00000000000000000000000000000000000000000000000000000000808a60e01b166001840152808960e01b166005840152876009840152808760e01b1660298401525084602d8301528284604d8401375060009101604d0190815297965050505050505056fea2646970667358221220804d9e99349346d0a17a3157ed3182c3ca5dc6f736f4818621fb1e0f4f42e65764736f6c6343000813003360806040526000805461ffff191661010617905534801561001f57600080fd5b506101f68061002f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80636465e69f14610046578063951a291f1461006a578063f7e83aee146100b1575b600080fd5b6000546100539060ff1681565b60405160ff90911681526020015b60405180910390f35b6100af6100783660046100e2565b60008054911515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909216919091179055565b005b6100d26100bf366004610154565b5050600054610100900460ff1692915050565b6040519015158152602001610061565b6000602082840312156100f457600080fd5b8135801515811461010457600080fd5b9392505050565b60008083601f84011261011d57600080fd5b50813567ffffffffffffffff81111561013557600080fd5b60208301915083602082850101111561014d57600080fd5b9250929050565b6000806000806040858703121561016a57600080fd5b843567ffffffffffffffff8082111561018257600080fd5b61018e8883890161010b565b909650945060208701359150808211156101a757600080fd5b506101b48782880161010b565b9598949750955050505056fea26469706673582212205c62d9d06eb00c95266c19a1b95fedb97cd1c1abbff932b8822b7f9c8345cc9964736f6c6343000813003360806040526000805534801561001457600080fd5b50610433806100246000396000f3fe60806040526004361061007b5760003560e01c8063ddca3f431161004e578063ddca3f4314610148578063e445e7dd1461015e578063e5320bb91461017a578063f667ee91146101ad57600080fd5b8063086011b91461008057806369fe0e2d1461009557806393c44847146100b5578063aaccd23014610114575b600080fd5b61009361008e3660046102ca565b6101dd565b005b3480156100a157600080fd5b506100936100b0366004610336565b600055565b3480156100c157600080fd5b506100fe6040518060400160405280600581526020017f352e342e3100000000000000000000000000000000000000000000000000000081525081565b60405161010b919061034f565b60405180910390f35b34801561012057600080fd5b5061013a61012f3660046102ca565b505060005492915050565b60405190815260200161010b565b34801561015457600080fd5b5061013a60005481565b34801561016a57600080fd5b506040516000815260200161010b565b34801561018657600080fd5b5061019d6101953660046103bb565b600192915050565b604051901515815260200161010b565b3480156101b957600080fd5b5061019d6101c8366004610336565b60016020526000908152604090205460ff1681565b6101e9848484846101ef565b50505050565b600180600061023385858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061027692505050565b8152602081019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905550505050565b805160209091012090565b60008083601f84011261029357600080fd5b50813567ffffffffffffffff8111156102ab57600080fd5b6020830191508360208285010111156102c357600080fd5b9250929050565b600080600080604085870312156102e057600080fd5b843567ffffffffffffffff808211156102f857600080fd5b61030488838901610281565b9096509450602087013591508082111561031d57600080fd5b5061032a87828801610281565b95989497509550505050565b60006020828403121561034857600080fd5b5035919050565b600060208083528351808285015260005b8181101561037c57858101830151858201604001528201610360565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600080602083850312156103ce57600080fd5b823567ffffffffffffffff8111156103e557600080fd5b6103f185828601610281565b9096909550935050505056fea264697066735822122089fa73478ded86060c4461cd8cdfd3b52e79b46532be23512b75420f84a8f63d64736f6c63430008130033";
788
+ const _bytecode = "0x60c0604052606b80546001600160401b03191690553480156200002157600080fd5b50604051620032dc380380620032dc833981016040819052620000449162000248565b4360805263ffffffff811660a05260405160009062000063906200022c565b604051809103906000f08015801562000080573d6000803e3d6000fd5b50606780546001600160a01b0319166001600160a01b038316179055604051909150600090620000b0906200023a565b604051809103906000f080158015620000cd573d6000803e3d6000fd5b50606880546001600160a01b0383166001600160a01b031991821681179092556069805490911690911790559050620001063362000119565b620001106200016b565b50505062000277565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1615620001d85760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146200022a576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6102258062002c6083390190565b6104578062002e8583390190565b6000602082840312156200025b57600080fd5b815163ffffffff811681146200027057600080fd5b9392505050565b60805160a0516129b5620002ab6000396000818161051301528181610cef01526119db015260006104df01526129b56000f3fe6080604052600436106102195760003560e01c80638da5cb5b1161011d578063d6d08a09116100b0578063f794687a1161007f578063f8c8765e11610064578063f8c8765e146107a7578063fa31de01146107c7578063ffa1ad74146107da57600080fd5b8063f794687a14610767578063f7ccd3211461078757600080fd5b8063d6d08a091461069b578063e495f1d4146106c8578063e70f48ac14610727578063f2fde38b1461074757600080fd5b80639c42bd18116100ec5780639c42bd18146105f6578063a3b4919f14610616578063affed0e014610659578063d12164e41461067657600080fd5b80638da5cb5b1461053557806392d28b3d1461056057806393c448471461058d57806399b04809146105d657600080fd5b806359b3f6e0116101b05780637c39d1301161017f5780638209d312116101645780638209d3121461049b57806382ea7bfe146104cd5780638d3638f41461050157600080fd5b80637c39d1301461046857806381d2ea951461047b57600080fd5b806359b3f6e01461036d5780635d1fe5a9146103e35780636e5f516e14610426578063715018a61461045357600080fd5b80631605c306116101ec5780631605c306146102e05780633288990c146102e85780633d1250b71461030857806348aee8d41461035a57600080fd5b806307a2fda11461021e57806310b83dc014610287578063134fbb4f146102a85780631426b7f4146102be575b600080fd5b34801561022a57600080fd5b5061026b61023936600461200d565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff1690565b60405165ffffffffffff90911681526020015b60405180910390f35b61029a6102953660046120a3565b610801565b60405190815260200161027e565b3480156102b457600080fd5b5061029a60665481565b3480156102ca57600080fd5b506102de6102d9366004612141565b610951565b005b6102de610a6c565b3480156102f457600080fd5b506102de61030336600461215e565b610bc9565b34801561031457600080fd5b506068546103359073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161027e565b61029a6103683660046121a0565b610c25565b34801561037957600080fd5b506102de61038836600461222a565b63ffffffff919091166000908152606c6020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055565b3480156103ef57600080fd5b506103356103fe36600461200d565b6000908152606a602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b34801561043257600080fd5b506067546103359073ffffffffffffffffffffffffffffffffffffffff1681565b34801561045f57600080fd5b506102de610c63565b6102de610476366004612261565b610c77565b34801561048757600080fd5b5061029a6104963660046120a3565b611119565b3480156104a757600080fd5b50606b546104b89063ffffffff1681565b60405163ffffffff909116815260200161027e565b3480156104d957600080fd5b5061029a7f000000000000000000000000000000000000000000000000000000000000000081565b34801561050d57600080fd5b506104b87f000000000000000000000000000000000000000000000000000000000000000081565b34801561054157600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610335565b34801561056c57600080fd5b5061058061057b36600461200d565b6112ac565b60405161027e919061233b565b34801561059957600080fd5b506105806040518060400160405280601281526020017f352e342e322d7375706572636861696e2e30000000000000000000000000000081525081565b3480156105e257600080fd5b506102de6105f1366004612141565b611346565b34801561060257600080fd5b5061029a61061136600461234e565b611461565b34801561062257600080fd5b5061033561063136600461239c565b606c6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b34801561066557600080fd5b506065546104b89063ffffffff1681565b34801561068257600080fd5b50606b546104b890640100000000900463ffffffff1681565b3480156106a757600080fd5b506069546103359073ffffffffffffffffffffffffffffffffffffffff1681565b3480156106d457600080fd5b506107176106e336600461200d565b6000908152606a602052604090205474010000000000000000000000000000000000000000900465ffffffffffff16151590565b604051901515815260200161027e565b34801561073357600080fd5b50610335610742366004612141565b61149d565b34801561075357600080fd5b506102de610762366004612141565b6115d4565b34801561077357600080fd5b506102de610782366004612141565b61168b565b34801561079357600080fd5b5061029a6107a23660046121a0565b6117a6565b3480156107b357600080fd5b506102de6107c23660046123b7565b6117d9565b61029a6107d536600461234e565b611993565b3480156107e657600080fd5b506107ef600381565b60405160ff909116815260200161027e565b600080610810898989896119c6565b905060006108238a8a8a8a8a8a8a611a04565b63ffffffff8b166000908152606c602052604090205490915073ffffffffffffffffffffffffffffffffffffffff16806108be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d697373696e672072656d6f7465206d61696c626f780000000000000000000060448201526064015b60405180910390fd5b6040517f3288990c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690633288990c9061091090869060040161233b565b600060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b50939d9c50505050505050505050505050565b610959611cd8565b73ffffffffffffffffffffffffffffffffffffffff81163b6109fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f4d61696c626f783a20726571756972656420686f6f6b206e6f7420636f6e747260448201527f616374000000000000000000000000000000000000000000000000000000000060648201526084016108b5565b606980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f329ec8e2438a73828ecf31a6568d7a91d7b1d79e342b0692914fd053d1a002b190600090a250565b606b54640100000000900463ffffffff166000908152606d602052604081208054610a9690612413565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac290612413565b8015610b0f5780601f10610ae457610100808354040283529160200191610b0f565b820191906000526020600020905b815481529060010190602001808311610af257829003601f168201915b50506040517f7c39d1300000000000000000000000000000000000000000000000000000000081529394503093637c39d1309350349250610b5591508590600401612466565b6000604051808303818588803b158015610b6e57600080fd5b505af1158015610b82573d6000803e3d6000fd5b5050606b8054640100000000900463ffffffff169350915060049050610ba7836124b6565b91906101000a81548163ffffffff021916908363ffffffff1602179055505050565b606b5463ffffffff166000908152606d60205260409020610beb828483612557565b50606b805463ffffffff16906000610c02836124b6565b91906101000a81548163ffffffff021916908363ffffffff160217905550505050565b6000610c58878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610801565b979650505050505050565b610c6b611cd8565b610c756000611d59565b565b6003610c838383611dd0565b60ff1614610ced576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4d61696c626f783a206261642076657273696f6e00000000000000000000000060448201526064016108b5565b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff16610d1e8383611df4565b63ffffffff1614610d8b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d61696c626f783a20756e65787065637465642064657374696e6174696f6e0060448201526064016108b5565b6000610dcc83838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e1792505050565b6000818152606a602052604090205490915074010000000000000000000000000000000000000000900465ffffffffffff1615610e65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4d61696c626f783a20616c72656164792064656c69766572656400000000000060448201526064016108b5565b6000610e718484611e22565b90506000610e7e8261149d565b60408051808201825233815265ffffffffffff43811660208084019182526000898152606a9091529390932091518254935190911674010000000000000000000000000000000000000000027fffffffffffff000000000000000000000000000000000000000000000000000090931673ffffffffffffffffffffffffffffffffffffffff918216179290921790559091508216610f1c8686611e3b565b610f268787611e54565b63ffffffff167f0d381c2a574ae8f04e213db7cfb4df8df712cdbd427d9868ffef380660ca657460405160405180910390a460405183907f1cae38cdd3d3919489272725a5ae62a4f48b2989b0dae843d3c279fee18073a990600090a26040517ff7e83aee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82169063f7e83aee90610fdb908a908a908a908a906004016126ba565b6020604051808303816000875af1158015610ffa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101e91906126e1565b611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4d61696c626f783a2049534d20766572696669636174696f6e206661696c656460448201526064016108b5565b8173ffffffffffffffffffffffffffffffffffffffff166356d5d475346110ab8888611e54565b6110b58989611e3b565b6110bf8a8a611e64565b6040518663ffffffff1660e01b81526004016110de9493929190612703565b6000604051808303818588803b1580156110f757600080fd5b505af115801561110b573d6000803e3d6000fd5b505050505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82166111525760685473ffffffffffffffffffffffffffffffffffffffff1691505b6000611160898989896119c6565b6040517faaccd23000000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff84169063aaccd230906111b990889088908690600401612733565b602060405180830381865afa1580156111d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111fa9190612759565b6069546040517faaccd23000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063aaccd2309061125490899089908790600401612733565b602060405180830381865afa158015611271573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112959190612759565b61129f9190612772565b9998505050505050505050565b606d60205260009081526040902080546112c590612413565b80601f01602080910402602001604051908101604052809291908181526020018280546112f190612413565b801561133e5780601f106113135761010080835404028352916020019161133e565b820191906000526020600020905b81548152906001019060200180831161132157829003601f168201915b505050505081565b61134e611cd8565b73ffffffffffffffffffffffffffffffffffffffff81163b6113f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f4d61696c626f783a2064656661756c7420686f6f6b206e6f7420636f6e74726160448201527f637400000000000000000000000000000000000000000000000000000000000060648201526084016108b5565b606880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f65a63e5066ee2fcdf9d32a7f1bf7ce71c76066f19d0609dddccd334ab87237d790600090a250565b60006114948585858561147686808385612785565b60685473ffffffffffffffffffffffffffffffffffffffff16611119565b95945050505050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fde523cf30000000000000000000000000000000000000000000000000000000017905290516000918291829173ffffffffffffffffffffffffffffffffffffffff86169161151e91906127af565b600060405180830381855afa9150503d8060008114611559576040519150601f19603f3d011682016040523d82523d6000602084013e61155e565b606091505b50915091508180156115705750805115155b156115b35760008180602001905181019061158b91906127cb565b905073ffffffffffffffffffffffffffffffffffffffff8116156115b157949350505050565b505b505060675473ffffffffffffffffffffffffffffffffffffffff1692915050565b6115dc611cd8565b73ffffffffffffffffffffffffffffffffffffffff811661167f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016108b5565b61168881611d59565b50565b611693611cd8565b73ffffffffffffffffffffffffffffffffffffffff81163b611737576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f4d61696c626f783a2064656661756c742049534d206e6f7420636f6e7472616360448201527f740000000000000000000000000000000000000000000000000000000000000060648201526084016108b5565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517fa76ad0adbf45318f8633aa0210f711273d50fbb6fef76ed95bbae97082c75daa90600090a250565b6000610c58878787878787606860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611119565b600054610100900460ff16158080156117f95750600054600160ff909116105b806118135750303b158015611813575060005460ff166001145b61189f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016108b5565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905580156118fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b611905611e80565b61190e8461168b565b61191783611346565b61192082610951565b611929856115d4565b801561198c57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b6000611494858585856119a886808385612785565b60685473ffffffffffffffffffffffffffffffffffffffff16610801565b6065546060906114949060039063ffffffff167f00000000000000000000000000000000000000000000000000000000000000003389898989611f1f565b600073ffffffffffffffffffffffffffffffffffffffff8216611a3d5760685473ffffffffffffffffffffffffffffffffffffffff1691505b6000611a4b898989896119c6565b80516020820120606681905560658054929350909160019190600090611a7890849063ffffffff166127e8565b92506101000a81548163ffffffff021916908363ffffffff160217905550888a63ffffffff163373ffffffffffffffffffffffffffffffffffffffff167f769f711d20c679153d382254f59892613b58a97cc876b249134ac25c80f9c81485604051611ae4919061233b565b60405180910390a460405181907f788dbc1b7152732178210e7f4d9d010ef016f9eafbe66786bd7169f56e0c353a90600090a26069546040517faaccd23000000000000000000000000000000000000000000000000000000000815260009173ffffffffffffffffffffffffffffffffffffffff169063aaccd23090611b72908a908a908890600401612733565b602060405180830381865afa158015611b8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bb39190612759565b905080341015611bc05750345b6069546040517f086011b900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063086011b9908390611c1c908b908b908990600401612733565b6000604051808303818588803b158015611c3557600080fd5b505af1158015611c49573d6000803e3d6000fd5b50505050508473ffffffffffffffffffffffffffffffffffffffff1663086011b98234611c76919061280c565b8989876040518563ffffffff1660e01b8152600401611c9793929190612733565b6000604051808303818588803b158015611cb057600080fd5b505af1158015611cc4573d6000803e3d6000fd5b50949e9d5050505050505050505050505050565b60335473ffffffffffffffffffffffffffffffffffffffff163314610c75576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016108b5565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000611ddf6001828486612785565b611de89161281f565b60f81c90505b92915050565b6000611e04602d60298486612785565b611e0d91612867565b60e01c9392505050565b805160209091012090565b6000611e34611e318484611f5d565b90565b9392505050565b6000611e4b602960098486612785565b611e34916128ad565b6000611e04600960058486612785565b366000611e7483604d8187612785565b915091505b9250929050565b600054610100900460ff16611f17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108b5565b610c75611f6d565b60608888888888888888604051602001611f409897969594939291906128e9565b604051602081830303815290604052905098975050505050505050565b6000611e4b604d602d8486612785565b600054610100900460ff16612004576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016108b5565b610c7533611d59565b60006020828403121561201f57600080fd5b5035919050565b803563ffffffff8116811461203a57600080fd5b919050565b60008083601f84011261205157600080fd5b50813567ffffffffffffffff81111561206957600080fd5b602083019150836020828501011115611e7957600080fd5b73ffffffffffffffffffffffffffffffffffffffff8116811461168857600080fd5b600080600080600080600060a0888a0312156120be57600080fd5b6120c788612026565b965060208801359550604088013567ffffffffffffffff808211156120eb57600080fd5b6120f78b838c0161203f565b909750955060608a013591508082111561211057600080fd5b5061211d8a828b0161203f565b909450925050608088013561213181612081565b8091505092959891949750929550565b60006020828403121561215357600080fd5b8135611e3481612081565b6000806020838503121561217157600080fd5b823567ffffffffffffffff81111561218857600080fd5b6121948582860161203f565b90969095509350505050565b600080600080600080608087890312156121b957600080fd5b6121c287612026565b955060208701359450604087013567ffffffffffffffff808211156121e657600080fd5b6121f28a838b0161203f565b9096509450606089013591508082111561220b57600080fd5b5061221889828a0161203f565b979a9699509497509295939492505050565b6000806040838503121561223d57600080fd5b61224683612026565b9150602083013561225681612081565b809150509250929050565b6000806000806040858703121561227757600080fd5b843567ffffffffffffffff8082111561228f57600080fd5b61229b8883890161203f565b909650945060208701359150808211156122b457600080fd5b506122c18782880161203f565b95989497509550505050565b60005b838110156122e85781810151838201526020016122d0565b50506000910152565b600081518084526123098160208601602086016122cd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611e3460208301846122f1565b6000806000806060858703121561236457600080fd5b61236d85612026565b935060208501359250604085013567ffffffffffffffff81111561239057600080fd5b6122c18782880161203f565b6000602082840312156123ae57600080fd5b611e3482612026565b600080600080608085870312156123cd57600080fd5b84356123d881612081565b935060208501356123e881612081565b925060408501356123f881612081565b9150606085013561240881612081565b939692955090935050565b600181811c9082168061242757607f821691505b602082108103612460577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6040815260006040820152606060208201526000611e3460608301846122f1565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600063ffffffff8083168181036124cf576124cf612487565b6001019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b601f82111561255257600081815260208120601f850160051c8101602086101561252f5750805b601f850160051c820191505b8181101561254e5782815560010161253b565b5050505b505050565b67ffffffffffffffff83111561256f5761256f6124d9565b6125838361257d8354612413565b83612508565b6000601f8411600181146125d5576000851561259f5750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b17835561198c565b6000838152602090207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0861690835b828110156126245786850135825560209485019460019092019101612604565b508682101561265f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555050505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b6040815260006126ce604083018688612671565b8281036020840152610c58818587612671565b6000602082840312156126f357600080fd5b81518015158114611e3457600080fd5b63ffffffff85168152836020820152606060408201526000612729606083018486612671565b9695505050505050565b604081526000612747604083018587612671565b828103602084015261272981856122f1565b60006020828403121561276b57600080fd5b5051919050565b80820180821115611dee57611dee612487565b6000808585111561279557600080fd5b838611156127a257600080fd5b5050820193919092039150565b600082516127c18184602087016122cd565b9190910192915050565b6000602082840312156127dd57600080fd5b8151611e3481612081565b63ffffffff81811683821601908082111561280557612805612487565b5092915050565b81810381811115611dee57611dee612487565b7fff00000000000000000000000000000000000000000000000000000000000000813581811691600185101561285f5780818660010360031b1b83161692505b505092915050565b7fffffffff00000000000000000000000000000000000000000000000000000000813581811691600485101561285f5760049490940360031b84901b1690921692915050565b80356020831015611dee577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fff000000000000000000000000000000000000000000000000000000000000008960f81b16815260007fffffffff00000000000000000000000000000000000000000000000000000000808a60e01b166001840152808960e01b166005840152876009840152808760e01b1660298401525084602d8301528284604d8401375060009101604d0190815297965050505050505056fea2646970667358221220b7f4232f866d1619065b635a2aadc8fc8e491bcf55576aa3f1278a0843b17c7564736f6c6343000813003360806040526000805461ffff191661010617905534801561001f57600080fd5b506101f68061002f6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80636465e69f14610046578063951a291f1461006a578063f7e83aee146100b1575b600080fd5b6000546100539060ff1681565b60405160ff90911681526020015b60405180910390f35b6100af6100783660046100e2565b60008054911515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909216919091179055565b005b6100d26100bf366004610154565b5050600054610100900460ff1692915050565b6040519015158152602001610061565b6000602082840312156100f457600080fd5b8135801515811461010457600080fd5b9392505050565b60008083601f84011261011d57600080fd5b50813567ffffffffffffffff81111561013557600080fd5b60208301915083602082850101111561014d57600080fd5b9250929050565b6000806000806040858703121561016a57600080fd5b843567ffffffffffffffff8082111561018257600080fd5b61018e8883890161010b565b909650945060208701359150808211156101a757600080fd5b506101b48782880161010b565b9598949750955050505056fea264697066735822122091672d383adf8b3f026be1c21157d636815ab76649c985de1a1977dc7733575564736f6c6343000813003360806040526000805534801561001457600080fd5b50610433806100246000396000f3fe60806040526004361061007b5760003560e01c8063ddca3f431161004e578063ddca3f4314610148578063e445e7dd1461015e578063e5320bb91461017a578063f667ee91146101ad57600080fd5b8063086011b91461008057806369fe0e2d1461009557806393c44847146100b5578063aaccd23014610114575b600080fd5b61009361008e3660046102ca565b6101dd565b005b3480156100a157600080fd5b506100936100b0366004610336565b600055565b3480156100c157600080fd5b506100fe6040518060400160405280601281526020017f352e342e322d7375706572636861696e2e30000000000000000000000000000081525081565b60405161010b919061034f565b60405180910390f35b34801561012057600080fd5b5061013a61012f3660046102ca565b505060005492915050565b60405190815260200161010b565b34801561015457600080fd5b5061013a60005481565b34801561016a57600080fd5b506040516000815260200161010b565b34801561018657600080fd5b5061019d6101953660046103bb565b600192915050565b604051901515815260200161010b565b3480156101b957600080fd5b5061019d6101c8366004610336565b60016020526000908152604090205460ff1681565b6101e9848484846101ef565b50505050565b600180600061023385858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061027692505050565b8152602081019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691151591909117905550505050565b805160209091012090565b60008083601f84011261029357600080fd5b50813567ffffffffffffffff8111156102ab57600080fd5b6020830191508360208285010111156102c357600080fd5b9250929050565b600080600080604085870312156102e057600080fd5b843567ffffffffffffffff808211156102f857600080fd5b61030488838901610281565b9096509450602087013591508082111561031d57600080fd5b5061032a87828801610281565b95989497509550505050565b60006020828403121561034857600080fd5b5035919050565b600060208083528351808285015260005b8181101561037c57858101830151858201604001528201610360565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600080602083850312156103ce57600080fd5b823567ffffffffffffffff8111156103e557600080fd5b6103f185828601610281565b9096909550935050505056fea2646970667358221220db5f1ded24c48c3ffc8189a5eb3ce19bdea396ce058c037f7ce6745ada81c13464736f6c63430008130033";
789
789
  const isSuperArgs = (xs) => xs.length > 1;
790
790
  export class MockMailbox__factory extends ContractFactory {
791
791
  constructor(...args) {
@@ -0,0 +1,174 @@
1
+ import { Signer, ContractFactory, Overrides } from "ethers";
2
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
3
+ import type { MockL2toL2CrossDomainMessenger, MockL2toL2CrossDomainMessengerInterface } from "../../../../contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger.js";
4
+ type MockL2toL2CrossDomainMessengerConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
5
+ export declare class MockL2toL2CrossDomainMessenger__factory extends ContractFactory {
6
+ constructor(...args: MockL2toL2CrossDomainMessengerConstructorParams);
7
+ deploy(overrides?: Overrides & {
8
+ from?: string;
9
+ }): Promise<MockL2toL2CrossDomainMessenger>;
10
+ getDeployTransaction(overrides?: Overrides & {
11
+ from?: string;
12
+ }): TransactionRequest;
13
+ attach(address: string): MockL2toL2CrossDomainMessenger;
14
+ connect(signer: Signer): MockL2toL2CrossDomainMessenger__factory;
15
+ static readonly bytecode = "0x60806040526001805460ff19168117905534801561001c57600080fd5b506108ee8061002c6000396000f3fe6080604052600436106100705760003560e01c80637056f41f1161004e5780637056f41f146101155780638d1d298f1461013a578063b1b1b2091461014f578063ecc704281461018057600080fd5b8063247944621461007557806338ffde18146100985780636bb25213146100e8575b600080fd5b34801561008157600080fd5b5060005b6040519081526020015b60405180910390f35b3480156100a457600080fd5b50600154610100900473ffffffffffffffffffffffffffffffffffffffff1660405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008f565b3480156100f457600080fd5b5061010861010336600461057f565b610196565b60405161008f9190610652565b34801561012157600080fd5b50610085610130366004610665565b6000949350505050565b61014d61014836600461068d565b6101c9565b005b34801561015b57600080fd5b5061017061016a3660046106e8565b50600190565b604051901515815260200161008f565b34801561018c57600080fd5b5061008560005481565b6060848484846040516020016101af9493929190610701565b60405160208183030381529060405290505b949350505050565b60015460ff16610260576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f4d6f636b4c32746f4c3243726f7373446f6d61696e4d657373656e6765723a2060448201527f706173734d657373616765732069732066616c7365000000000000000000000060648201526084015b60405180910390fd5b60008080610270848601866107a8565b600180547fffffffffffffffffffffff0000000000000000000000000000000000000000ff1661010073ffffffffffffffffffffffffffffffffffffffff861602179055919450925090506102c582826102ce565b50505050505050565b6060610312838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250610319565b9392505050565b6060824710156103ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610257565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516103d4919061089c565b60006040518083038185875af1925050503d8060008114610411576040519150601f19603f3d011682016040523d82523d6000602084013e610416565b606091505b509150915061042787838387610432565b979650505050505050565b606083156104c85782516000036104c15773ffffffffffffffffffffffffffffffffffffffff85163b6104c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610257565b50816101c1565b6101c183838151156104dd5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102579190610652565b73ffffffffffffffffffffffffffffffffffffffff8116811461053357600080fd5b50565b60008083601f84011261054857600080fd5b50813567ffffffffffffffff81111561056057600080fd5b60208301915083602082850101111561057857600080fd5b9250929050565b6000806000806060858703121561059557600080fd5b84356105a081610511565b935060208501356105b081610511565b9250604085013567ffffffffffffffff8111156105cc57600080fd5b6105d887828801610536565b95989497509550505050565b60005b838110156105ff5781810151838201526020016105e7565b50506000910152565b600081518084526106208160208601602086016105e4565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006103126020830184610608565b6000806000806060858703121561067b57600080fd5b8435935060208501356105b081610511565b600080600083850360c08112156106a357600080fd5b60a08112156106b157600080fd5b5083925060a084013567ffffffffffffffff8111156106cf57600080fd5b6106db86828701610536565b9497909650939450505050565b6000602082840312156106fa57600080fd5b5035919050565b600073ffffffffffffffffffffffffffffffffffffffff8087168352808616602084015250606060408301528260608301528284608084013760006080848401015260807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f850116830101905095945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000606084860312156107bd57600080fd5b83356107c881610511565b925060208401356107d881610511565b9150604084013567ffffffffffffffff808211156107f557600080fd5b818601915086601f83011261080957600080fd5b81358181111561081b5761081b610779565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561086157610861610779565b8160405282815289602084870101111561087a57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b600082516108ae8184602087016105e4565b919091019291505056fea2646970667358221220ce8b18bf8645dd607e083d1af6df79139b7c1b2d46f351d362e45db4e2cb92b564736f6c63430008130033";
16
+ static readonly abi: readonly [{
17
+ readonly anonymous: false;
18
+ readonly inputs: readonly [{
19
+ readonly indexed: true;
20
+ readonly internalType: "uint256";
21
+ readonly name: "destination";
22
+ readonly type: "uint256";
23
+ }, {
24
+ readonly indexed: true;
25
+ readonly internalType: "address";
26
+ readonly name: "target";
27
+ readonly type: "address";
28
+ }, {
29
+ readonly indexed: true;
30
+ readonly internalType: "uint256";
31
+ readonly name: "messageNonce";
32
+ readonly type: "uint256";
33
+ }, {
34
+ readonly indexed: false;
35
+ readonly internalType: "address";
36
+ readonly name: "sender";
37
+ readonly type: "address";
38
+ }, {
39
+ readonly indexed: false;
40
+ readonly internalType: "bytes";
41
+ readonly name: "message";
42
+ readonly type: "bytes";
43
+ }];
44
+ readonly name: "SentMessage";
45
+ readonly type: "event";
46
+ }, {
47
+ readonly inputs: readonly [];
48
+ readonly name: "crossDomainMessageSender";
49
+ readonly outputs: readonly [{
50
+ readonly internalType: "address";
51
+ readonly name: "sender_";
52
+ readonly type: "address";
53
+ }];
54
+ readonly stateMutability: "view";
55
+ readonly type: "function";
56
+ }, {
57
+ readonly inputs: readonly [];
58
+ readonly name: "crossDomainMessageSource";
59
+ readonly outputs: readonly [{
60
+ readonly internalType: "uint256";
61
+ readonly name: "source_";
62
+ readonly type: "uint256";
63
+ }];
64
+ readonly stateMutability: "view";
65
+ readonly type: "function";
66
+ }, {
67
+ readonly inputs: readonly [{
68
+ readonly internalType: "address";
69
+ readonly name: "_originCaller";
70
+ readonly type: "address";
71
+ }, {
72
+ readonly internalType: "address";
73
+ readonly name: "target";
74
+ readonly type: "address";
75
+ }, {
76
+ readonly internalType: "bytes";
77
+ readonly name: "call";
78
+ readonly type: "bytes";
79
+ }];
80
+ readonly name: "encodeCall";
81
+ readonly outputs: readonly [{
82
+ readonly internalType: "bytes";
83
+ readonly name: "";
84
+ readonly type: "bytes";
85
+ }];
86
+ readonly stateMutability: "view";
87
+ readonly type: "function";
88
+ }, {
89
+ readonly inputs: readonly [];
90
+ readonly name: "messageNonce";
91
+ readonly outputs: readonly [{
92
+ readonly internalType: "uint256";
93
+ readonly name: "";
94
+ readonly type: "uint256";
95
+ }];
96
+ readonly stateMutability: "view";
97
+ readonly type: "function";
98
+ }, {
99
+ readonly inputs: readonly [{
100
+ readonly components: readonly [{
101
+ readonly internalType: "address";
102
+ readonly name: "origin";
103
+ readonly type: "address";
104
+ }, {
105
+ readonly internalType: "uint256";
106
+ readonly name: "blockNumber";
107
+ readonly type: "uint256";
108
+ }, {
109
+ readonly internalType: "uint256";
110
+ readonly name: "logIndex";
111
+ readonly type: "uint256";
112
+ }, {
113
+ readonly internalType: "uint256";
114
+ readonly name: "timestamp";
115
+ readonly type: "uint256";
116
+ }, {
117
+ readonly internalType: "uint256";
118
+ readonly name: "chainId";
119
+ readonly type: "uint256";
120
+ }];
121
+ readonly internalType: "struct ICrossL2Inbox.Identifier";
122
+ readonly name: "_id";
123
+ readonly type: "tuple";
124
+ }, {
125
+ readonly internalType: "bytes";
126
+ readonly name: "_sentMessage";
127
+ readonly type: "bytes";
128
+ }];
129
+ readonly name: "relayMessage";
130
+ readonly outputs: readonly [];
131
+ readonly stateMutability: "payable";
132
+ readonly type: "function";
133
+ }, {
134
+ readonly inputs: readonly [{
135
+ readonly internalType: "uint256";
136
+ readonly name: "_destination";
137
+ readonly type: "uint256";
138
+ }, {
139
+ readonly internalType: "address";
140
+ readonly name: "_target";
141
+ readonly type: "address";
142
+ }, {
143
+ readonly internalType: "bytes";
144
+ readonly name: "_message";
145
+ readonly type: "bytes";
146
+ }];
147
+ readonly name: "sendMessage";
148
+ readonly outputs: readonly [{
149
+ readonly internalType: "bytes32";
150
+ readonly name: "msgHash_";
151
+ readonly type: "bytes32";
152
+ }];
153
+ readonly stateMutability: "nonpayable";
154
+ readonly type: "function";
155
+ }, {
156
+ readonly inputs: readonly [{
157
+ readonly internalType: "bytes32";
158
+ readonly name: "_msgHash";
159
+ readonly type: "bytes32";
160
+ }];
161
+ readonly name: "successfulMessages";
162
+ readonly outputs: readonly [{
163
+ readonly internalType: "bool";
164
+ readonly name: "";
165
+ readonly type: "bool";
166
+ }];
167
+ readonly stateMutability: "view";
168
+ readonly type: "function";
169
+ }];
170
+ static createInterface(): MockL2toL2CrossDomainMessengerInterface;
171
+ static connect(address: string, signerOrProvider: Signer | Provider): MockL2toL2CrossDomainMessenger;
172
+ }
173
+ export {};
174
+ //# sourceMappingURL=MockL2toL2CrossDomainMessenger__factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockL2toL2CrossDomainMessenger__factory.d.ts","sourceRoot":"","sources":["../../../../../types/factories/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAmB,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EACV,8BAA8B,EAC9B,uCAAuC,EACxC,MAAM,+EAA+E,CAAC;AA8MvF,KAAK,+CAA+C,GAChD,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,uCAAwC,SAAQ,eAAe;gBAC9D,GAAG,IAAI,EAAE,+CAA+C;IAQ3D,MAAM,CACb,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,OAAO,CAAC,8BAA8B,CAAC;IAKjC,oBAAoB,CAC3B,SAAS,CAAC,EAAE,SAAS,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GACxC,kBAAkB;IAGZ,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,8BAA8B;IAGvD,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,uCAAuC;IAIzE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4jJAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,uCAAuC;IAGjE,MAAM,CAAC,OAAO,CACZ,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAClC,8BAA8B;CAOlC"}
@@ -0,0 +1,237 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { utils, Contract, ContractFactory } from "ethers";
5
+ const _abi = [
6
+ {
7
+ anonymous: false,
8
+ inputs: [
9
+ {
10
+ indexed: true,
11
+ internalType: "uint256",
12
+ name: "destination",
13
+ type: "uint256",
14
+ },
15
+ {
16
+ indexed: true,
17
+ internalType: "address",
18
+ name: "target",
19
+ type: "address",
20
+ },
21
+ {
22
+ indexed: true,
23
+ internalType: "uint256",
24
+ name: "messageNonce",
25
+ type: "uint256",
26
+ },
27
+ {
28
+ indexed: false,
29
+ internalType: "address",
30
+ name: "sender",
31
+ type: "address",
32
+ },
33
+ {
34
+ indexed: false,
35
+ internalType: "bytes",
36
+ name: "message",
37
+ type: "bytes",
38
+ },
39
+ ],
40
+ name: "SentMessage",
41
+ type: "event",
42
+ },
43
+ {
44
+ inputs: [],
45
+ name: "crossDomainMessageSender",
46
+ outputs: [
47
+ {
48
+ internalType: "address",
49
+ name: "sender_",
50
+ type: "address",
51
+ },
52
+ ],
53
+ stateMutability: "view",
54
+ type: "function",
55
+ },
56
+ {
57
+ inputs: [],
58
+ name: "crossDomainMessageSource",
59
+ outputs: [
60
+ {
61
+ internalType: "uint256",
62
+ name: "source_",
63
+ type: "uint256",
64
+ },
65
+ ],
66
+ stateMutability: "view",
67
+ type: "function",
68
+ },
69
+ {
70
+ inputs: [
71
+ {
72
+ internalType: "address",
73
+ name: "_originCaller",
74
+ type: "address",
75
+ },
76
+ {
77
+ internalType: "address",
78
+ name: "target",
79
+ type: "address",
80
+ },
81
+ {
82
+ internalType: "bytes",
83
+ name: "call",
84
+ type: "bytes",
85
+ },
86
+ ],
87
+ name: "encodeCall",
88
+ outputs: [
89
+ {
90
+ internalType: "bytes",
91
+ name: "",
92
+ type: "bytes",
93
+ },
94
+ ],
95
+ stateMutability: "view",
96
+ type: "function",
97
+ },
98
+ {
99
+ inputs: [],
100
+ name: "messageNonce",
101
+ outputs: [
102
+ {
103
+ internalType: "uint256",
104
+ name: "",
105
+ type: "uint256",
106
+ },
107
+ ],
108
+ stateMutability: "view",
109
+ type: "function",
110
+ },
111
+ {
112
+ inputs: [
113
+ {
114
+ components: [
115
+ {
116
+ internalType: "address",
117
+ name: "origin",
118
+ type: "address",
119
+ },
120
+ {
121
+ internalType: "uint256",
122
+ name: "blockNumber",
123
+ type: "uint256",
124
+ },
125
+ {
126
+ internalType: "uint256",
127
+ name: "logIndex",
128
+ type: "uint256",
129
+ },
130
+ {
131
+ internalType: "uint256",
132
+ name: "timestamp",
133
+ type: "uint256",
134
+ },
135
+ {
136
+ internalType: "uint256",
137
+ name: "chainId",
138
+ type: "uint256",
139
+ },
140
+ ],
141
+ internalType: "struct ICrossL2Inbox.Identifier",
142
+ name: "_id",
143
+ type: "tuple",
144
+ },
145
+ {
146
+ internalType: "bytes",
147
+ name: "_sentMessage",
148
+ type: "bytes",
149
+ },
150
+ ],
151
+ name: "relayMessage",
152
+ outputs: [],
153
+ stateMutability: "payable",
154
+ type: "function",
155
+ },
156
+ {
157
+ inputs: [
158
+ {
159
+ internalType: "uint256",
160
+ name: "_destination",
161
+ type: "uint256",
162
+ },
163
+ {
164
+ internalType: "address",
165
+ name: "_target",
166
+ type: "address",
167
+ },
168
+ {
169
+ internalType: "bytes",
170
+ name: "_message",
171
+ type: "bytes",
172
+ },
173
+ ],
174
+ name: "sendMessage",
175
+ outputs: [
176
+ {
177
+ internalType: "bytes32",
178
+ name: "msgHash_",
179
+ type: "bytes32",
180
+ },
181
+ ],
182
+ stateMutability: "nonpayable",
183
+ type: "function",
184
+ },
185
+ {
186
+ inputs: [
187
+ {
188
+ internalType: "bytes32",
189
+ name: "_msgHash",
190
+ type: "bytes32",
191
+ },
192
+ ],
193
+ name: "successfulMessages",
194
+ outputs: [
195
+ {
196
+ internalType: "bool",
197
+ name: "",
198
+ type: "bool",
199
+ },
200
+ ],
201
+ stateMutability: "view",
202
+ type: "function",
203
+ },
204
+ ];
205
+ const _bytecode = "0x60806040526001805460ff19168117905534801561001c57600080fd5b506108ee8061002c6000396000f3fe6080604052600436106100705760003560e01c80637056f41f1161004e5780637056f41f146101155780638d1d298f1461013a578063b1b1b2091461014f578063ecc704281461018057600080fd5b8063247944621461007557806338ffde18146100985780636bb25213146100e8575b600080fd5b34801561008157600080fd5b5060005b6040519081526020015b60405180910390f35b3480156100a457600080fd5b50600154610100900473ffffffffffffffffffffffffffffffffffffffff1660405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008f565b3480156100f457600080fd5b5061010861010336600461057f565b610196565b60405161008f9190610652565b34801561012157600080fd5b50610085610130366004610665565b6000949350505050565b61014d61014836600461068d565b6101c9565b005b34801561015b57600080fd5b5061017061016a3660046106e8565b50600190565b604051901515815260200161008f565b34801561018c57600080fd5b5061008560005481565b6060848484846040516020016101af9493929190610701565b60405160208183030381529060405290505b949350505050565b60015460ff16610260576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f4d6f636b4c32746f4c3243726f7373446f6d61696e4d657373656e6765723a2060448201527f706173734d657373616765732069732066616c7365000000000000000000000060648201526084015b60405180910390fd5b60008080610270848601866107a8565b600180547fffffffffffffffffffffff0000000000000000000000000000000000000000ff1661010073ffffffffffffffffffffffffffffffffffffffff861602179055919450925090506102c582826102ce565b50505050505050565b6060610312838360006040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250610319565b9392505050565b6060824710156103ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610257565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516103d4919061089c565b60006040518083038185875af1925050503d8060008114610411576040519150601f19603f3d011682016040523d82523d6000602084013e610416565b606091505b509150915061042787838387610432565b979650505050505050565b606083156104c85782516000036104c15773ffffffffffffffffffffffffffffffffffffffff85163b6104c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610257565b50816101c1565b6101c183838151156104dd5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102579190610652565b73ffffffffffffffffffffffffffffffffffffffff8116811461053357600080fd5b50565b60008083601f84011261054857600080fd5b50813567ffffffffffffffff81111561056057600080fd5b60208301915083602082850101111561057857600080fd5b9250929050565b6000806000806060858703121561059557600080fd5b84356105a081610511565b935060208501356105b081610511565b9250604085013567ffffffffffffffff8111156105cc57600080fd5b6105d887828801610536565b95989497509550505050565b60005b838110156105ff5781810151838201526020016105e7565b50506000910152565b600081518084526106208160208601602086016105e4565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006103126020830184610608565b6000806000806060858703121561067b57600080fd5b8435935060208501356105b081610511565b600080600083850360c08112156106a357600080fd5b60a08112156106b157600080fd5b5083925060a084013567ffffffffffffffff8111156106cf57600080fd5b6106db86828701610536565b9497909650939450505050565b6000602082840312156106fa57600080fd5b5035919050565b600073ffffffffffffffffffffffffffffffffffffffff8087168352808616602084015250606060408301528260608301528284608084013760006080848401015260807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f850116830101905095945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000606084860312156107bd57600080fd5b83356107c881610511565b925060208401356107d881610511565b9150604084013567ffffffffffffffff808211156107f557600080fd5b818601915086601f83011261080957600080fd5b81358181111561081b5761081b610779565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561086157610861610779565b8160405282815289602084870101111561087a57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b600082516108ae8184602087016105e4565b919091019291505056fea2646970667358221220ce8b18bf8645dd607e083d1af6df79139b7c1b2d46f351d362e45db4e2cb92b564736f6c63430008130033";
206
+ const isSuperArgs = (xs) => xs.length > 1;
207
+ export class MockL2toL2CrossDomainMessenger__factory extends ContractFactory {
208
+ constructor(...args) {
209
+ if (isSuperArgs(args)) {
210
+ super(...args);
211
+ }
212
+ else {
213
+ super(_abi, _bytecode, args[0]);
214
+ }
215
+ }
216
+ deploy(overrides) {
217
+ return super.deploy(overrides || {});
218
+ }
219
+ getDeployTransaction(overrides) {
220
+ return super.getDeployTransaction(overrides || {});
221
+ }
222
+ attach(address) {
223
+ return super.attach(address);
224
+ }
225
+ connect(signer) {
226
+ return super.connect(signer);
227
+ }
228
+ static bytecode = _bytecode;
229
+ static abi = _abi;
230
+ static createInterface() {
231
+ return new utils.Interface(_abi);
232
+ }
233
+ static connect(address, signerOrProvider) {
234
+ return new Contract(address, _abi, signerOrProvider);
235
+ }
236
+ }
237
+ //# sourceMappingURL=MockL2toL2CrossDomainMessenger__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockL2toL2CrossDomainMessenger__factory.js","sourceRoot":"","sources":["../../../../../types/factories/contracts/mock/MockOptimism.sol/MockL2toL2CrossDomainMessenger__factory.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,OAAO,EAAU,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAa,MAAM,QAAQ,CAAC;AAO7E,MAAM,IAAI,GAAG;IACX;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN;gBACE,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;aAChB;YACD;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,cAAc;gBACpB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;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,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;aACd;SACF;QACD,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,EAAE;QACV,IAAI,EAAE,cAAc;QACpB,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;YACN;gBACE,UAAU,EAAE;oBACV;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,YAAY,EAAE,SAAS;wBACvB,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,YAAY,EAAE,iCAAiC;gBAC/C,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,OAAO;aACd;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;aACd;SACF;QACD,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,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;CACO,CAAC;AAEX,MAAM,SAAS,GACb,wjJAAwjJ,CAAC;AAM3jJ,MAAM,WAAW,GAAG,CAClB,EAAmD,EACE,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAExE,MAAM,OAAO,uCAAwC,SAAQ,eAAe;IAC1E,YAAY,GAAG,IAAqD;QAClE,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEQ,MAAM,CACb,SAAyC;QAEzC,OAAO,KAAK,CAAC,MAAM,CACjB,SAAS,IAAI,EAAE,CAC2B,CAAC;IAC/C,CAAC;IACQ,oBAAoB,CAC3B,SAAyC;QAEzC,OAAO,KAAK,CAAC,oBAAoB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC;IACQ,MAAM,CAAC,OAAe;QAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAmC,CAAC;IACjE,CAAC;IACQ,OAAO,CAAC,MAAc;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAA4C,CAAC;IAC1E,CAAC;IAED,MAAM,CAAU,QAAQ,GAAG,SAAS,CAAC;IACrC,MAAM,CAAU,GAAG,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAA4C,CAAC;IAC9E,CAAC;IACD,MAAM,CAAC,OAAO,CACZ,OAAe,EACf,gBAAmC;QAEnC,OAAO,IAAI,QAAQ,CACjB,OAAO,EACP,IAAI,EACJ,gBAAgB,CACiB,CAAC;IACtC,CAAC"}
@@ -12,7 +12,7 @@ export declare class MockOptimismMessenger__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): MockOptimismMessenger;
14
14
  connect(signer: Signer): MockOptimismMessenger__factory;
15
- static readonly bytecode = "0x608060405234801561001057600080fd5b50610735806100206000396000f3fe6080604052600436106100705760003560e01c80639fce812c1161004e5780639fce812c1461010e578063a8e8a9ed14610122578063bf24eb6314610184578063d764ad0b146101e657600080fd5b80630ff754ea146100755780633dbb202b146100cb5780636e296e45146100e1575b600080fd5b34801561008157600080fd5b506001546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100df6100d9366004610532565b50505050565b005b3480156100ed57600080fd5b506000546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b34801561011a57600080fd5b5060006100a2565b34801561012e57600080fd5b506100df61013d3660046105a1565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b34801561019057600080fd5b506100df61019f3660046105a1565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6100df6101f43660046105c3565b6000604051806060016040528061021e8873ffffffffffffffffffffffffffffffffffffffff1690565b815260200186815260200184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050915250905061026c81610277565b505050505050505050565b805160609061028f9083604001518460200151610295565b92915050565b60606102bb8484846040518060600160405280602981526020016106d7602991396102c3565b949350505050565b60608247101561035a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516103839190610669565b60006040518083038185875af1925050503d80600081146103c0576040519150601f19603f3d011682016040523d82523d6000602084013e6103c5565b606091505b50915091506103d6878383876103e1565b979650505050505050565b606083156104775782516000036104705773ffffffffffffffffffffffffffffffffffffffff85163b610470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610351565b50816102bb565b6102bb838381511561048c5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103519190610685565b803573ffffffffffffffffffffffffffffffffffffffff811681146104e457600080fd5b919050565b60008083601f8401126104fb57600080fd5b50813567ffffffffffffffff81111561051357600080fd5b60208301915083602082850101111561052b57600080fd5b9250929050565b6000806000806060858703121561054857600080fd5b610551856104c0565b9350602085013567ffffffffffffffff81111561056d57600080fd5b610579878288016104e9565b909450925050604085013563ffffffff8116811461059657600080fd5b939692955090935050565b6000602082840312156105b357600080fd5b6105bc826104c0565b9392505050565b600080600080600080600060c0888a0312156105de57600080fd5b873596506105ee602089016104c0565b95506105fc604089016104c0565b9450606088013593506080880135925060a088013567ffffffffffffffff81111561062657600080fd5b6106328a828b016104e9565b989b979a50959850939692959293505050565b60005b83811015610660578181015183820152602001610648565b50506000910152565b6000825161067b818460208701610645565b9190910192915050565b60208152600082518060208401526106a4816040850160208701610645565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a264697066735822122041058a749344a27368fa28a115e5e19dcde2917e88e7679ae15e8207741ee60264736f6c63430008130033";
15
+ static readonly bytecode = "0x608060405234801561001057600080fd5b50610735806100206000396000f3fe6080604052600436106100705760003560e01c80639fce812c1161004e5780639fce812c1461010e578063a8e8a9ed14610122578063bf24eb6314610184578063d764ad0b146101e657600080fd5b80630ff754ea146100755780633dbb202b146100cb5780636e296e45146100e1575b600080fd5b34801561008157600080fd5b506001546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100df6100d9366004610532565b50505050565b005b3480156100ed57600080fd5b506000546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b34801561011a57600080fd5b5060006100a2565b34801561012e57600080fd5b506100df61013d3660046105a1565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b34801561019057600080fd5b506100df61019f3660046105a1565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6100df6101f43660046105c3565b6000604051806060016040528061021e8873ffffffffffffffffffffffffffffffffffffffff1690565b815260200186815260200184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050915250905061026c81610277565b505050505050505050565b805160609061028f9083604001518460200151610295565b92915050565b60606102bb8484846040518060600160405280602981526020016106d7602991396102c3565b949350505050565b60608247101561035a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516103839190610669565b60006040518083038185875af1925050503d80600081146103c0576040519150601f19603f3d011682016040523d82523d6000602084013e6103c5565b606091505b50915091506103d6878383876103e1565b979650505050505050565b606083156104775782516000036104705773ffffffffffffffffffffffffffffffffffffffff85163b610470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610351565b50816102bb565b6102bb838381511561048c5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103519190610685565b803573ffffffffffffffffffffffffffffffffffffffff811681146104e457600080fd5b919050565b60008083601f8401126104fb57600080fd5b50813567ffffffffffffffff81111561051357600080fd5b60208301915083602082850101111561052b57600080fd5b9250929050565b6000806000806060858703121561054857600080fd5b610551856104c0565b9350602085013567ffffffffffffffff81111561056d57600080fd5b610579878288016104e9565b909450925050604085013563ffffffff8116811461059657600080fd5b939692955090935050565b6000602082840312156105b357600080fd5b6105bc826104c0565b9392505050565b600080600080600080600060c0888a0312156105de57600080fd5b873596506105ee602089016104c0565b95506105fc604089016104c0565b9450606088013593506080880135925060a088013567ffffffffffffffff81111561062657600080fd5b6106328a828b016104e9565b989b979a50959850939692959293505050565b60005b83811015610660578181015183820152602001610648565b50506000910152565b6000825161067b818460208701610645565b9190910192915050565b60208152600082518060208401526106a4816040850160208701610645565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a2646970667358221220b98ae0c9ade7d65ec38f555b6f80f96e1817f59cab246fe0094cab029df390cc64736f6c63430008130033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [];
18
18
  readonly name: "OTHER_MESSENGER";
@@ -130,7 +130,7 @@ const _abi = [
130
130
  type: "function",
131
131
  },
132
132
  ];
133
- const _bytecode = "0x608060405234801561001057600080fd5b50610735806100206000396000f3fe6080604052600436106100705760003560e01c80639fce812c1161004e5780639fce812c1461010e578063a8e8a9ed14610122578063bf24eb6314610184578063d764ad0b146101e657600080fd5b80630ff754ea146100755780633dbb202b146100cb5780636e296e45146100e1575b600080fd5b34801561008157600080fd5b506001546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100df6100d9366004610532565b50505050565b005b3480156100ed57600080fd5b506000546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b34801561011a57600080fd5b5060006100a2565b34801561012e57600080fd5b506100df61013d3660046105a1565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b34801561019057600080fd5b506100df61019f3660046105a1565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6100df6101f43660046105c3565b6000604051806060016040528061021e8873ffffffffffffffffffffffffffffffffffffffff1690565b815260200186815260200184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050915250905061026c81610277565b505050505050505050565b805160609061028f9083604001518460200151610295565b92915050565b60606102bb8484846040518060600160405280602981526020016106d7602991396102c3565b949350505050565b60608247101561035a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516103839190610669565b60006040518083038185875af1925050503d80600081146103c0576040519150601f19603f3d011682016040523d82523d6000602084013e6103c5565b606091505b50915091506103d6878383876103e1565b979650505050505050565b606083156104775782516000036104705773ffffffffffffffffffffffffffffffffffffffff85163b610470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610351565b50816102bb565b6102bb838381511561048c5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103519190610685565b803573ffffffffffffffffffffffffffffffffffffffff811681146104e457600080fd5b919050565b60008083601f8401126104fb57600080fd5b50813567ffffffffffffffff81111561051357600080fd5b60208301915083602082850101111561052b57600080fd5b9250929050565b6000806000806060858703121561054857600080fd5b610551856104c0565b9350602085013567ffffffffffffffff81111561056d57600080fd5b610579878288016104e9565b909450925050604085013563ffffffff8116811461059657600080fd5b939692955090935050565b6000602082840312156105b357600080fd5b6105bc826104c0565b9392505050565b600080600080600080600060c0888a0312156105de57600080fd5b873596506105ee602089016104c0565b95506105fc604089016104c0565b9450606088013593506080880135925060a088013567ffffffffffffffff81111561062657600080fd5b6106328a828b016104e9565b989b979a50959850939692959293505050565b60005b83811015610660578181015183820152602001610648565b50506000910152565b6000825161067b818460208701610645565b9190910192915050565b60208152600082518060208401526106a4816040850160208701610645565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a264697066735822122041058a749344a27368fa28a115e5e19dcde2917e88e7679ae15e8207741ee60264736f6c63430008130033";
133
+ const _bytecode = "0x608060405234801561001057600080fd5b50610735806100206000396000f3fe6080604052600436106100705760003560e01c80639fce812c1161004e5780639fce812c1461010e578063a8e8a9ed14610122578063bf24eb6314610184578063d764ad0b146101e657600080fd5b80630ff754ea146100755780633dbb202b146100cb5780636e296e45146100e1575b600080fd5b34801561008157600080fd5b506001546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6100df6100d9366004610532565b50505050565b005b3480156100ed57600080fd5b506000546100a29073ffffffffffffffffffffffffffffffffffffffff1681565b34801561011a57600080fd5b5060006100a2565b34801561012e57600080fd5b506100df61013d3660046105a1565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b34801561019057600080fd5b506100df61019f3660046105a1565b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6100df6101f43660046105c3565b6000604051806060016040528061021e8873ffffffffffffffffffffffffffffffffffffffff1690565b815260200186815260200184848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050915250905061026c81610277565b505050505050505050565b805160609061028f9083604001518460200151610295565b92915050565b60606102bb8484846040518060600160405280602981526020016106d7602991396102c3565b949350505050565b60608247101561035a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516103839190610669565b60006040518083038185875af1925050503d80600081146103c0576040519150601f19603f3d011682016040523d82523d6000602084013e6103c5565b606091505b50915091506103d6878383876103e1565b979650505050505050565b606083156104775782516000036104705773ffffffffffffffffffffffffffffffffffffffff85163b610470576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610351565b50816102bb565b6102bb838381511561048c5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103519190610685565b803573ffffffffffffffffffffffffffffffffffffffff811681146104e457600080fd5b919050565b60008083601f8401126104fb57600080fd5b50813567ffffffffffffffff81111561051357600080fd5b60208301915083602082850101111561052b57600080fd5b9250929050565b6000806000806060858703121561054857600080fd5b610551856104c0565b9350602085013567ffffffffffffffff81111561056d57600080fd5b610579878288016104e9565b909450925050604085013563ffffffff8116811461059657600080fd5b939692955090935050565b6000602082840312156105b357600080fd5b6105bc826104c0565b9392505050565b600080600080600080600060c0888a0312156105de57600080fd5b873596506105ee602089016104c0565b95506105fc604089016104c0565b9450606088013593506080880135925060a088013567ffffffffffffffff81111561062657600080fd5b6106328a828b016104e9565b989b979a50959850939692959293505050565b60005b83811015610660578181015183820152602001610648565b50506000910152565b6000825161067b818460208701610645565b9190910192915050565b60208152600082518060208401526106a4816040850160208701610645565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a2646970667358221220b98ae0c9ade7d65ec38f555b6f80f96e1817f59cab246fe0094cab029df390cc64736f6c63430008130033";
134
134
  const isSuperArgs = (xs) => xs.length > 1;
135
135
  export class MockOptimismMessenger__factory extends ContractFactory {
136
136
  constructor(...args) {
@@ -12,7 +12,7 @@ export declare class MockOptimismPortal__factory extends ContractFactory {
12
12
  }): TransactionRequest;
13
13
  attach(address: string): MockOptimismPortal;
14
14
  connect(signer: Signer): MockOptimismPortal__factory;
15
- static readonly bytecode = "0x608060405234801561001057600080fd5b506105c2806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80638c3152e914610030575b600080fd5b61004361003e3660046103b3565b610045565b005b60006040518060600160405280610073846040015173ffffffffffffffffffffffffffffffffffffffff1690565b8152602001836060015181526020018360a0015181525090506100958161009a565b505050565b80516060906100b290836040015184602001516100b8565b92915050565b60606100de848484604051806060016040528060298152602001610564602991396100e6565b949350505050565b60608247101561017d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516101a691906104f6565b60006040518083038185875af1925050503d80600081146101e3576040519150601f19603f3d011682016040523d82523d6000602084013e6101e8565b606091505b50915091506101f987838387610204565b979650505050505050565b6060831561029a5782516000036102935773ffffffffffffffffffffffffffffffffffffffff85163b610293576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610174565b50816100de565b6100de83838151156102af5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101749190610512565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715610335576103356102e3565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610382576103826102e3565b604052919050565b803573ffffffffffffffffffffffffffffffffffffffff811681146103ae57600080fd5b919050565b600060208083850312156103c657600080fd5b823567ffffffffffffffff808211156103de57600080fd5b9084019060c082870312156103f257600080fd5b6103fa610312565b8235815261040984840161038a565b848201526104196040840161038a565b6040820152606083013560608201526080830135608082015260a08301358281111561044457600080fd5b80840193505086601f84011261045957600080fd5b82358281111561046b5761046b6102e3565b61049b857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161033b565b925080835287858286010111156104b157600080fd5b808585018685013760009083019094019390935260a0830152509392505050565b60005b838110156104ed5781810151838201526020016104d5565b50506000910152565b600082516105088184602087016104d2565b9190910192915050565b60208152600082518060208401526105318160408501602087016104d2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a2646970667358221220ef663d2fdc5f94fbdbb950f2059f385868c7102079b725a93fe383bcca65fb9864736f6c63430008130033";
15
+ static readonly bytecode = "0x608060405234801561001057600080fd5b506105c2806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80638c3152e914610030575b600080fd5b61004361003e3660046103b3565b610045565b005b60006040518060600160405280610073846040015173ffffffffffffffffffffffffffffffffffffffff1690565b8152602001836060015181526020018360a0015181525090506100958161009a565b505050565b80516060906100b290836040015184602001516100b8565b92915050565b60606100de848484604051806060016040528060298152602001610564602991396100e6565b949350505050565b60608247101561017d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516101a691906104f6565b60006040518083038185875af1925050503d80600081146101e3576040519150601f19603f3d011682016040523d82523d6000602084013e6101e8565b606091505b50915091506101f987838387610204565b979650505050505050565b6060831561029a5782516000036102935773ffffffffffffffffffffffffffffffffffffffff85163b610293576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610174565b50816100de565b6100de83838151156102af5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101749190610512565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715610335576103356102e3565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610382576103826102e3565b604052919050565b803573ffffffffffffffffffffffffffffffffffffffff811681146103ae57600080fd5b919050565b600060208083850312156103c657600080fd5b823567ffffffffffffffff808211156103de57600080fd5b9084019060c082870312156103f257600080fd5b6103fa610312565b8235815261040984840161038a565b848201526104196040840161038a565b6040820152606083013560608201526080830135608082015260a08301358281111561044457600080fd5b80840193505086601f84011261045957600080fd5b82358281111561046b5761046b6102e3565b61049b857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161033b565b925080835287858286010111156104b157600080fd5b808585018685013760009083019094019390935260a0830152509392505050565b60005b838110156104ed5781810151838201526020016104d5565b50506000910152565b600082516105088184602087016104d2565b9190910192915050565b60208152600082518060208401526105318160408501602087016104d2565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564a26469706673582212205730d81d4bdf08c2997a25ebea5538d7460e87dd913d613e0bebc4759c0b095f64736f6c63430008130033";
16
16
  static readonly abi: readonly [{
17
17
  readonly inputs: readonly [];
18
18
  readonly name: "WithdrawalTransactionFailed";