@arbitrum/nitro-contracts 2.1.0 → 3.0.0-alpha.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (503) hide show
  1. package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
  2. package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +1 -1
  3. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +1 -1
  4. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.json +2 -2
  5. package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
  6. package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
  7. package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
  8. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +1 -1
  9. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +2 -2
  10. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
  11. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +2 -2
  12. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
  13. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +2 -2
  14. package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
  15. package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
  16. package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
  17. package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +2 -2
  18. package/build/contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  19. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
  20. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.dbg.json +4 -0
  21. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.json +86 -0
  22. package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  23. package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.json +2 -2
  24. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  25. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.json +2 -2
  26. package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  27. package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.dbg.json +4 -0
  28. package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.json +10 -0
  29. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
  30. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +2 -2
  31. package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +1 -1
  32. package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +2 -2
  33. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +1 -1
  34. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.json +13 -0
  35. package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +1 -1
  36. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  37. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.json +13 -0
  38. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  39. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.json +15 -1
  40. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
  41. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.json +13 -0
  42. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  43. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +2 -2
  44. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  45. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.json +15 -1
  46. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.dbg.json +4 -0
  47. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.json +10 -0
  48. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +1 -1
  49. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.json +2 -2
  50. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +1 -1
  51. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.json +2 -2
  52. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +1 -1
  53. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.json +13 -0
  54. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +1 -1
  55. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.dbg.json +4 -0
  56. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.json +10 -0
  57. package/build/contracts/src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.dbg.json +4 -0
  58. package/build/contracts/{@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.json → src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.json} +41 -95
  59. package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.dbg.json +4 -0
  60. package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.json +340 -0
  61. package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.dbg.json +4 -0
  62. package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.json +89 -0
  63. package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.dbg.json +4 -0
  64. package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.json +248 -0
  65. package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.dbg.json +4 -0
  66. package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.json +83 -0
  67. package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.dbg.json +4 -0
  68. package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.json +16 -0
  69. package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.dbg.json +4 -0
  70. package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.json +140 -0
  71. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.dbg.json +4 -0
  72. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.json +324 -0
  73. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.dbg.json +4 -0
  74. package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.json +84 -0
  75. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.dbg.json +4 -0
  76. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.json +232 -0
  77. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.dbg.json +4 -0
  78. package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.json +78 -0
  79. package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
  80. package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.json +13 -0
  81. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
  82. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.json +20 -7
  83. package/build/contracts/src/bridge/AbsOutbox.sol/AbsOutbox.dbg.json +1 -1
  84. package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  85. package/build/contracts/src/bridge/Bridge.sol/Bridge.json +15 -2
  86. package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.dbg.json +4 -0
  87. package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.json +24 -0
  88. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
  89. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.json +15 -2
  90. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
  91. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.json +22 -9
  92. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
  93. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.json +2 -2
  94. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +1 -1
  95. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.json +2 -2
  96. package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +1 -1
  97. package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +1 -1
  98. package/build/contracts/src/bridge/IERC20Bridge.sol/IERC20Bridge.dbg.json +1 -1
  99. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.dbg.json +1 -1
  100. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.json +1 -1
  101. package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
  102. package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
  103. package/build/contracts/src/bridge/IInbox.sol/IInbox.json +1 -1
  104. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
  105. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.json +1 -1
  106. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
  107. package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
  108. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
  109. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.json +441 -0
  110. package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
  111. package/build/contracts/src/bridge/Inbox.sol/Inbox.json +22 -4
  112. package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
  113. package/build/contracts/src/bridge/Messages.sol/Messages.json +2 -2
  114. package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +1 -1
  115. package/build/contracts/src/bridge/Outbox.sol/Outbox.json +2 -2
  116. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +1 -1
  117. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +564 -7
  118. package/build/contracts/src/chain/CacheManager.sol/CacheManager.dbg.json +1 -1
  119. package/build/contracts/src/chain/CacheManager.sol/CacheManager.json +15 -2
  120. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/EdgeChallengeManager.dbg.json +4 -0
  121. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/EdgeChallengeManager.json +1631 -0
  122. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/IEdgeChallengeManager.dbg.json +4 -0
  123. package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/IEdgeChallengeManager.json +762 -0
  124. package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.dbg.json +4 -0
  125. package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.json +247 -0
  126. package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.dbg.json +4 -0
  127. package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.json +10 -0
  128. package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.dbg.json +4 -0
  129. package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.json +10 -0
  130. package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.dbg.json +4 -0
  131. package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.json +24 -0
  132. package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.dbg.json +4 -0
  133. package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.json +24 -0
  134. package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.dbg.json +4 -0
  135. package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.json +10 -0
  136. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
  137. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.json +2 -2
  138. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
  139. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.json +2 -2
  140. package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +1 -1
  141. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +1 -1
  142. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.json +2 -2
  143. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
  144. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.json +2 -2
  145. package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.dbg.json +1 -1
  146. package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.json +2 -2
  147. package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
  148. package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
  149. package/build/contracts/src/libraries/GasRefundEnabled.sol/GasRefundEnabled.dbg.json +1 -1
  150. package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
  151. package/build/contracts/src/libraries/IReader4844.sol/IReader4844.dbg.json +1 -1
  152. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
  153. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +2 -2
  154. package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
  155. package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.dbg.json +1 -1
  156. package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.json +2 -2
  157. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  158. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +8 -8
  159. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
  160. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +28 -2
  161. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
  162. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +2 -2
  163. package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.dbg.json +4 -0
  164. package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.json +227 -0
  165. package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.dbg.json +4 -0
  166. package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.json +133 -0
  167. package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.dbg.json +1 -1
  168. package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.json +2 -2
  169. package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.dbg.json +1 -1
  170. package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.json +2 -2
  171. package/build/contracts/src/mocks/Program.sol/ProgramTest.dbg.json +1 -1
  172. package/build/contracts/src/mocks/Program.sol/ProgramTest.json +2 -2
  173. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +1 -1
  174. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.json +2 -2
  175. package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.dbg.json +1 -1
  176. package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.json +2 -2
  177. package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.dbg.json +4 -0
  178. package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.json +1632 -0
  179. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
  180. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +564 -7
  181. package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +1 -1
  182. package/build/contracts/src/mocks/Simple.sol/Simple.json +2 -2
  183. package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.dbg.json +1 -1
  184. package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.json +2 -2
  185. package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.dbg.json +4 -0
  186. package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.json +142 -0
  187. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +1 -1
  188. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.json +2 -2
  189. package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.dbg.json +4 -0
  190. package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.json +31 -0
  191. package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.dbg.json +4 -0
  192. package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.json +317 -0
  193. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +1 -1
  194. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.json +15 -2
  195. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
  196. package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
  197. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
  198. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.json +2 -2
  199. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
  200. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.json +33 -9
  201. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +1 -1
  202. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.json +2 -2
  203. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +1 -1
  204. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.json +5 -0
  205. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
  206. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +35 -11
  207. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
  208. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +7 -2
  209. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
  210. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +7 -2
  211. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
  212. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +7 -2
  213. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
  214. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +7 -2
  215. package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +1 -1
  216. package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +1 -1
  217. package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +1 -1
  218. package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +1 -1
  219. package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +1 -1
  220. package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +1 -1
  221. package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +1 -1
  222. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +1 -1
  223. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
  224. package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
  225. package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
  226. package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
  227. package/build/contracts/src/precompiles/ArbWasm.sol/ArbWasm.dbg.json +1 -1
  228. package/build/contracts/src/precompiles/ArbWasmCache.sol/ArbWasmCache.dbg.json +1 -1
  229. package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
  230. package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
  231. package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
  232. package/build/contracts/src/rollup/Assertion.sol/AssertionNodeLib.dbg.json +4 -0
  233. package/build/contracts/src/rollup/{Node.sol/NodeLib.json → Assertion.sol/AssertionNodeLib.json} +4 -4
  234. package/build/contracts/src/rollup/AssertionState.sol/AssertionStateLib.dbg.json +4 -0
  235. package/build/contracts/src/{challenge/ChallengeLib.sol/ChallengeLib.json → rollup/AssertionState.sol/AssertionStateLib.json} +4 -4
  236. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.dbg.json +4 -0
  237. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.json +807 -0
  238. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.dbg.json +4 -0
  239. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.json +35 -0
  240. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.dbg.json +4 -0
  241. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.json +361 -0
  242. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.dbg.json +4 -0
  243. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.json +38 -0
  244. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.dbg.json +4 -0
  245. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.json +41 -0
  246. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/RollupReader.dbg.json +4 -0
  247. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/RollupReader.json +385 -0
  248. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.dbg.json +4 -0
  249. package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.json +203 -0
  250. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
  251. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +62 -10
  252. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +1 -1
  253. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +2 -2
  254. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
  255. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.json +2 -2
  256. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.dbg.json +1 -1
  257. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.json +2 -2
  258. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IDeployHelper.dbg.json +1 -1
  259. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20.dbg.json +1 -1
  260. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20Bridge.dbg.json +1 -1
  261. package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IInboxBase.dbg.json +1 -1
  262. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
  263. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.json +473 -99
  264. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
  265. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.json +315 -221
  266. package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
  267. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
  268. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.json +678 -499
  269. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
  270. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +806 -435
  271. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
  272. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.json +323 -235
  273. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
  274. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +98 -36
  275. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +1 -1
  276. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.json +2 -2
  277. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +1 -1
  278. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.json +2 -2
  279. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +1 -1
  280. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +97 -16
  281. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
  282. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +924 -535
  283. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
  284. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +15 -43
  285. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +1 -1
  286. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +2 -2
  287. package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +1 -1
  288. package/build/contracts/src/state/Deserialize.sol/Deserialize.json +2 -2
  289. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
  290. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.json +2 -2
  291. package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
  292. package/build/contracts/src/state/Instructions.sol/Instructions.json +2 -2
  293. package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
  294. package/build/contracts/src/state/Machine.sol/MachineLib.json +2 -2
  295. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
  296. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.json +2 -2
  297. package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
  298. package/build/contracts/src/state/Module.sol/ModuleLib.json +2 -2
  299. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
  300. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.json +2 -2
  301. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
  302. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.json +2 -2
  303. package/build/contracts/src/state/MultiStack.sol/MultiStackLib.dbg.json +1 -1
  304. package/build/contracts/src/state/MultiStack.sol/MultiStackLib.json +2 -2
  305. package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
  306. package/build/contracts/src/state/PcArray.sol/PcArrayLib.json +2 -2
  307. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
  308. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.json +2 -2
  309. package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
  310. package/build/contracts/src/state/Value.sol/ValueLib.json +2 -2
  311. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
  312. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.json +2 -2
  313. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
  314. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.json +2 -2
  315. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
  316. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +15 -2
  317. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
  318. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.json +2 -2
  319. package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
  320. package/build/contracts/src/test-helpers/EthVault.sol/EthVault.json +2 -2
  321. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
  322. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.json +2 -2
  323. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +1 -1
  324. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json +2 -2
  325. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +1 -1
  326. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.json +2 -15
  327. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +1 -1
  328. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.json +2 -2
  329. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
  330. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.json +2 -2
  331. package/out/yul/Reader4844.yul/Reader4844.json +1 -1
  332. package/package.json +15 -5
  333. package/src/assertionStakingPool/AbsBoldStakingPool.sol +66 -0
  334. package/src/assertionStakingPool/AssertionStakingPool.sol +70 -0
  335. package/src/assertionStakingPool/AssertionStakingPoolCreator.sol +35 -0
  336. package/src/assertionStakingPool/EdgeStakingPool.sol +57 -0
  337. package/src/assertionStakingPool/EdgeStakingPoolCreator.sol +34 -0
  338. package/src/assertionStakingPool/StakingPoolCreatorUtils.sol +25 -0
  339. package/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol +41 -0
  340. package/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol +36 -0
  341. package/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol +31 -0
  342. package/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol +27 -0
  343. package/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol +28 -0
  344. package/src/bridge/AbsBridge.sol +38 -48
  345. package/src/bridge/AbsInbox.sol +88 -97
  346. package/src/bridge/AbsOutbox.sol +23 -37
  347. package/src/bridge/Bridge.sol +6 -4
  348. package/src/bridge/DelayBuffer.sol +123 -0
  349. package/src/bridge/DelayBufferTypes.sol +38 -0
  350. package/src/bridge/ERC20Bridge.sol +8 -4
  351. package/src/bridge/ERC20Inbox.sol +46 -53
  352. package/src/bridge/ERC20Outbox.sol +7 -3
  353. package/src/bridge/GasRefunder.sol +38 -24
  354. package/src/bridge/IBridge.sol +30 -21
  355. package/src/bridge/IERC20Bridge.sol +1 -1
  356. package/src/bridge/IERC20Inbox.sol +4 -2
  357. package/src/bridge/IEthBridge.sol +4 -2
  358. package/src/bridge/IInbox.sol +4 -2
  359. package/src/bridge/IInboxBase.sol +17 -13
  360. package/src/bridge/IOutbox.sol +13 -8
  361. package/src/bridge/ISequencerInbox.sol +118 -13
  362. package/src/bridge/Inbox.sol +131 -151
  363. package/src/bridge/Messages.sol +48 -18
  364. package/src/bridge/Outbox.sol +6 -2
  365. package/src/bridge/SequencerInbox.sol +339 -274
  366. package/src/chain/CacheManager.sol +49 -18
  367. package/src/challengeV2/EdgeChallengeManager.sol +783 -0
  368. package/src/challengeV2/IAssertionChain.sol +39 -0
  369. package/src/challengeV2/libraries/ArrayUtilsLib.sol +61 -0
  370. package/src/challengeV2/libraries/ChallengeEdgeLib.sol +333 -0
  371. package/src/challengeV2/libraries/ChallengeErrors.sol +108 -0
  372. package/src/challengeV2/libraries/EdgeChallengeManagerLib.sol +930 -0
  373. package/src/challengeV2/libraries/Enums.sol +26 -0
  374. package/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol +390 -0
  375. package/src/challengeV2/libraries/UintUtilsLib.sol +74 -0
  376. package/src/libraries/AddressAliasHelper.sol +6 -2
  377. package/src/libraries/AdminFallbackProxy.sol +8 -4
  378. package/src/libraries/ArbitrumChecker.sol +3 -4
  379. package/src/libraries/CryptographyPrimitives.sol +39 -46
  380. package/src/libraries/DecimalsConverterHelper.sol +2 -4
  381. package/src/libraries/DoubleLogicUUPSUpgradeable.sol +10 -7
  382. package/src/libraries/Error.sol +18 -3
  383. package/src/libraries/GasRefundEnabled.sol +3 -4
  384. package/src/libraries/MerkleLib.sol +6 -5
  385. package/src/libraries/UUPSNotUpgradeable.sol +2 -4
  386. package/src/mocks/BridgeStub.sol +50 -48
  387. package/src/mocks/BridgeUnproxied.sol +2 -0
  388. package/src/mocks/InboxStub.sol +22 -17
  389. package/src/mocks/MerkleTreeAccess.sol +72 -0
  390. package/src/mocks/MockRollupEventInbox.sol +59 -0
  391. package/src/mocks/MultiCallTest.sol +3 -1
  392. package/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol +3 -1
  393. package/src/mocks/Program.sol +9 -7
  394. package/src/mocks/SequencerInboxBlobMock.sol +38 -0
  395. package/src/mocks/SequencerInboxStub.sol +9 -12
  396. package/src/mocks/Simple.sol +13 -25
  397. package/src/mocks/SimpleCacheManager.sol +10 -3
  398. package/src/mocks/SimpleOneStepProofEntry.sol +60 -0
  399. package/src/mocks/SimpleProxy.sol +3 -1
  400. package/src/mocks/TestWETH9.sol +30 -0
  401. package/src/mocks/UpgradeExecutorMock.sol +10 -17
  402. package/src/node-interface/NodeInterface.sol +23 -22
  403. package/src/node-interface/NodeInterfaceDebug.sol +5 -3
  404. package/src/osp/HashProofHelper.sol +9 -10
  405. package/src/osp/IOneStepProofEntry.sol +14 -9
  406. package/src/osp/IOneStepProver.sol +1 -0
  407. package/src/osp/OneStepProofEntry.sol +63 -54
  408. package/src/osp/OneStepProver0.sol +14 -27
  409. package/src/osp/OneStepProverHostIo.sol +31 -58
  410. package/src/osp/OneStepProverMath.sol +15 -23
  411. package/src/osp/OneStepProverMemory.sol +9 -23
  412. package/src/precompiles/ArbAddressTable.sol +19 -9
  413. package/src/precompiles/ArbAggregator.sol +12 -4
  414. package/src/precompiles/ArbBLS.sol +1 -3
  415. package/src/precompiles/ArbDebug.sol +5 -11
  416. package/src/precompiles/ArbFunctionTable.sol +7 -10
  417. package/src/precompiles/ArbGasInfo.sol +9 -43
  418. package/src/precompiles/ArbInfo.sol +6 -2
  419. package/src/precompiles/ArbOwner.sol +101 -34
  420. package/src/precompiles/ArbOwnerPublic.sol +6 -2
  421. package/src/precompiles/ArbRetryableTx.sol +15 -5
  422. package/src/precompiles/ArbStatistics.sol +1 -8
  423. package/src/precompiles/ArbSys.sol +16 -18
  424. package/src/precompiles/ArbWasm.sol +24 -14
  425. package/src/precompiles/ArbWasmCache.sol +15 -5
  426. package/src/precompiles/ArbosTest.sol +3 -1
  427. package/src/rollup/AbsRollupEventInbox.sol +15 -16
  428. package/src/rollup/Assertion.sol +100 -0
  429. package/src/rollup/AssertionState.sol +29 -0
  430. package/src/rollup/BOLDUpgradeAction.sol +631 -0
  431. package/src/rollup/BridgeCreator.sol +42 -15
  432. package/src/rollup/Config.sol +15 -7
  433. package/src/rollup/DeployHelper.sol +12 -31
  434. package/src/rollup/ERC20RollupEventInbox.sol +8 -9
  435. package/src/rollup/FactoryDeployerHelper.sol +8 -10
  436. package/src/rollup/IRollupAdmin.sol +127 -45
  437. package/src/rollup/IRollupCore.sol +64 -84
  438. package/src/rollup/IRollupEventInbox.sol +3 -1
  439. package/src/rollup/IRollupLogic.sol +35 -72
  440. package/src/rollup/RollupAdminLogic.sol +224 -203
  441. package/src/rollup/RollupCore.sol +407 -428
  442. package/src/rollup/RollupCreator.sol +88 -75
  443. package/src/rollup/RollupEventInbox.sol +7 -7
  444. package/src/rollup/RollupLib.sol +50 -86
  445. package/src/rollup/RollupProxy.sol +8 -12
  446. package/src/rollup/RollupUserLogic.sol +279 -644
  447. package/src/rollup/ValidatorUtils.sol +0 -242
  448. package/src/rollup/ValidatorWallet.sol +22 -38
  449. package/src/rollup/ValidatorWalletCreator.sol +8 -8
  450. package/src/state/Deserialize.sol +74 -96
  451. package/src/state/GlobalState.sol +74 -20
  452. package/src/state/Instructions.sol +4 -3
  453. package/src/state/Machine.sol +18 -19
  454. package/src/state/Module.sol +14 -13
  455. package/src/state/ModuleMemory.sol +6 -25
  456. package/src/state/ModuleMemoryCompact.sol +3 -1
  457. package/src/state/MultiStack.sol +16 -20
  458. package/src/state/PcArray.sol +7 -7
  459. package/src/state/StackFrame.sol +21 -14
  460. package/src/state/Value.sol +18 -6
  461. package/src/state/ValueArray.sol +7 -7
  462. package/src/state/ValueStack.sol +9 -3
  463. package/src/test-helpers/BridgeTester.sol +32 -42
  464. package/src/test-helpers/CryptographyPrimitivesTester.sol +12 -13
  465. package/src/test-helpers/EthVault.sol +4 -2
  466. package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
  467. package/src/test-helpers/MessageTester.sol +3 -10
  468. package/src/test-helpers/OutboxWithoutOptTester.sol +12 -19
  469. package/src/test-helpers/RollupMock.sol +3 -7
  470. package/src/test-helpers/TestToken.sol +4 -2
  471. package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +0 -4
  472. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +0 -4
  473. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +0 -4
  474. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +0 -746
  475. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +0 -4
  476. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.json +0 -441
  477. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +0 -4
  478. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.json +0 -34
  479. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +0 -4
  480. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +0 -188
  481. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +0 -4
  482. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +0 -797
  483. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +0 -4
  484. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +0 -746
  485. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +0 -4
  486. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.json +0 -1332
  487. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +0 -4
  488. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.json +0 -1466
  489. package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +0 -4
  490. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +0 -4
  491. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.json +0 -1614
  492. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +0 -4
  493. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +0 -1748
  494. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +0 -4
  495. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +0 -379
  496. package/src/challenge/ChallengeLib.sol +0 -88
  497. package/src/challenge/ChallengeManager.sol +0 -375
  498. package/src/challenge/IChallengeManager.sol +0 -86
  499. package/src/challenge/IChallengeResultReceiver.sol +0 -13
  500. package/src/mocks/MockResultReceiver.sol +0 -59
  501. package/src/mocks/SingleExecutionChallenge.sol +0 -41
  502. package/src/mocks/TimedOutChallengeManager.sol +0 -13
  503. package/src/rollup/Node.sol +0 -113
@@ -379,17 +379,17 @@
379
379
  "inputs": [
380
380
  {
381
381
  "internalType": "address",
382
- "name": "",
382
+ "name": "to",
383
383
  "type": "address"
384
384
  },
385
385
  {
386
386
  "internalType": "uint256",
387
- "name": "",
387
+ "name": "value",
388
388
  "type": "uint256"
389
389
  },
390
390
  {
391
391
  "internalType": "bytes",
392
- "name": "",
392
+ "name": "data",
393
393
  "type": "bytes"
394
394
  }
395
395
  ],
@@ -397,16 +397,16 @@
397
397
  "outputs": [
398
398
  {
399
399
  "internalType": "bool",
400
- "name": "",
400
+ "name": "success",
401
401
  "type": "bool"
402
402
  },
403
403
  {
404
404
  "internalType": "bytes",
405
- "name": "",
405
+ "name": "returnData",
406
406
  "type": "bytes"
407
407
  }
408
408
  ],
409
- "stateMutability": "pure",
409
+ "stateMutability": "nonpayable",
410
410
  "type": "function"
411
411
  },
412
412
  {
@@ -606,8 +606,8 @@
606
606
  "type": "function"
607
607
  }
608
608
  ],
609
- "bytecode": "0x608060405234801561001057600080fd5b50610cfa806100206000396000f3fe60806040526004361061014a5760003560e01c8063ab5d8943116100b6578063d5719dc21161006f578063d5719dc2146103d6578063e1758bd8146103f6578063e76f5c8d14610416578063e77145f4146101e3578063eca067ad14610436578063ee35f3271461044b57600080fd5b8063ab5d894314610317578063ad48cb5e14610337578063ae60bd131461036a578063c4d66de814610291578063cb23bcb5146103a6578063cee3d728146103bb57600080fd5b80637a88b107116101085780637a88b1071461021b57806386598a561461023e5780638db5993b1461027e578063919cc70614610291578063945e1147146102b15780639e5d4c49146102e957600080fd5b806284120c1461014f57806316bf557914610173578063413b35bd1461019357806347fb24c5146101c35780634f61f850146101e55780635fca4a1614610205575b600080fd5b34801561015b57600080fd5b506005545b6040519081526020015b60405180910390f35b34801561017f57600080fd5b5061016061018e366004610a2a565b61046b565b34801561019f57600080fd5b506101b36101ae366004610a5b565b61048c565b604051901515815260200161016a565b3480156101cf57600080fd5b506101e36101de366004610a7f565b6104af565b005b3480156101f157600080fd5b506101e3610200366004610a5b565b6106c6565b34801561021157600080fd5b5061016060075481565b34801561022757600080fd5b50610160610236366004610abd565b600092915050565b34801561024a57600080fd5b5061025e610259366004610ae9565b61071a565b60408051948552602085019390935291830152606082015260800161016a565b61016061028c366004610b1b565b610851565b34801561029d57600080fd5b506101e36102ac366004610a5b565b6108ba565b3480156102bd57600080fd5b506102d16102cc366004610a2a565b6108d2565b6040516001600160a01b03909116815260200161016a565b3480156102f557600080fd5b50610309610304366004610b62565b6108fc565b60405161016a929190610beb565b34801561032357600080fd5b506003546102d1906001600160a01b031681565b34801561034357600080fd5b5060085461035890600160a01b900460ff1681565b60405160ff909116815260200161016a565b34801561037657600080fd5b506101b3610385366004610a5b565b6001600160a01b031660009081526020819052604090206001015460ff1690565b3480156103b257600080fd5b506102d161048c565b3480156103c757600080fd5b506101e36102ac366004610a7f565b3480156103e257600080fd5b506101606103f1366004610a2a565b610918565b34801561040257600080fd5b506008546102d1906001600160a01b031681565b34801561042257600080fd5b506102d1610431366004610a2a565b610928565b34801561044257600080fd5b50600454610160565b34801561045757600080fd5b506006546102d1906001600160a01b031681565b6005818154811061047b57600080fd5b600091825260209091200154905081565b600060405162461bcd60e51b81526004016104a690610c4a565b60405180910390fd5b6001600160a01b03821660008181526020818152604091829020600181015492518515158152909360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a2821515811515141561051b5750505050565b82156105a75760408051808201825260018054825260208083018281526001600160a01b0389166000818152928390529482209351845551928201805460ff1916931515939093179092558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b03191690911790556106c0565b600180546105b6908290610c73565b815481106105c6576105c6610c98565b6000918252602090912001548254600180546001600160a01b039093169290919081106105f5576105f5610c98565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600080600185600001548154811061064257610642610c98565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600180548061067857610678610cae565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b038616825281905260408120908155600101805460ff191690555b50505050565b600680546001600160a01b0319166001600160a01b0383169081179091556040519081527f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9060200160405180910390a150565b600080600080856007541415801561073157508515155b801561073e575060075415155b1561076a5760075460405163e2051feb60e01b81526004810191909152602481018790526044016104a6565b6007859055600554935083156107a8576005805461078a90600190610c73565b8154811061079a5761079a610c98565b906000526020600020015492505b86156107d95760046107bb600189610c73565b815481106107cb576107cb610c98565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0018190559398929750909550919350915050565b3360009081526020819052604081206001015460ff166108a45760405162461bcd60e51b815260206004820152600e60248201526d09c9ea8be8ca49e9abe929c849eb60931b60448201526064016104a6565b6108b2848443424887610938565b949350505050565b60405162461bcd60e51b81526004016104a690610c4a565b600281815481106108e257600080fd5b6000918252602090912001546001600160a01b0316905081565b6000606060405162461bcd60e51b81526004016104a690610c4a565b6004818154811061047b57600080fd5b600181815481106108e257600080fd5b60045460408051600060208083018290526021830182905260358301829052603d8301829052604583018290526065830182905260858084018790528451808503909101815260a590930190935281519190920120909190600082156109c35760046109a5600185610c73565b815481106109b5576109b5610c98565b906000526020600020015490505b6040805160208082019390935280820193909352805180840382018152606090930190528151910120600480546001810182556000919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0155979650505050505050565b600060208284031215610a3c57600080fd5b5035919050565b6001600160a01b0381168114610a5857600080fd5b50565b600060208284031215610a6d57600080fd5b8135610a7881610a43565b9392505050565b60008060408385031215610a9257600080fd5b8235610a9d81610a43565b915060208301358015158114610ab257600080fd5b809150509250929050565b60008060408385031215610ad057600080fd5b8235610adb81610a43565b946020939093013593505050565b60008060008060808587031215610aff57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060608486031215610b3057600080fd5b833560ff81168114610b4157600080fd5b92506020840135610b5181610a43565b929592945050506040919091013590565b60008060008060608587031215610b7857600080fd5b8435610b8381610a43565b935060208501359250604085013567ffffffffffffffff80821115610ba757600080fd5b818701915087601f830112610bbb57600080fd5b813581811115610bca57600080fd5b886020828501011115610bdc57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b81811015610c2157858101830151858201606001528201610c05565b81811115610c33576000606083870101525b50601f01601f191692909201606001949350505050565b6020808252600f908201526e1393d517d253541311535153951151608a1b604082015260600190565b600082821015610c9357634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea264697066735822122069200da8c06e52f55247d682e24db9146156945d1a8dab596b765911fa3d9dfa64736f6c63430008090033",
610
- "deployedBytecode": "0x60806040526004361061014a5760003560e01c8063ab5d8943116100b6578063d5719dc21161006f578063d5719dc2146103d6578063e1758bd8146103f6578063e76f5c8d14610416578063e77145f4146101e3578063eca067ad14610436578063ee35f3271461044b57600080fd5b8063ab5d894314610317578063ad48cb5e14610337578063ae60bd131461036a578063c4d66de814610291578063cb23bcb5146103a6578063cee3d728146103bb57600080fd5b80637a88b107116101085780637a88b1071461021b57806386598a561461023e5780638db5993b1461027e578063919cc70614610291578063945e1147146102b15780639e5d4c49146102e957600080fd5b806284120c1461014f57806316bf557914610173578063413b35bd1461019357806347fb24c5146101c35780634f61f850146101e55780635fca4a1614610205575b600080fd5b34801561015b57600080fd5b506005545b6040519081526020015b60405180910390f35b34801561017f57600080fd5b5061016061018e366004610a2a565b61046b565b34801561019f57600080fd5b506101b36101ae366004610a5b565b61048c565b604051901515815260200161016a565b3480156101cf57600080fd5b506101e36101de366004610a7f565b6104af565b005b3480156101f157600080fd5b506101e3610200366004610a5b565b6106c6565b34801561021157600080fd5b5061016060075481565b34801561022757600080fd5b50610160610236366004610abd565b600092915050565b34801561024a57600080fd5b5061025e610259366004610ae9565b61071a565b60408051948552602085019390935291830152606082015260800161016a565b61016061028c366004610b1b565b610851565b34801561029d57600080fd5b506101e36102ac366004610a5b565b6108ba565b3480156102bd57600080fd5b506102d16102cc366004610a2a565b6108d2565b6040516001600160a01b03909116815260200161016a565b3480156102f557600080fd5b50610309610304366004610b62565b6108fc565b60405161016a929190610beb565b34801561032357600080fd5b506003546102d1906001600160a01b031681565b34801561034357600080fd5b5060085461035890600160a01b900460ff1681565b60405160ff909116815260200161016a565b34801561037657600080fd5b506101b3610385366004610a5b565b6001600160a01b031660009081526020819052604090206001015460ff1690565b3480156103b257600080fd5b506102d161048c565b3480156103c757600080fd5b506101e36102ac366004610a7f565b3480156103e257600080fd5b506101606103f1366004610a2a565b610918565b34801561040257600080fd5b506008546102d1906001600160a01b031681565b34801561042257600080fd5b506102d1610431366004610a2a565b610928565b34801561044257600080fd5b50600454610160565b34801561045757600080fd5b506006546102d1906001600160a01b031681565b6005818154811061047b57600080fd5b600091825260209091200154905081565b600060405162461bcd60e51b81526004016104a690610c4a565b60405180910390fd5b6001600160a01b03821660008181526020818152604091829020600181015492518515158152909360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a2821515811515141561051b5750505050565b82156105a75760408051808201825260018054825260208083018281526001600160a01b0389166000818152928390529482209351845551928201805460ff1916931515939093179092558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b03191690911790556106c0565b600180546105b6908290610c73565b815481106105c6576105c6610c98565b6000918252602090912001548254600180546001600160a01b039093169290919081106105f5576105f5610c98565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600080600185600001548154811061064257610642610c98565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600180548061067857610678610cae565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b038616825281905260408120908155600101805460ff191690555b50505050565b600680546001600160a01b0319166001600160a01b0383169081179091556040519081527f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9060200160405180910390a150565b600080600080856007541415801561073157508515155b801561073e575060075415155b1561076a5760075460405163e2051feb60e01b81526004810191909152602481018790526044016104a6565b6007859055600554935083156107a8576005805461078a90600190610c73565b8154811061079a5761079a610c98565b906000526020600020015492505b86156107d95760046107bb600189610c73565b815481106107cb576107cb610c98565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0018190559398929750909550919350915050565b3360009081526020819052604081206001015460ff166108a45760405162461bcd60e51b815260206004820152600e60248201526d09c9ea8be8ca49e9abe929c849eb60931b60448201526064016104a6565b6108b2848443424887610938565b949350505050565b60405162461bcd60e51b81526004016104a690610c4a565b600281815481106108e257600080fd5b6000918252602090912001546001600160a01b0316905081565b6000606060405162461bcd60e51b81526004016104a690610c4a565b6004818154811061047b57600080fd5b600181815481106108e257600080fd5b60045460408051600060208083018290526021830182905260358301829052603d8301829052604583018290526065830182905260858084018790528451808503909101815260a590930190935281519190920120909190600082156109c35760046109a5600185610c73565b815481106109b5576109b5610c98565b906000526020600020015490505b6040805160208082019390935280820193909352805180840382018152606090930190528151910120600480546001810182556000919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0155979650505050505050565b600060208284031215610a3c57600080fd5b5035919050565b6001600160a01b0381168114610a5857600080fd5b50565b600060208284031215610a6d57600080fd5b8135610a7881610a43565b9392505050565b60008060408385031215610a9257600080fd5b8235610a9d81610a43565b915060208301358015158114610ab257600080fd5b809150509250929050565b60008060408385031215610ad057600080fd5b8235610adb81610a43565b946020939093013593505050565b60008060008060808587031215610aff57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060608486031215610b3057600080fd5b833560ff81168114610b4157600080fd5b92506020840135610b5181610a43565b929592945050506040919091013590565b60008060008060608587031215610b7857600080fd5b8435610b8381610a43565b935060208501359250604085013567ffffffffffffffff80821115610ba757600080fd5b818701915087601f830112610bbb57600080fd5b813581811115610bca57600080fd5b886020828501011115610bdc57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b81811015610c2157858101830151858201606001528201610c05565b81811115610c33576000606083870101525b50601f01601f191692909201606001949350505050565b6020808252600f908201526e1393d517d253541311535153951151608a1b604082015260600190565b600082821015610c9357634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea264697066735822122069200da8c06e52f55247d682e24db9146156945d1a8dab596b765911fa3d9dfa64736f6c63430008090033",
609
+ "bytecode": "0x608060405234801561001057600080fd5b50610f1e806100206000396000f3fe60806040526004361061018a5760003560e01c8063ab5d8943116100d6578063d5719dc21161007f578063e77145f411610059578063e77145f414610223578063eca067ad14610487578063ee35f3271461049c57600080fd5b8063d5719dc214610427578063e1758bd814610447578063e76f5c8d1461046757600080fd5b8063c4d66de8116100b0578063c4d66de8146102d1578063cb23bcb5146103f7578063cee3d7281461040c57600080fd5b8063ab5d894314610357578063ad48cb5e14610377578063ae60bd13146103bb57600080fd5b80637a88b10711610138578063919cc70611610112578063919cc706146102d1578063945e1147146102f15780639e5d4c491461032957600080fd5b80637a88b1071461025b57806386598a561461027e5780638db5993b146102be57600080fd5b806347fb24c51161016957806347fb24c5146102035780634f61f850146102255780635fca4a161461024557600080fd5b806284120c1461018f57806316bf5579146101b3578063413b35bd146101d3575b600080fd5b34801561019b57600080fd5b506005545b6040519081526020015b60405180910390f35b3480156101bf57600080fd5b506101a06101ce366004610c28565b6104bc565b3480156101df57600080fd5b506101f36101ee366004610c59565b6104dd565b60405190151581526020016101aa565b34801561020f57600080fd5b5061022361021e366004610c7d565b61052d565b005b34801561023157600080fd5b50610223610240366004610c59565b61077b565b34801561025157600080fd5b506101a060075481565b34801561026757600080fd5b506101a0610276366004610cbb565b600092915050565b34801561028a57600080fd5b5061029e610299366004610ce7565b6107dc565b6040805194855260208501939093529183015260608201526080016101aa565b6101a06102cc366004610d19565b61092c565b3480156102dd57600080fd5b506102236102ec366004610c59565b6109a4565b3480156102fd57600080fd5b5061031161030c366004610c28565b6109ec565b6040516001600160a01b0390911681526020016101aa565b34801561033557600080fd5b50610349610344366004610d60565b610a16565b6040516101aa929190610e0d565b34801561036357600080fd5b50600354610311906001600160a01b031681565b34801561038357600080fd5b506008546103a99074010000000000000000000000000000000000000000900460ff1681565b60405160ff90911681526020016101aa565b3480156103c757600080fd5b506101f36103d6366004610c59565b6001600160a01b031660009081526020819052604090206001015460ff1690565b34801561040357600080fd5b506103116104dd565b34801561041857600080fd5b506102236102ec366004610c7d565b34801561043357600080fd5b506101a0610442366004610c28565b610ab2565b34801561045357600080fd5b50600854610311906001600160a01b031681565b34801561047357600080fd5b50610311610482366004610c28565b610ac2565b34801561049357600080fd5b506004546101a0565b3480156104a857600080fd5b50600654610311906001600160a01b031681565b600581815481106104cc57600080fd5b600091825260209091200154905081565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e544544000000000000000000000000000000000060448201526000906064015b60405180910390fd5b6001600160a01b03821660008181526020818152604091829020600181015492518515158152909360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a2821515811515036105985750505050565b82156106315760408051808201825260018054825260208083018281526001600160a01b0389166000818152928390529482209351845551928201805460ff1916931515939093179092558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805473ffffffffffffffffffffffffffffffffffffffff19169091179055610775565b60018054610640908290610e49565b8154811061065057610650610e6a565b6000918252602090912001548254600180546001600160a01b0390931692909190811061067f5761067f610e6a565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460008060018560000154815481106106cc576106cc610e6a565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600180548061070257610702610e80565b6000828152602080822083017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff908101805473ffffffffffffffffffffffffffffffffffffffff191690559092019092556001600160a01b038616825281905260408120908155600101805460ff191690555b50505050565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9060200160405180910390a150565b60008060008085600754141580156107f357508515155b8015610800575060075415155b15610845576007546040517fe2051feb000000000000000000000000000000000000000000000000000000008152600481019190915260248101879052604401610524565b600785905560055493508315610883576005805461086590600190610e49565b8154811061087557610875610e6a565b906000526020600020015492505b86156108b4576004610896600189610e49565b815481106108a6576108a6610e6a565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0018190559398929750909550919350915050565b3360009081526020819052604081206001015460ff1661098e5760405162461bcd60e51b815260206004820152600e60248201527f4e4f545f46524f4d5f494e424f580000000000000000000000000000000000006044820152606401610524565b61099c848443424887610ad2565b949350505050565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e54454400000000000000000000000000000000006044820152606401610524565b600281815481106109fc57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006060610a5b868686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b8d92505050565b60405191935091506001600160a01b0387169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610aa190899089908990610e96565b60405180910390a394509492505050565b600481815481106104cc57600080fd5b600181815481106109fc57600080fd5b60045460408051600060208083018290526021830182905260358301829052603d8301829052604583018290526065830182905260858084018790528451808503909101815260a59093019093528151919092012090919060008215610b5d576004610b3f600185610e49565b81548110610b4f57610b4f610e6a565b906000526020600020015490505b6004610b698284610bf9565b81546001810183556000928352602090922090910155509098975050505050505050565b60006060846001600160a01b03168484604051610baa9190610ecc565b60006040518083038185875af1925050503d8060008114610be7576040519150601f19603f3d011682016040523d82523d6000602084013e610bec565b606091505b5090969095509350505050565b604080516020808201859052818301849052825180830384018152606090920190925280519101205b92915050565b600060208284031215610c3a57600080fd5b5035919050565b6001600160a01b0381168114610c5657600080fd5b50565b600060208284031215610c6b57600080fd5b8135610c7681610c41565b9392505050565b60008060408385031215610c9057600080fd5b8235610c9b81610c41565b915060208301358015158114610cb057600080fd5b809150509250929050565b60008060408385031215610cce57600080fd5b8235610cd981610c41565b946020939093013593505050565b60008060008060808587031215610cfd57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060608486031215610d2e57600080fd5b833560ff81168114610d3f57600080fd5b92506020840135610d4f81610c41565b929592945050506040919091013590565b60008060008060608587031215610d7657600080fd5b8435610d8181610c41565b935060208501359250604085013567ffffffffffffffff80821115610da557600080fd5b818701915087601f830112610db957600080fd5b813581811115610dc857600080fd5b886020828501011115610dda57600080fd5b95989497505060200194505050565b60005b83811015610e04578181015183820152602001610dec565b50506000910152565b82151581526040602082015260008251806040840152610e34816060850160208701610de9565b601f01601f1916919091016060019392505050565b81810381811115610c2257634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008251610ede818460208701610de9565b919091019291505056fea2646970667358221220fcb4657b3fabdc0d3df172efccd07fe401e452450744bacdac8ba5e90229b9c764736f6c63430008110033",
610
+ "deployedBytecode": "0x60806040526004361061018a5760003560e01c8063ab5d8943116100d6578063d5719dc21161007f578063e77145f411610059578063e77145f414610223578063eca067ad14610487578063ee35f3271461049c57600080fd5b8063d5719dc214610427578063e1758bd814610447578063e76f5c8d1461046757600080fd5b8063c4d66de8116100b0578063c4d66de8146102d1578063cb23bcb5146103f7578063cee3d7281461040c57600080fd5b8063ab5d894314610357578063ad48cb5e14610377578063ae60bd13146103bb57600080fd5b80637a88b10711610138578063919cc70611610112578063919cc706146102d1578063945e1147146102f15780639e5d4c491461032957600080fd5b80637a88b1071461025b57806386598a561461027e5780638db5993b146102be57600080fd5b806347fb24c51161016957806347fb24c5146102035780634f61f850146102255780635fca4a161461024557600080fd5b806284120c1461018f57806316bf5579146101b3578063413b35bd146101d3575b600080fd5b34801561019b57600080fd5b506005545b6040519081526020015b60405180910390f35b3480156101bf57600080fd5b506101a06101ce366004610c28565b6104bc565b3480156101df57600080fd5b506101f36101ee366004610c59565b6104dd565b60405190151581526020016101aa565b34801561020f57600080fd5b5061022361021e366004610c7d565b61052d565b005b34801561023157600080fd5b50610223610240366004610c59565b61077b565b34801561025157600080fd5b506101a060075481565b34801561026757600080fd5b506101a0610276366004610cbb565b600092915050565b34801561028a57600080fd5b5061029e610299366004610ce7565b6107dc565b6040805194855260208501939093529183015260608201526080016101aa565b6101a06102cc366004610d19565b61092c565b3480156102dd57600080fd5b506102236102ec366004610c59565b6109a4565b3480156102fd57600080fd5b5061031161030c366004610c28565b6109ec565b6040516001600160a01b0390911681526020016101aa565b34801561033557600080fd5b50610349610344366004610d60565b610a16565b6040516101aa929190610e0d565b34801561036357600080fd5b50600354610311906001600160a01b031681565b34801561038357600080fd5b506008546103a99074010000000000000000000000000000000000000000900460ff1681565b60405160ff90911681526020016101aa565b3480156103c757600080fd5b506101f36103d6366004610c59565b6001600160a01b031660009081526020819052604090206001015460ff1690565b34801561040357600080fd5b506103116104dd565b34801561041857600080fd5b506102236102ec366004610c7d565b34801561043357600080fd5b506101a0610442366004610c28565b610ab2565b34801561045357600080fd5b50600854610311906001600160a01b031681565b34801561047357600080fd5b50610311610482366004610c28565b610ac2565b34801561049357600080fd5b506004546101a0565b3480156104a857600080fd5b50600654610311906001600160a01b031681565b600581815481106104cc57600080fd5b600091825260209091200154905081565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e544544000000000000000000000000000000000060448201526000906064015b60405180910390fd5b6001600160a01b03821660008181526020818152604091829020600181015492518515158152909360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a2821515811515036105985750505050565b82156106315760408051808201825260018054825260208083018281526001600160a01b0389166000818152928390529482209351845551928201805460ff1916931515939093179092558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805473ffffffffffffffffffffffffffffffffffffffff19169091179055610775565b60018054610640908290610e49565b8154811061065057610650610e6a565b6000918252602090912001548254600180546001600160a01b0390931692909190811061067f5761067f610e6a565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460008060018560000154815481106106cc576106cc610e6a565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600180548061070257610702610e80565b6000828152602080822083017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff908101805473ffffffffffffffffffffffffffffffffffffffff191690559092019092556001600160a01b038616825281905260408120908155600101805460ff191690555b50505050565b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9060200160405180910390a150565b60008060008085600754141580156107f357508515155b8015610800575060075415155b15610845576007546040517fe2051feb000000000000000000000000000000000000000000000000000000008152600481019190915260248101879052604401610524565b600785905560055493508315610883576005805461086590600190610e49565b8154811061087557610875610e6a565b906000526020600020015492505b86156108b4576004610896600189610e49565b815481106108a6576108a6610e6a565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0018190559398929750909550919350915050565b3360009081526020819052604081206001015460ff1661098e5760405162461bcd60e51b815260206004820152600e60248201527f4e4f545f46524f4d5f494e424f580000000000000000000000000000000000006044820152606401610524565b61099c848443424887610ad2565b949350505050565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e54454400000000000000000000000000000000006044820152606401610524565b600281815481106109fc57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006060610a5b868686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b8d92505050565b60405191935091506001600160a01b0387169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610aa190899089908990610e96565b60405180910390a394509492505050565b600481815481106104cc57600080fd5b600181815481106109fc57600080fd5b60045460408051600060208083018290526021830182905260358301829052603d8301829052604583018290526065830182905260858084018790528451808503909101815260a59093019093528151919092012090919060008215610b5d576004610b3f600185610e49565b81548110610b4f57610b4f610e6a565b906000526020600020015490505b6004610b698284610bf9565b81546001810183556000928352602090922090910155509098975050505050505050565b60006060846001600160a01b03168484604051610baa9190610ecc565b60006040518083038185875af1925050503d8060008114610be7576040519150601f19603f3d011682016040523d82523d6000602084013e610bec565b606091505b5090969095509350505050565b604080516020808201859052818301849052825180830384018152606090920190925280519101205b92915050565b600060208284031215610c3a57600080fd5b5035919050565b6001600160a01b0381168114610c5657600080fd5b50565b600060208284031215610c6b57600080fd5b8135610c7681610c41565b9392505050565b60008060408385031215610c9057600080fd5b8235610c9b81610c41565b915060208301358015158114610cb057600080fd5b809150509250929050565b60008060408385031215610cce57600080fd5b8235610cd981610c41565b946020939093013593505050565b60008060008060808587031215610cfd57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060608486031215610d2e57600080fd5b833560ff81168114610d3f57600080fd5b92506020840135610d4f81610c41565b929592945050506040919091013590565b60008060008060608587031215610d7657600080fd5b8435610d8181610c41565b935060208501359250604085013567ffffffffffffffff80821115610da557600080fd5b818701915087601f830112610db957600080fd5b813581811115610dc857600080fd5b886020828501011115610dda57600080fd5b95989497505060200194505050565b60005b83811015610e04578181015183820152602001610dec565b50506000910152565b82151581526040602082015260008251806040840152610e34816060850160208701610de9565b601f01601f1916919091016060019392505050565b81810381811115610c2257634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008251610ede818460208701610de9565b919091019291505056fea2646970667358221220fcb4657b3fabdc0d3df172efccd07fe401e452450744bacdac8ba5e90229b9c764736f6c63430008110033",
611
611
  "linkReferences": {},
612
612
  "deployedLinkReferences": {}
613
613
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9ec5aeba34e8f7c0c281e147a2954d13.json"
3
+ "buildInfo": "../../../build-info/28754c4998b67fc9c9d6d849262cf39e.json"
4
4
  }
@@ -150,6 +150,19 @@
150
150
  "name": "InboxToggle",
151
151
  "type": "event"
152
152
  },
153
+ {
154
+ "anonymous": false,
155
+ "inputs": [
156
+ {
157
+ "indexed": false,
158
+ "internalType": "uint8",
159
+ "name": "version",
160
+ "type": "uint8"
161
+ }
162
+ ],
163
+ "name": "Initialized",
164
+ "type": "event"
165
+ },
153
166
  {
154
167
  "anonymous": false,
155
168
  "inputs": [
@@ -250,6 +263,19 @@
250
263
  "name": "SequencerInboxUpdated",
251
264
  "type": "event"
252
265
  },
266
+ {
267
+ "inputs": [],
268
+ "name": "DUMMYVAR",
269
+ "outputs": [
270
+ {
271
+ "internalType": "uint256",
272
+ "name": "",
273
+ "type": "uint256"
274
+ }
275
+ ],
276
+ "stateMutability": "view",
277
+ "type": "function"
278
+ },
253
279
  {
254
280
  "inputs": [],
255
281
  "name": "acceptFundsFromOldBridge",
@@ -674,8 +700,8 @@
674
700
  "type": "function"
675
701
  }
676
702
  ],
677
- "bytecode": "0x60a06040523060805234801561001457600080fd5b50600580546001600160a01b03199081166001600160a01b031790915560088054909116331790556080516118186100576000396000610db801526118186000f3fe60806040526004361061013f5760003560e01c80639e5d4c49116100b6578063d5719dc21161006f578063d5719dc214610393578063e76f5c8d146103b3578063e77145f4146101d8578063eca067ad146103d3578063ee35f327146103e8578063f81ff3b31461040857600080fd5b80639e5d4c49146102d0578063ab5d8943146102fe578063ae60bd1314610313578063c4d66de814610333578063cb23bcb514610353578063cee3d7281461037357600080fd5b80635fca4a16116101085780635fca4a16146101fa5780637a88b1071461021057806386598a56146102305780638db5993b14610270578063919cc70614610283578063945e1147146102a357600080fd5b806284120c1461014457806316bf557914610168578063413b35bd1461018857806347fb24c5146101b85780634f61f850146101da575b600080fd5b34801561015057600080fd5b506007545b6040519081526020015b60405180910390f35b34801561017457600080fd5b506101556101833660046114cc565b610428565b34801561019457600080fd5b506101a86101a33660046114fa565b610449565b604051901515815260200161015f565b3480156101c457600080fd5b506101d86101d3366004611517565b61046a565b005b3480156101e657600080fd5b506101d86101f53660046114fa565b610760565b34801561020657600080fd5b50610155600a5481565b34801561021c57600080fd5b5061015561022b366004611555565b610885565b34801561023c57600080fd5b5061025061024b366004611581565b6108cb565b60408051948552602085019390935291830152606082015260800161015f565b61015561027e3660046115b3565b610a32565b34801561028f57600080fd5b506101d861029e3660046114fa565b610a48565b3480156102af57600080fd5b506102c36102be3660046114cc565b610b62565b60405161015f91906115fa565b3480156102dc57600080fd5b506102f06102eb36600461160e565b610b8c565b60405161015f9291906116c3565b34801561030a57600080fd5b506102c3610cc1565b34801561031f57600080fd5b506101a861032e3660046114fa565b610ce7565b34801561033f57600080fd5b506101d861034e3660046114fa565b610d09565b34801561035f57600080fd5b506008546102c3906001600160a01b031681565b34801561037f57600080fd5b506101d861038e366004611517565b610e7d565b34801561039f57600080fd5b506101556103ae3660046114cc565b611196565b3480156103bf57600080fd5b506102c36103ce3660046114cc565b6111a6565b3480156103df57600080fd5b50600654610155565b3480156103f457600080fd5b506009546102c3906001600160a01b031681565b34801561041457600080fd5b506101d86104233660046114cc565b6111b6565b6007818154811061043857600080fd5b600091825260209091200154905081565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6008546001600160a01b031633146105425760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156104c157600080fd5b505afa1580156104d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f991906116ff565b9050336001600160a01b0382161461054057600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a282151581151514156105af5750505050565b821561063d57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610759565b6003805461064d9060019061173f565b8154811061065d5761065d611764565b6000918252602090912001548254600380546001600160a01b0390931692909190811061068c5761068c611764565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106da576106da611764565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806107105761071061177a565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6008546001600160a01b0316331461082f5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107b757600080fd5b505afa1580156107cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ef91906116ff565b9050336001600160a01b0382161461082d57600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b600980546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061087a9083906115fa565b60405180910390a150565b6009546000906001600160a01b031633146108b5573360405163223e13c160e21b815260040161053791906115fa565b6108c4600d844342488761128a565b9392505050565b6009546000908190819081906001600160a01b03163314610901573360405163223e13c160e21b815260040161053791906115fa565b85600a541415801561091257508515155b801561091f5750600a5415155b1561094b57600a5460405163e2051feb60e01b8152600481019190915260248101879052604401610537565b600a85905560075493508315610989576007805461096b9060019061173f565b8154811061097b5761097b611764565b906000526020600020015492505b86156109ba57600661099c60018961173f565b815481106109ac576109ac611764565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600780546001810182556000919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688018190559398929750909550919350915050565b6000610a4084848434611419565b949350505050565b6008546001600160a01b03163314610b175760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610a9f57600080fd5b505afa158015610ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906116ff565b9050336001600160a01b03821614610b1557600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b600880546001600160a01b0319166001600160a01b0383161790556040517fae1f5aa15f6ff844896347ceca2a3c24c8d3a27785efdeacd581a0a95172784a9061087a9083906115fa565b60048181548110610b7257600080fd5b6000918252602090912001546001600160a01b0316905081565b60006060610b9933610449565b610bb857336040516332ea82ab60e01b815260040161053791906115fa565b8215801590610bcf57506001600160a01b0386163b155b15610bef578560405163b5cf5b8f60e01b815260040161053791906115fa565b600580546001600160a01b031981163317909155604080516020601f87018190048102820181019092528581526001600160a01b0390921691610c509189918991899089908190840183828082843760009201919091525061145d92505050565b600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610caf908a908a908a90611790565b60405180910390a35094509492505050565b6005546000906001600160a01b0390811690811415610ce257600091505090565b919050565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b600054610100900460ff16610d245760005460ff1615610d28565b303b155b610d8b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610537565b600054610100900460ff16158015610dad576000805461ffff19166101011790555b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610e3b5760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610537565b600580546001600160a01b036001600160a01b0319918216811790925560088054909116918416919091179055801561075c576000805461ff00191690555050565b6008546001600160a01b03163314610f4c5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610ed457600080fd5b505afa158015610ee8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f0c91906116ff565b9050336001600160a01b03821614610f4a57600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b6001600160a01b038281161415610f78578160405163077abed160e41b815260040161053791906115fa565b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a28215158115151415610fe65750505050565b821561107557604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610759565b600480546110859060019061173f565b8154811061109557611095611764565b6000918252602090912001548254600480546001600160a01b039093169290919081106110c4576110c4611764565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460026000600485600001548154811061111257611112611764565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560048054806111485761114861177a565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6006818154811061043857600080fd5b60038181548110610b7257600080fd5b6008546001600160a01b031633146112855760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561120d57600080fd5b505afa158015611221573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124591906116ff565b9050336001600160a01b0382161461128357600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b600a55565b600654604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a59092019092528051910120600091906000821561134457600661132660018561173f565b8154811061133657611336611764565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b600061142433610ce7565b611443573360405163b6c60ea360e01b815260040161053791906115fa565b600061145386864342488961128a565b9695505050505050565b60006060846001600160a01b0316848460405161147a91906117c6565b60006040518083038185875af1925050503d80600081146114b7576040519150601f19603f3d011682016040523d82523d6000602084013e6114bc565b606091505b5090969095509350505050565b50565b6000602082840312156114de57600080fd5b5035919050565b6001600160a01b03811681146114c957600080fd5b60006020828403121561150c57600080fd5b81356108c4816114e5565b6000806040838503121561152a57600080fd5b8235611535816114e5565b91506020830135801515811461154a57600080fd5b809150509250929050565b6000806040838503121561156857600080fd5b8235611573816114e5565b946020939093013593505050565b6000806000806080858703121561159757600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156115c857600080fd5b833560ff811681146115d957600080fd5b925060208401356115e9816114e5565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561162457600080fd5b843561162f816114e5565b935060208501359250604085013567ffffffffffffffff8082111561165357600080fd5b818701915087601f83011261166757600080fd5b81358181111561167657600080fd5b88602082850101111561168857600080fd5b95989497505060200194505050565b60005b838110156116b257818101518382015260200161169a565b838111156107595750506000910152565b821515815260406020820152600082518060408401526116ea816060850160208701611697565b601f01601f1916919091016060019392505050565b60006020828403121561171157600080fd5b81516108c4816114e5565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561175f57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b600082516117d8818460208701611697565b919091019291505056fea264697066735822122085c0cff6ee64212f8b5750785e0602dd60f6935a6f3c19826bdee1b8c12f644464736f6c63430008090033",
678
- "deployedBytecode": "0x60806040526004361061013f5760003560e01c80639e5d4c49116100b6578063d5719dc21161006f578063d5719dc214610393578063e76f5c8d146103b3578063e77145f4146101d8578063eca067ad146103d3578063ee35f327146103e8578063f81ff3b31461040857600080fd5b80639e5d4c49146102d0578063ab5d8943146102fe578063ae60bd1314610313578063c4d66de814610333578063cb23bcb514610353578063cee3d7281461037357600080fd5b80635fca4a16116101085780635fca4a16146101fa5780637a88b1071461021057806386598a56146102305780638db5993b14610270578063919cc70614610283578063945e1147146102a357600080fd5b806284120c1461014457806316bf557914610168578063413b35bd1461018857806347fb24c5146101b85780634f61f850146101da575b600080fd5b34801561015057600080fd5b506007545b6040519081526020015b60405180910390f35b34801561017457600080fd5b506101556101833660046114cc565b610428565b34801561019457600080fd5b506101a86101a33660046114fa565b610449565b604051901515815260200161015f565b3480156101c457600080fd5b506101d86101d3366004611517565b61046a565b005b3480156101e657600080fd5b506101d86101f53660046114fa565b610760565b34801561020657600080fd5b50610155600a5481565b34801561021c57600080fd5b5061015561022b366004611555565b610885565b34801561023c57600080fd5b5061025061024b366004611581565b6108cb565b60408051948552602085019390935291830152606082015260800161015f565b61015561027e3660046115b3565b610a32565b34801561028f57600080fd5b506101d861029e3660046114fa565b610a48565b3480156102af57600080fd5b506102c36102be3660046114cc565b610b62565b60405161015f91906115fa565b3480156102dc57600080fd5b506102f06102eb36600461160e565b610b8c565b60405161015f9291906116c3565b34801561030a57600080fd5b506102c3610cc1565b34801561031f57600080fd5b506101a861032e3660046114fa565b610ce7565b34801561033f57600080fd5b506101d861034e3660046114fa565b610d09565b34801561035f57600080fd5b506008546102c3906001600160a01b031681565b34801561037f57600080fd5b506101d861038e366004611517565b610e7d565b34801561039f57600080fd5b506101556103ae3660046114cc565b611196565b3480156103bf57600080fd5b506102c36103ce3660046114cc565b6111a6565b3480156103df57600080fd5b50600654610155565b3480156103f457600080fd5b506009546102c3906001600160a01b031681565b34801561041457600080fd5b506101d86104233660046114cc565b6111b6565b6007818154811061043857600080fd5b600091825260209091200154905081565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6008546001600160a01b031633146105425760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156104c157600080fd5b505afa1580156104d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f991906116ff565b9050336001600160a01b0382161461054057600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a282151581151514156105af5750505050565b821561063d57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610759565b6003805461064d9060019061173f565b8154811061065d5761065d611764565b6000918252602090912001548254600380546001600160a01b0390931692909190811061068c5761068c611764565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106da576106da611764565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806107105761071061177a565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6008546001600160a01b0316331461082f5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107b757600080fd5b505afa1580156107cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ef91906116ff565b9050336001600160a01b0382161461082d57600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b600980546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061087a9083906115fa565b60405180910390a150565b6009546000906001600160a01b031633146108b5573360405163223e13c160e21b815260040161053791906115fa565b6108c4600d844342488761128a565b9392505050565b6009546000908190819081906001600160a01b03163314610901573360405163223e13c160e21b815260040161053791906115fa565b85600a541415801561091257508515155b801561091f5750600a5415155b1561094b57600a5460405163e2051feb60e01b8152600481019190915260248101879052604401610537565b600a85905560075493508315610989576007805461096b9060019061173f565b8154811061097b5761097b611764565b906000526020600020015492505b86156109ba57600661099c60018961173f565b815481106109ac576109ac611764565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600780546001810182556000919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688018190559398929750909550919350915050565b6000610a4084848434611419565b949350505050565b6008546001600160a01b03163314610b175760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610a9f57600080fd5b505afa158015610ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906116ff565b9050336001600160a01b03821614610b1557600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b600880546001600160a01b0319166001600160a01b0383161790556040517fae1f5aa15f6ff844896347ceca2a3c24c8d3a27785efdeacd581a0a95172784a9061087a9083906115fa565b60048181548110610b7257600080fd5b6000918252602090912001546001600160a01b0316905081565b60006060610b9933610449565b610bb857336040516332ea82ab60e01b815260040161053791906115fa565b8215801590610bcf57506001600160a01b0386163b155b15610bef578560405163b5cf5b8f60e01b815260040161053791906115fa565b600580546001600160a01b031981163317909155604080516020601f87018190048102820181019092528581526001600160a01b0390921691610c509189918991899089908190840183828082843760009201919091525061145d92505050565b600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610caf908a908a908a90611790565b60405180910390a35094509492505050565b6005546000906001600160a01b0390811690811415610ce257600091505090565b919050565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b600054610100900460ff16610d245760005460ff1615610d28565b303b155b610d8b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610537565b600054610100900460ff16158015610dad576000805461ffff19166101011790555b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610e3b5760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610537565b600580546001600160a01b036001600160a01b0319918216811790925560088054909116918416919091179055801561075c576000805461ff00191690555050565b6008546001600160a01b03163314610f4c5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610ed457600080fd5b505afa158015610ee8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f0c91906116ff565b9050336001600160a01b03821614610f4a57600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b6001600160a01b038281161415610f78578160405163077abed160e41b815260040161053791906115fa565b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a28215158115151415610fe65750505050565b821561107557604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610759565b600480546110859060019061173f565b8154811061109557611095611764565b6000918252602090912001548254600480546001600160a01b039093169290919081106110c4576110c4611764565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460026000600485600001548154811061111257611112611764565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560048054806111485761114861177a565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6006818154811061043857600080fd5b60038181548110610b7257600080fd5b6008546001600160a01b031633146112855760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561120d57600080fd5b505afa158015611221573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124591906116ff565b9050336001600160a01b0382161461128357600854604051630739600760e01b81526105379133916001600160a01b0390911690849060040161171c565b505b600a55565b600654604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a59092019092528051910120600091906000821561134457600661132660018561173f565b8154811061133657611336611764565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b600061142433610ce7565b611443573360405163b6c60ea360e01b815260040161053791906115fa565b600061145386864342488961128a565b9695505050505050565b60006060846001600160a01b0316848460405161147a91906117c6565b60006040518083038185875af1925050503d80600081146114b7576040519150601f19603f3d011682016040523d82523d6000602084013e6114bc565b606091505b5090969095509350505050565b50565b6000602082840312156114de57600080fd5b5035919050565b6001600160a01b03811681146114c957600080fd5b60006020828403121561150c57600080fd5b81356108c4816114e5565b6000806040838503121561152a57600080fd5b8235611535816114e5565b91506020830135801515811461154a57600080fd5b809150509250929050565b6000806040838503121561156857600080fd5b8235611573816114e5565b946020939093013593505050565b6000806000806080858703121561159757600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156115c857600080fd5b833560ff811681146115d957600080fd5b925060208401356115e9816114e5565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561162457600080fd5b843561162f816114e5565b935060208501359250604085013567ffffffffffffffff8082111561165357600080fd5b818701915087601f83011261166757600080fd5b81358181111561167657600080fd5b88602082850101111561168857600080fd5b95989497505060200194505050565b60005b838110156116b257818101518382015260200161169a565b838111156107595750506000910152565b821515815260406020820152600082518060408401526116ea816060850160208701611697565b601f01601f1916919091016060019392505050565b60006020828403121561171157600080fd5b81516108c4816114e5565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561175f57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b600082516117d8818460208701611697565b919091019291505056fea264697066735822122085c0cff6ee64212f8b5750785e0602dd60f6935a6f3c19826bdee1b8c12f644464736f6c63430008090033",
703
+ "bytecode": "0x60a060405230608052600060335534801561001957600080fd5b50600580546001600160a01b03199081166001600160a01b03179091556008805490911633179055608051611a9261005c6000396000610f4b0152611a926000f3fe60806040526004361061018a5760003560e01c80639e5d4c49116100d6578063d5719dc21161007f578063eca067ad11610059578063eca067ad14610478578063ee35f3271461048d578063f81ff3b3146104ad57600080fd5b8063d5719dc214610438578063e76f5c8d14610458578063e77145f41461023f57600080fd5b8063c4d66de8116100b0578063c4d66de8146103d8578063cb23bcb5146103f8578063cee3d7281461041857600080fd5b80639e5d4c4914610358578063ab5d894314610386578063ae60bd131461039b57600080fd5b80637a88b10711610138578063919cc70611610112578063919cc706146102ea578063927dcfab1461030a578063945e11471461032057600080fd5b80637a88b1071461027757806386598a56146102975780638db5993b146102d757600080fd5b806347fb24c51161016957806347fb24c51461021f5780634f61f850146102415780635fca4a161461026157600080fd5b806284120c1461018f57806316bf5579146101b3578063413b35bd146101d3575b600080fd5b34801561019b57600080fd5b506007545b6040519081526020015b60405180910390f35b3480156101bf57600080fd5b506101a06101ce366004611782565b6104cd565b3480156101df57600080fd5b5061020f6101ee3660046117b0565b6001600160a01b031660009081526002602052604090206001015460ff1690565b60405190151581526020016101aa565b34801561022b57600080fd5b5061023f61023a3660046117d4565b6104ee565b005b34801561024d57600080fd5b5061023f61025c3660046117b0565b6107f4565b34801561026d57600080fd5b506101a0600a5481565b34801561028357600080fd5b506101a0610292366004611812565b610920565b3480156102a357600080fd5b506102b76102b236600461183e565b610981565b6040805194855260208501939093529183015260608201526080016101aa565b6101a06102e5366004611870565b610b1a565b3480156102f657600080fd5b5061023f6103053660046117b0565b610b30565b34801561031657600080fd5b506101a060335481565b34801561032c57600080fd5b5061034061033b366004611782565b610c55565b6040516001600160a01b0390911681526020016101aa565b34801561036457600080fd5b506103786103733660046118b7565b610c7f565b6040516101aa929190611964565b34801561039257600080fd5b50610340610e15565b3480156103a757600080fd5b5061020f6103b63660046117b0565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b3480156103e457600080fd5b5061023f6103f33660046117b0565b610e58565b34801561040457600080fd5b50600854610340906001600160a01b031681565b34801561042457600080fd5b5061023f6104333660046117d4565b61107c565b34801561044457600080fd5b506101a0610453366004611782565b6113ea565b34801561046457600080fd5b50610340610473366004611782565b6113fa565b34801561048457600080fd5b506006546101a0565b34801561049957600080fd5b50600954610340906001600160a01b031681565b3480156104b957600080fd5b5061023f6104c8366004611782565b61140a565b600781815481106104dd57600080fd5b600091825260209091200154905081565b6008546001600160a01b031633146105bd5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa15801561054a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e91906119a0565b9050336001600160a01b038216146105bb57600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064015b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a2821515811515036106295750505050565b82156106c457604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805473ffffffffffffffffffffffffffffffffffffffff191690911790556107ed565b600380546106d4906001906119bd565b815481106106e4576106e46119de565b6000918252602090912001548254600380546001600160a01b03909316929091908110610713576107136119de565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600160006003856000015481548110610761576107616119de565b60009182526020808320909101546001600160a01b031683528201929092526040019020556003805480610797576107976119f4565b600082815260208082208301600019908101805473ffffffffffffffffffffffffffffffffffffffff191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6008546001600160a01b031633146108be5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610850573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087491906119a0565b9050336001600160a01b038216146108bc57600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b6009805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a906020015b60405180910390a150565b6009546000906001600160a01b03163314610969576040517f88f84f040000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b610978600d84434248876114d9565b90505b92915050565b6009546000908190819081906001600160a01b031633146109d0576040517f88f84f040000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b85600a54141580156109e157508515155b80156109ee5750600a5415155b15610a3357600a546040517fe2051feb0000000000000000000000000000000000000000000000000000000081526004810191909152602481018790526044016105b2565b600a85905560075493508315610a715760078054610a53906001906119bd565b81548110610a6357610a636119de565b906000526020600020015492505b8615610aa2576006610a846001896119bd565b81548110610a9457610a946119de565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600780546001810182556000919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688018190559398929750909550919350915050565b6000610b28848484346116ab565b949350505050565b6008546001600160a01b03163314610bfa5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610b8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb091906119a0565b9050336001600160a01b03821614610bf857600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b6008805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fae1f5aa15f6ff844896347ceca2a3c24c8d3a27785efdeacd581a0a95172784a90602001610915565b60048181548110610c6557600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff16610cd0576040517f32ea82ab0000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b8215801590610ce757506001600160a01b0386163b155b15610d29576040517fb5cf5b8f0000000000000000000000000000000000000000000000000000000081526001600160a01b03871660048201526024016105b2565b6005805473ffffffffffffffffffffffffffffffffffffffff1981163317909155604080516020601f87018190048102820181019092528581526001600160a01b0390921691610d979189918991899089908190840183828082843760009201919091525061171392505050565b6005805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610e03908a908a908a90611a0a565b60405180910390a35094509492505050565b6005546000906001600160a01b03167fffffffffffffffffffffffff00000000000000000000000000000000000000018101610e5357600091505090565b919050565b600054610100900460ff1615808015610e785750600054600160ff909116105b80610e925750303b158015610e92575060005460ff166001145b610f1e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105b2565b6000805460ff191660011790558015610f41576000805461ff0019166101001790555b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610ff9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c000000000000000000000000000000000000000060648201526084016105b2565b600580546001600160a01b0373ffffffffffffffffffffffffffffffffffffffff1991821681179092556008805490911691841691909117905580156107f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6008546001600160a01b031633146111465760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa1580156110d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fc91906119a0565b9050336001600160a01b0382161461114457600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b7fffffffffffffffffffffffff00000000000000000000000000000000000000016001600160a01b038316016111b3576040517f77abed100000000000000000000000000000000000000000000000000000000081526001600160a01b03831660048201526024016105b2565b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2821515811515036112205750505050565b82156112bc57604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01805473ffffffffffffffffffffffffffffffffffffffff191690911790556107ed565b600480546112cc906001906119bd565b815481106112dc576112dc6119de565b6000918252602090912001548254600480546001600160a01b0390931692909190811061130b5761130b6119de565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110611359576113596119de565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600480548061138f5761138f6119f4565b600082815260208082208301600019908101805473ffffffffffffffffffffffffffffffffffffffff191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b600681815481106104dd57600080fd5b60038181548110610c6557600080fd5b6008546001600160a01b031633146114d45760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015611466573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061148a91906119a0565b9050336001600160a01b038216146114d257600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b600a55565b600654604080517fff0000000000000000000000000000000000000000000000000000000000000060f88a901b166020808301919091527fffffffffffffffffffffffffffffffffffffffff00000000000000000000000060608a901b1660218301527fffffffffffffffff00000000000000000000000000000000000000000000000060c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a5909201909252805191012060009190600082156115d65760066115b86001856119bd565b815481106115c8576115c86119de565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b3360009081526001602081905260408220015460ff166116f9576040517fb6c60ea30000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b60006117098686434248896114d9565b9695505050505050565b60006060846001600160a01b031684846040516117309190611a40565b60006040518083038185875af1925050503d806000811461176d576040519150601f19603f3d011682016040523d82523d6000602084013e611772565b606091505b5090969095509350505050565b50565b60006020828403121561179457600080fd5b5035919050565b6001600160a01b038116811461177f57600080fd5b6000602082840312156117c257600080fd5b81356117cd8161179b565b9392505050565b600080604083850312156117e757600080fd5b82356117f28161179b565b91506020830135801515811461180757600080fd5b809150509250929050565b6000806040838503121561182557600080fd5b82356118308161179b565b946020939093013593505050565b6000806000806080858703121561185457600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006060848603121561188557600080fd5b833560ff8116811461189657600080fd5b925060208401356118a68161179b565b929592945050506040919091013590565b600080600080606085870312156118cd57600080fd5b84356118d88161179b565b935060208501359250604085013567ffffffffffffffff808211156118fc57600080fd5b818701915087601f83011261191057600080fd5b81358181111561191f57600080fd5b88602082850101111561193157600080fd5b95989497505060200194505050565b60005b8381101561195b578181015183820152602001611943565b50506000910152565b8215158152604060208201526000825180604084015261198b816060850160208701611940565b601f01601f1916919091016060019392505050565b6000602082840312156119b257600080fd5b81516117cd8161179b565b8181038181111561097b57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008251611a52818460208701611940565b919091019291505056fea264697066735822122097ca2fb64f90b684c5d54ae9f579851f137add6d345d9c88b67a43f9885bdefe64736f6c63430008110033",
704
+ "deployedBytecode": "0x60806040526004361061018a5760003560e01c80639e5d4c49116100d6578063d5719dc21161007f578063eca067ad11610059578063eca067ad14610478578063ee35f3271461048d578063f81ff3b3146104ad57600080fd5b8063d5719dc214610438578063e76f5c8d14610458578063e77145f41461023f57600080fd5b8063c4d66de8116100b0578063c4d66de8146103d8578063cb23bcb5146103f8578063cee3d7281461041857600080fd5b80639e5d4c4914610358578063ab5d894314610386578063ae60bd131461039b57600080fd5b80637a88b10711610138578063919cc70611610112578063919cc706146102ea578063927dcfab1461030a578063945e11471461032057600080fd5b80637a88b1071461027757806386598a56146102975780638db5993b146102d757600080fd5b806347fb24c51161016957806347fb24c51461021f5780634f61f850146102415780635fca4a161461026157600080fd5b806284120c1461018f57806316bf5579146101b3578063413b35bd146101d3575b600080fd5b34801561019b57600080fd5b506007545b6040519081526020015b60405180910390f35b3480156101bf57600080fd5b506101a06101ce366004611782565b6104cd565b3480156101df57600080fd5b5061020f6101ee3660046117b0565b6001600160a01b031660009081526002602052604090206001015460ff1690565b60405190151581526020016101aa565b34801561022b57600080fd5b5061023f61023a3660046117d4565b6104ee565b005b34801561024d57600080fd5b5061023f61025c3660046117b0565b6107f4565b34801561026d57600080fd5b506101a0600a5481565b34801561028357600080fd5b506101a0610292366004611812565b610920565b3480156102a357600080fd5b506102b76102b236600461183e565b610981565b6040805194855260208501939093529183015260608201526080016101aa565b6101a06102e5366004611870565b610b1a565b3480156102f657600080fd5b5061023f6103053660046117b0565b610b30565b34801561031657600080fd5b506101a060335481565b34801561032c57600080fd5b5061034061033b366004611782565b610c55565b6040516001600160a01b0390911681526020016101aa565b34801561036457600080fd5b506103786103733660046118b7565b610c7f565b6040516101aa929190611964565b34801561039257600080fd5b50610340610e15565b3480156103a757600080fd5b5061020f6103b63660046117b0565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b3480156103e457600080fd5b5061023f6103f33660046117b0565b610e58565b34801561040457600080fd5b50600854610340906001600160a01b031681565b34801561042457600080fd5b5061023f6104333660046117d4565b61107c565b34801561044457600080fd5b506101a0610453366004611782565b6113ea565b34801561046457600080fd5b50610340610473366004611782565b6113fa565b34801561048457600080fd5b506006546101a0565b34801561049957600080fd5b50600954610340906001600160a01b031681565b3480156104b957600080fd5b5061023f6104c8366004611782565b61140a565b600781815481106104dd57600080fd5b600091825260209091200154905081565b6008546001600160a01b031633146105bd5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa15801561054a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e91906119a0565b9050336001600160a01b038216146105bb57600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064015b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a2821515811515036106295750505050565b82156106c457604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805473ffffffffffffffffffffffffffffffffffffffff191690911790556107ed565b600380546106d4906001906119bd565b815481106106e4576106e46119de565b6000918252602090912001548254600380546001600160a01b03909316929091908110610713576107136119de565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600160006003856000015481548110610761576107616119de565b60009182526020808320909101546001600160a01b031683528201929092526040019020556003805480610797576107976119f4565b600082815260208082208301600019908101805473ffffffffffffffffffffffffffffffffffffffff191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6008546001600160a01b031633146108be5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610850573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087491906119a0565b9050336001600160a01b038216146108bc57600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b6009805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a906020015b60405180910390a150565b6009546000906001600160a01b03163314610969576040517f88f84f040000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b610978600d84434248876114d9565b90505b92915050565b6009546000908190819081906001600160a01b031633146109d0576040517f88f84f040000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b85600a54141580156109e157508515155b80156109ee5750600a5415155b15610a3357600a546040517fe2051feb0000000000000000000000000000000000000000000000000000000081526004810191909152602481018790526044016105b2565b600a85905560075493508315610a715760078054610a53906001906119bd565b81548110610a6357610a636119de565b906000526020600020015492505b8615610aa2576006610a846001896119bd565b81548110610a9457610a946119de565b906000526020600020015491505b60408051602081018590529081018990526060810183905260800160408051601f198184030181529190528051602090910120600780546001810182556000919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688018190559398929750909550919350915050565b6000610b28848484346116ab565b949350505050565b6008546001600160a01b03163314610bfa5760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610b8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb091906119a0565b9050336001600160a01b03821614610bf857600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b6008805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fae1f5aa15f6ff844896347ceca2a3c24c8d3a27785efdeacd581a0a95172784a90602001610915565b60048181548110610c6557600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff16610cd0576040517f32ea82ab0000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b8215801590610ce757506001600160a01b0386163b155b15610d29576040517fb5cf5b8f0000000000000000000000000000000000000000000000000000000081526001600160a01b03871660048201526024016105b2565b6005805473ffffffffffffffffffffffffffffffffffffffff1981163317909155604080516020601f87018190048102820181019092528581526001600160a01b0390921691610d979189918991899089908190840183828082843760009201919091525061171392505050565b6005805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610e03908a908a908a90611a0a565b60405180910390a35094509492505050565b6005546000906001600160a01b03167fffffffffffffffffffffffff00000000000000000000000000000000000000018101610e5357600091505090565b919050565b600054610100900460ff1615808015610e785750600054600160ff909116105b80610e925750303b158015610e92575060005460ff166001145b610f1e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016105b2565b6000805460ff191660011790558015610f41576000805461ff0019166101001790555b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610ff9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c000000000000000000000000000000000000000060648201526084016105b2565b600580546001600160a01b0373ffffffffffffffffffffffffffffffffffffffff1991821681179092556008805490911691841691909117905580156107f0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6008546001600160a01b031633146111465760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa1580156110d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110fc91906119a0565b9050336001600160a01b0382161461114457600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b7fffffffffffffffffffffffff00000000000000000000000000000000000000016001600160a01b038316016111b3576040517f77abed100000000000000000000000000000000000000000000000000000000081526001600160a01b03831660048201526024016105b2565b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2821515811515036112205750505050565b82156112bc57604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01805473ffffffffffffffffffffffffffffffffffffffff191690911790556107ed565b600480546112cc906001906119bd565b815481106112dc576112dc6119de565b6000918252602090912001548254600480546001600160a01b0390931692909190811061130b5761130b6119de565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110611359576113596119de565b60009182526020808320909101546001600160a01b03168352820192909252604001902055600480548061138f5761138f6119f4565b600082815260208082208301600019908101805473ffffffffffffffffffffffffffffffffffffffff191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b600681815481106104dd57600080fd5b60038181548110610c6557600080fd5b6008546001600160a01b031633146114d45760085460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015611466573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061148a91906119a0565b9050336001600160a01b038216146114d257600854604051630739600760e01b81523360048201526001600160a01b03918216602482015290821660448201526064016105b2565b505b600a55565b600654604080517fff0000000000000000000000000000000000000000000000000000000000000060f88a901b166020808301919091527fffffffffffffffffffffffffffffffffffffffff00000000000000000000000060608a901b1660218301527fffffffffffffffff00000000000000000000000000000000000000000000000060c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a5909201909252805191012060009190600082156115d65760066115b86001856119bd565b815481106115c8576115c86119de565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600680546001810182556000919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b3360009081526001602081905260408220015460ff166116f9576040517fb6c60ea30000000000000000000000000000000000000000000000000000000081523360048201526024016105b2565b60006117098686434248896114d9565b9695505050505050565b60006060846001600160a01b031684846040516117309190611a40565b60006040518083038185875af1925050503d806000811461176d576040519150601f19603f3d011682016040523d82523d6000602084013e611772565b606091505b5090969095509350505050565b50565b60006020828403121561179457600080fd5b5035919050565b6001600160a01b038116811461177f57600080fd5b6000602082840312156117c257600080fd5b81356117cd8161179b565b9392505050565b600080604083850312156117e757600080fd5b82356117f28161179b565b91506020830135801515811461180757600080fd5b809150509250929050565b6000806040838503121561182557600080fd5b82356118308161179b565b946020939093013593505050565b6000806000806080858703121561185457600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006060848603121561188557600080fd5b833560ff8116811461189657600080fd5b925060208401356118a68161179b565b929592945050506040919091013590565b600080600080606085870312156118cd57600080fd5b84356118d88161179b565b935060208501359250604085013567ffffffffffffffff808211156118fc57600080fd5b818701915087601f83011261191057600080fd5b81358181111561191f57600080fd5b88602082850101111561193157600080fd5b95989497505060200194505050565b60005b8381101561195b578181015183820152602001611943565b50506000910152565b8215158152604060208201526000825180604084015261198b816060850160208701611940565b601f01601f1916919091016060019392505050565b6000602082840312156119b257600080fd5b81516117cd8161179b565b8181038181111561097b57634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b60008251611a52818460208701611940565b919091019291505056fea264697066735822122097ca2fb64f90b684c5d54ae9f579851f137add6d345d9c88b67a43f9885bdefe64736f6c63430008110033",
679
705
  "linkReferences": {},
680
706
  "deployedLinkReferences": {}
681
707
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/9ec5aeba34e8f7c0c281e147a2954d13.json"
3
+ "buildInfo": "../../../build-info/28754c4998b67fc9c9d6d849262cf39e.json"
4
4
  }
@@ -675,8 +675,8 @@
675
675
  "type": "function"
676
676
  }
677
677
  ],
678
- "bytecode": "0x60a060405234801561001057600080fd5b506201cccc608052608051610c9861003360003960006103900152610c986000f3fe6080604052600436106101605760003560e01c80638456cb59116100c1578063c474d2c51161007a578063c474d2c514610320578063e3de72a51461033e578063e6bd12cf14610259578063e78cea921461035e578063e8eb1dc31461037e578063ee35f327146103b2578063efeadb6d146103d257600080fd5b80638456cb59146101dd5780638a631aa6146102825780638b3240a01461029d578063a66b327d146102ca578063b75436bb146102e5578063babcc5391461030557600080fd5b80635075788b1161011e5780635075788b146101655780635c975abb1461021c5780635e9167581461023d578063679b6ded1461024b57806367ef3ab8146102595780636e6e8a6a1461024b57806370665f141461026757600080fd5b8062f72382146101655780631fe927cf1461019857806322bd5c1c146101b85780633f4ba83a146101dd578063439370b1146101f4578063485cc955146101fc575b600080fd5b34801561017157600080fd5b506101856101803660046106b9565b6103ed565b6040519081526020015b60405180910390f35b3480156101a457600080fd5b506101856101b3366004610735565b610410565b3480156101c457600080fd5b506101cd6103ed565b604051901515815260200161018f565b3480156101e957600080fd5b506101f26104a9565b005b6101856103ed565b34801561020857600080fd5b506101f2610217366004610776565b6104e3565b34801561022857600080fd5b506001546101cd90600160a01b900460ff1681565b6101856101803660046107af565b610185610180366004610818565b6101856101803660046108bc565b34801561027357600080fd5b5061018561018036600461092e565b34801561028e57600080fd5b5061018561018036600461097b565b3480156102a957600080fd5b506102b26103ed565b6040516001600160a01b03909116815260200161018f565b3480156102d657600080fd5b506101856101803660046109cf565b3480156102f157600080fd5b50610185610300366004610735565b61054e565b34801561031157600080fd5b506101cd6101803660046109f1565b34801561032c57600080fd5b506101f261033b3660046109f1565b50565b34801561034a57600080fd5b506101f2610359366004610b05565b6105aa565b34801561036a57600080fd5b506000546102b2906001600160a01b031681565b34801561038a57600080fd5b506101857f000000000000000000000000000000000000000000000000000000000000000081565b3480156103be57600080fd5b506001546102b2906001600160a01b031681565b3480156103de57600080fd5b506101f2610359366004610bc6565b600060405162461bcd60e51b815260040161040790610be1565b60405180910390fd5b600033321461044f5760405162461bcd60e51b815260206004820152600b60248201526a6f726967696e206f6e6c7960a81b6044820152606401610407565b60006104746003338686604051610467929190610c0a565b60405180910390206105c2565b60405190915081907fab532385be8f1005a4b6ba8fa20a2245facb346134ac739fe9a5198dc1580b9c90600090a29392505050565b60405162461bcd60e51b815260206004820152600f60248201526e1393d5081253541311535153951151608a1b6044820152606401610407565b6000546001600160a01b03161561052b5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b6044820152606401610407565b50600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000806105676003338686604051610467929190610c0a565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b858560405161059b929190610c1a565b60405180910390a29392505050565b60405162461bcd60e51b815260040161040790610be1565b60008054604051638db5993b60e01b815260ff861660048201526001600160a01b0385811660248301526044820185905290911690638db5993b9034906064016020604051808303818588803b15801561061b57600080fd5b505af115801561062f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906106549190610c49565b949350505050565b6001600160a01b038116811461033b57600080fd5b60008083601f84011261068357600080fd5b5081356001600160401b0381111561069a57600080fd5b6020830191508360208285010111156106b257600080fd5b9250929050565b600080600080600080600060c0888a0312156106d457600080fd5b87359650602088013595506040880135945060608801356106f48161065c565b93506080880135925060a08801356001600160401b0381111561071657600080fd5b6107228a828b01610671565b989b979a50959850939692959293505050565b6000806020838503121561074857600080fd5b82356001600160401b0381111561075e57600080fd5b61076a85828601610671565b90969095509350505050565b6000806040838503121561078957600080fd5b82356107948161065c565b915060208301356107a48161065c565b809150509250929050565b6000806000806000608086880312156107c757600080fd5b853594506020860135935060408601356107e08161065c565b925060608601356001600160401b038111156107fb57600080fd5b61080788828901610671565b969995985093965092949392505050565b60008060008060008060008060006101008a8c03121561083757600080fd5b89356108428161065c565b985060208a0135975060408a0135965060608a01356108608161065c565b955060808a01356108708161065c565b945060a08a0135935060c08a0135925060e08a01356001600160401b0381111561089957600080fd5b6108a58c828d01610671565b915080935050809150509295985092959850929598565b60008060008060008060a087890312156108d557600080fd5b86359550602087013594506040870135935060608701356108f58161065c565b925060808701356001600160401b0381111561091057600080fd5b61091c89828a01610671565b979a9699509497509295939492505050565b600080600080600060a0868803121561094657600080fd5b85359450602086013593506040860135925060608601359150608086013561096d8161065c565b809150509295509295909350565b60008060008060008060a0878903121561099457600080fd5b863595506020870135945060408701356109ad8161065c565b93506060870135925060808701356001600160401b0381111561091057600080fd5b600080604083850312156109e257600080fd5b50508035926020909101359150565b600060208284031215610a0357600080fd5b8135610a0e8161065c565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610a5357610a53610a15565b604052919050565b60006001600160401b03821115610a7457610a74610a15565b5060051b60200190565b80358015158114610a8e57600080fd5b919050565b600082601f830112610aa457600080fd5b81356020610ab9610ab483610a5b565b610a2b565b82815260059290921b84018101918181019086841115610ad857600080fd5b8286015b84811015610afa57610aed81610a7e565b8352918301918301610adc565b509695505050505050565b60008060408385031215610b1857600080fd5b82356001600160401b0380821115610b2f57600080fd5b818501915085601f830112610b4357600080fd5b81356020610b53610ab483610a5b565b82815260059290921b84018101918181019089841115610b7257600080fd5b948201945b83861015610b99578535610b8a8161065c565b82529482019490820190610b77565b96505086013592505080821115610baf57600080fd5b50610bbc85828601610a93565b9150509250929050565b600060208284031215610bd857600080fd5b610a0e82610a7e565b6020808252600f908201526e1393d517d253541311535153951151608a1b604082015260600190565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215610c5b57600080fd5b505191905056fea264697066735822122048d83c21592a9929be020346b62eb9aeb7b0fb950feb332c1cc82b9a09e15a9c64736f6c63430008090033",
679
- "deployedBytecode": "0x6080604052600436106101605760003560e01c80638456cb59116100c1578063c474d2c51161007a578063c474d2c514610320578063e3de72a51461033e578063e6bd12cf14610259578063e78cea921461035e578063e8eb1dc31461037e578063ee35f327146103b2578063efeadb6d146103d257600080fd5b80638456cb59146101dd5780638a631aa6146102825780638b3240a01461029d578063a66b327d146102ca578063b75436bb146102e5578063babcc5391461030557600080fd5b80635075788b1161011e5780635075788b146101655780635c975abb1461021c5780635e9167581461023d578063679b6ded1461024b57806367ef3ab8146102595780636e6e8a6a1461024b57806370665f141461026757600080fd5b8062f72382146101655780631fe927cf1461019857806322bd5c1c146101b85780633f4ba83a146101dd578063439370b1146101f4578063485cc955146101fc575b600080fd5b34801561017157600080fd5b506101856101803660046106b9565b6103ed565b6040519081526020015b60405180910390f35b3480156101a457600080fd5b506101856101b3366004610735565b610410565b3480156101c457600080fd5b506101cd6103ed565b604051901515815260200161018f565b3480156101e957600080fd5b506101f26104a9565b005b6101856103ed565b34801561020857600080fd5b506101f2610217366004610776565b6104e3565b34801561022857600080fd5b506001546101cd90600160a01b900460ff1681565b6101856101803660046107af565b610185610180366004610818565b6101856101803660046108bc565b34801561027357600080fd5b5061018561018036600461092e565b34801561028e57600080fd5b5061018561018036600461097b565b3480156102a957600080fd5b506102b26103ed565b6040516001600160a01b03909116815260200161018f565b3480156102d657600080fd5b506101856101803660046109cf565b3480156102f157600080fd5b50610185610300366004610735565b61054e565b34801561031157600080fd5b506101cd6101803660046109f1565b34801561032c57600080fd5b506101f261033b3660046109f1565b50565b34801561034a57600080fd5b506101f2610359366004610b05565b6105aa565b34801561036a57600080fd5b506000546102b2906001600160a01b031681565b34801561038a57600080fd5b506101857f000000000000000000000000000000000000000000000000000000000000000081565b3480156103be57600080fd5b506001546102b2906001600160a01b031681565b3480156103de57600080fd5b506101f2610359366004610bc6565b600060405162461bcd60e51b815260040161040790610be1565b60405180910390fd5b600033321461044f5760405162461bcd60e51b815260206004820152600b60248201526a6f726967696e206f6e6c7960a81b6044820152606401610407565b60006104746003338686604051610467929190610c0a565b60405180910390206105c2565b60405190915081907fab532385be8f1005a4b6ba8fa20a2245facb346134ac739fe9a5198dc1580b9c90600090a29392505050565b60405162461bcd60e51b815260206004820152600f60248201526e1393d5081253541311535153951151608a1b6044820152606401610407565b6000546001600160a01b03161561052b5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b6044820152606401610407565b50600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000806105676003338686604051610467929190610c0a565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b858560405161059b929190610c1a565b60405180910390a29392505050565b60405162461bcd60e51b815260040161040790610be1565b60008054604051638db5993b60e01b815260ff861660048201526001600160a01b0385811660248301526044820185905290911690638db5993b9034906064016020604051808303818588803b15801561061b57600080fd5b505af115801561062f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906106549190610c49565b949350505050565b6001600160a01b038116811461033b57600080fd5b60008083601f84011261068357600080fd5b5081356001600160401b0381111561069a57600080fd5b6020830191508360208285010111156106b257600080fd5b9250929050565b600080600080600080600060c0888a0312156106d457600080fd5b87359650602088013595506040880135945060608801356106f48161065c565b93506080880135925060a08801356001600160401b0381111561071657600080fd5b6107228a828b01610671565b989b979a50959850939692959293505050565b6000806020838503121561074857600080fd5b82356001600160401b0381111561075e57600080fd5b61076a85828601610671565b90969095509350505050565b6000806040838503121561078957600080fd5b82356107948161065c565b915060208301356107a48161065c565b809150509250929050565b6000806000806000608086880312156107c757600080fd5b853594506020860135935060408601356107e08161065c565b925060608601356001600160401b038111156107fb57600080fd5b61080788828901610671565b969995985093965092949392505050565b60008060008060008060008060006101008a8c03121561083757600080fd5b89356108428161065c565b985060208a0135975060408a0135965060608a01356108608161065c565b955060808a01356108708161065c565b945060a08a0135935060c08a0135925060e08a01356001600160401b0381111561089957600080fd5b6108a58c828d01610671565b915080935050809150509295985092959850929598565b60008060008060008060a087890312156108d557600080fd5b86359550602087013594506040870135935060608701356108f58161065c565b925060808701356001600160401b0381111561091057600080fd5b61091c89828a01610671565b979a9699509497509295939492505050565b600080600080600060a0868803121561094657600080fd5b85359450602086013593506040860135925060608601359150608086013561096d8161065c565b809150509295509295909350565b60008060008060008060a0878903121561099457600080fd5b863595506020870135945060408701356109ad8161065c565b93506060870135925060808701356001600160401b0381111561091057600080fd5b600080604083850312156109e257600080fd5b50508035926020909101359150565b600060208284031215610a0357600080fd5b8135610a0e8161065c565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610a5357610a53610a15565b604052919050565b60006001600160401b03821115610a7457610a74610a15565b5060051b60200190565b80358015158114610a8e57600080fd5b919050565b600082601f830112610aa457600080fd5b81356020610ab9610ab483610a5b565b610a2b565b82815260059290921b84018101918181019086841115610ad857600080fd5b8286015b84811015610afa57610aed81610a7e565b8352918301918301610adc565b509695505050505050565b60008060408385031215610b1857600080fd5b82356001600160401b0380821115610b2f57600080fd5b818501915085601f830112610b4357600080fd5b81356020610b53610ab483610a5b565b82815260059290921b84018101918181019089841115610b7257600080fd5b948201945b83861015610b99578535610b8a8161065c565b82529482019490820190610b77565b96505086013592505080821115610baf57600080fd5b50610bbc85828601610a93565b9150509250929050565b600060208284031215610bd857600080fd5b610a0e82610a7e565b6020808252600f908201526e1393d517d253541311535153951151608a1b604082015260600190565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215610c5b57600080fd5b505191905056fea264697066735822122048d83c21592a9929be020346b62eb9aeb7b0fb950feb332c1cc82b9a09e15a9c64736f6c63430008090033",
678
+ "bytecode": "0x60a060405234801561001057600080fd5b506201cccc608052608051610dee61003360003960006103fb0152610dee6000f3fe6080604052600436106101a05760003560e01c80638456cb59116100e1578063c474d2c51161008a578063e78cea9211610064578063e78cea92146103bc578063e8eb1dc3146103e9578063ee35f3271461041d578063efeadb6d1461044a57600080fd5b8063c474d2c51461037e578063e3de72a51461039c578063e6bd12cf146102aa57600080fd5b8063a66b327d116100bb578063a66b327d14610328578063b75436bb14610343578063babcc5391461036357600080fd5b80638456cb591461021d5780638a631aa6146102d35780638b3240a0146102ee57600080fd5b80635075788b1161014e578063679b6ded11610128578063679b6ded1461029c57806367ef3ab8146102aa5780636e6e8a6a1461029c57806370665f14146102b857600080fd5b80635075788b146101a55780635c975abb1461025c5780635e9167581461028e57600080fd5b80633f4ba83a1161017f5780633f4ba83a1461021d578063439370b114610234578063485cc9551461023c57600080fd5b8062f72382146101a55780631fe927cf146101d857806322bd5c1c146101f8575b600080fd5b3480156101b157600080fd5b506101c56101c0366004610816565b610465565b6040519081526020015b60405180910390f35b3480156101e457600080fd5b506101c56101f3366004610893565b6104b5565b34801561020457600080fd5b5061020d610465565b60405190151581526020016101cf565b34801561022957600080fd5b50610232610560565b005b6101c5610465565b34801561024857600080fd5b506102326102573660046108d5565b6105a8565b34801561026857600080fd5b5060015461020d9074010000000000000000000000000000000000000000900460ff1681565b6101c56101c036600461090e565b6101c56101c0366004610978565b6101c56101c0366004610a1d565b3480156102c457600080fd5b506101c56101c0366004610a90565b3480156102df57600080fd5b506101c56101c0366004610add565b3480156102fa57600080fd5b50610303610465565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101cf565b34801561033457600080fd5b506101c56101c0366004610b32565b34801561034f57600080fd5b506101c561035e366004610893565b610656565b34801561036f57600080fd5b5061020d6101c0366004610b54565b34801561038a57600080fd5b50610232610399366004610b54565b50565b3480156103a857600080fd5b506102326103b7366004610c83565b6106b2565b3480156103c857600080fd5b506000546103039073ffffffffffffffffffffffffffffffffffffffff1681565b3480156103f557600080fd5b506101c57f000000000000000000000000000000000000000000000000000000000000000081565b34801561042957600080fd5b506001546103039073ffffffffffffffffffffffffffffffffffffffff1681565b34801561045657600080fd5b506102326103b7366004610d45565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e544544000000000000000000000000000000000060448201526000906064015b60405180910390fd5b60003332146105065760405162461bcd60e51b815260206004820152600b60248201527f6f726967696e206f6e6c7900000000000000000000000000000000000000000060448201526064016104ac565b600061052b600333868660405161051e929190610d60565b60405180910390206106fa565b60405190915081907fab532385be8f1005a4b6ba8fa20a2245facb346134ac739fe9a5198dc1580b9c90600090a29392505050565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f5420494d504c454d454e544544000000000000000000000000000000000060448201526064016104ac565b60005473ffffffffffffffffffffffffffffffffffffffff161561060e5760405162461bcd60e51b815260206004820152600c60248201527f414c52454144595f494e4954000000000000000000000000000000000000000060448201526064016104ac565b50600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60008061066f600333868660405161051e929190610d60565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b85856040516106a3929190610d70565b60405180910390a29392505050565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e544544000000000000000000000000000000000060448201526064016104ac565b600080546040517f8db5993b00000000000000000000000000000000000000000000000000000000815260ff8616600482015273ffffffffffffffffffffffffffffffffffffffff85811660248301526044820185905290911690638db5993b90349060640160206040518083038185885af115801561077e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107a39190610d9f565b949350505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461039957600080fd5b60008083601f8401126107df57600080fd5b50813567ffffffffffffffff8111156107f757600080fd5b60208301915083602082850101111561080f57600080fd5b9250929050565b600080600080600080600060c0888a03121561083157600080fd5b8735965060208801359550604088013594506060880135610851816107ab565b93506080880135925060a088013567ffffffffffffffff81111561087457600080fd5b6108808a828b016107cd565b989b979a50959850939692959293505050565b600080602083850312156108a657600080fd5b823567ffffffffffffffff8111156108bd57600080fd5b6108c9858286016107cd565b90969095509350505050565b600080604083850312156108e857600080fd5b82356108f3816107ab565b91506020830135610903816107ab565b809150509250929050565b60008060008060006080868803121561092657600080fd5b8535945060208601359350604086013561093f816107ab565b9250606086013567ffffffffffffffff81111561095b57600080fd5b610967888289016107cd565b969995985093965092949392505050565b60008060008060008060008060006101008a8c03121561099757600080fd5b89356109a2816107ab565b985060208a0135975060408a0135965060608a01356109c0816107ab565b955060808a01356109d0816107ab565b945060a08a0135935060c08a0135925060e08a013567ffffffffffffffff8111156109fa57600080fd5b610a068c828d016107cd565b915080935050809150509295985092959850929598565b60008060008060008060a08789031215610a3657600080fd5b8635955060208701359450604087013593506060870135610a56816107ab565b9250608087013567ffffffffffffffff811115610a7257600080fd5b610a7e89828a016107cd565b979a9699509497509295939492505050565b600080600080600060a08688031215610aa857600080fd5b853594506020860135935060408601359250606086013591506080860135610acf816107ab565b809150509295509295909350565b60008060008060008060a08789031215610af657600080fd5b86359550602087013594506040870135610b0f816107ab565b935060608701359250608087013567ffffffffffffffff811115610a7257600080fd5b60008060408385031215610b4557600080fd5b50508035926020909101359150565b600060208284031215610b6657600080fd5b8135610b71816107ab565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610bd057610bd0610b78565b604052919050565b600067ffffffffffffffff821115610bf257610bf2610b78565b5060051b60200190565b80358015158114610c0c57600080fd5b919050565b600082601f830112610c2257600080fd5b81356020610c37610c3283610bd8565b610ba7565b82815260059290921b84018101918181019086841115610c5657600080fd5b8286015b84811015610c7857610c6b81610bfc565b8352918301918301610c5a565b509695505050505050565b60008060408385031215610c9657600080fd5b823567ffffffffffffffff80821115610cae57600080fd5b818501915085601f830112610cc257600080fd5b81356020610cd2610c3283610bd8565b82815260059290921b84018101918181019089841115610cf157600080fd5b948201945b83861015610d18578535610d09816107ab565b82529482019490820190610cf6565b96505086013592505080821115610d2e57600080fd5b50610d3b85828601610c11565b9150509250929050565b600060208284031215610d5757600080fd5b610b7182610bfc565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215610db157600080fd5b505191905056fea26469706673582212205631a10cc781787f8492f64c05c078d15090b549dbf5958003740194159d1eaa64736f6c63430008110033",
679
+ "deployedBytecode": "0x6080604052600436106101a05760003560e01c80638456cb59116100e1578063c474d2c51161008a578063e78cea9211610064578063e78cea92146103bc578063e8eb1dc3146103e9578063ee35f3271461041d578063efeadb6d1461044a57600080fd5b8063c474d2c51461037e578063e3de72a51461039c578063e6bd12cf146102aa57600080fd5b8063a66b327d116100bb578063a66b327d14610328578063b75436bb14610343578063babcc5391461036357600080fd5b80638456cb591461021d5780638a631aa6146102d35780638b3240a0146102ee57600080fd5b80635075788b1161014e578063679b6ded11610128578063679b6ded1461029c57806367ef3ab8146102aa5780636e6e8a6a1461029c57806370665f14146102b857600080fd5b80635075788b146101a55780635c975abb1461025c5780635e9167581461028e57600080fd5b80633f4ba83a1161017f5780633f4ba83a1461021d578063439370b114610234578063485cc9551461023c57600080fd5b8062f72382146101a55780631fe927cf146101d857806322bd5c1c146101f8575b600080fd5b3480156101b157600080fd5b506101c56101c0366004610816565b610465565b6040519081526020015b60405180910390f35b3480156101e457600080fd5b506101c56101f3366004610893565b6104b5565b34801561020457600080fd5b5061020d610465565b60405190151581526020016101cf565b34801561022957600080fd5b50610232610560565b005b6101c5610465565b34801561024857600080fd5b506102326102573660046108d5565b6105a8565b34801561026857600080fd5b5060015461020d9074010000000000000000000000000000000000000000900460ff1681565b6101c56101c036600461090e565b6101c56101c0366004610978565b6101c56101c0366004610a1d565b3480156102c457600080fd5b506101c56101c0366004610a90565b3480156102df57600080fd5b506101c56101c0366004610add565b3480156102fa57600080fd5b50610303610465565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101cf565b34801561033457600080fd5b506101c56101c0366004610b32565b34801561034f57600080fd5b506101c561035e366004610893565b610656565b34801561036f57600080fd5b5061020d6101c0366004610b54565b34801561038a57600080fd5b50610232610399366004610b54565b50565b3480156103a857600080fd5b506102326103b7366004610c83565b6106b2565b3480156103c857600080fd5b506000546103039073ffffffffffffffffffffffffffffffffffffffff1681565b3480156103f557600080fd5b506101c57f000000000000000000000000000000000000000000000000000000000000000081565b34801561042957600080fd5b506001546103039073ffffffffffffffffffffffffffffffffffffffff1681565b34801561045657600080fd5b506102326103b7366004610d45565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e544544000000000000000000000000000000000060448201526000906064015b60405180910390fd5b60003332146105065760405162461bcd60e51b815260206004820152600b60248201527f6f726967696e206f6e6c7900000000000000000000000000000000000000000060448201526064016104ac565b600061052b600333868660405161051e929190610d60565b60405180910390206106fa565b60405190915081907fab532385be8f1005a4b6ba8fa20a2245facb346134ac739fe9a5198dc1580b9c90600090a29392505050565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f5420494d504c454d454e544544000000000000000000000000000000000060448201526064016104ac565b60005473ffffffffffffffffffffffffffffffffffffffff161561060e5760405162461bcd60e51b815260206004820152600c60248201527f414c52454144595f494e4954000000000000000000000000000000000000000060448201526064016104ac565b50600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60008061066f600333868660405161051e929190610d60565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b85856040516106a3929190610d70565b60405180910390a29392505050565b60405162461bcd60e51b815260206004820152600f60248201527f4e4f545f494d504c454d454e544544000000000000000000000000000000000060448201526064016104ac565b600080546040517f8db5993b00000000000000000000000000000000000000000000000000000000815260ff8616600482015273ffffffffffffffffffffffffffffffffffffffff85811660248301526044820185905290911690638db5993b90349060640160206040518083038185885af115801561077e573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107a39190610d9f565b949350505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461039957600080fd5b60008083601f8401126107df57600080fd5b50813567ffffffffffffffff8111156107f757600080fd5b60208301915083602082850101111561080f57600080fd5b9250929050565b600080600080600080600060c0888a03121561083157600080fd5b8735965060208801359550604088013594506060880135610851816107ab565b93506080880135925060a088013567ffffffffffffffff81111561087457600080fd5b6108808a828b016107cd565b989b979a50959850939692959293505050565b600080602083850312156108a657600080fd5b823567ffffffffffffffff8111156108bd57600080fd5b6108c9858286016107cd565b90969095509350505050565b600080604083850312156108e857600080fd5b82356108f3816107ab565b91506020830135610903816107ab565b809150509250929050565b60008060008060006080868803121561092657600080fd5b8535945060208601359350604086013561093f816107ab565b9250606086013567ffffffffffffffff81111561095b57600080fd5b610967888289016107cd565b969995985093965092949392505050565b60008060008060008060008060006101008a8c03121561099757600080fd5b89356109a2816107ab565b985060208a0135975060408a0135965060608a01356109c0816107ab565b955060808a01356109d0816107ab565b945060a08a0135935060c08a0135925060e08a013567ffffffffffffffff8111156109fa57600080fd5b610a068c828d016107cd565b915080935050809150509295985092959850929598565b60008060008060008060a08789031215610a3657600080fd5b8635955060208701359450604087013593506060870135610a56816107ab565b9250608087013567ffffffffffffffff811115610a7257600080fd5b610a7e89828a016107cd565b979a9699509497509295939492505050565b600080600080600060a08688031215610aa857600080fd5b853594506020860135935060408601359250606086013591506080860135610acf816107ab565b809150509295509295909350565b60008060008060008060a08789031215610af657600080fd5b86359550602087013594506040870135610b0f816107ab565b935060608701359250608087013567ffffffffffffffff811115610a7257600080fd5b60008060408385031215610b4557600080fd5b50508035926020909101359150565b600060208284031215610b6657600080fd5b8135610b71816107ab565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610bd057610bd0610b78565b604052919050565b600067ffffffffffffffff821115610bf257610bf2610b78565b5060051b60200190565b80358015158114610c0c57600080fd5b919050565b600082601f830112610c2257600080fd5b81356020610c37610c3283610bd8565b610ba7565b82815260059290921b84018101918181019086841115610c5657600080fd5b8286015b84811015610c7857610c6b81610bfc565b8352918301918301610c5a565b509695505050505050565b60008060408385031215610c9657600080fd5b823567ffffffffffffffff80821115610cae57600080fd5b818501915085601f830112610cc257600080fd5b81356020610cd2610c3283610bd8565b82815260059290921b84018101918181019089841115610cf157600080fd5b948201945b83861015610d18578535610d09816107ab565b82529482019490820190610cf6565b96505086013592505080821115610d2e57600080fd5b50610d3b85828601610c11565b9150509250929050565b600060208284031215610d5757600080fd5b610b7182610bfc565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600060208284031215610db157600080fd5b505191905056fea26469706673582212205631a10cc781787f8492f64c05c078d15090b549dbf5958003740194159d1eaa64736f6c63430008110033",
680
680
  "linkReferences": {},
681
681
  "deployedLinkReferences": {}
682
682
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28754c4998b67fc9c9d6d849262cf39e.json"
4
+ }