@arbitrum/nitro-contracts 1.1.0-alpha.1 → 1.1.0-alpha.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (422) hide show
  1. package/LICENSE +114 -0
  2. package/README.md +2 -2
  3. package/build/types/@openzeppelin/contracts/access/Ownable.ts +175 -0
  4. package/build/types/@openzeppelin/contracts/access/index.ts +4 -0
  5. package/build/types/@openzeppelin/contracts/index.ts +11 -0
  6. package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +87 -0
  7. package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  8. package/build/types/@openzeppelin/contracts/interfaces/index.ts +5 -0
  9. package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +108 -0
  10. package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts +108 -0
  11. package/build/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  12. package/build/types/@openzeppelin/contracts/proxy/Proxy.ts +55 -0
  13. package/build/types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +87 -0
  14. package/build/types/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.ts +239 -0
  15. package/build/types/@openzeppelin/contracts/proxy/beacon/index.ts +5 -0
  16. package/build/types/@openzeppelin/contracts/proxy/index.ts +12 -0
  17. package/build/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.ts +359 -0
  18. package/build/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.ts +278 -0
  19. package/build/types/@openzeppelin/contracts/proxy/transparent/index.ts +5 -0
  20. package/build/types/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts +216 -0
  21. package/build/types/@openzeppelin/contracts/proxy/utils/index.ts +4 -0
  22. package/build/types/@openzeppelin/contracts/token/ERC20/ERC20.ts +444 -0
  23. package/build/types/@openzeppelin/contracts/token/ERC20/IERC20.ts +322 -0
  24. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.ts +507 -0
  25. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +364 -0
  26. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
  27. package/build/types/@openzeppelin/contracts/token/ERC20/index.ts +9 -0
  28. package/build/types/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.ts +507 -0
  29. package/build/types/@openzeppelin/contracts/token/ERC20/presets/index.ts +4 -0
  30. package/build/types/@openzeppelin/contracts/token/index.ts +5 -0
  31. package/build/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +175 -0
  32. package/build/types/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
  33. package/build/types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
  34. package/build/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts +111 -0
  35. package/build/types/@openzeppelin/contracts-upgradeable/security/index.ts +4 -0
  36. package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts +322 -0
  37. package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +4 -0
  38. package/build/types/@openzeppelin/contracts-upgradeable/token/index.ts +5 -0
  39. package/build/types/@openzeppelin/index.ts +7 -0
  40. package/build/types/common.ts +44 -0
  41. package/build/types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +78 -0
  42. package/build/types/factories/@openzeppelin/contracts/access/index.ts +4 -0
  43. package/build/types/factories/@openzeppelin/contracts/index.ts +7 -0
  44. package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +39 -0
  45. package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  46. package/build/types/factories/@openzeppelin/contracts/interfaces/index.ts +4 -0
  47. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +146 -0
  48. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts +71 -0
  49. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  50. package/build/types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +31 -0
  51. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +39 -0
  52. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon__factory.ts +169 -0
  53. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +5 -0
  54. package/build/types/factories/@openzeppelin/contracts/proxy/index.ts +8 -0
  55. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.ts +211 -0
  56. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy__factory.ts +228 -0
  57. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/index.ts +5 -0
  58. package/build/types/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts +115 -0
  59. package/build/types/factories/@openzeppelin/contracts/proxy/utils/index.ts +4 -0
  60. package/build/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +349 -0
  61. package/build/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +206 -0
  62. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable__factory.ts +327 -0
  63. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +248 -0
  64. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +5 -0
  65. package/build/types/factories/@openzeppelin/contracts/token/ERC20/index.ts +7 -0
  66. package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply__factory.ts +420 -0
  67. package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/index.ts +4 -0
  68. package/build/types/factories/@openzeppelin/contracts/token/index.ts +4 -0
  69. package/build/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +78 -0
  70. package/build/types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
  71. package/build/types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
  72. package/build/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts +65 -0
  73. package/build/types/factories/@openzeppelin/contracts-upgradeable/security/index.ts +4 -0
  74. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts +209 -0
  75. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +4 -0
  76. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/index.ts +4 -0
  77. package/build/types/factories/@openzeppelin/index.ts +5 -0
  78. package/build/types/factories/index.ts +5 -0
  79. package/build/types/factories/src/bridge/AbsBridge__factory.ts +612 -0
  80. package/build/types/factories/src/bridge/AbsInbox__factory.ts +455 -0
  81. package/build/types/factories/src/bridge/AbsOutbox__factory.ts +561 -0
  82. package/build/types/factories/src/bridge/Bridge__factory.ts +695 -0
  83. package/build/types/factories/src/bridge/ERC20Bridge__factory.ts +746 -0
  84. package/build/types/factories/src/bridge/ERC20Inbox__factory.ts +719 -0
  85. package/build/types/factories/src/bridge/ERC20Outbox__factory.ts +610 -0
  86. package/build/types/factories/src/bridge/IBridge__factory.ts +508 -0
  87. package/build/types/factories/src/bridge/IDelayedMessageProvider__factory.ts +62 -0
  88. package/build/types/factories/src/bridge/IERC20Bridge__factory.ts +576 -0
  89. package/build/types/factories/src/bridge/IERC20Inbox__factory.ts +461 -0
  90. package/build/types/factories/src/bridge/IEthBridge__factory.ts +553 -0
  91. package/build/types/factories/src/bridge/IEthInbox__factory.ts +653 -0
  92. package/build/types/factories/src/bridge/IInbox__factory.ts +318 -0
  93. package/build/types/factories/src/bridge/IOutbox__factory.ts +431 -0
  94. package/build/types/factories/src/bridge/IOwnable__factory.ts +36 -0
  95. package/build/types/factories/src/bridge/ISequencerInbox__factory.ts +666 -0
  96. package/build/types/factories/src/bridge/Inbox__factory.ts +999 -0
  97. package/build/types/factories/src/bridge/Outbox__factory.ts +591 -0
  98. package/build/types/factories/src/bridge/SequencerInbox__factory.ts +865 -0
  99. package/build/types/factories/src/bridge/index.ts +23 -0
  100. package/build/types/factories/src/challenge/ChallengeManager__factory.ts +720 -0
  101. package/build/types/factories/src/challenge/IChallengeManager__factory.ts +401 -0
  102. package/build/types/factories/src/challenge/IChallengeResultReceiver__factory.ts +53 -0
  103. package/build/types/factories/src/challenge/index.ts +6 -0
  104. package/build/types/factories/src/index.ts +12 -0
  105. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy__factory.ts +128 -0
  106. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade__factory.ts +88 -0
  107. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/index.ts +5 -0
  108. package/build/types/factories/src/libraries/DoubleLogicUUPSUpgradeable__factory.ts +163 -0
  109. package/build/types/factories/src/libraries/IGasRefunder__factory.ts +55 -0
  110. package/build/types/factories/src/libraries/UUPSNotUpgradeable__factory.ts +97 -0
  111. package/build/types/factories/src/libraries/index.ts +7 -0
  112. package/build/types/factories/src/mocks/BridgeStub__factory.ts +612 -0
  113. package/build/types/factories/src/mocks/BridgeUnproxied__factory.ts +706 -0
  114. package/build/types/factories/src/mocks/InboxStub__factory.ts +702 -0
  115. package/build/types/factories/src/mocks/MockResultReceiver__factory.ts +244 -0
  116. package/build/types/factories/src/mocks/ProxyAdminForBinding__factory.ts +215 -0
  117. package/build/types/factories/src/mocks/SequencerInboxStub__factory.ts +938 -0
  118. package/build/types/factories/src/mocks/SimpleProxy__factory.ts +83 -0
  119. package/build/types/factories/src/mocks/Simple__factory.ts +287 -0
  120. package/build/types/factories/src/mocks/SingleExecutionChallenge__factory.ts +823 -0
  121. package/build/types/factories/src/mocks/TimedOutChallengeManager__factory.ts +724 -0
  122. package/build/types/factories/src/mocks/index.ts +13 -0
  123. package/build/types/factories/src/node-interface/NodeInterfaceDebug__factory.ts +82 -0
  124. package/build/types/factories/src/node-interface/NodeInterface__factory.ts +301 -0
  125. package/build/types/factories/src/node-interface/index.ts +5 -0
  126. package/build/types/factories/src/osp/HashProofHelper__factory.ts +216 -0
  127. package/build/types/factories/src/osp/IOneStepProofEntry__factory.ts +72 -0
  128. package/build/types/factories/src/osp/IOneStepProver__factory.ts +492 -0
  129. package/build/types/factories/src/osp/OneStepProofEntry__factory.ts +206 -0
  130. package/build/types/factories/src/osp/OneStepProver0__factory.ts +528 -0
  131. package/build/types/factories/src/osp/OneStepProverHostIo__factory.ts +528 -0
  132. package/build/types/factories/src/osp/OneStepProverMath__factory.ts +528 -0
  133. package/build/types/factories/src/osp/OneStepProverMemory__factory.ts +528 -0
  134. package/build/types/factories/src/osp/index.ts +11 -0
  135. package/build/types/factories/src/precompiles/ArbAddressTable__factory.ts +163 -0
  136. package/build/types/factories/src/precompiles/ArbAggregator__factory.ts +163 -0
  137. package/build/types/factories/src/precompiles/ArbDebug__factory.ts +208 -0
  138. package/build/types/factories/src/precompiles/ArbFunctionTable__factory.ts +92 -0
  139. package/build/types/factories/src/precompiles/ArbGasInfo__factory.ts +339 -0
  140. package/build/types/factories/src/precompiles/ArbInfo__factory.ts +64 -0
  141. package/build/types/factories/src/precompiles/ArbOwnerPublic__factory.ts +84 -0
  142. package/build/types/factories/src/precompiles/ArbOwner__factory.ts +393 -0
  143. package/build/types/factories/src/precompiles/ArbRetryableTx__factory.ts +321 -0
  144. package/build/types/factories/src/precompiles/ArbStatistics__factory.ts +64 -0
  145. package/build/types/factories/src/precompiles/ArbSys__factory.ts +389 -0
  146. package/build/types/factories/src/precompiles/ArbosActs__factory.ts +92 -0
  147. package/build/types/factories/src/precompiles/ArbosTest__factory.ts +39 -0
  148. package/build/types/factories/src/precompiles/index.ts +16 -0
  149. package/build/types/factories/src/rollup/AbsBridgeCreator__factory.ts +182 -0
  150. package/build/types/factories/src/rollup/AbsRollupCreator__factory.ts +285 -0
  151. package/build/types/factories/src/rollup/AbsRollupEventInbox__factory.ts +125 -0
  152. package/build/types/factories/src/rollup/BridgeCreator__factory.ts +294 -0
  153. package/build/types/factories/src/rollup/ERC20BridgeCreator__factory.ts +299 -0
  154. package/build/types/factories/src/rollup/ERC20RollupCreator__factory.ts +439 -0
  155. package/build/types/factories/src/rollup/ERC20RollupEventInbox__factory.ts +170 -0
  156. package/build/types/factories/src/rollup/IBridgeCreator.sol/IBridgeCreator__factory.ts +124 -0
  157. package/build/types/factories/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator__factory.ts +200 -0
  158. package/build/types/factories/src/rollup/IBridgeCreator.sol/IEthBridgeCreator__factory.ts +195 -0
  159. package/build/types/factories/src/rollup/IBridgeCreator.sol/index.ts +6 -0
  160. package/build/types/factories/src/rollup/IRollupAdmin__factory.ts +559 -0
  161. package/build/types/factories/src/rollup/IRollupCore__factory.ts +904 -0
  162. package/build/types/factories/src/rollup/IRollupCreator.sol/IERC20RollupCreator__factory.ts +182 -0
  163. package/build/types/factories/src/rollup/IRollupCreator.sol/IEthRollupCreator__factory.ts +177 -0
  164. package/build/types/factories/src/rollup/IRollupCreator.sol/IRollupCreator__factory.ts +69 -0
  165. package/build/types/factories/src/rollup/IRollupCreator.sol/index.ts +6 -0
  166. package/build/types/factories/src/rollup/IRollupEventInbox__factory.ts +83 -0
  167. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserAbs__factory.ts +1324 -0
  168. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserERC20__factory.ts +1458 -0
  169. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUser__factory.ts +1443 -0
  170. package/build/types/factories/src/rollup/IRollupLogic.sol/index.ts +6 -0
  171. package/build/types/factories/src/rollup/RollupAdminLogic__factory.ts +1859 -0
  172. package/build/types/factories/src/rollup/RollupCore__factory.ts +1066 -0
  173. package/build/types/factories/src/rollup/RollupCreator__factory.ts +434 -0
  174. package/build/types/factories/src/rollup/RollupEventInbox__factory.ts +166 -0
  175. package/build/types/factories/src/rollup/RollupProxy__factory.ts +277 -0
  176. package/build/types/factories/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic__factory.ts +1593 -0
  177. package/build/types/factories/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic__factory.ts +1767 -0
  178. package/build/types/factories/src/rollup/RollupUserLogic.sol/RollupUserLogic__factory.ts +1748 -0
  179. package/build/types/factories/src/rollup/RollupUserLogic.sol/index.ts +6 -0
  180. package/build/types/factories/src/rollup/ValidatorUtils__factory.ts +430 -0
  181. package/build/types/factories/src/rollup/ValidatorWalletCreator__factory.ts +205 -0
  182. package/build/types/factories/src/rollup/ValidatorWallet__factory.ts +486 -0
  183. package/build/types/factories/src/rollup/index.ts +25 -0
  184. package/build/types/factories/src/test-helpers/BridgeTester__factory.ts +654 -0
  185. package/build/types/factories/src/test-helpers/CryptographyPrimitivesTester__factory.ts +111 -0
  186. package/build/types/factories/src/test-helpers/EthVault__factory.ts +95 -0
  187. package/build/types/factories/src/test-helpers/MessageTester__factory.ts +135 -0
  188. package/build/types/factories/src/test-helpers/OutboxWithoutOptTester__factory.ts +575 -0
  189. package/build/types/factories/src/test-helpers/RollupMock__factory.ts +100 -0
  190. package/build/types/factories/src/test-helpers/ValueArrayTester__factory.ts +69 -0
  191. package/build/types/factories/src/test-helpers/index.ts +10 -0
  192. package/build/types/index.ts +240 -0
  193. package/build/types/src/bridge/AbsBridge.ts +863 -0
  194. package/build/types/src/bridge/AbsInbox.ts +664 -0
  195. package/build/types/src/bridge/AbsOutbox.ts +700 -0
  196. package/build/types/src/bridge/Bridge.ts +934 -0
  197. package/build/types/src/bridge/ERC20Bridge.ts +970 -0
  198. package/build/types/src/bridge/ERC20Inbox.ts +869 -0
  199. package/build/types/src/bridge/ERC20Outbox.ts +722 -0
  200. package/build/types/src/bridge/IBridge.ts +799 -0
  201. package/build/types/src/bridge/IDelayedMessageProvider.ts +108 -0
  202. package/build/types/src/bridge/IERC20Bridge.ts +914 -0
  203. package/build/types/src/bridge/IERC20Inbox.ts +788 -0
  204. package/build/types/src/bridge/IEthBridge.ts +871 -0
  205. package/build/types/src/bridge/IEthInbox.ts +1081 -0
  206. package/build/types/src/bridge/IInbox.ts +583 -0
  207. package/build/types/src/bridge/IOutbox.ts +654 -0
  208. package/build/types/src/bridge/IOwnable.ts +81 -0
  209. package/build/types/src/bridge/ISequencerInbox.ts +1038 -0
  210. package/build/types/src/bridge/Inbox.ts +1279 -0
  211. package/build/types/src/bridge/Outbox.ts +700 -0
  212. package/build/types/src/bridge/SequencerInbox.ts +1138 -0
  213. package/build/types/src/bridge/index.ts +23 -0
  214. package/build/types/src/challenge/ChallengeManager.ts +889 -0
  215. package/build/types/src/challenge/IChallengeManager.ts +543 -0
  216. package/build/types/src/challenge/IChallengeResultReceiver.ts +115 -0
  217. package/build/types/src/challenge/index.ts +6 -0
  218. package/build/types/src/index.ts +21 -0
  219. package/build/types/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.ts +128 -0
  220. package/build/types/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.ts +128 -0
  221. package/build/types/src/libraries/AdminFallbackProxy.sol/index.ts +5 -0
  222. package/build/types/src/libraries/DoubleLogicUUPSUpgradeable.ts +314 -0
  223. package/build/types/src/libraries/IGasRefunder.ts +112 -0
  224. package/build/types/src/libraries/UUPSNotUpgradeable.ts +164 -0
  225. package/build/types/src/libraries/index.ts +8 -0
  226. package/build/types/src/mocks/BridgeStub.ts +887 -0
  227. package/build/types/src/mocks/BridgeUnproxied.ts +934 -0
  228. package/build/types/src/mocks/InboxStub.ts +1076 -0
  229. package/build/types/src/mocks/MockResultReceiver.ts +301 -0
  230. package/build/types/src/mocks/ProxyAdminForBinding.ts +359 -0
  231. package/build/types/src/mocks/SequencerInboxStub.ts +1173 -0
  232. package/build/types/src/mocks/Simple.ts +514 -0
  233. package/build/types/src/mocks/SimpleProxy.ts +55 -0
  234. package/build/types/src/mocks/SingleExecutionChallenge.ts +889 -0
  235. package/build/types/src/mocks/TimedOutChallengeManager.ts +883 -0
  236. package/build/types/src/mocks/index.ts +13 -0
  237. package/build/types/src/node-interface/NodeInterface.ts +502 -0
  238. package/build/types/src/node-interface/NodeInterfaceDebug.ts +137 -0
  239. package/build/types/src/node-interface/index.ts +5 -0
  240. package/build/types/src/osp/HashProofHelper.ts +308 -0
  241. package/build/types/src/osp/IOneStepProofEntry.ts +128 -0
  242. package/build/types/src/osp/IOneStepProver.ts +284 -0
  243. package/build/types/src/osp/OneStepProofEntry.ts +196 -0
  244. package/build/types/src/osp/OneStepProver0.ts +284 -0
  245. package/build/types/src/osp/OneStepProverHostIo.ts +284 -0
  246. package/build/types/src/osp/OneStepProverMath.ts +284 -0
  247. package/build/types/src/osp/OneStepProverMemory.ts +284 -0
  248. package/build/types/src/osp/index.ts +11 -0
  249. package/build/types/src/precompiles/ArbAddressTable.ts +248 -0
  250. package/build/types/src/precompiles/ArbAggregator.ts +335 -0
  251. package/build/types/src/precompiles/ArbDebug.ts +292 -0
  252. package/build/types/src/precompiles/ArbFunctionTable.ts +150 -0
  253. package/build/types/src/precompiles/ArbGasInfo.ts +494 -0
  254. package/build/types/src/precompiles/ArbInfo.ts +105 -0
  255. package/build/types/src/precompiles/ArbOwner.ts +928 -0
  256. package/build/types/src/precompiles/ArbOwnerPublic.ts +157 -0
  257. package/build/types/src/precompiles/ArbRetryableTx.ts +467 -0
  258. package/build/types/src/precompiles/ArbStatistics.ts +93 -0
  259. package/build/types/src/precompiles/ArbSys.ts +553 -0
  260. package/build/types/src/precompiles/ArbosActs.ts +173 -0
  261. package/build/types/src/precompiles/ArbosTest.ts +97 -0
  262. package/build/types/src/precompiles/index.ts +16 -0
  263. package/build/types/src/rollup/AbsBridgeCreator.ts +348 -0
  264. package/build/types/src/rollup/AbsRollupCreator.ts +449 -0
  265. package/build/types/src/rollup/AbsRollupEventInbox.ts +218 -0
  266. package/build/types/src/rollup/BridgeCreator.ts +415 -0
  267. package/build/types/src/rollup/ERC20BridgeCreator.ts +420 -0
  268. package/build/types/src/rollup/ERC20RollupCreator.ts +561 -0
  269. package/build/types/src/rollup/ERC20RollupEventInbox.ts +218 -0
  270. package/build/types/src/rollup/IBridgeCreator.sol/IBridgeCreator.ts +231 -0
  271. package/build/types/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.ts +303 -0
  272. package/build/types/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.ts +298 -0
  273. package/build/types/src/rollup/IBridgeCreator.sol/index.ts +6 -0
  274. package/build/types/src/rollup/IRollupAdmin.ts +1003 -0
  275. package/build/types/src/rollup/IRollupCore.ts +1183 -0
  276. package/build/types/src/rollup/IRollupCreator.sol/IERC20RollupCreator.ts +247 -0
  277. package/build/types/src/rollup/IRollupCreator.sol/IEthRollupCreator.ts +242 -0
  278. package/build/types/src/rollup/IRollupCreator.sol/IRollupCreator.ts +134 -0
  279. package/build/types/src/rollup/IRollupCreator.sol/index.ts +6 -0
  280. package/build/types/src/rollup/IRollupEventInbox.ts +167 -0
  281. package/build/types/src/rollup/IRollupLogic.sol/IRollupUser.ts +2022 -0
  282. package/build/types/src/rollup/IRollupLogic.sol/IRollupUserAbs.ts +1901 -0
  283. package/build/types/src/rollup/IRollupLogic.sol/IRollupUserERC20.ts +2036 -0
  284. package/build/types/src/rollup/IRollupLogic.sol/index.ts +6 -0
  285. package/build/types/src/rollup/RollupAdminLogic.ts +2593 -0
  286. package/build/types/src/rollup/RollupCore.ts +1406 -0
  287. package/build/types/src/rollup/RollupCreator.ts +556 -0
  288. package/build/types/src/rollup/RollupEventInbox.ts +218 -0
  289. package/build/types/src/rollup/RollupProxy.ts +285 -0
  290. package/build/types/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.ts +2282 -0
  291. package/build/types/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.ts +2417 -0
  292. package/build/types/src/rollup/RollupUserLogic.sol/RollupUserLogic.ts +2403 -0
  293. package/build/types/src/rollup/RollupUserLogic.sol/index.ts +6 -0
  294. package/build/types/src/rollup/ValidatorUtils.ts +561 -0
  295. package/build/types/src/rollup/ValidatorWallet.ts +751 -0
  296. package/build/types/src/rollup/ValidatorWalletCreator.ts +294 -0
  297. package/build/types/src/rollup/index.ts +29 -0
  298. package/build/types/src/test-helpers/BridgeTester.ts +899 -0
  299. package/build/types/src/test-helpers/CryptographyPrimitivesTester.ts +141 -0
  300. package/build/types/src/test-helpers/EthVault.ts +141 -0
  301. package/build/types/src/test-helpers/MessageTester.ts +182 -0
  302. package/build/types/src/test-helpers/OutboxWithoutOptTester.ts +700 -0
  303. package/build/types/src/test-helpers/RollupMock.ts +164 -0
  304. package/build/types/src/test-helpers/ValueArrayTester.ts +81 -0
  305. package/build/types/src/test-helpers/index.ts +10 -0
  306. package/package.json +9 -3
  307. package/src/bridge/AbsBridge.sol +302 -0
  308. package/src/bridge/AbsInbox.sol +335 -0
  309. package/src/bridge/AbsOutbox.sol +295 -0
  310. package/src/bridge/Bridge.sol +15 -244
  311. package/src/bridge/ERC20Bridge.sol +74 -0
  312. package/src/bridge/ERC20Inbox.sol +141 -0
  313. package/src/bridge/ERC20Outbox.sol +27 -0
  314. package/src/bridge/IBridge.sol +1 -16
  315. package/src/bridge/IDelayedMessageProvider.sol +1 -1
  316. package/src/bridge/IERC20Bridge.sol +35 -0
  317. package/src/bridge/IERC20Inbox.sol +75 -0
  318. package/src/bridge/IEthBridge.sol +26 -0
  319. package/src/bridge/IEthInbox.sol +133 -0
  320. package/src/bridge/IInbox.sol +13 -123
  321. package/src/bridge/IOutbox.sol +1 -1
  322. package/src/bridge/IOwnable.sol +1 -1
  323. package/src/bridge/ISequencerInbox.sol +12 -4
  324. package/src/bridge/Inbox.sol +46 -333
  325. package/src/bridge/Messages.sol +1 -1
  326. package/src/bridge/Outbox.sol +8 -265
  327. package/src/bridge/SequencerInbox.sol +29 -8
  328. package/src/challenge/ChallengeLib.sol +1 -1
  329. package/src/challenge/ChallengeManager.sol +1 -1
  330. package/src/challenge/IChallengeManager.sol +1 -1
  331. package/src/challenge/IChallengeResultReceiver.sol +1 -1
  332. package/src/libraries/AddressAliasHelper.sol +1 -1
  333. package/src/libraries/AdminFallbackProxy.sol +1 -1
  334. package/src/libraries/ArbitrumChecker.sol +16 -0
  335. package/src/libraries/Constants.sol +1 -4
  336. package/src/libraries/CryptographyPrimitives.sol +1 -1
  337. package/src/libraries/DelegateCallAware.sol +1 -1
  338. package/src/libraries/DoubleLogicUUPSUpgradeable.sol +1 -1
  339. package/src/libraries/Error.sol +9 -1
  340. package/src/libraries/IGasRefunder.sol +1 -1
  341. package/src/libraries/MerkleLib.sol +1 -1
  342. package/src/libraries/MessageTypes.sol +1 -1
  343. package/src/mocks/BridgeStub.sol +3 -2
  344. package/src/mocks/BridgeUnproxied.sol +1 -1
  345. package/src/mocks/InboxStub.sol +28 -5
  346. package/src/mocks/MockResultReceiver.sol +1 -1
  347. package/src/mocks/ProxyAdminForBinding.sol +1 -1
  348. package/src/mocks/SequencerInboxStub.sol +3 -2
  349. package/src/mocks/Simple.sol +3 -1
  350. package/src/mocks/SimpleProxy.sol +1 -1
  351. package/src/mocks/SingleExecutionChallenge.sol +1 -1
  352. package/src/mocks/TimedOutChallengeManager.sol +1 -1
  353. package/src/node-interface/NodeInterface.sol +1 -1
  354. package/src/node-interface/NodeInterfaceDebug.sol +1 -1
  355. package/src/osp/HashProofHelper.sol +1 -1
  356. package/src/osp/IOneStepProofEntry.sol +1 -1
  357. package/src/osp/IOneStepProver.sol +2 -1
  358. package/src/osp/OneStepProofEntry.sol +1 -1
  359. package/src/osp/OneStepProver0.sol +1 -1
  360. package/src/osp/OneStepProverHostIo.sol +2 -1
  361. package/src/osp/OneStepProverMath.sol +1 -1
  362. package/src/osp/OneStepProverMemory.sol +2 -1
  363. package/src/precompiles/ArbAddressTable.sol +1 -1
  364. package/src/precompiles/ArbAggregator.sol +1 -1
  365. package/src/precompiles/ArbBLS.sol +1 -1
  366. package/src/precompiles/ArbDebug.sol +1 -1
  367. package/src/precompiles/ArbFunctionTable.sol +1 -1
  368. package/src/precompiles/ArbGasInfo.sol +1 -1
  369. package/src/precompiles/ArbInfo.sol +1 -1
  370. package/src/precompiles/ArbOwner.sol +1 -1
  371. package/src/precompiles/ArbOwnerPublic.sol +1 -1
  372. package/src/precompiles/ArbRetryableTx.sol +1 -1
  373. package/src/precompiles/ArbStatistics.sol +1 -1
  374. package/src/precompiles/ArbSys.sol +1 -1
  375. package/src/precompiles/ArbosTest.sol +1 -1
  376. package/src/rollup/AbsBridgeCreator.sol +117 -0
  377. package/src/rollup/AbsRollupCreator.sol +164 -0
  378. package/src/rollup/AbsRollupEventInbox.sol +62 -0
  379. package/src/rollup/BridgeCreator.sol +17 -88
  380. package/src/rollup/Config.sol +43 -0
  381. package/src/rollup/ERC20BridgeCreator.sol +48 -0
  382. package/src/rollup/ERC20RollupCreator.sol +48 -0
  383. package/src/rollup/ERC20RollupEventInbox.sol +26 -0
  384. package/src/rollup/IBridgeCreator.sol +64 -0
  385. package/src/rollup/IRollupAdmin.sol +138 -0
  386. package/src/rollup/IRollupCore.sol +7 -3
  387. package/src/rollup/IRollupCreator.sol +40 -0
  388. package/src/rollup/IRollupEventInbox.sol +1 -1
  389. package/src/rollup/IRollupLogic.sol +4 -132
  390. package/src/rollup/Node.sol +15 -1
  391. package/src/rollup/RollupAdminLogic.sol +6 -8
  392. package/src/rollup/RollupCore.sol +4 -11
  393. package/src/rollup/RollupCreator.sol +22 -97
  394. package/src/rollup/RollupEventInbox.sol +12 -35
  395. package/src/rollup/RollupLib.sol +2 -41
  396. package/src/rollup/RollupProxy.sol +3 -2
  397. package/src/rollup/RollupUserLogic.sol +6 -4
  398. package/src/rollup/ValidatorUtils.sol +2 -1
  399. package/src/rollup/ValidatorWallet.sol +1 -1
  400. package/src/rollup/ValidatorWalletCreator.sol +1 -1
  401. package/src/state/Deserialize.sol +2 -2
  402. package/src/state/GlobalState.sol +1 -1
  403. package/src/state/Instructions.sol +1 -1
  404. package/src/state/Machine.sol +1 -1
  405. package/src/state/MerkleProof.sol +1 -1
  406. package/src/state/Module.sol +3 -3
  407. package/src/state/ModuleMemory.sol +3 -8
  408. package/src/state/ModuleMemoryCompact.sol +17 -0
  409. package/src/state/PcArray.sol +1 -1
  410. package/src/state/StackFrame.sol +1 -1
  411. package/src/state/Value.sol +1 -1
  412. package/src/state/ValueArray.sol +1 -1
  413. package/src/state/ValueStack.sol +1 -1
  414. package/src/test-helpers/BridgeTester.sol +3 -2
  415. package/src/test-helpers/CryptographyPrimitivesTester.sol +1 -1
  416. package/src/test-helpers/EthVault.sol +20 -0
  417. package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
  418. package/src/test-helpers/MessageTester.sol +1 -1
  419. package/src/test-helpers/OutboxWithoutOptTester.sol +1 -1
  420. package/src/test-helpers/RollupMock.sol +1 -1
  421. package/src/test-helpers/ValueArrayTester.sol +1 -1
  422. package/hardhat.config.ts +0 -164
@@ -0,0 +1,938 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ SequencerInboxStub,
8
+ SequencerInboxStubInterface,
9
+ ISequencerInbox,
10
+ } from "../../../src/mocks/SequencerInboxStub";
11
+
12
+ const _abi = [
13
+ {
14
+ inputs: [
15
+ {
16
+ internalType: "contract IBridge",
17
+ name: "bridge_",
18
+ type: "address",
19
+ },
20
+ {
21
+ internalType: "address",
22
+ name: "sequencer_",
23
+ type: "address",
24
+ },
25
+ {
26
+ components: [
27
+ {
28
+ internalType: "uint256",
29
+ name: "delayBlocks",
30
+ type: "uint256",
31
+ },
32
+ {
33
+ internalType: "uint256",
34
+ name: "futureBlocks",
35
+ type: "uint256",
36
+ },
37
+ {
38
+ internalType: "uint256",
39
+ name: "delaySeconds",
40
+ type: "uint256",
41
+ },
42
+ {
43
+ internalType: "uint256",
44
+ name: "futureSeconds",
45
+ type: "uint256",
46
+ },
47
+ ],
48
+ internalType: "struct ISequencerInbox.MaxTimeVariation",
49
+ name: "maxTimeVariation_",
50
+ type: "tuple",
51
+ },
52
+ ],
53
+ stateMutability: "nonpayable",
54
+ type: "constructor",
55
+ },
56
+ {
57
+ inputs: [],
58
+ name: "AlreadyInit",
59
+ type: "error",
60
+ },
61
+ {
62
+ inputs: [
63
+ {
64
+ internalType: "bytes32",
65
+ name: "",
66
+ type: "bytes32",
67
+ },
68
+ ],
69
+ name: "AlreadyValidDASKeyset",
70
+ type: "error",
71
+ },
72
+ {
73
+ inputs: [
74
+ {
75
+ internalType: "uint256",
76
+ name: "stored",
77
+ type: "uint256",
78
+ },
79
+ {
80
+ internalType: "uint256",
81
+ name: "received",
82
+ type: "uint256",
83
+ },
84
+ ],
85
+ name: "BadSequencerNumber",
86
+ type: "error",
87
+ },
88
+ {
89
+ inputs: [],
90
+ name: "DataNotAuthenticated",
91
+ type: "error",
92
+ },
93
+ {
94
+ inputs: [
95
+ {
96
+ internalType: "uint256",
97
+ name: "dataLength",
98
+ type: "uint256",
99
+ },
100
+ {
101
+ internalType: "uint256",
102
+ name: "maxDataLength",
103
+ type: "uint256",
104
+ },
105
+ ],
106
+ name: "DataTooLarge",
107
+ type: "error",
108
+ },
109
+ {
110
+ inputs: [],
111
+ name: "DelayedBackwards",
112
+ type: "error",
113
+ },
114
+ {
115
+ inputs: [],
116
+ name: "DelayedTooFar",
117
+ type: "error",
118
+ },
119
+ {
120
+ inputs: [],
121
+ name: "ForceIncludeBlockTooSoon",
122
+ type: "error",
123
+ },
124
+ {
125
+ inputs: [],
126
+ name: "ForceIncludeTimeTooSoon",
127
+ type: "error",
128
+ },
129
+ {
130
+ inputs: [],
131
+ name: "HadZeroInit",
132
+ type: "error",
133
+ },
134
+ {
135
+ inputs: [],
136
+ name: "IncorrectMessagePreimage",
137
+ type: "error",
138
+ },
139
+ {
140
+ inputs: [
141
+ {
142
+ internalType: "bytes32",
143
+ name: "",
144
+ type: "bytes32",
145
+ },
146
+ ],
147
+ name: "NoSuchKeyset",
148
+ type: "error",
149
+ },
150
+ {
151
+ inputs: [],
152
+ name: "NotBatchPoster",
153
+ type: "error",
154
+ },
155
+ {
156
+ inputs: [],
157
+ name: "NotForked",
158
+ type: "error",
159
+ },
160
+ {
161
+ inputs: [],
162
+ name: "NotOrigin",
163
+ type: "error",
164
+ },
165
+ {
166
+ inputs: [
167
+ {
168
+ internalType: "address",
169
+ name: "sender",
170
+ type: "address",
171
+ },
172
+ {
173
+ internalType: "address",
174
+ name: "owner",
175
+ type: "address",
176
+ },
177
+ ],
178
+ name: "NotOwner",
179
+ type: "error",
180
+ },
181
+ {
182
+ anonymous: false,
183
+ inputs: [
184
+ {
185
+ indexed: true,
186
+ internalType: "uint256",
187
+ name: "messageNum",
188
+ type: "uint256",
189
+ },
190
+ {
191
+ indexed: false,
192
+ internalType: "bytes",
193
+ name: "data",
194
+ type: "bytes",
195
+ },
196
+ ],
197
+ name: "InboxMessageDelivered",
198
+ type: "event",
199
+ },
200
+ {
201
+ anonymous: false,
202
+ inputs: [
203
+ {
204
+ indexed: true,
205
+ internalType: "uint256",
206
+ name: "messageNum",
207
+ type: "uint256",
208
+ },
209
+ ],
210
+ name: "InboxMessageDeliveredFromOrigin",
211
+ type: "event",
212
+ },
213
+ {
214
+ anonymous: false,
215
+ inputs: [
216
+ {
217
+ indexed: true,
218
+ internalType: "bytes32",
219
+ name: "keysetHash",
220
+ type: "bytes32",
221
+ },
222
+ ],
223
+ name: "InvalidateKeyset",
224
+ type: "event",
225
+ },
226
+ {
227
+ anonymous: false,
228
+ inputs: [
229
+ {
230
+ indexed: true,
231
+ internalType: "uint256",
232
+ name: "id",
233
+ type: "uint256",
234
+ },
235
+ ],
236
+ name: "OwnerFunctionCalled",
237
+ type: "event",
238
+ },
239
+ {
240
+ anonymous: false,
241
+ inputs: [
242
+ {
243
+ indexed: true,
244
+ internalType: "uint256",
245
+ name: "batchSequenceNumber",
246
+ type: "uint256",
247
+ },
248
+ {
249
+ indexed: false,
250
+ internalType: "bytes",
251
+ name: "data",
252
+ type: "bytes",
253
+ },
254
+ ],
255
+ name: "SequencerBatchData",
256
+ type: "event",
257
+ },
258
+ {
259
+ anonymous: false,
260
+ inputs: [
261
+ {
262
+ indexed: true,
263
+ internalType: "uint256",
264
+ name: "batchSequenceNumber",
265
+ type: "uint256",
266
+ },
267
+ {
268
+ indexed: true,
269
+ internalType: "bytes32",
270
+ name: "beforeAcc",
271
+ type: "bytes32",
272
+ },
273
+ {
274
+ indexed: true,
275
+ internalType: "bytes32",
276
+ name: "afterAcc",
277
+ type: "bytes32",
278
+ },
279
+ {
280
+ indexed: false,
281
+ internalType: "bytes32",
282
+ name: "delayedAcc",
283
+ type: "bytes32",
284
+ },
285
+ {
286
+ indexed: false,
287
+ internalType: "uint256",
288
+ name: "afterDelayedMessagesRead",
289
+ type: "uint256",
290
+ },
291
+ {
292
+ components: [
293
+ {
294
+ internalType: "uint64",
295
+ name: "minTimestamp",
296
+ type: "uint64",
297
+ },
298
+ {
299
+ internalType: "uint64",
300
+ name: "maxTimestamp",
301
+ type: "uint64",
302
+ },
303
+ {
304
+ internalType: "uint64",
305
+ name: "minBlockNumber",
306
+ type: "uint64",
307
+ },
308
+ {
309
+ internalType: "uint64",
310
+ name: "maxBlockNumber",
311
+ type: "uint64",
312
+ },
313
+ ],
314
+ indexed: false,
315
+ internalType: "struct ISequencerInbox.TimeBounds",
316
+ name: "timeBounds",
317
+ type: "tuple",
318
+ },
319
+ {
320
+ indexed: false,
321
+ internalType: "enum ISequencerInbox.BatchDataLocation",
322
+ name: "dataLocation",
323
+ type: "uint8",
324
+ },
325
+ ],
326
+ name: "SequencerBatchDelivered",
327
+ type: "event",
328
+ },
329
+ {
330
+ anonymous: false,
331
+ inputs: [
332
+ {
333
+ indexed: true,
334
+ internalType: "bytes32",
335
+ name: "keysetHash",
336
+ type: "bytes32",
337
+ },
338
+ {
339
+ indexed: false,
340
+ internalType: "bytes",
341
+ name: "keysetBytes",
342
+ type: "bytes",
343
+ },
344
+ ],
345
+ name: "SetValidKeyset",
346
+ type: "event",
347
+ },
348
+ {
349
+ inputs: [],
350
+ name: "DATA_AUTHENTICATED_FLAG",
351
+ outputs: [
352
+ {
353
+ internalType: "bytes1",
354
+ name: "",
355
+ type: "bytes1",
356
+ },
357
+ ],
358
+ stateMutability: "view",
359
+ type: "function",
360
+ },
361
+ {
362
+ inputs: [],
363
+ name: "HEADER_LENGTH",
364
+ outputs: [
365
+ {
366
+ internalType: "uint256",
367
+ name: "",
368
+ type: "uint256",
369
+ },
370
+ ],
371
+ stateMutability: "view",
372
+ type: "function",
373
+ },
374
+ {
375
+ inputs: [
376
+ {
377
+ internalType: "uint256",
378
+ name: "chainId",
379
+ type: "uint256",
380
+ },
381
+ ],
382
+ name: "addInitMessage",
383
+ outputs: [],
384
+ stateMutability: "nonpayable",
385
+ type: "function",
386
+ },
387
+ {
388
+ inputs: [
389
+ {
390
+ internalType: "uint256",
391
+ name: "sequenceNumber",
392
+ type: "uint256",
393
+ },
394
+ {
395
+ internalType: "bytes",
396
+ name: "data",
397
+ type: "bytes",
398
+ },
399
+ {
400
+ internalType: "uint256",
401
+ name: "afterDelayedMessagesRead",
402
+ type: "uint256",
403
+ },
404
+ {
405
+ internalType: "contract IGasRefunder",
406
+ name: "gasRefunder",
407
+ type: "address",
408
+ },
409
+ {
410
+ internalType: "uint256",
411
+ name: "prevMessageCount",
412
+ type: "uint256",
413
+ },
414
+ {
415
+ internalType: "uint256",
416
+ name: "newMessageCount",
417
+ type: "uint256",
418
+ },
419
+ ],
420
+ name: "addSequencerL2Batch",
421
+ outputs: [],
422
+ stateMutability: "nonpayable",
423
+ type: "function",
424
+ },
425
+ {
426
+ inputs: [
427
+ {
428
+ internalType: "uint256",
429
+ name: "sequenceNumber",
430
+ type: "uint256",
431
+ },
432
+ {
433
+ internalType: "bytes",
434
+ name: "data",
435
+ type: "bytes",
436
+ },
437
+ {
438
+ internalType: "uint256",
439
+ name: "afterDelayedMessagesRead",
440
+ type: "uint256",
441
+ },
442
+ {
443
+ internalType: "contract IGasRefunder",
444
+ name: "gasRefunder",
445
+ type: "address",
446
+ },
447
+ ],
448
+ name: "addSequencerL2BatchFromOrigin",
449
+ outputs: [],
450
+ stateMutability: "nonpayable",
451
+ type: "function",
452
+ },
453
+ {
454
+ inputs: [
455
+ {
456
+ internalType: "uint256",
457
+ name: "sequenceNumber",
458
+ type: "uint256",
459
+ },
460
+ {
461
+ internalType: "bytes",
462
+ name: "data",
463
+ type: "bytes",
464
+ },
465
+ {
466
+ internalType: "uint256",
467
+ name: "afterDelayedMessagesRead",
468
+ type: "uint256",
469
+ },
470
+ {
471
+ internalType: "contract IGasRefunder",
472
+ name: "gasRefunder",
473
+ type: "address",
474
+ },
475
+ {
476
+ internalType: "uint256",
477
+ name: "prevMessageCount",
478
+ type: "uint256",
479
+ },
480
+ {
481
+ internalType: "uint256",
482
+ name: "newMessageCount",
483
+ type: "uint256",
484
+ },
485
+ ],
486
+ name: "addSequencerL2BatchFromOrigin",
487
+ outputs: [],
488
+ stateMutability: "nonpayable",
489
+ type: "function",
490
+ },
491
+ {
492
+ inputs: [],
493
+ name: "batchCount",
494
+ outputs: [
495
+ {
496
+ internalType: "uint256",
497
+ name: "",
498
+ type: "uint256",
499
+ },
500
+ ],
501
+ stateMutability: "view",
502
+ type: "function",
503
+ },
504
+ {
505
+ inputs: [],
506
+ name: "bridge",
507
+ outputs: [
508
+ {
509
+ internalType: "contract IBridge",
510
+ name: "",
511
+ type: "address",
512
+ },
513
+ ],
514
+ stateMutability: "view",
515
+ type: "function",
516
+ },
517
+ {
518
+ inputs: [
519
+ {
520
+ internalType: "bytes32",
521
+ name: "",
522
+ type: "bytes32",
523
+ },
524
+ ],
525
+ name: "dasKeySetInfo",
526
+ outputs: [
527
+ {
528
+ internalType: "bool",
529
+ name: "isValidKeyset",
530
+ type: "bool",
531
+ },
532
+ {
533
+ internalType: "uint64",
534
+ name: "creationBlock",
535
+ type: "uint64",
536
+ },
537
+ ],
538
+ stateMutability: "view",
539
+ type: "function",
540
+ },
541
+ {
542
+ inputs: [
543
+ {
544
+ internalType: "uint256",
545
+ name: "_totalDelayedMessagesRead",
546
+ type: "uint256",
547
+ },
548
+ {
549
+ internalType: "uint8",
550
+ name: "kind",
551
+ type: "uint8",
552
+ },
553
+ {
554
+ internalType: "uint64[2]",
555
+ name: "l1BlockAndTime",
556
+ type: "uint64[2]",
557
+ },
558
+ {
559
+ internalType: "uint256",
560
+ name: "baseFeeL1",
561
+ type: "uint256",
562
+ },
563
+ {
564
+ internalType: "address",
565
+ name: "sender",
566
+ type: "address",
567
+ },
568
+ {
569
+ internalType: "bytes32",
570
+ name: "messageDataHash",
571
+ type: "bytes32",
572
+ },
573
+ ],
574
+ name: "forceInclusion",
575
+ outputs: [],
576
+ stateMutability: "nonpayable",
577
+ type: "function",
578
+ },
579
+ {
580
+ inputs: [
581
+ {
582
+ internalType: "bytes32",
583
+ name: "ksHash",
584
+ type: "bytes32",
585
+ },
586
+ ],
587
+ name: "getKeysetCreationBlock",
588
+ outputs: [
589
+ {
590
+ internalType: "uint256",
591
+ name: "",
592
+ type: "uint256",
593
+ },
594
+ ],
595
+ stateMutability: "view",
596
+ type: "function",
597
+ },
598
+ {
599
+ inputs: [
600
+ {
601
+ internalType: "uint256",
602
+ name: "index",
603
+ type: "uint256",
604
+ },
605
+ ],
606
+ name: "inboxAccs",
607
+ outputs: [
608
+ {
609
+ internalType: "bytes32",
610
+ name: "",
611
+ type: "bytes32",
612
+ },
613
+ ],
614
+ stateMutability: "view",
615
+ type: "function",
616
+ },
617
+ {
618
+ inputs: [
619
+ {
620
+ internalType: "contract IBridge",
621
+ name: "bridge_",
622
+ type: "address",
623
+ },
624
+ {
625
+ components: [
626
+ {
627
+ internalType: "uint256",
628
+ name: "delayBlocks",
629
+ type: "uint256",
630
+ },
631
+ {
632
+ internalType: "uint256",
633
+ name: "futureBlocks",
634
+ type: "uint256",
635
+ },
636
+ {
637
+ internalType: "uint256",
638
+ name: "delaySeconds",
639
+ type: "uint256",
640
+ },
641
+ {
642
+ internalType: "uint256",
643
+ name: "futureSeconds",
644
+ type: "uint256",
645
+ },
646
+ ],
647
+ internalType: "struct ISequencerInbox.MaxTimeVariation",
648
+ name: "maxTimeVariation_",
649
+ type: "tuple",
650
+ },
651
+ ],
652
+ name: "initialize",
653
+ outputs: [],
654
+ stateMutability: "nonpayable",
655
+ type: "function",
656
+ },
657
+ {
658
+ inputs: [
659
+ {
660
+ internalType: "bytes32",
661
+ name: "ksHash",
662
+ type: "bytes32",
663
+ },
664
+ ],
665
+ name: "invalidateKeysetHash",
666
+ outputs: [],
667
+ stateMutability: "nonpayable",
668
+ type: "function",
669
+ },
670
+ {
671
+ inputs: [
672
+ {
673
+ internalType: "address",
674
+ name: "",
675
+ type: "address",
676
+ },
677
+ ],
678
+ name: "isBatchPoster",
679
+ outputs: [
680
+ {
681
+ internalType: "bool",
682
+ name: "",
683
+ type: "bool",
684
+ },
685
+ ],
686
+ stateMutability: "view",
687
+ type: "function",
688
+ },
689
+ {
690
+ inputs: [
691
+ {
692
+ internalType: "address",
693
+ name: "",
694
+ type: "address",
695
+ },
696
+ ],
697
+ name: "isSequencer",
698
+ outputs: [
699
+ {
700
+ internalType: "bool",
701
+ name: "",
702
+ type: "bool",
703
+ },
704
+ ],
705
+ stateMutability: "view",
706
+ type: "function",
707
+ },
708
+ {
709
+ inputs: [
710
+ {
711
+ internalType: "bytes32",
712
+ name: "ksHash",
713
+ type: "bytes32",
714
+ },
715
+ ],
716
+ name: "isValidKeysetHash",
717
+ outputs: [
718
+ {
719
+ internalType: "bool",
720
+ name: "",
721
+ type: "bool",
722
+ },
723
+ ],
724
+ stateMutability: "view",
725
+ type: "function",
726
+ },
727
+ {
728
+ inputs: [],
729
+ name: "maxTimeVariation",
730
+ outputs: [
731
+ {
732
+ internalType: "uint256",
733
+ name: "delayBlocks",
734
+ type: "uint256",
735
+ },
736
+ {
737
+ internalType: "uint256",
738
+ name: "futureBlocks",
739
+ type: "uint256",
740
+ },
741
+ {
742
+ internalType: "uint256",
743
+ name: "delaySeconds",
744
+ type: "uint256",
745
+ },
746
+ {
747
+ internalType: "uint256",
748
+ name: "futureSeconds",
749
+ type: "uint256",
750
+ },
751
+ ],
752
+ stateMutability: "view",
753
+ type: "function",
754
+ },
755
+ {
756
+ inputs: [],
757
+ name: "removeDelayAfterFork",
758
+ outputs: [],
759
+ stateMutability: "nonpayable",
760
+ type: "function",
761
+ },
762
+ {
763
+ inputs: [],
764
+ name: "rollup",
765
+ outputs: [
766
+ {
767
+ internalType: "contract IOwnable",
768
+ name: "",
769
+ type: "address",
770
+ },
771
+ ],
772
+ stateMutability: "view",
773
+ type: "function",
774
+ },
775
+ {
776
+ inputs: [
777
+ {
778
+ internalType: "address",
779
+ name: "addr",
780
+ type: "address",
781
+ },
782
+ {
783
+ internalType: "bool",
784
+ name: "isBatchPoster_",
785
+ type: "bool",
786
+ },
787
+ ],
788
+ name: "setIsBatchPoster",
789
+ outputs: [],
790
+ stateMutability: "nonpayable",
791
+ type: "function",
792
+ },
793
+ {
794
+ inputs: [
795
+ {
796
+ internalType: "address",
797
+ name: "addr",
798
+ type: "address",
799
+ },
800
+ {
801
+ internalType: "bool",
802
+ name: "isSequencer_",
803
+ type: "bool",
804
+ },
805
+ ],
806
+ name: "setIsSequencer",
807
+ outputs: [],
808
+ stateMutability: "nonpayable",
809
+ type: "function",
810
+ },
811
+ {
812
+ inputs: [
813
+ {
814
+ components: [
815
+ {
816
+ internalType: "uint256",
817
+ name: "delayBlocks",
818
+ type: "uint256",
819
+ },
820
+ {
821
+ internalType: "uint256",
822
+ name: "futureBlocks",
823
+ type: "uint256",
824
+ },
825
+ {
826
+ internalType: "uint256",
827
+ name: "delaySeconds",
828
+ type: "uint256",
829
+ },
830
+ {
831
+ internalType: "uint256",
832
+ name: "futureSeconds",
833
+ type: "uint256",
834
+ },
835
+ ],
836
+ internalType: "struct ISequencerInbox.MaxTimeVariation",
837
+ name: "maxTimeVariation_",
838
+ type: "tuple",
839
+ },
840
+ ],
841
+ name: "setMaxTimeVariation",
842
+ outputs: [],
843
+ stateMutability: "nonpayable",
844
+ type: "function",
845
+ },
846
+ {
847
+ inputs: [
848
+ {
849
+ internalType: "bytes",
850
+ name: "keysetBytes",
851
+ type: "bytes",
852
+ },
853
+ ],
854
+ name: "setValidKeyset",
855
+ outputs: [],
856
+ stateMutability: "nonpayable",
857
+ type: "function",
858
+ },
859
+ {
860
+ inputs: [],
861
+ name: "totalDelayedMessagesRead",
862
+ outputs: [
863
+ {
864
+ internalType: "uint256",
865
+ name: "",
866
+ type: "uint256",
867
+ },
868
+ ],
869
+ stateMutability: "view",
870
+ type: "function",
871
+ },
872
+ ];
873
+
874
+ const _bytecode =
875
+ "0x60e0604052306080524660a05262000022620000c1602090811b6200195b17901c565b151560c0523480156200003457600080fd5b5060405162002ad838038062002ad8833981016040819052620000579162000177565b600180546001600160a01b039485166001600160a01b03199182161782556002805490911633179055815160045560208083015160055560408084015160065560609093015160075592909316600090815260039092529020805460ff1916909117905562000268565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b1790529051600091829182916064916200010191906200022a565b600060405180830381855afa9150503d80600081146200013e576040519150601f19603f3d011682016040523d82523d6000602084013e62000143565b606091505b509150915081801562000157575080516020145b9250505090565b6001600160a01b03811681146200017457600080fd5b50565b600080600083850360c08112156200018e57600080fd5b84516200019b816200015e565b6020860151909450620001ae816200015e565b92506080603f1982011215620001c357600080fd5b50604051608081016001600160401b0381118282101715620001f557634e487b7160e01b600052604160045260246000fd5b806040525060408501518152606085015160208201526080850151604082015260a08501516060820152809150509250925092565b6000825160005b818110156200024d576020818601810151858301520162000231565b818111156200025d576000828501525b509190910192915050565b60805160a05160c051612840620002986000396000611b9b01526000610fe40152600061048301526128406000f3fe608060405234801561001057600080fd5b50600436106101635760003560e01c80637fa3a40e116100ce578063d1ce8da811610087578063d1ce8da81461033f578063d9dd67ab14610352578063e0bc972914610365578063e5a358c814610378578063e78cea921461039c578063ebea461d146103af578063f1981578146103e557600080fd5b80637fa3a40e146102ca57806384420860146102d35780638f111f3c146102e657806396cc5c78146102f9578063b31761f814610301578063cb23bcb51461031457600080fd5b80636633ae85116101205780636633ae85146101f95780636d46e9871461020c5780636e7df3e71461022f5780636f12b0c914610242578063715ea34b1461025557806371c3e6fe146102a757600080fd5b806306f13056146101685780631637be48146101835780631f7a92b2146101b65780631f956632146101cb578063258f0495146101de57806327957a49146101f1575b600080fd5b6101706103f8565b6040519081526020015b60405180910390f35b6101a661019136600461206b565b60009081526008602052604090205460ff1690565b604051901515815260200161017a565b6101c96101c436600461209c565b610478565b005b6101c96101d93660046120eb565b610630565b6101706101ec36600461206b565b610736565b610170602881565b6101c961020736600461206b565b61079f565b6101a661021a366004612124565b60096020526000908152604090205460ff1681565b6101c961023d3660046120eb565b61098a565b6101c9610250366004612190565b610a90565b61028861026336600461206b565b60086020526000908152604090205460ff81169061010090046001600160401b031682565b6040805192151583526001600160401b0390911660208301520161017a565b6101a66102b5366004612124565b60036020526000908152604090205460ff1681565b61017060005481565b6101c96102e136600461206b565b610c7f565b6101c96102f43660046121fa565b610dd2565b6101c9610fe1565b6101c961030f366004612276565b611058565b600254610327906001600160a01b031681565b6040516001600160a01b03909116815260200161017a565b6101c961034d3660046122e9565b611158565b61017061036036600461206b565b6113a0565b6101c96103733660046121fa565b611423565b610383600160fe1b81565b6040516001600160f81b0319909116815260200161017a565b600154610327906001600160a01b031681565b6004546005546006546007546103c59392919084565b60408051948552602085019390935291830152606082015260800161017a565b6101c96103f336600461232a565b611578565b600154604080516221048360e21b815290516000926001600160a01b0316916284120c916004808301926020929190829003018186803b15801561043b57600080fd5b505afa15801561044f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610473919061239a565b905090565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561050b5760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b60648201526084015b60405180910390fd5b6001546001600160a01b03161561053557604051633bcd329760e21b815260040160405180910390fd5b6001600160a01b03821661055c57604051631ad0f74360e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0384169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b1580156105b057600080fd5b505afa1580156105c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e891906123b3565b600280546001600160a01b0319166001600160a01b03929092169190911790558035600490815560208201356005556040820135600655606082013560075581905b50505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561067e57600080fd5b505afa158015610692573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b691906123b3565b6001600160a01b0316336001600160a01b0316146106f857600254604051631194af8760e11b81526105029133916001600160a01b03909116906004016123d0565b6001600160a01b038216600090815260096020526040808220805460ff1916841515179055516004916000805160206127eb83398151915291a25050565b600081815260086020908152604080832081518083019092525460ff81161515825261010090046001600160401b03169181018290529061078c5760405162f20c5d60e01b815260048101849052602401610502565b602001516001600160401b031692915050565b6000816040516020016107b491815260200190565b60408051808303601f190181529082905260015481516020830120638db5993b60e01b8452600b6004850152600060248501819052604485019190915291935090916001600160a01b0390911690638db5993b90606401602060405180830381600087803b15801561082557600080fd5b505af1158015610839573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085d919061239a565b905080156108a45760405162461bcd60e51b81526020600482015260146024820152731053149150511657d111531056515117d253925560621b6044820152606401610502565b807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b836040516108d49190612416565b60405180910390a26000806108e960016119f3565b915091506000806000806109038660016000806001611a1f565b93509350935093508360001461094e5760405162461bcd60e51b815260206004820152601060248201526f1053149150511657d4d15457d253925560821b6044820152606401610502565b8083856000805160206127cb833981519152856000548a60026040516109779493929190612449565b60405180910390a4505050505050505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156109d857600080fd5b505afa1580156109ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1091906123b3565b6001600160a01b0316336001600160a01b031614610a5257600254604051631194af8760e11b81526105029133916001600160a01b03909116906004016123d0565b6001600160a01b038216600090815260036020526040808220805460ff1916841515179055516001916000805160206127eb83398151915291a25050565b8060005a9050333214610ab65760405163feb3d07160e01b815260040160405180910390fd5b3360009081526003602052604090205460ff16610ae657604051632dd9fc9760e01b815260040160405180910390fd5b600080610af4888888611e1f565b90925090506000808080610b0b868b8d8480611a1f565b93509350935093508c8414610b3d5760405163ac7411c960e01b815260048101859052602481018e9052604401610502565b80838e6000805160206127cb833981519152856000548a6000604051610b669493929190612449565b60405180910390a4505050506001600160a01b038416159150610c769050573660006020610b9583601f6124d3565b610b9f91906124eb565b9050610200610baf6002836125f1565b610bb991906124eb565b610bc4826006612600565b610bce91906124d3565b610bd890846124d3565b9250333214610be657600091505b836001600160a01b031663e3db8a49335a610c01908761261f565b856040518463ffffffff1660e01b8152600401610c2093929190612636565b602060405180830381600087803b158015610c3a57600080fd5b505af1158015610c4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c729190612657565b5050505b50505050505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b158015610ccd57600080fd5b505afa158015610ce1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0591906123b3565b6001600160a01b0316336001600160a01b031614610d4757600254604051631194af8760e11b81526105029133916001600160a01b03909116906004016123d0565b60008181526008602052604090205460ff16610d785760405162f20c5d60e01b815260048101829052602401610502565b600081815260086020526040808220805460ff191690555182917f5cb4218b272fd214168ac43e90fb4d05d6c36f0b17ffb4c2dd07c234d744eb2a91a26040516003906000805160206127eb83398151915290600090a250565b8260005a9050333214610df85760405163feb3d07160e01b815260040160405180910390fd5b3360009081526003602052604090205460ff16610e2857604051632dd9fc9760e01b815260040160405180910390fd5b600080610e368a8a8a611e1f565b90925090508a81838b8b8a8a6000808080610e5489888a8989611a1f565b93509350935093508a8414158015610e6e57506000198b14155b15610e965760405163ac7411c960e01b815260048101859052602481018c9052604401610502565b8083856000805160206127cb833981519152856000548f6000604051610ebf9493929190612449565b60405180910390a4505050506001600160a01b038b16159850610fd6975050505050505050573660006020610ef583601f6124d3565b610eff91906124eb565b9050610200610f0f6002836125f1565b610f1991906124eb565b610f24826006612600565b610f2e91906124d3565b610f3890846124d3565b9250333214610f4657600091505b836001600160a01b031663e3db8a49335a610f61908761261f565b856040518463ffffffff1660e01b8152600401610f8093929190612636565b602060405180830381600087803b158015610f9a57600080fd5b505af1158015610fae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd29190612657565b5050505b505050505050505050565b467f0000000000000000000000000000000000000000000000000000000000000000141561102257604051635180dd8360e11b815260040160405180910390fd5b60408051608081018252600180825260208201819052918101829052606001819052600481905560058190556006819055600755565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de91906123b3565b6001600160a01b0316336001600160a01b03161461112057600254604051631194af8760e11b81526105029133916001600160a01b03909116906004016123d0565b805160045560208101516005556040808201516006556060820151600755516000906000805160206127eb833981519152908290a250565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111a657600080fd5b505afa1580156111ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111de91906123b3565b6001600160a01b0316336001600160a01b03161461122057600254604051631194af8760e11b81526105029133916001600160a01b03909116906004016123d0565b60008282604051611232929190612674565b604051908190038120607f60f91b6020830152602182015260410160408051601f1981840301815291905280516020909101209050600160ff1b81186201000083106112b65760405162461bcd60e51b81526020600482015260136024820152726b657973657420697320746f6f206c6172676560681b6044820152606401610502565b60008181526008602052604090205460ff16156112e957604051637d17eeed60e11b815260048101829052602401610502565b60408051808201825260018152436001600160401b0390811660208084019182526000868152600890915284902092518354915168ffffffffffffffffff1990921690151568ffffffffffffffff0019161761010091909216021790555181907fabca9b7986bc22ad0160eb0cb88ae75411eacfba4052af0b457a9335ef655722906113789087908790612684565b60405180910390a26040516002906000805160206127eb83398151915290600090a250505050565b6001546040516316bf557960e01b8152600481018390526000916001600160a01b0316906316bf55799060240160206040518083038186803b1580156113e557600080fd5b505afa1580156113f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061141d919061239a565b92915050565b8260005a3360009081526003602052604090205490915060ff1615801561145557506002546001600160a01b03163314155b1561147357604051632dd9fc9760e01b815260040160405180910390fd5b6000806114818a8a8a611e1f565b909250905060008b82848b8a8a86808061149e8787838888611a1f565b929c5090945092509050888a148015906114ba57506000198914155b156114e25760405163ac7411c960e01b8152600481018b9052602481018a9052604401610502565b80838b6000805160206127cb833981519152856000548d600160405161150b9493929190612449565b60405180910390a4505050505050505050807ffe325ca1efe4c5c1062c981c3ee74b781debe4ea9440306a96d2a55759c66c208c8c60405161154e929190612684565b60405180910390a25050506001600160a01b03821615610fd6573660006020610ef583601f6124d3565b600054861161159a57604051633eb9f37d60e11b815260040160405180910390fd5b600061164a86846115ae60208901896126c9565b6115be60408a0160208b016126c9565b6115c960018d61261f565b6040805160f89690961b6001600160f81b03191660208088019190915260609590951b6001600160601b031916602187015260c093841b6001600160c01b031990811660358801529290931b909116603d85015260458401526065830188905260858084018790528151808503909101815260a59093019052815191012090565b600454909150439061165f60208801886126c9565b6001600160401b031661167291906124d3565b106116905760405163ad3515d960e01b815260040160405180910390fd5b60065442906116a560408801602089016126c9565b6001600160401b03166116b891906124d3565b106116d65760405163c76d17e560e01b815260040160405180910390fd5b6000600188111561176e576001546001600160a01b031663d5719dc26116fd60028b61261f565b6040518263ffffffff1660e01b815260040161171b91815260200190565b60206040518083038186803b15801561173357600080fd5b505afa158015611747573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061176b919061239a565b90505b60408051602080820184905281830185905282518083038401815260609092019092528051910120600180546001600160a01b03169063d5719dc2906117b4908c61261f565b6040518263ffffffff1660e01b81526004016117d291815260200190565b60206040518083038186803b1580156117ea57600080fd5b505afa1580156117fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611822919061239a565b14611840576040516313947fd760e01b815260040160405180910390fd5b60008061184c8a6119f3565b9150915060008a90506000600160009054906101000a90046001600160a01b03166001600160a01b0316635fca4a166040518163ffffffff1660e01b815260040160206040518083038186803b1580156118a557600080fd5b505afa1580156118b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118dd919061239a565b9050600080548d836118ef91906124d3565b6118f9919061261f565b905060008060008061190f898860008989611a1f565b93509350935093508083856000805160206127cb833981519152856000548d60026040516119409493929190612449565b60405180910390a45050505050505050505050505050505050565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b17905290516000918291829160649161199991906126f2565b600060405180830381855afa9150503d80600081146119d4576040519150601f19603f3d011682016040523d82523d6000602084013e6119d9565b606091505b50915091508180156119ec575080516020145b9250505090565b60006119fd612044565b600080611a0985611f92565b8151602090920191909120969095509350505050565b600080600080600054881015611a4857604051633eb9f37d60e11b815260040160405180910390fd5b600160009054906101000a90046001600160a01b03166001600160a01b031663eca067ad6040518163ffffffff1660e01b815260040160206040518083038186803b158015611a9657600080fd5b505afa158015611aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ace919061239a565b881115611aee5760405163925f8bd360e01b815260040160405180910390fd5b60015460405163432cc52b60e11b8152600481018b9052602481018a905260448101889052606481018790526001600160a01b03909116906386598a5690608401608060405180830381600087803b158015611b4957600080fd5b505af1158015611b5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b81919061270e565b60008c9055929650909450925090508615611e13573360607f000000000000000000000000000000000000000000000000000000000000000015611cee576000606c6001600160a01b031663c6f7de0e6040518163ffffffff1660e01b815260040160206040518083038186803b158015611bfb57600080fd5b505afa158015611c0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c33919061239a565b90506000611c4148836124eb565b90506001600160401b03811115611c8e5760405162461bcd60e51b8152602060048201526011602482015270130c57d1d054d7d393d517d55253950d8d607a1b6044820152606401610502565b60408051426020820152606086901b6001600160601b03191681830152605481018f9052607481018a905248609482015260c09290921b6001600160c01b03191660b48301528051609c81840301815260bc90920190529150611d379050565b604080514260208201526001600160601b0319606085901b1691810191909152605481018c90526074810187905248609482015260b40160405160208183030381529060405290505b60015481516020830120604051637a88b10760e01b81526000926001600160a01b031691637a88b10791611d839187916004016001600160a01b03929092168252602082015260400190565b602060405180830381600087803b158015611d9d57600080fd5b505af1158015611db1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dd5919061239a565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b83604051611e079190612416565b60405180910390a25050505b95509550955095915050565b6000611e29612044565b84846000611e388260286124d3565b90506201cccc811115611e6a57604051634634691b60e01b8152600481018290526201cccc6024820152604401610502565b8115801590611ea25750600160fe1b808484600081611e8b57611e8b6126b3565b9050013560f81c60f81b166001600160f81b031916145b15611ec057604051631f97007f60e01b815260040160405180910390fd5b60218210801590611eee575082826000818110611edf57611edf6126b3565b90910135600160ff1b16151590505b15611f42576000611f03602160018587612744565b611f0c9161276e565b60008181526008602052604090205490915060ff16611f405760405162f20c5d60e01b815260048101829052602401610502565b505b600080611f4e88611f92565b915091506000828b8b604051602001611f699392919061278c565b60408051808303601f1901815291905280516020909101209b919a509098505050505050505050565b6060611f9c612044565b6000611fa6612039565b9050600081600001518260200151836040015184606001518860405160200161200e95949392919060c095861b6001600160c01b0319908116825294861b8516600882015292851b8416601084015290841b8316601883015290921b16602082015260280190565b60405160208183030381529060405290506028815114612030576120306127b4565b94909350915050565b612041612044565b90565b60408051608081018252600080825260208201819052918101829052606081019190915290565b60006020828403121561207d57600080fd5b5035919050565b6001600160a01b038116811461209957600080fd5b50565b60008082840360a08112156120b057600080fd5b83356120bb81612084565b92506080601f19820112156120cf57600080fd5b506020830190509250929050565b801515811461209957600080fd5b600080604083850312156120fe57600080fd5b823561210981612084565b91506020830135612119816120dd565b809150509250929050565b60006020828403121561213657600080fd5b813561214181612084565b9392505050565b60008083601f84011261215a57600080fd5b5081356001600160401b0381111561217157600080fd5b60208301915083602082850101111561218957600080fd5b9250929050565b6000806000806000608086880312156121a857600080fd5b8535945060208601356001600160401b038111156121c557600080fd5b6121d188828901612148565b9095509350506040860135915060608601356121ec81612084565b809150509295509295909350565b600080600080600080600060c0888a03121561221557600080fd5b8735965060208801356001600160401b0381111561223257600080fd5b61223e8a828b01612148565b90975095505060408801359350606088013561225981612084565b969995985093969295946080840135945060a09093013592915050565b60006080828403121561228857600080fd5b604051608081018181106001600160401b03821117156122b857634e487b7160e01b600052604160045260246000fd5b8060405250823581526020830135602082015260408301356040820152606083013560608201528091505092915050565b600080602083850312156122fc57600080fd5b82356001600160401b0381111561231257600080fd5b61231e85828601612148565b90969095509350505050565b60008060008060008060e0878903121561234357600080fd5b86359550602087013560ff8116811461235b57600080fd5b9450608087018881111561236e57600080fd5b60408801945035925060a087013561238581612084565b8092505060c087013590509295509295509295565b6000602082840312156123ac57600080fd5b5051919050565b6000602082840312156123c557600080fd5b815161214181612084565b6001600160a01b0392831681529116602082015260400190565b60005b838110156124055781810151838201526020016123ed565b8381111561062a5750506000910152565b60208152600082518060208401526124358160408501602087016123ea565b601f01601f19169190910160400192915050565b600060e0820190508582528460208301526001600160401b038085511660408401528060208601511660608401528060408601511660808401528060608601511660a084015250600383106124ae57634e487b7160e01b600052602160045260246000fd5b8260c083015295945050505050565b634e487b7160e01b600052601160045260246000fd5b600082198211156124e6576124e66124bd565b500190565b60008261250857634e487b7160e01b600052601260045260246000fd5b500490565b600181815b8085111561254857816000190482111561252e5761252e6124bd565b8085161561253b57918102915b93841c9390800290612512565b509250929050565b60008261255f5750600161141d565b8161256c5750600061141d565b8160018114612582576002811461258c576125a8565b600191505061141d565b60ff84111561259d5761259d6124bd565b50506001821b61141d565b5060208310610133831016604e8410600b84101617156125cb575081810a61141d565b6125d5838361250d565b80600019048211156125e9576125e96124bd565b029392505050565b600061214160ff841683612550565b600081600019048311821515161561261a5761261a6124bd565b500290565b600082821015612631576126316124bd565b500390565b6001600160a01b039390931683526020830191909152604082015260600190565b60006020828403121561266957600080fd5b8151612141816120dd565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156126db57600080fd5b81356001600160401b038116811461214157600080fd5b600082516127048184602087016123ea565b9190910192915050565b6000806000806080858703121561272457600080fd5b505082516020840151604085015160609095015191969095509092509050565b6000808585111561275457600080fd5b8386111561276157600080fd5b5050820193919092039150565b8035602083101561141d57600019602084900360031b1b1692915050565b6000845161279e8184602089016123ea565b8201838582376000930192835250909392505050565b634e487b7160e01b600052600160045260246000fdfe7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7ea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456ea2646970667358221220c438dfb0038c22d87127218fa19a7fb735960fa7b3d2bfacda5346eb7207b05464736f6c63430008090033";
876
+
877
+ type SequencerInboxStubConstructorParams =
878
+ | [signer?: Signer]
879
+ | ConstructorParameters<typeof ContractFactory>;
880
+
881
+ const isSuperArgs = (
882
+ xs: SequencerInboxStubConstructorParams
883
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
884
+
885
+ export class SequencerInboxStub__factory extends ContractFactory {
886
+ constructor(...args: SequencerInboxStubConstructorParams) {
887
+ if (isSuperArgs(args)) {
888
+ super(...args);
889
+ } else {
890
+ super(_abi, _bytecode, args[0]);
891
+ }
892
+ }
893
+
894
+ override deploy(
895
+ bridge_: string,
896
+ sequencer_: string,
897
+ maxTimeVariation_: ISequencerInbox.MaxTimeVariationStruct,
898
+ overrides?: Overrides & { from?: string | Promise<string> }
899
+ ): Promise<SequencerInboxStub> {
900
+ return super.deploy(
901
+ bridge_,
902
+ sequencer_,
903
+ maxTimeVariation_,
904
+ overrides || {}
905
+ ) as Promise<SequencerInboxStub>;
906
+ }
907
+ override getDeployTransaction(
908
+ bridge_: string,
909
+ sequencer_: string,
910
+ maxTimeVariation_: ISequencerInbox.MaxTimeVariationStruct,
911
+ overrides?: Overrides & { from?: string | Promise<string> }
912
+ ): TransactionRequest {
913
+ return super.getDeployTransaction(
914
+ bridge_,
915
+ sequencer_,
916
+ maxTimeVariation_,
917
+ overrides || {}
918
+ );
919
+ }
920
+ override attach(address: string): SequencerInboxStub {
921
+ return super.attach(address) as SequencerInboxStub;
922
+ }
923
+ override connect(signer: Signer): SequencerInboxStub__factory {
924
+ return super.connect(signer) as SequencerInboxStub__factory;
925
+ }
926
+
927
+ static readonly bytecode = _bytecode;
928
+ static readonly abi = _abi;
929
+ static createInterface(): SequencerInboxStubInterface {
930
+ return new utils.Interface(_abi) as SequencerInboxStubInterface;
931
+ }
932
+ static connect(
933
+ address: string,
934
+ signerOrProvider: Signer | Provider
935
+ ): SequencerInboxStub {
936
+ return new Contract(address, _abi, signerOrProvider) as SequencerInboxStub;
937
+ }
938
+ }