@arbitrum/nitro-contracts 1.0.2 → 1.0.3-beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (338) hide show
  1. package/LICENSE +114 -0
  2. package/README.md +2 -2
  3. package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +4 -0
  4. package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.json +63 -0
  5. package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +4 -0
  6. package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.json +24 -0
  7. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +4 -0
  8. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +80 -0
  9. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +4 -0
  10. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.json +56 -0
  11. package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +4 -0
  12. package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.json +19 -0
  13. package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +4 -0
  14. package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.json +24 -0
  15. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +4 -0
  16. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +113 -0
  17. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +4 -0
  18. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +160 -0
  19. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +4 -0
  20. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +155 -0
  21. package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +4 -0
  22. package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.json +100 -0
  23. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +4 -0
  24. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.json +10 -0
  25. package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +4 -0
  26. package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.json +10 -0
  27. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +4 -0
  28. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +10 -0
  29. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +4 -0
  30. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.json +63 -0
  31. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +4 -0
  32. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.json +10 -0
  33. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +4 -0
  34. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.json +50 -0
  35. package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +4 -0
  36. package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.json +194 -0
  37. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +4 -0
  38. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +10 -0
  39. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +4 -0
  40. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.json +10 -0
  41. package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +4 -0
  42. package/build/contracts/src/bridge/Bridge.sol/Bridge.json +650 -0
  43. package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +4 -0
  44. package/build/contracts/src/bridge/IBridge.sol/IBridge.json +538 -0
  45. package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +4 -0
  46. package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.json +43 -0
  47. package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +4 -0
  48. package/build/contracts/src/bridge/IInbox.sol/IInbox.json +575 -0
  49. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +4 -0
  50. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.json +419 -0
  51. package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +4 -0
  52. package/build/contracts/src/bridge/IOwnable.sol/IOwnable.json +24 -0
  53. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +4 -0
  54. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.json +651 -0
  55. package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +4 -0
  56. package/build/contracts/src/bridge/Inbox.sol/Inbox.json +954 -0
  57. package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +4 -0
  58. package/build/contracts/src/bridge/Messages.sol/Messages.json +10 -0
  59. package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +4 -0
  60. package/build/contracts/src/bridge/Outbox.sol/Outbox.json +546 -0
  61. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +4 -0
  62. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +814 -0
  63. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +4 -0
  64. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.json +10 -0
  65. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +4 -0
  66. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +669 -0
  67. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +4 -0
  68. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.json +386 -0
  69. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +4 -0
  70. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.json +34 -0
  71. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +4 -0
  72. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.json +10 -0
  73. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +4 -0
  74. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.json +77 -0
  75. package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +4 -0
  76. package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.json +69 -0
  77. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +4 -0
  78. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.json +10 -0
  79. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +4 -0
  80. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.json +10 -0
  81. package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +4 -0
  82. package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.json +10 -0
  83. package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +4 -0
  84. package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.json +144 -0
  85. package/build/contracts/src/libraries/IGasRefunder.sol/GasRefundEnabled.dbg.json +4 -0
  86. package/build/contracts/src/libraries/IGasRefunder.sol/GasRefundEnabled.json +10 -0
  87. package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +4 -0
  88. package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.json +40 -0
  89. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +4 -0
  90. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +10 -0
  91. package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +4 -0
  92. package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.json +82 -0
  93. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +4 -0
  94. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +561 -0
  95. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +4 -0
  96. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +655 -0
  97. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +4 -0
  98. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +588 -0
  99. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +4 -0
  100. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +188 -0
  101. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +4 -0
  102. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.json +160 -0
  103. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +4 -0
  104. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +870 -0
  105. package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +4 -0
  106. package/build/contracts/src/mocks/Simple.sol/Simple.json +242 -0
  107. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +4 -0
  108. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.json +30 -0
  109. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +4 -0
  110. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +720 -0
  111. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +4 -0
  112. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +669 -0
  113. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +4 -0
  114. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.json +286 -0
  115. package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +4 -0
  116. package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.json +67 -0
  117. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +4 -0
  118. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.json +165 -0
  119. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +4 -0
  120. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.json +57 -0
  121. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +4 -0
  122. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.json +10 -0
  123. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +4 -0
  124. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.json +477 -0
  125. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +4 -0
  126. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +135 -0
  127. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +4 -0
  128. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +477 -0
  129. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +4 -0
  130. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +477 -0
  131. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +4 -0
  132. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +477 -0
  133. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +4 -0
  134. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +477 -0
  135. package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +4 -0
  136. package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.json +148 -0
  137. package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +4 -0
  138. package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.json +148 -0
  139. package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +4 -0
  140. package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.json +10 -0
  141. package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +4 -0
  142. package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.json +193 -0
  143. package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +4 -0
  144. package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.json +77 -0
  145. package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +4 -0
  146. package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.json +350 -0
  147. package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +4 -0
  148. package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.json +49 -0
  149. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +4 -0
  150. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.json +378 -0
  151. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +4 -0
  152. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.json +95 -0
  153. package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +4 -0
  154. package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.json +306 -0
  155. package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +4 -0
  156. package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.json +49 -0
  157. package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +4 -0
  158. package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.json +380 -0
  159. package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +4 -0
  160. package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.json +77 -0
  161. package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +4 -0
  162. package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.json +24 -0
  163. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +4 -0
  164. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +243 -0
  165. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +4 -0
  166. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +128 -0
  167. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +4 -0
  168. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.json +544 -0
  169. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +4 -0
  170. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.json +889 -0
  171. package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +4 -0
  172. package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.json +68 -0
  173. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +4 -0
  174. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.json +1428 -0
  175. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +4 -0
  176. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.json +1309 -0
  177. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +4 -0
  178. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.json +1443 -0
  179. package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +4 -0
  180. package/build/contracts/src/rollup/Node.sol/NodeLib.json +10 -0
  181. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +4 -0
  182. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +1808 -0
  183. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +4 -0
  184. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.json +1051 -0
  185. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +4 -0
  186. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +383 -0
  187. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +4 -0
  188. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.json +110 -0
  189. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +4 -0
  190. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.json +10 -0
  191. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +4 -0
  192. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +226 -0
  193. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +4 -0
  194. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.json +1578 -0
  195. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +4 -0
  196. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +1712 -0
  197. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +4 -0
  198. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +1697 -0
  199. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +4 -0
  200. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +379 -0
  201. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +4 -0
  202. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +435 -0
  203. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +4 -0
  204. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +150 -0
  205. package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +4 -0
  206. package/build/contracts/src/state/Deserialize.sol/Deserialize.json +10 -0
  207. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +4 -0
  208. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.json +10 -0
  209. package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +4 -0
  210. package/build/contracts/src/state/Instructions.sol/Instructions.json +10 -0
  211. package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +4 -0
  212. package/build/contracts/src/state/Machine.sol/MachineLib.json +10 -0
  213. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +4 -0
  214. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.json +10 -0
  215. package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +4 -0
  216. package/build/contracts/src/state/Module.sol/ModuleLib.json +10 -0
  217. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +4 -0
  218. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.json +10 -0
  219. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +4 -0
  220. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.json +10 -0
  221. package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +4 -0
  222. package/build/contracts/src/state/PcArray.sol/PcArrayLib.json +10 -0
  223. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +4 -0
  224. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.json +10 -0
  225. package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +4 -0
  226. package/build/contracts/src/state/Value.sol/ValueLib.json +10 -0
  227. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +4 -0
  228. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.json +10 -0
  229. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +4 -0
  230. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.json +10 -0
  231. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +4 -0
  232. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +603 -0
  233. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +4 -0
  234. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.json +54 -0
  235. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +4 -0
  236. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.json +84 -0
  237. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +4 -0
  238. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json +520 -0
  239. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +4 -0
  240. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.json +49 -0
  241. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +4 -0
  242. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.json +18 -0
  243. package/package.json +5 -3
  244. package/src/bridge/Bridge.sol +3 -3
  245. package/src/bridge/IBridge.sol +1 -1
  246. package/src/bridge/IDelayedMessageProvider.sol +1 -1
  247. package/src/bridge/IInbox.sol +1 -1
  248. package/src/bridge/IOutbox.sol +1 -1
  249. package/src/bridge/IOwnable.sol +1 -1
  250. package/src/bridge/ISequencerInbox.sol +22 -4
  251. package/src/bridge/Inbox.sol +2 -2
  252. package/src/bridge/Messages.sol +1 -1
  253. package/src/bridge/Outbox.sol +1 -1
  254. package/src/bridge/SequencerInbox.sol +9 -1
  255. package/src/challenge/ChallengeLib.sol +1 -1
  256. package/src/challenge/ChallengeManager.sol +1 -1
  257. package/src/challenge/IChallengeManager.sol +1 -1
  258. package/src/challenge/IChallengeResultReceiver.sol +1 -1
  259. package/src/libraries/AddressAliasHelper.sol +1 -1
  260. package/src/libraries/AdminFallbackProxy.sol +3 -3
  261. package/src/libraries/Constants.sol +1 -1
  262. package/src/libraries/CryptographyPrimitives.sol +1 -1
  263. package/src/libraries/DelegateCallAware.sol +1 -1
  264. package/src/libraries/DoubleLogicUUPSUpgradeable.sol +1 -1
  265. package/src/libraries/Error.sol +1 -1
  266. package/src/libraries/IGasRefunder.sol +2 -5
  267. package/src/libraries/MerkleLib.sol +1 -1
  268. package/src/libraries/MessageTypes.sol +1 -1
  269. package/src/mocks/BridgeStub.sol +2 -2
  270. package/src/mocks/BridgeUnproxied.sol +1 -1
  271. package/src/mocks/InboxStub.sol +1 -1
  272. package/src/mocks/MockResultReceiver.sol +1 -1
  273. package/src/mocks/ProxyAdminForBinding.sol +1 -1
  274. package/src/mocks/SequencerInboxStub.sol +1 -1
  275. package/src/mocks/Simple.sol +5 -1
  276. package/src/mocks/SimpleProxy.sol +1 -1
  277. package/src/mocks/SingleExecutionChallenge.sol +1 -1
  278. package/src/mocks/TimedOutChallengeManager.sol +1 -1
  279. package/src/node-interface/NodeInterface.sol +4 -2
  280. package/src/node-interface/NodeInterfaceDebug.sol +1 -1
  281. package/src/osp/HashProofHelper.sol +1 -1
  282. package/src/osp/IOneStepProofEntry.sol +1 -1
  283. package/src/osp/IOneStepProver.sol +2 -1
  284. package/src/osp/OneStepProofEntry.sol +1 -1
  285. package/src/osp/OneStepProver0.sol +1 -1
  286. package/src/osp/OneStepProverHostIo.sol +2 -1
  287. package/src/osp/OneStepProverMath.sol +1 -1
  288. package/src/osp/OneStepProverMemory.sol +2 -1
  289. package/src/precompiles/ArbAddressTable.sol +1 -1
  290. package/src/precompiles/ArbAggregator.sol +1 -1
  291. package/src/precompiles/ArbBLS.sol +1 -1
  292. package/src/precompiles/ArbDebug.sol +1 -1
  293. package/src/precompiles/ArbFunctionTable.sol +1 -1
  294. package/src/precompiles/ArbGasInfo.sol +1 -1
  295. package/src/precompiles/ArbInfo.sol +1 -1
  296. package/src/precompiles/ArbOwner.sol +4 -1
  297. package/src/precompiles/ArbOwnerPublic.sol +1 -1
  298. package/src/precompiles/ArbRetryableTx.sol +1 -1
  299. package/src/precompiles/ArbStatistics.sol +1 -1
  300. package/src/precompiles/ArbSys.sol +1 -1
  301. package/src/precompiles/ArbosTest.sol +1 -1
  302. package/src/rollup/BridgeCreator.sol +1 -1
  303. package/src/rollup/Config.sol +43 -0
  304. package/src/rollup/IRollupAdmin.sol +138 -0
  305. package/src/rollup/IRollupCore.sol +16 -3
  306. package/src/rollup/IRollupEventInbox.sol +2 -2
  307. package/src/rollup/IRollupLogic.sol +4 -132
  308. package/src/rollup/Node.sol +15 -1
  309. package/src/rollup/RollupAdminLogic.sol +7 -9
  310. package/src/rollup/RollupCore.sol +46 -3
  311. package/src/rollup/RollupCreator.sol +33 -45
  312. package/src/rollup/RollupEventInbox.sol +8 -3
  313. package/src/rollup/RollupLib.sol +2 -40
  314. package/src/rollup/RollupProxy.sol +26 -11
  315. package/src/rollup/RollupUserLogic.sol +6 -4
  316. package/src/rollup/ValidatorUtils.sol +2 -1
  317. package/src/rollup/ValidatorWallet.sol +1 -1
  318. package/src/rollup/ValidatorWalletCreator.sol +1 -1
  319. package/src/state/Deserialize.sol +2 -2
  320. package/src/state/GlobalState.sol +1 -1
  321. package/src/state/Instructions.sol +1 -1
  322. package/src/state/Machine.sol +1 -1
  323. package/src/state/MerkleProof.sol +1 -1
  324. package/src/state/Module.sol +3 -3
  325. package/src/state/ModuleMemory.sol +3 -8
  326. package/src/state/ModuleMemoryCompact.sol +17 -0
  327. package/src/state/PcArray.sol +1 -1
  328. package/src/state/StackFrame.sol +1 -1
  329. package/src/state/Value.sol +1 -1
  330. package/src/state/ValueArray.sol +1 -1
  331. package/src/state/ValueStack.sol +1 -1
  332. package/src/test-helpers/BridgeTester.sol +1 -1
  333. package/src/test-helpers/CryptographyPrimitivesTester.sol +1 -1
  334. package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
  335. package/src/test-helpers/MessageTester.sol +1 -1
  336. package/src/test-helpers/OutboxWithoutOptTester.sol +1 -1
  337. package/src/test-helpers/RollupMock.sol +1 -1
  338. package/src/test-helpers/ValueArrayTester.sol +1 -1
@@ -0,0 +1,669 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "TimedOutChallengeManager",
4
+ "sourceName": "src/mocks/TimedOutChallengeManager.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "uint64",
12
+ "name": "challengeIndex",
13
+ "type": "uint64"
14
+ },
15
+ {
16
+ "indexed": true,
17
+ "internalType": "bytes32",
18
+ "name": "challengeRoot",
19
+ "type": "bytes32"
20
+ },
21
+ {
22
+ "indexed": false,
23
+ "internalType": "uint256",
24
+ "name": "challengedSegmentStart",
25
+ "type": "uint256"
26
+ },
27
+ {
28
+ "indexed": false,
29
+ "internalType": "uint256",
30
+ "name": "challengedSegmentLength",
31
+ "type": "uint256"
32
+ },
33
+ {
34
+ "indexed": false,
35
+ "internalType": "bytes32[]",
36
+ "name": "chainHashes",
37
+ "type": "bytes32[]"
38
+ }
39
+ ],
40
+ "name": "Bisected",
41
+ "type": "event"
42
+ },
43
+ {
44
+ "anonymous": false,
45
+ "inputs": [
46
+ {
47
+ "indexed": true,
48
+ "internalType": "uint64",
49
+ "name": "challengeIndex",
50
+ "type": "uint64"
51
+ },
52
+ {
53
+ "indexed": false,
54
+ "internalType": "enum IChallengeManager.ChallengeTerminationType",
55
+ "name": "kind",
56
+ "type": "uint8"
57
+ }
58
+ ],
59
+ "name": "ChallengeEnded",
60
+ "type": "event"
61
+ },
62
+ {
63
+ "anonymous": false,
64
+ "inputs": [
65
+ {
66
+ "indexed": true,
67
+ "internalType": "uint64",
68
+ "name": "challengeIndex",
69
+ "type": "uint64"
70
+ },
71
+ {
72
+ "indexed": false,
73
+ "internalType": "uint256",
74
+ "name": "blockSteps",
75
+ "type": "uint256"
76
+ }
77
+ ],
78
+ "name": "ExecutionChallengeBegun",
79
+ "type": "event"
80
+ },
81
+ {
82
+ "anonymous": false,
83
+ "inputs": [
84
+ {
85
+ "indexed": true,
86
+ "internalType": "uint64",
87
+ "name": "challengeIndex",
88
+ "type": "uint64"
89
+ },
90
+ {
91
+ "components": [
92
+ {
93
+ "internalType": "bytes32[2]",
94
+ "name": "bytes32Vals",
95
+ "type": "bytes32[2]"
96
+ },
97
+ {
98
+ "internalType": "uint64[2]",
99
+ "name": "u64Vals",
100
+ "type": "uint64[2]"
101
+ }
102
+ ],
103
+ "indexed": false,
104
+ "internalType": "struct GlobalState",
105
+ "name": "startState",
106
+ "type": "tuple"
107
+ },
108
+ {
109
+ "components": [
110
+ {
111
+ "internalType": "bytes32[2]",
112
+ "name": "bytes32Vals",
113
+ "type": "bytes32[2]"
114
+ },
115
+ {
116
+ "internalType": "uint64[2]",
117
+ "name": "u64Vals",
118
+ "type": "uint64[2]"
119
+ }
120
+ ],
121
+ "indexed": false,
122
+ "internalType": "struct GlobalState",
123
+ "name": "endState",
124
+ "type": "tuple"
125
+ }
126
+ ],
127
+ "name": "InitiatedChallenge",
128
+ "type": "event"
129
+ },
130
+ {
131
+ "anonymous": false,
132
+ "inputs": [
133
+ {
134
+ "indexed": true,
135
+ "internalType": "uint64",
136
+ "name": "challengeIndex",
137
+ "type": "uint64"
138
+ }
139
+ ],
140
+ "name": "OneStepProofCompleted",
141
+ "type": "event"
142
+ },
143
+ {
144
+ "inputs": [
145
+ {
146
+ "internalType": "uint64",
147
+ "name": "challengeIndex",
148
+ "type": "uint64"
149
+ },
150
+ {
151
+ "components": [
152
+ {
153
+ "internalType": "uint256",
154
+ "name": "oldSegmentsStart",
155
+ "type": "uint256"
156
+ },
157
+ {
158
+ "internalType": "uint256",
159
+ "name": "oldSegmentsLength",
160
+ "type": "uint256"
161
+ },
162
+ {
163
+ "internalType": "bytes32[]",
164
+ "name": "oldSegments",
165
+ "type": "bytes32[]"
166
+ },
167
+ {
168
+ "internalType": "uint256",
169
+ "name": "challengePosition",
170
+ "type": "uint256"
171
+ }
172
+ ],
173
+ "internalType": "struct ChallengeLib.SegmentSelection",
174
+ "name": "selection",
175
+ "type": "tuple"
176
+ },
177
+ {
178
+ "internalType": "bytes32[]",
179
+ "name": "newSegments",
180
+ "type": "bytes32[]"
181
+ }
182
+ ],
183
+ "name": "bisectExecution",
184
+ "outputs": [],
185
+ "stateMutability": "nonpayable",
186
+ "type": "function"
187
+ },
188
+ {
189
+ "inputs": [],
190
+ "name": "bridge",
191
+ "outputs": [
192
+ {
193
+ "internalType": "contract IBridge",
194
+ "name": "",
195
+ "type": "address"
196
+ }
197
+ ],
198
+ "stateMutability": "view",
199
+ "type": "function"
200
+ },
201
+ {
202
+ "inputs": [
203
+ {
204
+ "internalType": "uint64",
205
+ "name": "challengeIndex",
206
+ "type": "uint64"
207
+ },
208
+ {
209
+ "components": [
210
+ {
211
+ "internalType": "uint256",
212
+ "name": "oldSegmentsStart",
213
+ "type": "uint256"
214
+ },
215
+ {
216
+ "internalType": "uint256",
217
+ "name": "oldSegmentsLength",
218
+ "type": "uint256"
219
+ },
220
+ {
221
+ "internalType": "bytes32[]",
222
+ "name": "oldSegments",
223
+ "type": "bytes32[]"
224
+ },
225
+ {
226
+ "internalType": "uint256",
227
+ "name": "challengePosition",
228
+ "type": "uint256"
229
+ }
230
+ ],
231
+ "internalType": "struct ChallengeLib.SegmentSelection",
232
+ "name": "selection",
233
+ "type": "tuple"
234
+ },
235
+ {
236
+ "internalType": "enum MachineStatus[2]",
237
+ "name": "machineStatuses",
238
+ "type": "uint8[2]"
239
+ },
240
+ {
241
+ "internalType": "bytes32[2]",
242
+ "name": "globalStateHashes",
243
+ "type": "bytes32[2]"
244
+ },
245
+ {
246
+ "internalType": "uint256",
247
+ "name": "numSteps",
248
+ "type": "uint256"
249
+ }
250
+ ],
251
+ "name": "challengeExecution",
252
+ "outputs": [],
253
+ "stateMutability": "nonpayable",
254
+ "type": "function"
255
+ },
256
+ {
257
+ "inputs": [
258
+ {
259
+ "internalType": "uint64",
260
+ "name": "challengeIndex",
261
+ "type": "uint64"
262
+ }
263
+ ],
264
+ "name": "challengeInfo",
265
+ "outputs": [
266
+ {
267
+ "components": [
268
+ {
269
+ "components": [
270
+ {
271
+ "internalType": "address",
272
+ "name": "addr",
273
+ "type": "address"
274
+ },
275
+ {
276
+ "internalType": "uint256",
277
+ "name": "timeLeft",
278
+ "type": "uint256"
279
+ }
280
+ ],
281
+ "internalType": "struct ChallengeLib.Participant",
282
+ "name": "current",
283
+ "type": "tuple"
284
+ },
285
+ {
286
+ "components": [
287
+ {
288
+ "internalType": "address",
289
+ "name": "addr",
290
+ "type": "address"
291
+ },
292
+ {
293
+ "internalType": "uint256",
294
+ "name": "timeLeft",
295
+ "type": "uint256"
296
+ }
297
+ ],
298
+ "internalType": "struct ChallengeLib.Participant",
299
+ "name": "next",
300
+ "type": "tuple"
301
+ },
302
+ {
303
+ "internalType": "uint256",
304
+ "name": "lastMoveTimestamp",
305
+ "type": "uint256"
306
+ },
307
+ {
308
+ "internalType": "bytes32",
309
+ "name": "wasmModuleRoot",
310
+ "type": "bytes32"
311
+ },
312
+ {
313
+ "internalType": "bytes32",
314
+ "name": "challengeStateHash",
315
+ "type": "bytes32"
316
+ },
317
+ {
318
+ "internalType": "uint64",
319
+ "name": "maxInboxMessages",
320
+ "type": "uint64"
321
+ },
322
+ {
323
+ "internalType": "enum ChallengeLib.ChallengeMode",
324
+ "name": "mode",
325
+ "type": "uint8"
326
+ }
327
+ ],
328
+ "internalType": "struct ChallengeLib.Challenge",
329
+ "name": "",
330
+ "type": "tuple"
331
+ }
332
+ ],
333
+ "stateMutability": "view",
334
+ "type": "function"
335
+ },
336
+ {
337
+ "inputs": [
338
+ {
339
+ "internalType": "uint256",
340
+ "name": "",
341
+ "type": "uint256"
342
+ }
343
+ ],
344
+ "name": "challenges",
345
+ "outputs": [
346
+ {
347
+ "components": [
348
+ {
349
+ "internalType": "address",
350
+ "name": "addr",
351
+ "type": "address"
352
+ },
353
+ {
354
+ "internalType": "uint256",
355
+ "name": "timeLeft",
356
+ "type": "uint256"
357
+ }
358
+ ],
359
+ "internalType": "struct ChallengeLib.Participant",
360
+ "name": "current",
361
+ "type": "tuple"
362
+ },
363
+ {
364
+ "components": [
365
+ {
366
+ "internalType": "address",
367
+ "name": "addr",
368
+ "type": "address"
369
+ },
370
+ {
371
+ "internalType": "uint256",
372
+ "name": "timeLeft",
373
+ "type": "uint256"
374
+ }
375
+ ],
376
+ "internalType": "struct ChallengeLib.Participant",
377
+ "name": "next",
378
+ "type": "tuple"
379
+ },
380
+ {
381
+ "internalType": "uint256",
382
+ "name": "lastMoveTimestamp",
383
+ "type": "uint256"
384
+ },
385
+ {
386
+ "internalType": "bytes32",
387
+ "name": "wasmModuleRoot",
388
+ "type": "bytes32"
389
+ },
390
+ {
391
+ "internalType": "bytes32",
392
+ "name": "challengeStateHash",
393
+ "type": "bytes32"
394
+ },
395
+ {
396
+ "internalType": "uint64",
397
+ "name": "maxInboxMessages",
398
+ "type": "uint64"
399
+ },
400
+ {
401
+ "internalType": "enum ChallengeLib.ChallengeMode",
402
+ "name": "mode",
403
+ "type": "uint8"
404
+ }
405
+ ],
406
+ "stateMutability": "view",
407
+ "type": "function"
408
+ },
409
+ {
410
+ "inputs": [
411
+ {
412
+ "internalType": "uint64",
413
+ "name": "challengeIndex",
414
+ "type": "uint64"
415
+ }
416
+ ],
417
+ "name": "clearChallenge",
418
+ "outputs": [],
419
+ "stateMutability": "nonpayable",
420
+ "type": "function"
421
+ },
422
+ {
423
+ "inputs": [
424
+ {
425
+ "internalType": "bytes32",
426
+ "name": "wasmModuleRoot_",
427
+ "type": "bytes32"
428
+ },
429
+ {
430
+ "internalType": "enum MachineStatus[2]",
431
+ "name": "startAndEndMachineStatuses_",
432
+ "type": "uint8[2]"
433
+ },
434
+ {
435
+ "components": [
436
+ {
437
+ "internalType": "bytes32[2]",
438
+ "name": "bytes32Vals",
439
+ "type": "bytes32[2]"
440
+ },
441
+ {
442
+ "internalType": "uint64[2]",
443
+ "name": "u64Vals",
444
+ "type": "uint64[2]"
445
+ }
446
+ ],
447
+ "internalType": "struct GlobalState[2]",
448
+ "name": "startAndEndGlobalStates_",
449
+ "type": "tuple[2]"
450
+ },
451
+ {
452
+ "internalType": "uint64",
453
+ "name": "numBlocks",
454
+ "type": "uint64"
455
+ },
456
+ {
457
+ "internalType": "address",
458
+ "name": "asserter_",
459
+ "type": "address"
460
+ },
461
+ {
462
+ "internalType": "address",
463
+ "name": "challenger_",
464
+ "type": "address"
465
+ },
466
+ {
467
+ "internalType": "uint256",
468
+ "name": "asserterTimeLeft_",
469
+ "type": "uint256"
470
+ },
471
+ {
472
+ "internalType": "uint256",
473
+ "name": "challengerTimeLeft_",
474
+ "type": "uint256"
475
+ }
476
+ ],
477
+ "name": "createChallenge",
478
+ "outputs": [
479
+ {
480
+ "internalType": "uint64",
481
+ "name": "",
482
+ "type": "uint64"
483
+ }
484
+ ],
485
+ "stateMutability": "nonpayable",
486
+ "type": "function"
487
+ },
488
+ {
489
+ "inputs": [
490
+ {
491
+ "internalType": "uint64",
492
+ "name": "challengeIndex",
493
+ "type": "uint64"
494
+ }
495
+ ],
496
+ "name": "currentResponder",
497
+ "outputs": [
498
+ {
499
+ "internalType": "address",
500
+ "name": "",
501
+ "type": "address"
502
+ }
503
+ ],
504
+ "stateMutability": "view",
505
+ "type": "function"
506
+ },
507
+ {
508
+ "inputs": [
509
+ {
510
+ "internalType": "contract IChallengeResultReceiver",
511
+ "name": "resultReceiver_",
512
+ "type": "address"
513
+ },
514
+ {
515
+ "internalType": "contract ISequencerInbox",
516
+ "name": "sequencerInbox_",
517
+ "type": "address"
518
+ },
519
+ {
520
+ "internalType": "contract IBridge",
521
+ "name": "bridge_",
522
+ "type": "address"
523
+ },
524
+ {
525
+ "internalType": "contract IOneStepProofEntry",
526
+ "name": "osp_",
527
+ "type": "address"
528
+ }
529
+ ],
530
+ "name": "initialize",
531
+ "outputs": [],
532
+ "stateMutability": "nonpayable",
533
+ "type": "function"
534
+ },
535
+ {
536
+ "inputs": [
537
+ {
538
+ "internalType": "uint64",
539
+ "name": "",
540
+ "type": "uint64"
541
+ }
542
+ ],
543
+ "name": "isTimedOut",
544
+ "outputs": [
545
+ {
546
+ "internalType": "bool",
547
+ "name": "",
548
+ "type": "bool"
549
+ }
550
+ ],
551
+ "stateMutability": "pure",
552
+ "type": "function"
553
+ },
554
+ {
555
+ "inputs": [
556
+ {
557
+ "internalType": "uint64",
558
+ "name": "challengeIndex",
559
+ "type": "uint64"
560
+ },
561
+ {
562
+ "components": [
563
+ {
564
+ "internalType": "uint256",
565
+ "name": "oldSegmentsStart",
566
+ "type": "uint256"
567
+ },
568
+ {
569
+ "internalType": "uint256",
570
+ "name": "oldSegmentsLength",
571
+ "type": "uint256"
572
+ },
573
+ {
574
+ "internalType": "bytes32[]",
575
+ "name": "oldSegments",
576
+ "type": "bytes32[]"
577
+ },
578
+ {
579
+ "internalType": "uint256",
580
+ "name": "challengePosition",
581
+ "type": "uint256"
582
+ }
583
+ ],
584
+ "internalType": "struct ChallengeLib.SegmentSelection",
585
+ "name": "selection",
586
+ "type": "tuple"
587
+ },
588
+ {
589
+ "internalType": "bytes",
590
+ "name": "proof",
591
+ "type": "bytes"
592
+ }
593
+ ],
594
+ "name": "oneStepProveExecution",
595
+ "outputs": [],
596
+ "stateMutability": "nonpayable",
597
+ "type": "function"
598
+ },
599
+ {
600
+ "inputs": [],
601
+ "name": "osp",
602
+ "outputs": [
603
+ {
604
+ "internalType": "contract IOneStepProofEntry",
605
+ "name": "",
606
+ "type": "address"
607
+ }
608
+ ],
609
+ "stateMutability": "view",
610
+ "type": "function"
611
+ },
612
+ {
613
+ "inputs": [],
614
+ "name": "resultReceiver",
615
+ "outputs": [
616
+ {
617
+ "internalType": "contract IChallengeResultReceiver",
618
+ "name": "",
619
+ "type": "address"
620
+ }
621
+ ],
622
+ "stateMutability": "view",
623
+ "type": "function"
624
+ },
625
+ {
626
+ "inputs": [],
627
+ "name": "sequencerInbox",
628
+ "outputs": [
629
+ {
630
+ "internalType": "contract ISequencerInbox",
631
+ "name": "",
632
+ "type": "address"
633
+ }
634
+ ],
635
+ "stateMutability": "view",
636
+ "type": "function"
637
+ },
638
+ {
639
+ "inputs": [
640
+ {
641
+ "internalType": "uint64",
642
+ "name": "challengeIndex",
643
+ "type": "uint64"
644
+ }
645
+ ],
646
+ "name": "timeout",
647
+ "outputs": [],
648
+ "stateMutability": "nonpayable",
649
+ "type": "function"
650
+ },
651
+ {
652
+ "inputs": [],
653
+ "name": "totalChallengesCreated",
654
+ "outputs": [
655
+ {
656
+ "internalType": "uint64",
657
+ "name": "",
658
+ "type": "uint64"
659
+ }
660
+ ],
661
+ "stateMutability": "view",
662
+ "type": "function"
663
+ }
664
+ ],
665
+ "bytecode": "0x60a06040523060805234801561001457600080fd5b50608051611cd761003060003960006109d30152611cd76000f3fe608060405234801561001057600080fd5b50600436106100e05760003560e01c80639ede42b9116100875780639ede42b914610251578063a521b03214610275578063d248d12414610288578063e78cea921461029b578063ee35f327146102ae578063f26a62c6146102c1578063f8c8765e146102d4578063fb7be0a1146102e757600080fd5b806314eab5e7146100e55780631b45c86a1461011557806323a9ef231461012a5780633504f1d71461015557806356e9df97146101685780635ef489e61461017b5780637fd07a9c1461018e5780638f1d3776146101ae575b600080fd5b6100f86100f336600461152d565b6102fa565b6040516001600160401b0390911681526020015b60405180910390f35b6101286101233660046115c0565b610602565b005b61013d6101383660046115c0565b61068a565b6040516001600160a01b03909116815260200161010c565b60025461013d906001600160a01b031681565b6101286101763660046115c0565b6106ae565b6000546100f8906001600160401b031681565b6101a161019c3660046115c0565b61081c565b60405161010c919061161d565b61023e6101bc36600461168f565b6001602081815260009283526040928390208351808501855281546001600160a01b0390811682529382015481840152845180860190955260028201549093168452600381015491840191909152600481015460058201546006830154600790930154939493919290916001600160401b03811690600160401b900460ff1687565b60405161010c97969594939291906116a8565b61026561025f3660046115c0565b50600190565b604051901515815260200161010c565b610128610283366004611705565b6108f5565b6101286102963660046117a9565b6109a0565b60045461013d906001600160a01b031681565b60035461013d906001600160a01b031681565b60055461013d906001600160a01b031681565b6101286102e236600461183b565b6109c8565b6101286102f5366004611897565b610b39565b6002546000906001600160a01b0316331461034f5760405162461bcd60e51b815260206004820152601060248201526f13d3931657d493d313155417d0d2105360821b60448201526064015b60405180910390fd5b6040805160028082526060820183526000926020830190803683370190505090506103a561038060208b018b61193b565b6103a08a60005b6080020180360381019061039b91906119fa565b610b61565b610be2565b816000815181106103b8576103b8611925565b60209081029190910101526103e78960016020020160208101906103dc919061193b565b6103a08a6001610387565b816001815181106103fa576103fa611925565b6020908102919091010152600080548190819061041f906001600160401b0316611aa8565b91906101000a8154816001600160401b0302191690836001600160401b031602179055905060006001600160401b0316816001600160401b0316141561046757610467611acf565b6001600160401b0381166000908152600160205260408120600581018d9055906104a161049c368d90038d0160808e016119fa565b610d0c565b905060026104b560408e0160208f0161193b565b60038111156104c6576104c66115f3565b14806104f4575060006104e96104e4368e90038e0160808f016119fa565b610d21565b6001600160401b0316115b15610507578061050381611aa8565b9150505b6007820180546040805180820182526001600160a01b038d811680835260209283018d90526002880180546001600160a01b03199081169092179055600388018d905583518085018552918e16808352919092018b90528654909116178555600185018990554260048601556001600160401b0384811668ffffffffffffffffff1990931692909217600160401b179092559051908416907f76604fe17af46c9b5f53ffe99ff23e0f655dab91886b07ac1fc0254319f7145a906105d1908e906080820190611b2f565b60405180910390a26105ef8360008c6001600160401b031687610d30565b5090925050505b98975050505050505050565b60006001600160401b038216600090815260016020526040902060070154600160401b900460ff16600281111561063b5761063b6115f3565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b8152509061067b5760405162461bcd60e51b81526004016103469190611b4b565b50610687816000610dc6565b50565b6001600160401b03166000908152600160205260409020546001600160a01b031690565b6002546001600160a01b031633146106fb5760405162461bcd60e51b815260206004820152601060248201526f2727aa2fa922a9afa922a1a2a4ab22a960811b6044820152606401610346565b60006001600160401b038216600090815260016020526040902060070154600160401b900460ff166002811115610734576107346115f3565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b815250906107745760405162461bcd60e51b81526004016103469190611b4b565b506001600160401b038116600081815260016020819052604080832080546001600160a01b031990811682559281018490556002810180549093169092556003808301849055600483018490556005830184905560068301939093556007909101805468ffffffffffffffffff19169055517ffdaece6c274a4b56af16761f83fd6b1062823192630ea08e019fdf9b2d747f409161081191611ba0565b60405180910390a250565b610824611488565b6001600160401b0382811660009081526001602081815260409283902083516101208101855281546001600160a01b0390811660e0830190815294830154610100830152938152845180860186526002808401549095168152600383015481850152928101929092526004810154938201939093526005830154606082015260068301546080820152600783015493841660a08201529260c0840191600160401b90910460ff16908111156108db576108db6115f3565b60028111156108ec576108ec6115f3565b90525092915050565b6001600160401b03841660009081526001602052604081208591859161091a8461068a565b6001600160a01b0316336001600160a01b0316146109685760405162461bcd60e51b815260206004820152600b60248201526a21a420a62fa9a2a72222a960a91b6044820152606401610346565b60405162461bcd60e51b815260206004820152600d60248201526c4348414c5f444541444c494e4560981b6044820152606401610346565b6001600160401b03841660009081526001602052604090208490849060029061091a8461068a565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610a565760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610346565b6002546001600160a01b031615610a9e5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b6044820152606401610346565b6001600160a01b038416610ae95760405162461bcd60e51b81526020600482015260126024820152712727afa922a9aaa62a2fa922a1a2a4ab22a960711b6044820152606401610346565b600280546001600160a01b039586166001600160a01b0319918216179091556003805494861694821694909417909355600480549285169284169290921790915560058054919093169116179055565b6001600160401b03851660009081526001602081905260409091208691869161091a8461068a565b80518051602091820151828401518051908401516040516c23b637b130b61039ba30ba329d60991b95810195909552602d850193909352604d8401919091526001600160c01b031960c091821b8116606d85015291901b166075820152600090607d015b604051602081830303815290604052805190602001209050919050565b60006001836003811115610bf857610bf86115f3565b1415610c3e576040516b213637b1b59039ba30ba329d60a11b6020820152602c8101839052604c015b604051602081830303815290604052805190602001209050610d06565b6002836003811115610c5257610c526115f3565b1415610c885760405174213637b1b59039ba30ba32961032b93937b932b21d60591b602082015260358101839052605501610c21565b6003836003811115610c9c57610c9c6115f3565b1415610ccb5760405174213637b1b59039ba30ba3296103a37b7903330b91d60591b6020820152603501610c21565b60405162461bcd60e51b815260206004820152601060248201526f4241445f424c4f434b5f53544154555360801b6044820152606401610346565b92915050565b6020810151600090815b602002015192915050565b60208101516000906001610d16565b6001821015610d4157610d41611acf565b600281511015610d5357610d53611acf565b6000610d60848484610ef4565b6001600160401b038616600081815260016020526040908190206006018390555191925082917f86b34e9455464834eca718f62d4481437603bb929d8a78ccde5d1bc79fa06d6890610db790889088908890611bba565b60405180910390a35050505050565b6001600160401b03821660008181526001602081905260408083206002808201805483546001600160a01b0319808216865596850188905595811690915560038301869055600480840187905560058401879055600684019690965560078301805468ffffffffffffffffff1916905590549251630357aa4960e01b8152948501959095526001600160a01b03948516602485018190529285166044850181905290949293909290911690630357aa4990606401600060405180830381600087803b158015610e9457600080fd5b505af1158015610ea8573d6000803e3d6000fd5b50505050846001600160401b03167ffdaece6c274a4b56af16761f83fd6b1062823192630ea08e019fdf9b2d747f4085604051610ee59190611ba0565b60405180910390a25050505050565b6000838383604051602001610f0b93929190611c0f565b6040516020818303038152906040528051906020012090505b9392505050565b6040805180820190915260008082526020820152815260200190600190039081610f2b575050604080518082018252600080825260209182018190528251808401909352600483529082015290915081600081518110610f8d57610f8d611925565b6020026020010181905250610fa2600061109c565b81600181518110610fb557610fb5611925565b6020026020010181905250610fca600061109c565b81600281518110610fdd57610fdd611925565b602090810291909101810191909152604080518083018252838152815180830190925280825260009282019290925261102d60408051606080820183529181019182529081526000602082015290565b604080518082018252606080825260006020808401829052845161012081018652828152908101879052938401859052908301829052608083018a905260a0830181905260c0830181905260e083015261010082018890529061108f816110cf565b9998505050505050505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b600080825160038111156110e5576110e56115f3565b141561119b576110f882602001516112a5565b61110583604001516112a5565b611112846060015161132a565b608085015160a086015160c087015160e0808901516101008a01516040516f26b0b1b434b73290393ab73734b7339d60811b602082015260308101999099526050890197909752607088019590955260908701939093526001600160e01b031991831b821660b0870152821b811660b486015291901b1660b883015260bc82015260dc01610bc5565b6001825160038111156111b0576111b06115f3565b14156111e85760808201516040517026b0b1b434b732903334b734b9b432b21d60791b60208201526031810191909152605101610bc5565b6002825160038111156111fd576111fd6115f3565b1415611227576040516f26b0b1b434b7329032b93937b932b21d60811b6020820152603001610bc5565b60038251600381111561123c5761123c6115f3565b1415611266576040516f26b0b1b434b732903a37b7903330b91d60811b6020820152603001610bc5565b60405162461bcd60e51b815260206004820152600f60248201526e4241445f4d4143485f53544154555360881b6044820152606401610346565b919050565b60208101518151515160005b818110156113235783516112ce906112c990836113c3565b6113fb565b6040516b2b30b63ab29039ba30b1b59d60a11b6020820152602c810191909152604c8101849052606c01604051602081830303815290604052805190602001209250808061131b90611c51565b9150506112b1565b5050919050565b602081015160005b8251518110156113bd576113628360000151828151811061135557611355611925565b6020026020010151611418565b6040517129ba30b1b590333930b6b29039ba30b1b59d60711b602082015260328101919091526052810183905260720160405160208183030381529060405280519060200120915080806113b590611c51565b915050611332565b50919050565b604080518082019091526000808252602082015282518051839081106113eb576113eb611925565b6020026020010151905092915050565b600081600001518260200151604051602001610bc5929190611c6c565b600061142782600001516113fb565b602080840151604080860151606087015191516b29ba30b1b590333930b6b29d60a11b94810194909452602c840194909452604c8301919091526001600160e01b031960e093841b8116606c840152921b9091166070820152607401610bc5565b604080516101208101909152600060e08201818152610100830191909152819081526020016114c7604080518082019091526000808252602082015290565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b8060408101831015610d0657600080fd5b80356001600160401b03811681146112a057600080fd5b6001600160a01b038116811461068757600080fd5b600080600080600080600080610200898b03121561154a57600080fd5b8835975061155b8a60208b016114f0565b965061016089018a81111561156f57600080fd5b60608a01965061157e81611501565b95505061018089013561159081611518565b93506101a08901356115a181611518565b979a96995094979396929592945050506101c0820135916101e0013590565b6000602082840312156115d257600080fd5b610f2482611501565b80516001600160a01b03168252602090810151910152565b634e487b7160e01b600052602160045260246000fd5b60038110611619576116196115f3565b9052565b6000610120820190506116318284516115db565b602083015161164360408401826115db565b5060408301516080830152606083015160a0830152608083015160c08301526001600160401b0360a08401511660e083015260c0830151611688610100840182611609565b5092915050565b6000602082840312156116a157600080fd5b5035919050565b61012081016116b7828a6115db565b6116c460408301896115db565b8660808301528560a08301528460c08301526001600160401b03841660e08301526105f6610100830184611609565b6000608082840312156113bd57600080fd5b6000806000806060858703121561171b57600080fd5b61172485611501565b935060208501356001600160401b038082111561174057600080fd5b61174c888389016116f3565b9450604087013591508082111561176257600080fd5b818701915087601f83011261177657600080fd5b81358181111561178557600080fd5b8860208260051b850101111561179a57600080fd5b95989497505060200194505050565b600080600080606085870312156117bf57600080fd5b6117c885611501565b935060208501356001600160401b03808211156117e457600080fd5b6117f0888389016116f3565b9450604087013591508082111561180657600080fd5b818701915087601f83011261181a57600080fd5b81358181111561182957600080fd5b88602082850101111561179a57600080fd5b6000806000806080858703121561185157600080fd5b843561185c81611518565b9350602085013561186c81611518565b9250604085013561187c81611518565b9150606085013561188c81611518565b939692955090935050565b600080600080600060e086880312156118af57600080fd5b6118b886611501565b945060208601356001600160401b038111156118d357600080fd5b6118df888289016116f3565b9450506118ef87604088016114f0565b92506118fe87608088016114f0565b9497939650919460c0013592915050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561194d57600080fd5b813560048110610f2457600080fd5b604080519081016001600160401b038111828210171561197e5761197e61190f565b60405290565b600082601f83011261199557600080fd5b604051604081018181106001600160401b03821117156119b7576119b761190f565b80604052508060408401858111156119ce57600080fd5b845b818110156119ef576119e181611501565b8352602092830192016119d0565b509195945050505050565b600060808284031215611a0c57600080fd5b604051604081018181106001600160401b0382111715611a2e57611a2e61190f565b604052601f83018413611a4057600080fd5b611a4861195c565b806040850186811115611a5a57600080fd5b855b81811015611a74578035845260209384019301611a5c565b50818452611a828782611984565b6020850152509195945050505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160401b0380831681811415611ac557611ac5611a92565b6001019392505050565b634e487b7160e01b600052600160045260246000fd5b604081833760006040838101828152908301915b6002811015611b28576001600160401b03611b1384611501565b16825260209283019290910190600101611af9565b5050505050565b6101008101611b3e8285611ae5565b610f246080830184611ae5565b600060208083528351808285015260005b81811015611b7857858101830151858201604001528201611b5c565b81811115611b8a576000604083870101525b50601f01601f1916929092016040019392505050565b6020810160048310611bb457611bb46115f3565b91905290565b6000606082018583526020858185015260606040850152818551808452608086019150828701935060005b81811015611c0157845183529383019391830191600101611be5565b509098975050505050505050565b83815260006020848184015260408301845182860160005b82811015611c4357815184529284019290840190600101611c27565b509198975050505050505050565b6000600019821415611c6557611c65611a92565b5060010190565b652b30b63ab29d60d11b8152600060078410611c8a57611c8a6115f3565b5060f89290921b600683015260078201526027019056fea26469706673582212201cbe49877c1a0d2a888bd7902a1720c02c0076c988d744812a3ff88f2714f57864736f6c63430008090033",
666
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100e05760003560e01c80639ede42b9116100875780639ede42b914610251578063a521b03214610275578063d248d12414610288578063e78cea921461029b578063ee35f327146102ae578063f26a62c6146102c1578063f8c8765e146102d4578063fb7be0a1146102e757600080fd5b806314eab5e7146100e55780631b45c86a1461011557806323a9ef231461012a5780633504f1d71461015557806356e9df97146101685780635ef489e61461017b5780637fd07a9c1461018e5780638f1d3776146101ae575b600080fd5b6100f86100f336600461152d565b6102fa565b6040516001600160401b0390911681526020015b60405180910390f35b6101286101233660046115c0565b610602565b005b61013d6101383660046115c0565b61068a565b6040516001600160a01b03909116815260200161010c565b60025461013d906001600160a01b031681565b6101286101763660046115c0565b6106ae565b6000546100f8906001600160401b031681565b6101a161019c3660046115c0565b61081c565b60405161010c919061161d565b61023e6101bc36600461168f565b6001602081815260009283526040928390208351808501855281546001600160a01b0390811682529382015481840152845180860190955260028201549093168452600381015491840191909152600481015460058201546006830154600790930154939493919290916001600160401b03811690600160401b900460ff1687565b60405161010c97969594939291906116a8565b61026561025f3660046115c0565b50600190565b604051901515815260200161010c565b610128610283366004611705565b6108f5565b6101286102963660046117a9565b6109a0565b60045461013d906001600160a01b031681565b60035461013d906001600160a01b031681565b60055461013d906001600160a01b031681565b6101286102e236600461183b565b6109c8565b6101286102f5366004611897565b610b39565b6002546000906001600160a01b0316331461034f5760405162461bcd60e51b815260206004820152601060248201526f13d3931657d493d313155417d0d2105360821b60448201526064015b60405180910390fd5b6040805160028082526060820183526000926020830190803683370190505090506103a561038060208b018b61193b565b6103a08a60005b6080020180360381019061039b91906119fa565b610b61565b610be2565b816000815181106103b8576103b8611925565b60209081029190910101526103e78960016020020160208101906103dc919061193b565b6103a08a6001610387565b816001815181106103fa576103fa611925565b6020908102919091010152600080548190819061041f906001600160401b0316611aa8565b91906101000a8154816001600160401b0302191690836001600160401b031602179055905060006001600160401b0316816001600160401b0316141561046757610467611acf565b6001600160401b0381166000908152600160205260408120600581018d9055906104a161049c368d90038d0160808e016119fa565b610d0c565b905060026104b560408e0160208f0161193b565b60038111156104c6576104c66115f3565b14806104f4575060006104e96104e4368e90038e0160808f016119fa565b610d21565b6001600160401b0316115b15610507578061050381611aa8565b9150505b6007820180546040805180820182526001600160a01b038d811680835260209283018d90526002880180546001600160a01b03199081169092179055600388018d905583518085018552918e16808352919092018b90528654909116178555600185018990554260048601556001600160401b0384811668ffffffffffffffffff1990931692909217600160401b179092559051908416907f76604fe17af46c9b5f53ffe99ff23e0f655dab91886b07ac1fc0254319f7145a906105d1908e906080820190611b2f565b60405180910390a26105ef8360008c6001600160401b031687610d30565b5090925050505b98975050505050505050565b60006001600160401b038216600090815260016020526040902060070154600160401b900460ff16600281111561063b5761063b6115f3565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b8152509061067b5760405162461bcd60e51b81526004016103469190611b4b565b50610687816000610dc6565b50565b6001600160401b03166000908152600160205260409020546001600160a01b031690565b6002546001600160a01b031633146106fb5760405162461bcd60e51b815260206004820152601060248201526f2727aa2fa922a9afa922a1a2a4ab22a960811b6044820152606401610346565b60006001600160401b038216600090815260016020526040902060070154600160401b900460ff166002811115610734576107346115f3565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b815250906107745760405162461bcd60e51b81526004016103469190611b4b565b506001600160401b038116600081815260016020819052604080832080546001600160a01b031990811682559281018490556002810180549093169092556003808301849055600483018490556005830184905560068301939093556007909101805468ffffffffffffffffff19169055517ffdaece6c274a4b56af16761f83fd6b1062823192630ea08e019fdf9b2d747f409161081191611ba0565b60405180910390a250565b610824611488565b6001600160401b0382811660009081526001602081815260409283902083516101208101855281546001600160a01b0390811660e0830190815294830154610100830152938152845180860186526002808401549095168152600383015481850152928101929092526004810154938201939093526005830154606082015260068301546080820152600783015493841660a08201529260c0840191600160401b90910460ff16908111156108db576108db6115f3565b60028111156108ec576108ec6115f3565b90525092915050565b6001600160401b03841660009081526001602052604081208591859161091a8461068a565b6001600160a01b0316336001600160a01b0316146109685760405162461bcd60e51b815260206004820152600b60248201526a21a420a62fa9a2a72222a960a91b6044820152606401610346565b60405162461bcd60e51b815260206004820152600d60248201526c4348414c5f444541444c494e4560981b6044820152606401610346565b6001600160401b03841660009081526001602052604090208490849060029061091a8461068a565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610a565760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610346565b6002546001600160a01b031615610a9e5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b6044820152606401610346565b6001600160a01b038416610ae95760405162461bcd60e51b81526020600482015260126024820152712727afa922a9aaa62a2fa922a1a2a4ab22a960711b6044820152606401610346565b600280546001600160a01b039586166001600160a01b0319918216179091556003805494861694821694909417909355600480549285169284169290921790915560058054919093169116179055565b6001600160401b03851660009081526001602081905260409091208691869161091a8461068a565b80518051602091820151828401518051908401516040516c23b637b130b61039ba30ba329d60991b95810195909552602d850193909352604d8401919091526001600160c01b031960c091821b8116606d85015291901b166075820152600090607d015b604051602081830303815290604052805190602001209050919050565b60006001836003811115610bf857610bf86115f3565b1415610c3e576040516b213637b1b59039ba30ba329d60a11b6020820152602c8101839052604c015b604051602081830303815290604052805190602001209050610d06565b6002836003811115610c5257610c526115f3565b1415610c885760405174213637b1b59039ba30ba32961032b93937b932b21d60591b602082015260358101839052605501610c21565b6003836003811115610c9c57610c9c6115f3565b1415610ccb5760405174213637b1b59039ba30ba3296103a37b7903330b91d60591b6020820152603501610c21565b60405162461bcd60e51b815260206004820152601060248201526f4241445f424c4f434b5f53544154555360801b6044820152606401610346565b92915050565b6020810151600090815b602002015192915050565b60208101516000906001610d16565b6001821015610d4157610d41611acf565b600281511015610d5357610d53611acf565b6000610d60848484610ef4565b6001600160401b038616600081815260016020526040908190206006018390555191925082917f86b34e9455464834eca718f62d4481437603bb929d8a78ccde5d1bc79fa06d6890610db790889088908890611bba565b60405180910390a35050505050565b6001600160401b03821660008181526001602081905260408083206002808201805483546001600160a01b0319808216865596850188905595811690915560038301869055600480840187905560058401879055600684019690965560078301805468ffffffffffffffffff1916905590549251630357aa4960e01b8152948501959095526001600160a01b03948516602485018190529285166044850181905290949293909290911690630357aa4990606401600060405180830381600087803b158015610e9457600080fd5b505af1158015610ea8573d6000803e3d6000fd5b50505050846001600160401b03167ffdaece6c274a4b56af16761f83fd6b1062823192630ea08e019fdf9b2d747f4085604051610ee59190611ba0565b60405180910390a25050505050565b6000838383604051602001610f0b93929190611c0f565b6040516020818303038152906040528051906020012090505b9392505050565b6040805180820190915260008082526020820152815260200190600190039081610f2b575050604080518082018252600080825260209182018190528251808401909352600483529082015290915081600081518110610f8d57610f8d611925565b6020026020010181905250610fa2600061109c565b81600181518110610fb557610fb5611925565b6020026020010181905250610fca600061109c565b81600281518110610fdd57610fdd611925565b602090810291909101810191909152604080518083018252838152815180830190925280825260009282019290925261102d60408051606080820183529181019182529081526000602082015290565b604080518082018252606080825260006020808401829052845161012081018652828152908101879052938401859052908301829052608083018a905260a0830181905260c0830181905260e083015261010082018890529061108f816110cf565b9998505050505050505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b600080825160038111156110e5576110e56115f3565b141561119b576110f882602001516112a5565b61110583604001516112a5565b611112846060015161132a565b608085015160a086015160c087015160e0808901516101008a01516040516f26b0b1b434b73290393ab73734b7339d60811b602082015260308101999099526050890197909752607088019590955260908701939093526001600160e01b031991831b821660b0870152821b811660b486015291901b1660b883015260bc82015260dc01610bc5565b6001825160038111156111b0576111b06115f3565b14156111e85760808201516040517026b0b1b434b732903334b734b9b432b21d60791b60208201526031810191909152605101610bc5565b6002825160038111156111fd576111fd6115f3565b1415611227576040516f26b0b1b434b7329032b93937b932b21d60811b6020820152603001610bc5565b60038251600381111561123c5761123c6115f3565b1415611266576040516f26b0b1b434b732903a37b7903330b91d60811b6020820152603001610bc5565b60405162461bcd60e51b815260206004820152600f60248201526e4241445f4d4143485f53544154555360881b6044820152606401610346565b919050565b60208101518151515160005b818110156113235783516112ce906112c990836113c3565b6113fb565b6040516b2b30b63ab29039ba30b1b59d60a11b6020820152602c810191909152604c8101849052606c01604051602081830303815290604052805190602001209250808061131b90611c51565b9150506112b1565b5050919050565b602081015160005b8251518110156113bd576113628360000151828151811061135557611355611925565b6020026020010151611418565b6040517129ba30b1b590333930b6b29039ba30b1b59d60711b602082015260328101919091526052810183905260720160405160208183030381529060405280519060200120915080806113b590611c51565b915050611332565b50919050565b604080518082019091526000808252602082015282518051839081106113eb576113eb611925565b6020026020010151905092915050565b600081600001518260200151604051602001610bc5929190611c6c565b600061142782600001516113fb565b602080840151604080860151606087015191516b29ba30b1b590333930b6b29d60a11b94810194909452602c840194909452604c8301919091526001600160e01b031960e093841b8116606c840152921b9091166070820152607401610bc5565b604080516101208101909152600060e08201818152610100830191909152819081526020016114c7604080518082019091526000808252602082015290565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b8060408101831015610d0657600080fd5b80356001600160401b03811681146112a057600080fd5b6001600160a01b038116811461068757600080fd5b600080600080600080600080610200898b03121561154a57600080fd5b8835975061155b8a60208b016114f0565b965061016089018a81111561156f57600080fd5b60608a01965061157e81611501565b95505061018089013561159081611518565b93506101a08901356115a181611518565b979a96995094979396929592945050506101c0820135916101e0013590565b6000602082840312156115d257600080fd5b610f2482611501565b80516001600160a01b03168252602090810151910152565b634e487b7160e01b600052602160045260246000fd5b60038110611619576116196115f3565b9052565b6000610120820190506116318284516115db565b602083015161164360408401826115db565b5060408301516080830152606083015160a0830152608083015160c08301526001600160401b0360a08401511660e083015260c0830151611688610100840182611609565b5092915050565b6000602082840312156116a157600080fd5b5035919050565b61012081016116b7828a6115db565b6116c460408301896115db565b8660808301528560a08301528460c08301526001600160401b03841660e08301526105f6610100830184611609565b6000608082840312156113bd57600080fd5b6000806000806060858703121561171b57600080fd5b61172485611501565b935060208501356001600160401b038082111561174057600080fd5b61174c888389016116f3565b9450604087013591508082111561176257600080fd5b818701915087601f83011261177657600080fd5b81358181111561178557600080fd5b8860208260051b850101111561179a57600080fd5b95989497505060200194505050565b600080600080606085870312156117bf57600080fd5b6117c885611501565b935060208501356001600160401b03808211156117e457600080fd5b6117f0888389016116f3565b9450604087013591508082111561180657600080fd5b818701915087601f83011261181a57600080fd5b81358181111561182957600080fd5b88602082850101111561179a57600080fd5b6000806000806080858703121561185157600080fd5b843561185c81611518565b9350602085013561186c81611518565b9250604085013561187c81611518565b9150606085013561188c81611518565b939692955090935050565b600080600080600060e086880312156118af57600080fd5b6118b886611501565b945060208601356001600160401b038111156118d357600080fd5b6118df888289016116f3565b9450506118ef87604088016114f0565b92506118fe87608088016114f0565b9497939650919460c0013592915050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561194d57600080fd5b813560048110610f2457600080fd5b604080519081016001600160401b038111828210171561197e5761197e61190f565b60405290565b600082601f83011261199557600080fd5b604051604081018181106001600160401b03821117156119b7576119b761190f565b80604052508060408401858111156119ce57600080fd5b845b818110156119ef576119e181611501565b8352602092830192016119d0565b509195945050505050565b600060808284031215611a0c57600080fd5b604051604081018181106001600160401b0382111715611a2e57611a2e61190f565b604052601f83018413611a4057600080fd5b611a4861195c565b806040850186811115611a5a57600080fd5b855b81811015611a74578035845260209384019301611a5c565b50818452611a828782611984565b6020850152509195945050505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160401b0380831681811415611ac557611ac5611a92565b6001019392505050565b634e487b7160e01b600052600160045260246000fd5b604081833760006040838101828152908301915b6002811015611b28576001600160401b03611b1384611501565b16825260209283019290910190600101611af9565b5050505050565b6101008101611b3e8285611ae5565b610f246080830184611ae5565b600060208083528351808285015260005b81811015611b7857858101830151858201604001528201611b5c565b81811115611b8a576000604083870101525b50601f01601f1916929092016040019392505050565b6020810160048310611bb457611bb46115f3565b91905290565b6000606082018583526020858185015260606040850152818551808452608086019150828701935060005b81811015611c0157845183529383019391830191600101611be5565b509098975050505050505050565b83815260006020848184015260408301845182860160005b82811015611c4357815184529284019290840190600101611c27565b509198975050505050505050565b6000600019821415611c6557611c65611a92565b5060010190565b652b30b63ab29d60d11b8152600060078410611c8a57611c8a6115f3565b5060f89290921b600683015260078201526027019056fea26469706673582212201cbe49877c1a0d2a888bd7902a1720c02c0076c988d744812a3ff88f2714f57864736f6c63430008090033",
667
+ "linkReferences": {},
668
+ "deployedLinkReferences": {}
669
+ }