@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,999 @@
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 { Inbox, InboxInterface } from "../../../src/bridge/Inbox";
7
+
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "uint256",
13
+ name: "dataLength",
14
+ type: "uint256",
15
+ },
16
+ {
17
+ internalType: "uint256",
18
+ name: "maxDataLength",
19
+ type: "uint256",
20
+ },
21
+ ],
22
+ name: "DataTooLarge",
23
+ type: "error",
24
+ },
25
+ {
26
+ inputs: [],
27
+ name: "GasLimitTooLarge",
28
+ type: "error",
29
+ },
30
+ {
31
+ inputs: [
32
+ {
33
+ internalType: "uint256",
34
+ name: "expected",
35
+ type: "uint256",
36
+ },
37
+ {
38
+ internalType: "uint256",
39
+ name: "actual",
40
+ type: "uint256",
41
+ },
42
+ ],
43
+ name: "InsufficientSubmissionCost",
44
+ type: "error",
45
+ },
46
+ {
47
+ inputs: [
48
+ {
49
+ internalType: "uint256",
50
+ name: "expected",
51
+ type: "uint256",
52
+ },
53
+ {
54
+ internalType: "uint256",
55
+ name: "actual",
56
+ type: "uint256",
57
+ },
58
+ ],
59
+ name: "InsufficientValue",
60
+ type: "error",
61
+ },
62
+ {
63
+ inputs: [],
64
+ name: "L1Forked",
65
+ type: "error",
66
+ },
67
+ {
68
+ inputs: [
69
+ {
70
+ internalType: "address",
71
+ name: "origin",
72
+ type: "address",
73
+ },
74
+ ],
75
+ name: "NotAllowedOrigin",
76
+ type: "error",
77
+ },
78
+ {
79
+ inputs: [],
80
+ name: "NotForked",
81
+ type: "error",
82
+ },
83
+ {
84
+ inputs: [],
85
+ name: "NotOrigin",
86
+ type: "error",
87
+ },
88
+ {
89
+ inputs: [
90
+ {
91
+ internalType: "address",
92
+ name: "sender",
93
+ type: "address",
94
+ },
95
+ {
96
+ internalType: "address",
97
+ name: "owner",
98
+ type: "address",
99
+ },
100
+ ],
101
+ name: "NotOwner",
102
+ type: "error",
103
+ },
104
+ {
105
+ inputs: [
106
+ {
107
+ internalType: "address",
108
+ name: "sender",
109
+ type: "address",
110
+ },
111
+ {
112
+ internalType: "address",
113
+ name: "rollup",
114
+ type: "address",
115
+ },
116
+ {
117
+ internalType: "address",
118
+ name: "owner",
119
+ type: "address",
120
+ },
121
+ ],
122
+ name: "NotRollupOrOwner",
123
+ type: "error",
124
+ },
125
+ {
126
+ inputs: [
127
+ {
128
+ internalType: "address",
129
+ name: "from",
130
+ type: "address",
131
+ },
132
+ {
133
+ internalType: "address",
134
+ name: "to",
135
+ type: "address",
136
+ },
137
+ {
138
+ internalType: "uint256",
139
+ name: "l2CallValue",
140
+ type: "uint256",
141
+ },
142
+ {
143
+ internalType: "uint256",
144
+ name: "deposit",
145
+ type: "uint256",
146
+ },
147
+ {
148
+ internalType: "uint256",
149
+ name: "maxSubmissionCost",
150
+ type: "uint256",
151
+ },
152
+ {
153
+ internalType: "address",
154
+ name: "excessFeeRefundAddress",
155
+ type: "address",
156
+ },
157
+ {
158
+ internalType: "address",
159
+ name: "callValueRefundAddress",
160
+ type: "address",
161
+ },
162
+ {
163
+ internalType: "uint256",
164
+ name: "gasLimit",
165
+ type: "uint256",
166
+ },
167
+ {
168
+ internalType: "uint256",
169
+ name: "maxFeePerGas",
170
+ type: "uint256",
171
+ },
172
+ {
173
+ internalType: "bytes",
174
+ name: "data",
175
+ type: "bytes",
176
+ },
177
+ ],
178
+ name: "RetryableData",
179
+ type: "error",
180
+ },
181
+ {
182
+ anonymous: false,
183
+ inputs: [
184
+ {
185
+ indexed: true,
186
+ internalType: "address",
187
+ name: "user",
188
+ type: "address",
189
+ },
190
+ {
191
+ indexed: false,
192
+ internalType: "bool",
193
+ name: "val",
194
+ type: "bool",
195
+ },
196
+ ],
197
+ name: "AllowListAddressSet",
198
+ type: "event",
199
+ },
200
+ {
201
+ anonymous: false,
202
+ inputs: [
203
+ {
204
+ indexed: false,
205
+ internalType: "bool",
206
+ name: "isEnabled",
207
+ type: "bool",
208
+ },
209
+ ],
210
+ name: "AllowListEnabledUpdated",
211
+ type: "event",
212
+ },
213
+ {
214
+ anonymous: false,
215
+ inputs: [
216
+ {
217
+ indexed: true,
218
+ internalType: "uint256",
219
+ name: "messageNum",
220
+ type: "uint256",
221
+ },
222
+ {
223
+ indexed: false,
224
+ internalType: "bytes",
225
+ name: "data",
226
+ type: "bytes",
227
+ },
228
+ ],
229
+ name: "InboxMessageDelivered",
230
+ type: "event",
231
+ },
232
+ {
233
+ anonymous: false,
234
+ inputs: [
235
+ {
236
+ indexed: true,
237
+ internalType: "uint256",
238
+ name: "messageNum",
239
+ type: "uint256",
240
+ },
241
+ ],
242
+ name: "InboxMessageDeliveredFromOrigin",
243
+ type: "event",
244
+ },
245
+ {
246
+ anonymous: false,
247
+ inputs: [
248
+ {
249
+ indexed: false,
250
+ internalType: "address",
251
+ name: "account",
252
+ type: "address",
253
+ },
254
+ ],
255
+ name: "Paused",
256
+ type: "event",
257
+ },
258
+ {
259
+ anonymous: false,
260
+ inputs: [
261
+ {
262
+ indexed: false,
263
+ internalType: "address",
264
+ name: "account",
265
+ type: "address",
266
+ },
267
+ ],
268
+ name: "Unpaused",
269
+ type: "event",
270
+ },
271
+ {
272
+ inputs: [],
273
+ name: "allowListEnabled",
274
+ outputs: [
275
+ {
276
+ internalType: "bool",
277
+ name: "",
278
+ type: "bool",
279
+ },
280
+ ],
281
+ stateMutability: "view",
282
+ type: "function",
283
+ },
284
+ {
285
+ inputs: [],
286
+ name: "bridge",
287
+ outputs: [
288
+ {
289
+ internalType: "contract IBridge",
290
+ name: "",
291
+ type: "address",
292
+ },
293
+ ],
294
+ stateMutability: "view",
295
+ type: "function",
296
+ },
297
+ {
298
+ inputs: [
299
+ {
300
+ internalType: "uint256",
301
+ name: "dataLength",
302
+ type: "uint256",
303
+ },
304
+ {
305
+ internalType: "uint256",
306
+ name: "baseFee",
307
+ type: "uint256",
308
+ },
309
+ ],
310
+ name: "calculateRetryableSubmissionFee",
311
+ outputs: [
312
+ {
313
+ internalType: "uint256",
314
+ name: "",
315
+ type: "uint256",
316
+ },
317
+ ],
318
+ stateMutability: "view",
319
+ type: "function",
320
+ },
321
+ {
322
+ inputs: [
323
+ {
324
+ internalType: "address",
325
+ name: "to",
326
+ type: "address",
327
+ },
328
+ {
329
+ internalType: "uint256",
330
+ name: "l2CallValue",
331
+ type: "uint256",
332
+ },
333
+ {
334
+ internalType: "uint256",
335
+ name: "maxSubmissionCost",
336
+ type: "uint256",
337
+ },
338
+ {
339
+ internalType: "address",
340
+ name: "excessFeeRefundAddress",
341
+ type: "address",
342
+ },
343
+ {
344
+ internalType: "address",
345
+ name: "callValueRefundAddress",
346
+ type: "address",
347
+ },
348
+ {
349
+ internalType: "uint256",
350
+ name: "gasLimit",
351
+ type: "uint256",
352
+ },
353
+ {
354
+ internalType: "uint256",
355
+ name: "maxFeePerGas",
356
+ type: "uint256",
357
+ },
358
+ {
359
+ internalType: "bytes",
360
+ name: "data",
361
+ type: "bytes",
362
+ },
363
+ ],
364
+ name: "createRetryableTicket",
365
+ outputs: [
366
+ {
367
+ internalType: "uint256",
368
+ name: "",
369
+ type: "uint256",
370
+ },
371
+ ],
372
+ stateMutability: "payable",
373
+ type: "function",
374
+ },
375
+ {
376
+ inputs: [
377
+ {
378
+ internalType: "address",
379
+ name: "to",
380
+ type: "address",
381
+ },
382
+ {
383
+ internalType: "uint256",
384
+ name: "l2CallValue",
385
+ type: "uint256",
386
+ },
387
+ {
388
+ internalType: "uint256",
389
+ name: "maxSubmissionCost",
390
+ type: "uint256",
391
+ },
392
+ {
393
+ internalType: "address",
394
+ name: "excessFeeRefundAddress",
395
+ type: "address",
396
+ },
397
+ {
398
+ internalType: "address",
399
+ name: "callValueRefundAddress",
400
+ type: "address",
401
+ },
402
+ {
403
+ internalType: "uint256",
404
+ name: "gasLimit",
405
+ type: "uint256",
406
+ },
407
+ {
408
+ internalType: "uint256",
409
+ name: "maxFeePerGas",
410
+ type: "uint256",
411
+ },
412
+ {
413
+ internalType: "bytes",
414
+ name: "data",
415
+ type: "bytes",
416
+ },
417
+ ],
418
+ name: "createRetryableTicketNoRefundAliasRewrite",
419
+ outputs: [
420
+ {
421
+ internalType: "uint256",
422
+ name: "",
423
+ type: "uint256",
424
+ },
425
+ ],
426
+ stateMutability: "payable",
427
+ type: "function",
428
+ },
429
+ {
430
+ inputs: [
431
+ {
432
+ internalType: "uint256",
433
+ name: "",
434
+ type: "uint256",
435
+ },
436
+ ],
437
+ name: "depositEth",
438
+ outputs: [
439
+ {
440
+ internalType: "uint256",
441
+ name: "",
442
+ type: "uint256",
443
+ },
444
+ ],
445
+ stateMutability: "payable",
446
+ type: "function",
447
+ },
448
+ {
449
+ inputs: [],
450
+ name: "depositEth",
451
+ outputs: [
452
+ {
453
+ internalType: "uint256",
454
+ name: "",
455
+ type: "uint256",
456
+ },
457
+ ],
458
+ stateMutability: "payable",
459
+ type: "function",
460
+ },
461
+ {
462
+ inputs: [
463
+ {
464
+ internalType: "contract IBridge",
465
+ name: "_bridge",
466
+ type: "address",
467
+ },
468
+ {
469
+ internalType: "contract ISequencerInbox",
470
+ name: "_sequencerInbox",
471
+ type: "address",
472
+ },
473
+ ],
474
+ name: "initialize",
475
+ outputs: [],
476
+ stateMutability: "nonpayable",
477
+ type: "function",
478
+ },
479
+ {
480
+ inputs: [
481
+ {
482
+ internalType: "address",
483
+ name: "",
484
+ type: "address",
485
+ },
486
+ ],
487
+ name: "isAllowed",
488
+ outputs: [
489
+ {
490
+ internalType: "bool",
491
+ name: "",
492
+ type: "bool",
493
+ },
494
+ ],
495
+ stateMutability: "view",
496
+ type: "function",
497
+ },
498
+ {
499
+ inputs: [],
500
+ name: "pause",
501
+ outputs: [],
502
+ stateMutability: "nonpayable",
503
+ type: "function",
504
+ },
505
+ {
506
+ inputs: [],
507
+ name: "paused",
508
+ outputs: [
509
+ {
510
+ internalType: "bool",
511
+ name: "",
512
+ type: "bool",
513
+ },
514
+ ],
515
+ stateMutability: "view",
516
+ type: "function",
517
+ },
518
+ {
519
+ inputs: [
520
+ {
521
+ internalType: "contract IBridge",
522
+ name: "",
523
+ type: "address",
524
+ },
525
+ ],
526
+ name: "postUpgradeInit",
527
+ outputs: [],
528
+ stateMutability: "nonpayable",
529
+ type: "function",
530
+ },
531
+ {
532
+ inputs: [
533
+ {
534
+ internalType: "uint256",
535
+ name: "gasLimit",
536
+ type: "uint256",
537
+ },
538
+ {
539
+ internalType: "uint256",
540
+ name: "maxFeePerGas",
541
+ type: "uint256",
542
+ },
543
+ {
544
+ internalType: "address",
545
+ name: "to",
546
+ type: "address",
547
+ },
548
+ {
549
+ internalType: "uint256",
550
+ name: "value",
551
+ type: "uint256",
552
+ },
553
+ {
554
+ internalType: "bytes",
555
+ name: "data",
556
+ type: "bytes",
557
+ },
558
+ ],
559
+ name: "sendContractTransaction",
560
+ outputs: [
561
+ {
562
+ internalType: "uint256",
563
+ name: "",
564
+ type: "uint256",
565
+ },
566
+ ],
567
+ stateMutability: "nonpayable",
568
+ type: "function",
569
+ },
570
+ {
571
+ inputs: [
572
+ {
573
+ internalType: "uint256",
574
+ name: "gasLimit",
575
+ type: "uint256",
576
+ },
577
+ {
578
+ internalType: "uint256",
579
+ name: "maxFeePerGas",
580
+ type: "uint256",
581
+ },
582
+ {
583
+ internalType: "address",
584
+ name: "to",
585
+ type: "address",
586
+ },
587
+ {
588
+ internalType: "bytes",
589
+ name: "data",
590
+ type: "bytes",
591
+ },
592
+ ],
593
+ name: "sendL1FundedContractTransaction",
594
+ outputs: [
595
+ {
596
+ internalType: "uint256",
597
+ name: "",
598
+ type: "uint256",
599
+ },
600
+ ],
601
+ stateMutability: "payable",
602
+ type: "function",
603
+ },
604
+ {
605
+ inputs: [
606
+ {
607
+ internalType: "uint256",
608
+ name: "gasLimit",
609
+ type: "uint256",
610
+ },
611
+ {
612
+ internalType: "uint256",
613
+ name: "maxFeePerGas",
614
+ type: "uint256",
615
+ },
616
+ {
617
+ internalType: "uint256",
618
+ name: "nonce",
619
+ type: "uint256",
620
+ },
621
+ {
622
+ internalType: "address",
623
+ name: "to",
624
+ type: "address",
625
+ },
626
+ {
627
+ internalType: "bytes",
628
+ name: "data",
629
+ type: "bytes",
630
+ },
631
+ ],
632
+ name: "sendL1FundedUnsignedTransaction",
633
+ outputs: [
634
+ {
635
+ internalType: "uint256",
636
+ name: "",
637
+ type: "uint256",
638
+ },
639
+ ],
640
+ stateMutability: "payable",
641
+ type: "function",
642
+ },
643
+ {
644
+ inputs: [
645
+ {
646
+ internalType: "uint256",
647
+ name: "gasLimit",
648
+ type: "uint256",
649
+ },
650
+ {
651
+ internalType: "uint256",
652
+ name: "maxFeePerGas",
653
+ type: "uint256",
654
+ },
655
+ {
656
+ internalType: "uint256",
657
+ name: "nonce",
658
+ type: "uint256",
659
+ },
660
+ {
661
+ internalType: "address",
662
+ name: "to",
663
+ type: "address",
664
+ },
665
+ {
666
+ internalType: "bytes",
667
+ name: "data",
668
+ type: "bytes",
669
+ },
670
+ ],
671
+ name: "sendL1FundedUnsignedTransactionToFork",
672
+ outputs: [
673
+ {
674
+ internalType: "uint256",
675
+ name: "",
676
+ type: "uint256",
677
+ },
678
+ ],
679
+ stateMutability: "payable",
680
+ type: "function",
681
+ },
682
+ {
683
+ inputs: [
684
+ {
685
+ internalType: "bytes",
686
+ name: "messageData",
687
+ type: "bytes",
688
+ },
689
+ ],
690
+ name: "sendL2Message",
691
+ outputs: [
692
+ {
693
+ internalType: "uint256",
694
+ name: "",
695
+ type: "uint256",
696
+ },
697
+ ],
698
+ stateMutability: "nonpayable",
699
+ type: "function",
700
+ },
701
+ {
702
+ inputs: [
703
+ {
704
+ internalType: "bytes",
705
+ name: "messageData",
706
+ type: "bytes",
707
+ },
708
+ ],
709
+ name: "sendL2MessageFromOrigin",
710
+ outputs: [
711
+ {
712
+ internalType: "uint256",
713
+ name: "",
714
+ type: "uint256",
715
+ },
716
+ ],
717
+ stateMutability: "nonpayable",
718
+ type: "function",
719
+ },
720
+ {
721
+ inputs: [
722
+ {
723
+ internalType: "uint256",
724
+ name: "gasLimit",
725
+ type: "uint256",
726
+ },
727
+ {
728
+ internalType: "uint256",
729
+ name: "maxFeePerGas",
730
+ type: "uint256",
731
+ },
732
+ {
733
+ internalType: "uint256",
734
+ name: "nonce",
735
+ type: "uint256",
736
+ },
737
+ {
738
+ internalType: "address",
739
+ name: "to",
740
+ type: "address",
741
+ },
742
+ {
743
+ internalType: "uint256",
744
+ name: "value",
745
+ type: "uint256",
746
+ },
747
+ {
748
+ internalType: "bytes",
749
+ name: "data",
750
+ type: "bytes",
751
+ },
752
+ ],
753
+ name: "sendUnsignedTransaction",
754
+ outputs: [
755
+ {
756
+ internalType: "uint256",
757
+ name: "",
758
+ type: "uint256",
759
+ },
760
+ ],
761
+ stateMutability: "nonpayable",
762
+ type: "function",
763
+ },
764
+ {
765
+ inputs: [
766
+ {
767
+ internalType: "uint256",
768
+ name: "gasLimit",
769
+ type: "uint256",
770
+ },
771
+ {
772
+ internalType: "uint256",
773
+ name: "maxFeePerGas",
774
+ type: "uint256",
775
+ },
776
+ {
777
+ internalType: "uint256",
778
+ name: "nonce",
779
+ type: "uint256",
780
+ },
781
+ {
782
+ internalType: "address",
783
+ name: "to",
784
+ type: "address",
785
+ },
786
+ {
787
+ internalType: "uint256",
788
+ name: "value",
789
+ type: "uint256",
790
+ },
791
+ {
792
+ internalType: "bytes",
793
+ name: "data",
794
+ type: "bytes",
795
+ },
796
+ ],
797
+ name: "sendUnsignedTransactionToFork",
798
+ outputs: [
799
+ {
800
+ internalType: "uint256",
801
+ name: "",
802
+ type: "uint256",
803
+ },
804
+ ],
805
+ stateMutability: "nonpayable",
806
+ type: "function",
807
+ },
808
+ {
809
+ inputs: [
810
+ {
811
+ internalType: "uint256",
812
+ name: "gasLimit",
813
+ type: "uint256",
814
+ },
815
+ {
816
+ internalType: "uint256",
817
+ name: "maxFeePerGas",
818
+ type: "uint256",
819
+ },
820
+ {
821
+ internalType: "uint256",
822
+ name: "nonce",
823
+ type: "uint256",
824
+ },
825
+ {
826
+ internalType: "uint256",
827
+ name: "value",
828
+ type: "uint256",
829
+ },
830
+ {
831
+ internalType: "address",
832
+ name: "withdrawTo",
833
+ type: "address",
834
+ },
835
+ ],
836
+ name: "sendWithdrawEthToFork",
837
+ outputs: [
838
+ {
839
+ internalType: "uint256",
840
+ name: "",
841
+ type: "uint256",
842
+ },
843
+ ],
844
+ stateMutability: "nonpayable",
845
+ type: "function",
846
+ },
847
+ {
848
+ inputs: [],
849
+ name: "sequencerInbox",
850
+ outputs: [
851
+ {
852
+ internalType: "contract ISequencerInbox",
853
+ name: "",
854
+ type: "address",
855
+ },
856
+ ],
857
+ stateMutability: "view",
858
+ type: "function",
859
+ },
860
+ {
861
+ inputs: [
862
+ {
863
+ internalType: "address[]",
864
+ name: "user",
865
+ type: "address[]",
866
+ },
867
+ {
868
+ internalType: "bool[]",
869
+ name: "val",
870
+ type: "bool[]",
871
+ },
872
+ ],
873
+ name: "setAllowList",
874
+ outputs: [],
875
+ stateMutability: "nonpayable",
876
+ type: "function",
877
+ },
878
+ {
879
+ inputs: [
880
+ {
881
+ internalType: "bool",
882
+ name: "_allowListEnabled",
883
+ type: "bool",
884
+ },
885
+ ],
886
+ name: "setAllowListEnabled",
887
+ outputs: [],
888
+ stateMutability: "nonpayable",
889
+ type: "function",
890
+ },
891
+ {
892
+ inputs: [],
893
+ name: "unpause",
894
+ outputs: [],
895
+ stateMutability: "nonpayable",
896
+ type: "function",
897
+ },
898
+ {
899
+ inputs: [
900
+ {
901
+ internalType: "address",
902
+ name: "to",
903
+ type: "address",
904
+ },
905
+ {
906
+ internalType: "uint256",
907
+ name: "l2CallValue",
908
+ type: "uint256",
909
+ },
910
+ {
911
+ internalType: "uint256",
912
+ name: "maxSubmissionCost",
913
+ type: "uint256",
914
+ },
915
+ {
916
+ internalType: "address",
917
+ name: "excessFeeRefundAddress",
918
+ type: "address",
919
+ },
920
+ {
921
+ internalType: "address",
922
+ name: "callValueRefundAddress",
923
+ type: "address",
924
+ },
925
+ {
926
+ internalType: "uint256",
927
+ name: "gasLimit",
928
+ type: "uint256",
929
+ },
930
+ {
931
+ internalType: "uint256",
932
+ name: "maxFeePerGas",
933
+ type: "uint256",
934
+ },
935
+ {
936
+ internalType: "bytes",
937
+ name: "data",
938
+ type: "bytes",
939
+ },
940
+ ],
941
+ name: "unsafeCreateRetryableTicket",
942
+ outputs: [
943
+ {
944
+ internalType: "uint256",
945
+ name: "",
946
+ type: "uint256",
947
+ },
948
+ ],
949
+ stateMutability: "payable",
950
+ type: "function",
951
+ },
952
+ ];
953
+
954
+ const _bytecode =
955
+ "0x60c0604052306080524660a05234801561001857600080fd5b5060805160a0516127df610045600039600061193c015260008181610ac7015261132801526127df6000f3fe6080604052600436106101605760003560e01c80636e6e8a6a116100c1578063babcc5391161007a578063babcc53914610367578063c474d2c514610397578063e3de72a5146103b7578063e6bd12cf146103d7578063e78cea92146103ea578063ee35f32714610417578063efeadb6d1461043757600080fd5b80636e6e8a6a146102bf57806370665f14146102d25780638456cb59146102f25780638a631aa614610307578063a66b327d14610327578063b75436bb1461034757600080fd5b8063439370b11161011e578063439370b114610226578063485cc9551461022e5780635075788b1461024e5780635c975abb1461026e5780635e91675814610286578063679b6ded1461029957806367ef3ab8146102ac57600080fd5b8062f72382146101655780630f4d14e9146101985780631b871c8d146101ab5780631fe927cf146101be57806322bd5c1c146101de5780633f4ba83a1461020f575b600080fd5b34801561017157600080fd5b50610185610180366004611e9f565b610457565b6040519081526020015b60405180910390f35b6101856101a6366004611f1b565b61059a565b6101856101b9366004611f34565b61061e565b3480156101ca57600080fd5b506101856101d9366004611fd8565b6106b1565b3480156101ea57600080fd5b506066546101ff90600160a01b900460ff1681565b604051901515815260200161018f565b34801561021b57600080fd5b506102246107f7565b005b610185610937565b34801561023a57600080fd5b50610224610249366004612019565b610a18565b34801561025a57600080fd5b50610185610269366004611e9f565b610b26565b34801561027a57600080fd5b5060335460ff166101ff565b610185610294366004612052565b610bf1565b6101856102a7366004611f34565b610cc4565b6101856102ba3660046120bb565b610d4a565b6101856102cd366004611f34565b610e20565b3480156102de57600080fd5b506101856102ed36600461212d565b610ea6565b3480156102fe57600080fd5b50610224611003565b34801561031357600080fd5b5061018561032236600461217a565b611140565b34801561033357600080fd5b506101856103423660046121ce565b611209565b34801561035357600080fd5b50610185610362366004611fd8565b611241565b34801561037357600080fd5b506101ff6103823660046121f0565b60676020526000908152604090205460ff1681565b3480156103a357600080fd5b506102246103b23660046121f0565b61131d565b3480156103c357600080fd5b506102246103d23660046122f8565b6113c3565b6101856103e53660046120bb565b611643565b3480156103f657600080fd5b5060655461040a906001600160a01b031681565b60405161018f91906123b9565b34801561042357600080fd5b5060665461040a906001600160a01b031681565b34801561044357600080fd5b506102246104523660046123cd565b61175b565b600061046560335460ff1690565b1561048b5760405162461bcd60e51b8152600401610482906123e8565b60405180910390fd5b606654600160a01b900460ff1680156104b457503260009081526067602052604090205460ff16155b156104d45732604051630f51ed7160e41b815260040161048291906123b9565b6104dc61193a565b6104f957604051635180dd8360e11b815260040160405180910390fd5b3332146105195760405163feb3d07160e01b815260040160405180910390fd5b6001600160401b038811156105415760405163107c527b60e01b815260040160405180910390fd5b61058e600361054f33611961565b60008b8b8b8b6001600160a01b03168b8b8b604051602001610578989796959493929190612412565b6040516020818303038152906040526000611970565b98975050505050505050565b60006105a860335460ff1690565b156105c55760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff1680156105ee57503260009081526067602052604090205460ff16155b1561060e5732604051630f51ed7160e41b815260040161048291906123b9565b610616610937565b90505b919050565b600061062c60335460ff1690565b156106495760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff16801561067257503260009081526067602052604090205460ff16155b156106925732604051630f51ed7160e41b815260040161048291906123b9565b6106a38a8a8a8a8a8a8a8a8a610e20565b9a9950505050505050505050565b60006106bf60335460ff1690565b156106dc5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff16801561070557503260009081526067602052604090205460ff16155b156107255732604051630f51ed7160e41b815260040161048291906123b9565b61072d61193a565b1561074b5760405163c6ea680360e01b815260040160405180910390fd5b33321461076b5760405163feb3d07160e01b815260040160405180910390fd5b6201cccc82111561079b57604051634634691b60e01b8152600481018390526201cccc6024820152604401610482565b60006107c260033386866040516107b3929190612458565b604051809103902060006119fe565b60405190915081907fab532385be8f1005a4b6ba8fa20a2245facb346134ac739fe9a5198dc1580b9c90600090a29392505050565b6065546040805163cb23bcb560e01b815290516000926001600160a01b03169163cb23bcb5916004808301926020929190829003018186803b15801561083c57600080fd5b505afa158015610850573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108749190612468565b9050336001600160a01b0382161461092c576000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156108c157600080fd5b505afa1580156108d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f99190612468565b9050336001600160a01b0382161461092a57338282604051630739600760e01b815260040161048293929190612485565b505b610934611ab1565b50565b600061094560335460ff1690565b156109625760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff16801561098b57503260009081526067602052604090205460ff16155b156109ab5732604051630f51ed7160e41b815260040161048291906123b9565b33803b1515806109bb5750323314155b156109ce57503361111161111160901b01015b6040516bffffffffffffffffffffffff19606083901b166020820152346034820152610a1290600c9033906054015b60405160208183030381529060405234611970565b91505090565b600054610100900460ff16610a335760005460ff1615610a37565b303b155b610a9a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610482565b600054610100900460ff16158015610abc576000805461ffff19166101011790555b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610b055760405162461bcd60e51b8152600401610482906124a8565b610b0f8383611b3e565b8015610b21576000805461ff00191690555b505050565b6000610b3460335460ff1690565b15610b515760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff168015610b7a57503260009081526067602052604090205460ff16155b15610b9a5732604051630f51ed7160e41b815260040161048291906123b9565b6001600160401b03881115610bc25760405163107c527b60e01b815260040160405180910390fd5b61058e60033360008b8b8b8b6001600160a01b03168b8b8b604051602001610578989796959493929190612412565b6000610bff60335460ff1690565b15610c1c5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff168015610c4557503260009081526067602052604090205460ff16155b15610c655732604051630f51ed7160e41b815260040161048291906123b9565b6001600160401b03861115610c8d5760405163107c527b60e01b815260040160405180910390fd5b610cba60073360018989896001600160a01b0316348a8a6040516020016109fd97969594939291906124f4565b9695505050505050565b6000610cd260335460ff1690565b15610cef5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff168015610d1857503260009081526067602052604090205460ff16155b15610d385732604051630f51ed7160e41b815260040161048291906123b9565b6106a38a8a8a8a8a8a8a348b8b611baa565b6000610d5860335460ff1690565b15610d755760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff168015610d9e57503260009081526067602052604090205460ff16155b15610dbe5732604051630f51ed7160e41b815260040161048291906123b9565b6001600160401b03871115610de65760405163107c527b60e01b815260040160405180910390fd5b610e1560073360008a8a8a8a6001600160a01b0316348b8b6040516020016109fd989796959493929190612412565b979650505050505050565b6000610e2e60335460ff1690565b15610e4b5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff168015610e7457503260009081526067602052604090205460ff16155b15610e945732604051630f51ed7160e41b815260040161048291906123b9565b6106a38a8a8a8a8a8a8a348b8b611c72565b6000610eb460335460ff1690565b15610ed15760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff168015610efa57503260009081526067602052604090205460ff16155b15610f1a5732604051630f51ed7160e41b815260040161048291906123b9565b610f2261193a565b610f3f57604051635180dd8360e11b815260040160405180910390fd5b333214610f5f5760405163feb3d07160e01b815260040160405180910390fd5b6001600160401b03861115610f875760405163107c527b60e01b815260040160405180910390fd5b610cba6003610f9533611961565b600089898960646001600160a01b03168a6325e1606360e01b8b604051602401610fbf91906123b9565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b03199095169490941790935251610578989796959493920161255f565b6065546040805163cb23bcb560e01b815290516000926001600160a01b03169163cb23bcb5916004808301926020929190829003018186803b15801561104857600080fd5b505afa15801561105c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110809190612468565b9050336001600160a01b03821614611138576000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156110cd57600080fd5b505afa1580156110e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111059190612468565b9050336001600160a01b0382161461113657338282604051630739600760e01b815260040161048293929190612485565b505b610934611d86565b600061114e60335460ff1690565b1561116b5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff16801561119457503260009081526067602052604090205460ff16155b156111b45732604051630f51ed7160e41b815260040161048291906123b9565b6001600160401b038711156111dc5760405163107c527b60e01b815260040160405180910390fd5b610e1560033360018a8a8a6001600160a01b03168a8a8a60405160200161057897969594939291906124f4565b600081156112175781611219565b485b6112248460066125c7565b611230906105786125e6565b61123a91906125c7565b9392505050565b600061124f60335460ff1690565b1561126c5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff16801561129557503260009081526067602052604090205460ff16155b156112b55732604051630f51ed7160e41b815260040161048291906123b9565b6112bd61193a565b156112db5760405163c6ea680360e01b815260040160405180910390fd5b61123a60033385858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509250611970915050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156113665760405162461bcd60e51b8152600401610482906124a8565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b03821614610b2157604051631194af8760e11b81523360048201526001600160a01b0382166024820152604401610482565b6065546040805163cb23bcb560e01b815290516000926001600160a01b03169163cb23bcb5916004808301926020929190829003018186803b15801561140857600080fd5b505afa15801561141c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114409190612468565b9050336001600160a01b038216146114f8576000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561148d57600080fd5b505afa1580156114a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c59190612468565b9050336001600160a01b038216146114f657338282604051630739600760e01b815260040161048293929190612485565b505b81518351146115395760405162461bcd60e51b815260206004820152600d60248201526c1253959053125117d253941555609a1b6044820152606401610482565b60005b835181101561163d57828181518110611557576115576125fe565b602002602001015160676000868481518110611575576115756125fe565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055508381815181106115c6576115c66125fe565b60200260200101516001600160a01b03167fd9739f45a01ce092c5cdb3d68f63d63d21676b1c6c0b4f9cbc6be4cf5449595a84838151811061160a5761160a6125fe565b6020026020010151604051611623911515815260200190565b60405180910390a28061163581612614565b91505061153c565b50505050565b600061165160335460ff1690565b1561166e5760405162461bcd60e51b8152600401610482906123e8565b606654600160a01b900460ff16801561169757503260009081526067602052604090205460ff16155b156116b75732604051630f51ed7160e41b815260040161048291906123b9565b6116bf61193a565b6116dc57604051635180dd8360e11b815260040160405180910390fd5b3332146116fc5760405163feb3d07160e01b815260040160405180910390fd5b6001600160401b038711156117245760405163107c527b60e01b815260040160405180910390fd5b610e15600761173233611961565b60008a8a8a8a6001600160a01b0316348b8b6040516020016109fd989796959493929190612412565b6065546040805163cb23bcb560e01b815290516000926001600160a01b03169163cb23bcb5916004808301926020929190829003018186803b1580156117a057600080fd5b505afa1580156117b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d89190612468565b9050336001600160a01b03821614611890576000816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561182557600080fd5b505afa158015611839573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185d9190612468565b9050336001600160a01b0382161461188e57338282604051630739600760e01b815260040161048293929190612485565b505b606660149054906101000a900460ff16151582151514156118e15760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610482565b60668054831515600160a01b0260ff60a01b199091161790556040517f16435b45f7482047f839a6a19d291442627200f52cad2803c595150d0d440eb39061192e90841515815260200190565b60405180910390a15050565b7f000000000000000000000000000000000000000000000000000000000000000046141590565b61111061111160901b01190190565b60006201cccc835111156119a6578251604051634634691b60e01b815260048101919091526201cccc6024820152604401610482565b60006119bb86868680519060200120866119fe565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b856040516119ed919061262f565b60405180910390a295945050505050565b6065546000906001600160a01b0316638db5993b838761111161111160901b0188016040516001600160e01b031960e086901b16815260ff90921660048301526001600160a01b03166024820152604481018790526064016020604051808303818588803b158015611a6f57600080fd5b505af1158015611a83573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611aa89190612662565b95945050505050565b60335460ff16611afa5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610482565b6033805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051611b3491906123b9565b60405180910390a1565b600054610100900460ff16611b655760405162461bcd60e51b81526004016104829061267b565b606580546001600160a01b038085166001600160a01b031990921691909117909155606680546001600160a81b031916918316919091179055611ba6611dde565b5050565b6000611bb685876125c7565b611bc08b8b6125e6565b611bca91906125e6565b841015611c1357611bdb85876125c7565b611be58b8b6125e6565b611bef91906125e6565b604051631c102d6360e21b8152600481019190915260248101859052604401610482565b6001600160a01b0388163b15611c325761111161111160901b01880197505b6001600160a01b0387163b15611c515761111161111160901b01870196505b611c638b8b8b8b8b8b8b8b8b8b611c72565b9b9a5050505050505050505050565b60008560011480611c835750846001145b15611cb757338b8b868c8c8c8c8c8b8b6040516307c266e360e01b81526004016104829b9a999897969594939291906126c6565b6001600160401b03861115611cdf5760405163107c527b60e01b815260040160405180910390fd5b6000611ceb8348611209565b9050808a1015611d1857604051637d6f91c560e11b815260048101829052602481018b9052604401610482565b611d766009338e6001600160a01b03168e898f8f6001600160a01b03168f6001600160a01b03168f8f8e8e90508f8f604051602001611d619b9a9998979695949392919061274f565b60405160208183030381529060405288611970565b9c9b505050505050505050505050565b60335460ff1615611da95760405162461bcd60e51b8152600401610482906123e8565b6033805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611b273390565b600054610100900460ff16611e055760405162461bcd60e51b81526004016104829061267b565b611e0d611e0f565b565b600054610100900460ff16611e365760405162461bcd60e51b81526004016104829061267b565b6033805460ff19169055565b6001600160a01b038116811461093457600080fd5b60008083601f840112611e6957600080fd5b5081356001600160401b03811115611e8057600080fd5b602083019150836020828501011115611e9857600080fd5b9250929050565b600080600080600080600060c0888a031215611eba57600080fd5b8735965060208801359550604088013594506060880135611eda81611e42565b93506080880135925060a08801356001600160401b03811115611efc57600080fd5b611f088a828b01611e57565b989b979a50959850939692959293505050565b600060208284031215611f2d57600080fd5b5035919050565b60008060008060008060008060006101008a8c031215611f5357600080fd5b8935611f5e81611e42565b985060208a0135975060408a0135965060608a0135611f7c81611e42565b955060808a0135611f8c81611e42565b945060a08a0135935060c08a0135925060e08a01356001600160401b03811115611fb557600080fd5b611fc18c828d01611e57565b915080935050809150509295985092959850929598565b60008060208385031215611feb57600080fd5b82356001600160401b0381111561200157600080fd5b61200d85828601611e57565b90969095509350505050565b6000806040838503121561202c57600080fd5b823561203781611e42565b9150602083013561204781611e42565b809150509250929050565b60008060008060006080868803121561206a57600080fd5b8535945060208601359350604086013561208381611e42565b925060608601356001600160401b0381111561209e57600080fd5b6120aa88828901611e57565b969995985093965092949392505050565b60008060008060008060a087890312156120d457600080fd5b86359550602087013594506040870135935060608701356120f481611e42565b925060808701356001600160401b0381111561210f57600080fd5b61211b89828a01611e57565b979a9699509497509295939492505050565b600080600080600060a0868803121561214557600080fd5b85359450602086013593506040860135925060608601359150608086013561216c81611e42565b809150509295509295909350565b60008060008060008060a0878903121561219357600080fd5b863595506020870135945060408701356121ac81611e42565b93506060870135925060808701356001600160401b0381111561210f57600080fd5b600080604083850312156121e157600080fd5b50508035926020909101359150565b60006020828403121561220257600080fd5b813561123a81611e42565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561224b5761224b61220d565b604052919050565b60006001600160401b0382111561226c5761226c61220d565b5060051b60200190565b8035801515811461061957600080fd5b600082601f83011261229757600080fd5b813560206122ac6122a783612253565b612223565b82815260059290921b840181019181810190868411156122cb57600080fd5b8286015b848110156122ed576122e081612276565b83529183019183016122cf565b509695505050505050565b6000806040838503121561230b57600080fd5b82356001600160401b038082111561232257600080fd5b818501915085601f83011261233657600080fd5b813560206123466122a783612253565b82815260059290921b8401810191818101908984111561236557600080fd5b948201945b8386101561238c57853561237d81611e42565b8252948201949082019061236a565b965050860135925050808211156123a257600080fd5b506123af85828601612286565b9150509250929050565b6001600160a01b0391909116815260200190565b6000602082840312156123df57600080fd5b61123a82612276565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b60ff60f81b8960f81b168152876001820152866021820152856041820152846061820152836081820152818360a18301376000910160a101908152979650505050505050565b8183823760009101908152919050565b60006020828403121561247a57600080fd5b815161123a81611e42565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b60ff60f81b8860f81b16815286600182015285602182015284604182015283606182015281836081830137600091016081019081529695505050505050565b60005b8381101561254e578181015183820152602001612536565b8381111561163d5750506000910152565b60ff60f81b8860f81b1681528660018201528560218201528460418201528360618201528260818201526000825161259e8160a1850160208701612533565b9190910160a10198975050505050505050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156125e1576125e16125b1565b500290565b600082198211156125f9576125f96125b1565b500190565b634e487b7160e01b600052603260045260246000fd5b6000600019821415612628576126286125b1565b5060010190565b602081526000825180602084015261264e816040850160208701612533565b601f01601f19169190910160400192915050565b60006020828403121561267457600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b038c811682528b81166020830152604082018b9052606082018a90526080820189905287811660a0830152861660c082015260e0810185905261010081018490526101406101208201819052810182905260006101608385828501376000838501820152601f909301601f19169091019091019b9a5050505050505050505050565b8b81528a60208201528960408201528860608201528760808201528660a08201528560c08201528460e08201528361010082015260006101208385828501376000929093019092019081529b9a505050505050505050505056fea2646970667358221220c7d0f0ec1e8c613617d13b67a4b4d7cc3a9326a91b60c1ea09a9c3848b93296864736f6c63430008090033";
956
+
957
+ type InboxConstructorParams =
958
+ | [signer?: Signer]
959
+ | ConstructorParameters<typeof ContractFactory>;
960
+
961
+ const isSuperArgs = (
962
+ xs: InboxConstructorParams
963
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
964
+
965
+ export class Inbox__factory extends ContractFactory {
966
+ constructor(...args: InboxConstructorParams) {
967
+ if (isSuperArgs(args)) {
968
+ super(...args);
969
+ } else {
970
+ super(_abi, _bytecode, args[0]);
971
+ }
972
+ }
973
+
974
+ override deploy(
975
+ overrides?: Overrides & { from?: string | Promise<string> }
976
+ ): Promise<Inbox> {
977
+ return super.deploy(overrides || {}) as Promise<Inbox>;
978
+ }
979
+ override getDeployTransaction(
980
+ overrides?: Overrides & { from?: string | Promise<string> }
981
+ ): TransactionRequest {
982
+ return super.getDeployTransaction(overrides || {});
983
+ }
984
+ override attach(address: string): Inbox {
985
+ return super.attach(address) as Inbox;
986
+ }
987
+ override connect(signer: Signer): Inbox__factory {
988
+ return super.connect(signer) as Inbox__factory;
989
+ }
990
+
991
+ static readonly bytecode = _bytecode;
992
+ static readonly abi = _abi;
993
+ static createInterface(): InboxInterface {
994
+ return new utils.Interface(_abi) as InboxInterface;
995
+ }
996
+ static connect(address: string, signerOrProvider: Signer | Provider): Inbox {
997
+ return new Contract(address, _abi, signerOrProvider) as Inbox;
998
+ }
999
+ }