@arbitrum/nitro-contracts 1.1.0-alpha.7 → 1.1.0-beta.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (540) 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/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
  5. package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
  6. package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
  7. package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +1 -1
  8. package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
  9. package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
  10. package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
  11. package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +4 -0
  12. package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.json +10 -0
  13. package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
  14. package/build/contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  15. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
  16. package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  17. package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  18. package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  19. package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
  20. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +4 -0
  21. package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.json +215 -0
  22. package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +4 -0
  23. package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json +183 -0
  24. package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  25. package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  26. package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
  27. package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  28. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  29. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  30. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +4 -0
  31. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.json +10 -0
  32. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +4 -0
  33. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.json +10 -0
  34. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +4 -0
  35. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.json +30 -0
  36. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +4 -0
  37. package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.json +30 -0
  38. package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
  39. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
  40. package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.json +26 -0
  41. package/build/contracts/src/bridge/AbsOutbox.sol/AbsOutbox.dbg.json +1 -1
  42. package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  43. package/build/contracts/src/bridge/Bridge.sol/Bridge.json +2 -2
  44. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
  45. package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.json +7 -2
  46. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
  47. package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.json +39 -2
  48. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
  49. package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.json +2 -2
  50. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +4 -0
  51. package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.json +539 -0
  52. package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +1 -1
  53. package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +1 -1
  54. package/build/contracts/src/bridge/IERC20Bridge.sol/IERC20Bridge.dbg.json +1 -1
  55. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.dbg.json +1 -1
  56. package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.json +26 -0
  57. package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
  58. package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
  59. package/build/contracts/src/bridge/IInbox.sol/IInbox.json +26 -0
  60. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
  61. package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.json +26 -0
  62. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
  63. package/build/contracts/src/bridge/IOutbox.sol/IOutbox.json +13 -0
  64. package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
  65. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
  66. package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.json +13 -0
  67. package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
  68. package/build/contracts/src/bridge/Inbox.sol/Inbox.json +39 -2
  69. package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
  70. package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +1 -1
  71. package/build/contracts/src/bridge/Outbox.sol/Outbox.json +2 -2
  72. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +1 -1
  73. package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +26 -2
  74. package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +1 -1
  75. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +1 -1
  76. package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +2 -2
  77. package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +1 -1
  78. package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +1 -1
  79. package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
  80. package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
  81. package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +1 -1
  82. package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +1 -1
  83. package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
  84. package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
  85. package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
  86. package/build/contracts/src/libraries/IGasRefunder.sol/GasRefundEnabled.dbg.json +1 -1
  87. package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
  88. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
  89. package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +2 -2
  90. package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
  91. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  92. package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +2 -2
  93. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
  94. package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +2 -2
  95. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
  96. package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +33 -2
  97. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +1 -1
  98. package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +2 -2
  99. package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +1 -1
  100. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
  101. package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +20 -2
  102. package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +1 -1
  103. package/build/contracts/src/mocks/Simple.sol/Simple.json +2 -2
  104. package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +1 -1
  105. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +1 -1
  106. package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +2 -2
  107. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +1 -1
  108. package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +2 -2
  109. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +4 -0
  110. package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.json +350 -0
  111. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
  112. package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.json +43 -0
  113. package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
  114. package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
  115. package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
  116. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +1 -1
  117. package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.json +2 -2
  118. package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +1 -1
  119. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
  120. package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +2 -2
  121. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
  122. package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +2 -2
  123. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
  124. package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +2 -2
  125. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
  126. package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +2 -2
  127. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
  128. package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +2 -2
  129. package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +1 -1
  130. package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +1 -1
  131. package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +1 -1
  132. package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +1 -1
  133. package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +1 -1
  134. package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +1 -1
  135. package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +1 -1
  136. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +1 -1
  137. package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.json +13 -0
  138. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
  139. package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.json +39 -0
  140. package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
  141. package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
  142. package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
  143. package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
  144. package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
  145. package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
  146. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
  147. package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +214 -83
  148. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +4 -0
  149. package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +214 -0
  150. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
  151. package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.json +2 -2
  152. package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
  153. package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
  154. package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
  155. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
  156. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +1 -1
  157. package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +1 -1
  158. package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +1 -1
  159. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
  160. package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +2 -2
  161. package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
  162. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
  163. package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +67 -24
  164. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +1 -1
  165. package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.json +2 -2
  166. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +1 -1
  167. package/build/contracts/src/rollup/RollupLib.sol/RollupLib.json +2 -2
  168. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +1 -1
  169. package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +2 -2
  170. package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +1 -1
  171. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +1 -1
  172. package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +2 -2
  173. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
  174. package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +2 -2
  175. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +1 -1
  176. package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +2 -2
  177. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
  178. package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +2 -2
  179. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +1 -1
  180. package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +2 -2
  181. package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +1 -1
  182. package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
  183. package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
  184. package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
  185. package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
  186. package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
  187. package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
  188. package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
  189. package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
  190. package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
  191. package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
  192. package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
  193. package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
  194. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
  195. package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +2 -2
  196. package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
  197. package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
  198. package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
  199. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +1 -1
  200. package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json +2 -2
  201. package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +1 -1
  202. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +4 -0
  203. package/build/contracts/src/test-helpers/TestToken.sol/TestToken.json +292 -0
  204. package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
  205. package/package.json +9 -8
  206. package/src/bridge/AbsBridge.sol +1 -1
  207. package/src/bridge/AbsInbox.sol +27 -6
  208. package/src/bridge/AbsOutbox.sol +7 -0
  209. package/src/bridge/ERC20Bridge.sol +22 -5
  210. package/src/bridge/ERC20Inbox.sol +4 -1
  211. package/src/bridge/ERC20Outbox.sol +3 -0
  212. package/src/bridge/GasRefunder.sol +255 -0
  213. package/src/bridge/IERC20Bridge.sol +5 -3
  214. package/src/bridge/IInboxBase.sol +5 -0
  215. package/src/bridge/IOutbox.sol +2 -0
  216. package/src/bridge/ISequencerInbox.sol +2 -0
  217. package/src/bridge/Inbox.sol +2 -1
  218. package/src/bridge/Outbox.sol +4 -0
  219. package/src/bridge/SequencerInbox.sol +8 -4
  220. package/src/libraries/Constants.sol +0 -3
  221. package/src/libraries/Error.sol +3 -0
  222. package/src/mocks/InboxStub.sol +9 -0
  223. package/src/mocks/SequencerInboxStub.sol +3 -2
  224. package/src/mocks/Simple.sol +2 -1
  225. package/src/mocks/UpgradeExecutorMock.sol +82 -0
  226. package/src/node-interface/NodeInterface.sol +16 -0
  227. package/src/precompiles/ArbOwner.sol +6 -0
  228. package/src/precompiles/ArbOwnerPublic.sol +12 -0
  229. package/src/rollup/BridgeCreator.sol +90 -28
  230. package/src/rollup/DeployHelper.sol +149 -0
  231. package/src/rollup/RollupCreator.sol +124 -55
  232. package/src/test-helpers/TestToken.sol +16 -0
  233. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.dbg.json +0 -4
  234. package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.json +0 -312
  235. package/build/contracts/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol/ERC20PresetFixedSupply.dbg.json +0 -4
  236. package/build/contracts/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol/ERC20PresetFixedSupply.json +0 -338
  237. package/build/contracts/src/rollup/AbsBridgeCreator.sol/AbsBridgeCreator.dbg.json +0 -4
  238. package/build/contracts/src/rollup/AbsBridgeCreator.sol/AbsBridgeCreator.json +0 -167
  239. package/build/contracts/src/rollup/ERC20BridgeCreator.sol/ERC20BridgeCreator.dbg.json +0 -4
  240. package/build/contracts/src/rollup/ERC20BridgeCreator.sol/ERC20BridgeCreator.json +0 -248
  241. package/build/contracts/src/rollup/IBridgeCreator.sol/IBridgeCreator.dbg.json +0 -4
  242. package/build/contracts/src/rollup/IBridgeCreator.sol/IBridgeCreator.json +0 -109
  243. package/build/contracts/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.dbg.json +0 -4
  244. package/build/contracts/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.json +0 -185
  245. package/build/contracts/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.dbg.json +0 -4
  246. package/build/contracts/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.json +0 -180
  247. package/build/types/@openzeppelin/contracts/access/Ownable.ts +0 -175
  248. package/build/types/@openzeppelin/contracts/access/index.ts +0 -4
  249. package/build/types/@openzeppelin/contracts/index.ts +0 -11
  250. package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +0 -87
  251. package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +0 -4
  252. package/build/types/@openzeppelin/contracts/interfaces/index.ts +0 -5
  253. package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +0 -108
  254. package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts +0 -108
  255. package/build/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +0 -5
  256. package/build/types/@openzeppelin/contracts/proxy/Proxy.ts +0 -55
  257. package/build/types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +0 -87
  258. package/build/types/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.ts +0 -239
  259. package/build/types/@openzeppelin/contracts/proxy/beacon/index.ts +0 -5
  260. package/build/types/@openzeppelin/contracts/proxy/index.ts +0 -12
  261. package/build/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.ts +0 -359
  262. package/build/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.ts +0 -278
  263. package/build/types/@openzeppelin/contracts/proxy/transparent/index.ts +0 -5
  264. package/build/types/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts +0 -216
  265. package/build/types/@openzeppelin/contracts/proxy/utils/index.ts +0 -4
  266. package/build/types/@openzeppelin/contracts/token/ERC20/ERC20.ts +0 -444
  267. package/build/types/@openzeppelin/contracts/token/ERC20/IERC20.ts +0 -322
  268. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.ts +0 -507
  269. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +0 -364
  270. package/build/types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -5
  271. package/build/types/@openzeppelin/contracts/token/ERC20/index.ts +0 -9
  272. package/build/types/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.ts +0 -507
  273. package/build/types/@openzeppelin/contracts/token/ERC20/presets/index.ts +0 -4
  274. package/build/types/@openzeppelin/contracts/token/index.ts +0 -5
  275. package/build/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +0 -175
  276. package/build/types/@openzeppelin/contracts-upgradeable/access/index.ts +0 -4
  277. package/build/types/@openzeppelin/contracts-upgradeable/index.ts +0 -9
  278. package/build/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts +0 -111
  279. package/build/types/@openzeppelin/contracts-upgradeable/security/index.ts +0 -4
  280. package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts +0 -322
  281. package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +0 -4
  282. package/build/types/@openzeppelin/contracts-upgradeable/token/index.ts +0 -5
  283. package/build/types/@openzeppelin/index.ts +0 -7
  284. package/build/types/common.ts +0 -44
  285. package/build/types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +0 -78
  286. package/build/types/factories/@openzeppelin/contracts/access/index.ts +0 -4
  287. package/build/types/factories/@openzeppelin/contracts/index.ts +0 -7
  288. package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +0 -39
  289. package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +0 -4
  290. package/build/types/factories/@openzeppelin/contracts/interfaces/index.ts +0 -4
  291. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +0 -146
  292. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts +0 -71
  293. package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +0 -5
  294. package/build/types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +0 -31
  295. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +0 -39
  296. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon__factory.ts +0 -169
  297. package/build/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +0 -5
  298. package/build/types/factories/@openzeppelin/contracts/proxy/index.ts +0 -8
  299. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.ts +0 -211
  300. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy__factory.ts +0 -228
  301. package/build/types/factories/@openzeppelin/contracts/proxy/transparent/index.ts +0 -5
  302. package/build/types/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts +0 -115
  303. package/build/types/factories/@openzeppelin/contracts/proxy/utils/index.ts +0 -4
  304. package/build/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +0 -349
  305. package/build/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +0 -206
  306. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable__factory.ts +0 -327
  307. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +0 -248
  308. package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -5
  309. package/build/types/factories/@openzeppelin/contracts/token/ERC20/index.ts +0 -7
  310. package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply__factory.ts +0 -420
  311. package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/index.ts +0 -4
  312. package/build/types/factories/@openzeppelin/contracts/token/index.ts +0 -4
  313. package/build/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +0 -78
  314. package/build/types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +0 -4
  315. package/build/types/factories/@openzeppelin/contracts-upgradeable/index.ts +0 -6
  316. package/build/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts +0 -65
  317. package/build/types/factories/@openzeppelin/contracts-upgradeable/security/index.ts +0 -4
  318. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts +0 -209
  319. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +0 -4
  320. package/build/types/factories/@openzeppelin/contracts-upgradeable/token/index.ts +0 -4
  321. package/build/types/factories/@openzeppelin/index.ts +0 -5
  322. package/build/types/factories/index.ts +0 -5
  323. package/build/types/factories/src/bridge/AbsBridge__factory.ts +0 -612
  324. package/build/types/factories/src/bridge/AbsInbox__factory.ts +0 -455
  325. package/build/types/factories/src/bridge/AbsOutbox__factory.ts +0 -561
  326. package/build/types/factories/src/bridge/Bridge__factory.ts +0 -695
  327. package/build/types/factories/src/bridge/ERC20Bridge__factory.ts +0 -746
  328. package/build/types/factories/src/bridge/ERC20Inbox__factory.ts +0 -719
  329. package/build/types/factories/src/bridge/ERC20Outbox__factory.ts +0 -610
  330. package/build/types/factories/src/bridge/IBridge__factory.ts +0 -508
  331. package/build/types/factories/src/bridge/IDelayedMessageProvider__factory.ts +0 -62
  332. package/build/types/factories/src/bridge/IERC20Bridge__factory.ts +0 -576
  333. package/build/types/factories/src/bridge/IERC20Inbox__factory.ts +0 -461
  334. package/build/types/factories/src/bridge/IEthBridge__factory.ts +0 -553
  335. package/build/types/factories/src/bridge/IInboxBase__factory.ts +0 -324
  336. package/build/types/factories/src/bridge/IInbox__factory.ts +0 -647
  337. package/build/types/factories/src/bridge/IOutbox__factory.ts +0 -431
  338. package/build/types/factories/src/bridge/IOwnable__factory.ts +0 -36
  339. package/build/types/factories/src/bridge/ISequencerInbox__factory.ts +0 -666
  340. package/build/types/factories/src/bridge/Inbox__factory.ts +0 -999
  341. package/build/types/factories/src/bridge/Outbox__factory.ts +0 -591
  342. package/build/types/factories/src/bridge/SequencerInbox__factory.ts +0 -865
  343. package/build/types/factories/src/bridge/index.ts +0 -23
  344. package/build/types/factories/src/challenge/ChallengeManager__factory.ts +0 -720
  345. package/build/types/factories/src/challenge/IChallengeManager__factory.ts +0 -401
  346. package/build/types/factories/src/challenge/IChallengeResultReceiver__factory.ts +0 -53
  347. package/build/types/factories/src/challenge/index.ts +0 -6
  348. package/build/types/factories/src/index.ts +0 -12
  349. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy__factory.ts +0 -128
  350. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade__factory.ts +0 -88
  351. package/build/types/factories/src/libraries/AdminFallbackProxy.sol/index.ts +0 -5
  352. package/build/types/factories/src/libraries/DoubleLogicUUPSUpgradeable__factory.ts +0 -163
  353. package/build/types/factories/src/libraries/IGasRefunder__factory.ts +0 -55
  354. package/build/types/factories/src/libraries/UUPSNotUpgradeable__factory.ts +0 -97
  355. package/build/types/factories/src/libraries/index.ts +0 -7
  356. package/build/types/factories/src/mocks/BridgeStub__factory.ts +0 -612
  357. package/build/types/factories/src/mocks/BridgeUnproxied__factory.ts +0 -706
  358. package/build/types/factories/src/mocks/InboxStub__factory.ts +0 -702
  359. package/build/types/factories/src/mocks/MockResultReceiver__factory.ts +0 -244
  360. package/build/types/factories/src/mocks/ProxyAdminForBinding__factory.ts +0 -215
  361. package/build/types/factories/src/mocks/SequencerInboxStub__factory.ts +0 -938
  362. package/build/types/factories/src/mocks/SimpleProxy__factory.ts +0 -83
  363. package/build/types/factories/src/mocks/Simple__factory.ts +0 -287
  364. package/build/types/factories/src/mocks/SingleExecutionChallenge__factory.ts +0 -823
  365. package/build/types/factories/src/mocks/TimedOutChallengeManager__factory.ts +0 -724
  366. package/build/types/factories/src/mocks/index.ts +0 -13
  367. package/build/types/factories/src/node-interface/NodeInterfaceDebug__factory.ts +0 -82
  368. package/build/types/factories/src/node-interface/NodeInterface__factory.ts +0 -301
  369. package/build/types/factories/src/node-interface/index.ts +0 -5
  370. package/build/types/factories/src/osp/HashProofHelper__factory.ts +0 -216
  371. package/build/types/factories/src/osp/IOneStepProofEntry__factory.ts +0 -72
  372. package/build/types/factories/src/osp/IOneStepProver__factory.ts +0 -492
  373. package/build/types/factories/src/osp/OneStepProofEntry__factory.ts +0 -206
  374. package/build/types/factories/src/osp/OneStepProver0__factory.ts +0 -528
  375. package/build/types/factories/src/osp/OneStepProverHostIo__factory.ts +0 -528
  376. package/build/types/factories/src/osp/OneStepProverMath__factory.ts +0 -528
  377. package/build/types/factories/src/osp/OneStepProverMemory__factory.ts +0 -528
  378. package/build/types/factories/src/osp/index.ts +0 -11
  379. package/build/types/factories/src/precompiles/ArbAddressTable__factory.ts +0 -163
  380. package/build/types/factories/src/precompiles/ArbAggregator__factory.ts +0 -163
  381. package/build/types/factories/src/precompiles/ArbDebug__factory.ts +0 -208
  382. package/build/types/factories/src/precompiles/ArbFunctionTable__factory.ts +0 -92
  383. package/build/types/factories/src/precompiles/ArbGasInfo__factory.ts +0 -365
  384. package/build/types/factories/src/precompiles/ArbInfo__factory.ts +0 -64
  385. package/build/types/factories/src/precompiles/ArbOwnerPublic__factory.ts +0 -84
  386. package/build/types/factories/src/precompiles/ArbOwner__factory.ts +0 -393
  387. package/build/types/factories/src/precompiles/ArbRetryableTx__factory.ts +0 -321
  388. package/build/types/factories/src/precompiles/ArbStatistics__factory.ts +0 -64
  389. package/build/types/factories/src/precompiles/ArbSys__factory.ts +0 -389
  390. package/build/types/factories/src/precompiles/ArbosActs__factory.ts +0 -92
  391. package/build/types/factories/src/precompiles/ArbosTest__factory.ts +0 -39
  392. package/build/types/factories/src/precompiles/index.ts +0 -16
  393. package/build/types/factories/src/rollup/AbsBridgeCreator__factory.ts +0 -182
  394. package/build/types/factories/src/rollup/AbsRollupEventInbox__factory.ts +0 -125
  395. package/build/types/factories/src/rollup/BridgeCreator__factory.ts +0 -294
  396. package/build/types/factories/src/rollup/ERC20BridgeCreator__factory.ts +0 -299
  397. package/build/types/factories/src/rollup/ERC20RollupEventInbox__factory.ts +0 -170
  398. package/build/types/factories/src/rollup/IBridgeCreator.sol/IBridgeCreator__factory.ts +0 -124
  399. package/build/types/factories/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator__factory.ts +0 -200
  400. package/build/types/factories/src/rollup/IBridgeCreator.sol/IEthBridgeCreator__factory.ts +0 -195
  401. package/build/types/factories/src/rollup/IBridgeCreator.sol/index.ts +0 -6
  402. package/build/types/factories/src/rollup/IRollupAdmin__factory.ts +0 -559
  403. package/build/types/factories/src/rollup/IRollupCore__factory.ts +0 -904
  404. package/build/types/factories/src/rollup/IRollupEventInbox__factory.ts +0 -83
  405. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserAbs__factory.ts +0 -1324
  406. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserERC20__factory.ts +0 -1458
  407. package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUser__factory.ts +0 -1443
  408. package/build/types/factories/src/rollup/IRollupLogic.sol/index.ts +0 -6
  409. package/build/types/factories/src/rollup/RollupAdminLogic__factory.ts +0 -1859
  410. package/build/types/factories/src/rollup/RollupCore__factory.ts +0 -1066
  411. package/build/types/factories/src/rollup/RollupCreator__factory.ts +0 -463
  412. package/build/types/factories/src/rollup/RollupEventInbox__factory.ts +0 -166
  413. package/build/types/factories/src/rollup/RollupProxy__factory.ts +0 -277
  414. package/build/types/factories/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic__factory.ts +0 -1593
  415. package/build/types/factories/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic__factory.ts +0 -1767
  416. package/build/types/factories/src/rollup/RollupUserLogic.sol/RollupUserLogic__factory.ts +0 -1748
  417. package/build/types/factories/src/rollup/RollupUserLogic.sol/index.ts +0 -6
  418. package/build/types/factories/src/rollup/ValidatorUtils__factory.ts +0 -430
  419. package/build/types/factories/src/rollup/ValidatorWalletCreator__factory.ts +0 -205
  420. package/build/types/factories/src/rollup/ValidatorWallet__factory.ts +0 -486
  421. package/build/types/factories/src/rollup/index.ts +0 -22
  422. package/build/types/factories/src/test-helpers/BridgeTester__factory.ts +0 -654
  423. package/build/types/factories/src/test-helpers/CryptographyPrimitivesTester__factory.ts +0 -111
  424. package/build/types/factories/src/test-helpers/EthVault__factory.ts +0 -95
  425. package/build/types/factories/src/test-helpers/MessageTester__factory.ts +0 -135
  426. package/build/types/factories/src/test-helpers/OutboxWithoutOptTester__factory.ts +0 -575
  427. package/build/types/factories/src/test-helpers/RollupMock__factory.ts +0 -100
  428. package/build/types/factories/src/test-helpers/ValueArrayTester__factory.ts +0 -69
  429. package/build/types/factories/src/test-helpers/index.ts +0 -10
  430. package/build/types/index.ts +0 -230
  431. package/build/types/src/bridge/AbsBridge.ts +0 -863
  432. package/build/types/src/bridge/AbsInbox.ts +0 -664
  433. package/build/types/src/bridge/AbsOutbox.ts +0 -700
  434. package/build/types/src/bridge/Bridge.ts +0 -934
  435. package/build/types/src/bridge/ERC20Bridge.ts +0 -970
  436. package/build/types/src/bridge/ERC20Inbox.ts +0 -869
  437. package/build/types/src/bridge/ERC20Outbox.ts +0 -722
  438. package/build/types/src/bridge/IBridge.ts +0 -799
  439. package/build/types/src/bridge/IDelayedMessageProvider.ts +0 -108
  440. package/build/types/src/bridge/IERC20Bridge.ts +0 -906
  441. package/build/types/src/bridge/IERC20Inbox.ts +0 -788
  442. package/build/types/src/bridge/IEthBridge.ts +0 -871
  443. package/build/types/src/bridge/IInbox.ts +0 -1081
  444. package/build/types/src/bridge/IInboxBase.ts +0 -583
  445. package/build/types/src/bridge/IOutbox.ts +0 -654
  446. package/build/types/src/bridge/IOwnable.ts +0 -81
  447. package/build/types/src/bridge/ISequencerInbox.ts +0 -1038
  448. package/build/types/src/bridge/Inbox.ts +0 -1279
  449. package/build/types/src/bridge/Outbox.ts +0 -700
  450. package/build/types/src/bridge/SequencerInbox.ts +0 -1138
  451. package/build/types/src/bridge/index.ts +0 -23
  452. package/build/types/src/challenge/ChallengeManager.ts +0 -889
  453. package/build/types/src/challenge/IChallengeManager.ts +0 -543
  454. package/build/types/src/challenge/IChallengeResultReceiver.ts +0 -115
  455. package/build/types/src/challenge/index.ts +0 -6
  456. package/build/types/src/index.ts +0 -21
  457. package/build/types/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.ts +0 -128
  458. package/build/types/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.ts +0 -128
  459. package/build/types/src/libraries/AdminFallbackProxy.sol/index.ts +0 -5
  460. package/build/types/src/libraries/DoubleLogicUUPSUpgradeable.ts +0 -314
  461. package/build/types/src/libraries/IGasRefunder.ts +0 -112
  462. package/build/types/src/libraries/UUPSNotUpgradeable.ts +0 -164
  463. package/build/types/src/libraries/index.ts +0 -8
  464. package/build/types/src/mocks/BridgeStub.ts +0 -887
  465. package/build/types/src/mocks/BridgeUnproxied.ts +0 -934
  466. package/build/types/src/mocks/InboxStub.ts +0 -1076
  467. package/build/types/src/mocks/MockResultReceiver.ts +0 -301
  468. package/build/types/src/mocks/ProxyAdminForBinding.ts +0 -359
  469. package/build/types/src/mocks/SequencerInboxStub.ts +0 -1173
  470. package/build/types/src/mocks/Simple.ts +0 -514
  471. package/build/types/src/mocks/SimpleProxy.ts +0 -55
  472. package/build/types/src/mocks/SingleExecutionChallenge.ts +0 -889
  473. package/build/types/src/mocks/TimedOutChallengeManager.ts +0 -883
  474. package/build/types/src/mocks/index.ts +0 -13
  475. package/build/types/src/node-interface/NodeInterface.ts +0 -502
  476. package/build/types/src/node-interface/NodeInterfaceDebug.ts +0 -137
  477. package/build/types/src/node-interface/index.ts +0 -5
  478. package/build/types/src/osp/HashProofHelper.ts +0 -308
  479. package/build/types/src/osp/IOneStepProofEntry.ts +0 -128
  480. package/build/types/src/osp/IOneStepProver.ts +0 -284
  481. package/build/types/src/osp/OneStepProofEntry.ts +0 -196
  482. package/build/types/src/osp/OneStepProver0.ts +0 -284
  483. package/build/types/src/osp/OneStepProverHostIo.ts +0 -284
  484. package/build/types/src/osp/OneStepProverMath.ts +0 -284
  485. package/build/types/src/osp/OneStepProverMemory.ts +0 -284
  486. package/build/types/src/osp/index.ts +0 -11
  487. package/build/types/src/precompiles/ArbAddressTable.ts +0 -248
  488. package/build/types/src/precompiles/ArbAggregator.ts +0 -335
  489. package/build/types/src/precompiles/ArbDebug.ts +0 -292
  490. package/build/types/src/precompiles/ArbFunctionTable.ts +0 -150
  491. package/build/types/src/precompiles/ArbGasInfo.ts +0 -536
  492. package/build/types/src/precompiles/ArbInfo.ts +0 -105
  493. package/build/types/src/precompiles/ArbOwner.ts +0 -928
  494. package/build/types/src/precompiles/ArbOwnerPublic.ts +0 -157
  495. package/build/types/src/precompiles/ArbRetryableTx.ts +0 -467
  496. package/build/types/src/precompiles/ArbStatistics.ts +0 -93
  497. package/build/types/src/precompiles/ArbSys.ts +0 -553
  498. package/build/types/src/precompiles/ArbosActs.ts +0 -173
  499. package/build/types/src/precompiles/ArbosTest.ts +0 -97
  500. package/build/types/src/precompiles/index.ts +0 -16
  501. package/build/types/src/rollup/AbsBridgeCreator.ts +0 -348
  502. package/build/types/src/rollup/AbsRollupEventInbox.ts +0 -218
  503. package/build/types/src/rollup/BridgeCreator.ts +0 -415
  504. package/build/types/src/rollup/ERC20BridgeCreator.ts +0 -420
  505. package/build/types/src/rollup/ERC20RollupEventInbox.ts +0 -218
  506. package/build/types/src/rollup/IBridgeCreator.sol/IBridgeCreator.ts +0 -231
  507. package/build/types/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.ts +0 -303
  508. package/build/types/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.ts +0 -298
  509. package/build/types/src/rollup/IBridgeCreator.sol/index.ts +0 -6
  510. package/build/types/src/rollup/IRollupAdmin.ts +0 -1003
  511. package/build/types/src/rollup/IRollupCore.ts +0 -1183
  512. package/build/types/src/rollup/IRollupEventInbox.ts +0 -167
  513. package/build/types/src/rollup/IRollupLogic.sol/IRollupUser.ts +0 -2022
  514. package/build/types/src/rollup/IRollupLogic.sol/IRollupUserAbs.ts +0 -1901
  515. package/build/types/src/rollup/IRollupLogic.sol/IRollupUserERC20.ts +0 -2036
  516. package/build/types/src/rollup/IRollupLogic.sol/index.ts +0 -6
  517. package/build/types/src/rollup/RollupAdminLogic.ts +0 -2593
  518. package/build/types/src/rollup/RollupCore.ts +0 -1406
  519. package/build/types/src/rollup/RollupCreator.ts +0 -592
  520. package/build/types/src/rollup/RollupEventInbox.ts +0 -218
  521. package/build/types/src/rollup/RollupProxy.ts +0 -285
  522. package/build/types/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.ts +0 -2282
  523. package/build/types/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.ts +0 -2417
  524. package/build/types/src/rollup/RollupUserLogic.sol/RollupUserLogic.ts +0 -2403
  525. package/build/types/src/rollup/RollupUserLogic.sol/index.ts +0 -6
  526. package/build/types/src/rollup/ValidatorUtils.ts +0 -561
  527. package/build/types/src/rollup/ValidatorWallet.ts +0 -751
  528. package/build/types/src/rollup/ValidatorWalletCreator.ts +0 -294
  529. package/build/types/src/rollup/index.ts +0 -25
  530. package/build/types/src/test-helpers/BridgeTester.ts +0 -899
  531. package/build/types/src/test-helpers/CryptographyPrimitivesTester.ts +0 -141
  532. package/build/types/src/test-helpers/EthVault.ts +0 -141
  533. package/build/types/src/test-helpers/MessageTester.ts +0 -182
  534. package/build/types/src/test-helpers/OutboxWithoutOptTester.ts +0 -700
  535. package/build/types/src/test-helpers/RollupMock.ts +0 -164
  536. package/build/types/src/test-helpers/ValueArrayTester.ts +0 -81
  537. package/build/types/src/test-helpers/index.ts +0 -10
  538. package/src/rollup/AbsBridgeCreator.sol +0 -117
  539. package/src/rollup/ERC20BridgeCreator.sol +0 -48
  540. package/src/rollup/IBridgeCreator.sol +0 -64
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/4b15f1c9d96552de04a7c897802a21e6.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -596,8 +596,8 @@
596
596
  "type": "receive"
597
597
  }
598
598
  ],
599
- "bytecode": "0x60a06040523060805234801561001457600080fd5b5060805161134661002d600039600050506113466000f3fe60806040526004361061012d5760003560e01c80639e5d4c49116100ab578063cee3d7281161006f578063cee3d7281461038e578063d5719dc2146103ae578063e76f5c8d146103ce578063e77145f4146101e9578063eca067ad146103ee578063ee35f3271461040357600080fd5b80639e5d4c49146102ce578063ab5d8943146102fc578063ae60bd1314610311578063c4d66de81461034e578063cb23bcb51461036e57600080fd5b80635fca4a16116100f25780635fca4a161461020b5780637a88b1071461022157806386598a56146102445780638db5993b1461028e578063945e1147146102a157600080fd5b806284120c1461013957806316bf55791461015d578063413b35bd1461017d57806347fb24c5146101c95780634f61f850146101eb57600080fd5b3661013457005b600080fd5b34801561014557600080fd5b506009545b6040519081526020015b60405180910390f35b34801561016957600080fd5b5061014a610178366004611005565b610423565b34801561018957600080fd5b506101b9610198366004611036565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610154565b3480156101d557600080fd5b506101e96101e436600461105a565b610444565b005b3480156101f757600080fd5b506101e9610206366004611036565b61074f565b34801561021757600080fd5b5061014a600a5481565b34801561022d57600080fd5b5061014a61023c366004611098565b600092915050565b34801561025057600080fd5b5061026e61025f3660046110c4565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610154565b61014a61029c3660046110f6565b610874565b3480156102ad57600080fd5b506102c16102bc366004611005565b6108bf565b604051610154919061113d565b3480156102da57600080fd5b506102ee6102e9366004611151565b6108e9565b6040516101549291906111da565b34801561030857600080fd5b506102c1610a41565b34801561031d57600080fd5b506101b961032c366004611036565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b34801561035a57600080fd5b506101e9610369366004611036565b610a6e565b34801561037a57600080fd5b506006546102c1906001600160a01b031681565b34801561039a57600080fd5b506101e96103a936600461105a565b610b54565b3480156103ba57600080fd5b5061014a6103c9366004611005565b610e56565b3480156103da57600080fd5b506102c16103e9366004611005565b610e66565b3480156103fa57600080fd5b5060085461014a565b34801561040f57600080fd5b506007546102c1906001600160a01b031681565b6009818154811061043357600080fd5b600091825260209091200154905081565b6006546001600160a01b0316331461051c5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561049b57600080fd5b505afa1580156104af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d39190611239565b9050336001600160a01b0382161461051a57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156105815750825b80610593575080158015610593575082155b1561059e5750505050565b821561062c57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610748565b6003805461063c90600190611279565b8154811061064c5761064c61129e565b6000918252602090912001548254600380546001600160a01b0390931692909190811061067b5761067b61129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106c9576106c961129e565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806106ff576106ff6112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b0316331461081e5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107a657600080fd5b505afa1580156107ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107de9190611239565b9050336001600160a01b0382161461081c57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061086990839061113d565b60405180910390a150565b3360009081526001602081905260408220015460ff166108a9573360405163b6c60ea360e01b8152600401610511919061113d565b6108b7848443424887610e76565b949350505050565b600481815481106108cf57600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff1661092157336040516332ea82ab60e01b8152600401610511919061113d565b821580159061093857506001600160a01b0386163b155b15610958578560405163b5cf5b8f60e01b8152600401610511919061113d565b600580546001600160a01b0319811633179091556040516001600160a01b0391821691881690879061098d90889088906112ca565b60006040518083038185875af1925050503d80600081146109ca576040519150601f19603f3d011682016040523d82523d6000602084013e6109cf565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610a2f908a908a908a906112da565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610a5e5750600090565b506005546001600160a01b031690565b600054610100900460ff16610a895760005460ff1615610a8d565b303b155b610af05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610511565b600054610100900460ff16158015610b12576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b0319918216811790925560068054909116918416919091179055801561074b576000805461ff00191690555050565b6006546001600160a01b03163314610c235760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610bab57600080fd5b505afa158015610bbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be39190611239565b9050336001600160a01b03821614610c2157600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610c895750825b80610c9b575080158015610c9b575082155b15610ca65750505050565b8215610d3557604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610748565b60048054610d4590600190611279565b81548110610d5557610d5561129e565b6000918252602090912001548254600480546001600160a01b03909316929091908110610d8457610d8461129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610dd257610dd261129e565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610e0857610e086112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6008818154811061043357600080fd5b600381815481106108cf57600080fd5b600854604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610f30576008610f12600185611279565b81548110610f2257610f2261129e565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b60006020828403121561101757600080fd5b5035919050565b6001600160a01b038116811461103357600080fd5b50565b60006020828403121561104857600080fd5b81356110538161101e565b9392505050565b6000806040838503121561106d57600080fd5b82356110788161101e565b91506020830135801515811461108d57600080fd5b809150509250929050565b600080604083850312156110ab57600080fd5b82356110b68161101e565b946020939093013593505050565b600080600080608085870312156110da57600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006060848603121561110b57600080fd5b833560ff8116811461111c57600080fd5b9250602084013561112c8161101e565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561116757600080fd5b84356111728161101e565b935060208501359250604085013567ffffffffffffffff8082111561119657600080fd5b818701915087601f8301126111aa57600080fd5b8135818111156111b957600080fd5b8860208285010111156111cb57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b81811015611210578581018301518582016060015282016111f4565b81811115611222576000606083870101525b50601f01601f191692909201606001949350505050565b60006020828403121561124b57600080fd5b81516110538161101e565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561129957634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea2646970667358221220d0c0adab20c029de6cd4cbf7b5e548b2b9b190edbfdf1388a36d3fc1abb7ed0b64736f6c63430008090033",
600
- "deployedBytecode": "0x60806040526004361061012d5760003560e01c80639e5d4c49116100ab578063cee3d7281161006f578063cee3d7281461038e578063d5719dc2146103ae578063e76f5c8d146103ce578063e77145f4146101e9578063eca067ad146103ee578063ee35f3271461040357600080fd5b80639e5d4c49146102ce578063ab5d8943146102fc578063ae60bd1314610311578063c4d66de81461034e578063cb23bcb51461036e57600080fd5b80635fca4a16116100f25780635fca4a161461020b5780637a88b1071461022157806386598a56146102445780638db5993b1461028e578063945e1147146102a157600080fd5b806284120c1461013957806316bf55791461015d578063413b35bd1461017d57806347fb24c5146101c95780634f61f850146101eb57600080fd5b3661013457005b600080fd5b34801561014557600080fd5b506009545b6040519081526020015b60405180910390f35b34801561016957600080fd5b5061014a610178366004611005565b610423565b34801561018957600080fd5b506101b9610198366004611036565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610154565b3480156101d557600080fd5b506101e96101e436600461105a565b610444565b005b3480156101f757600080fd5b506101e9610206366004611036565b61074f565b34801561021757600080fd5b5061014a600a5481565b34801561022d57600080fd5b5061014a61023c366004611098565b600092915050565b34801561025057600080fd5b5061026e61025f3660046110c4565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610154565b61014a61029c3660046110f6565b610874565b3480156102ad57600080fd5b506102c16102bc366004611005565b6108bf565b604051610154919061113d565b3480156102da57600080fd5b506102ee6102e9366004611151565b6108e9565b6040516101549291906111da565b34801561030857600080fd5b506102c1610a41565b34801561031d57600080fd5b506101b961032c366004611036565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b34801561035a57600080fd5b506101e9610369366004611036565b610a6e565b34801561037a57600080fd5b506006546102c1906001600160a01b031681565b34801561039a57600080fd5b506101e96103a936600461105a565b610b54565b3480156103ba57600080fd5b5061014a6103c9366004611005565b610e56565b3480156103da57600080fd5b506102c16103e9366004611005565b610e66565b3480156103fa57600080fd5b5060085461014a565b34801561040f57600080fd5b506007546102c1906001600160a01b031681565b6009818154811061043357600080fd5b600091825260209091200154905081565b6006546001600160a01b0316331461051c5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561049b57600080fd5b505afa1580156104af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d39190611239565b9050336001600160a01b0382161461051a57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156105815750825b80610593575080158015610593575082155b1561059e5750505050565b821561062c57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610748565b6003805461063c90600190611279565b8154811061064c5761064c61129e565b6000918252602090912001548254600380546001600160a01b0390931692909190811061067b5761067b61129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106c9576106c961129e565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806106ff576106ff6112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b0316331461081e5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107a657600080fd5b505afa1580156107ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107de9190611239565b9050336001600160a01b0382161461081c57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061086990839061113d565b60405180910390a150565b3360009081526001602081905260408220015460ff166108a9573360405163b6c60ea360e01b8152600401610511919061113d565b6108b7848443424887610e76565b949350505050565b600481815481106108cf57600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff1661092157336040516332ea82ab60e01b8152600401610511919061113d565b821580159061093857506001600160a01b0386163b155b15610958578560405163b5cf5b8f60e01b8152600401610511919061113d565b600580546001600160a01b0319811633179091556040516001600160a01b0391821691881690879061098d90889088906112ca565b60006040518083038185875af1925050503d80600081146109ca576040519150601f19603f3d011682016040523d82523d6000602084013e6109cf565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610a2f908a908a908a906112da565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610a5e5750600090565b506005546001600160a01b031690565b600054610100900460ff16610a895760005460ff1615610a8d565b303b155b610af05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610511565b600054610100900460ff16158015610b12576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b0319918216811790925560068054909116918416919091179055801561074b576000805461ff00191690555050565b6006546001600160a01b03163314610c235760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610bab57600080fd5b505afa158015610bbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be39190611239565b9050336001600160a01b03821614610c2157600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610c895750825b80610c9b575080158015610c9b575082155b15610ca65750505050565b8215610d3557604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610748565b60048054610d4590600190611279565b81548110610d5557610d5561129e565b6000918252602090912001548254600480546001600160a01b03909316929091908110610d8457610d8461129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610dd257610dd261129e565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610e0857610e086112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6008818154811061043357600080fd5b600381815481106108cf57600080fd5b600854604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610f30576008610f12600185611279565b81548110610f2257610f2261129e565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b60006020828403121561101757600080fd5b5035919050565b6001600160a01b038116811461103357600080fd5b50565b60006020828403121561104857600080fd5b81356110538161101e565b9392505050565b6000806040838503121561106d57600080fd5b82356110788161101e565b91506020830135801515811461108d57600080fd5b809150509250929050565b600080604083850312156110ab57600080fd5b82356110b68161101e565b946020939093013593505050565b600080600080608085870312156110da57600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006060848603121561110b57600080fd5b833560ff8116811461111c57600080fd5b9250602084013561112c8161101e565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561116757600080fd5b84356111728161101e565b935060208501359250604085013567ffffffffffffffff8082111561119657600080fd5b818701915087601f8301126111aa57600080fd5b8135818111156111b957600080fd5b8860208285010111156111cb57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b81811015611210578581018301518582016060015282016111f4565b81811115611222576000606083870101525b50601f01601f191692909201606001949350505050565b60006020828403121561124b57600080fd5b81516110538161101e565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561129957634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea2646970667358221220d0c0adab20c029de6cd4cbf7b5e548b2b9b190edbfdf1388a36d3fc1abb7ed0b64736f6c63430008090033",
599
+ "bytecode": "0x60a06040523060805234801561001457600080fd5b5060805161134661002d600039600050506113466000f3fe60806040526004361061012d5760003560e01c80639e5d4c49116100ab578063cee3d7281161006f578063cee3d7281461038e578063d5719dc2146103ae578063e76f5c8d146103ce578063e77145f4146101e9578063eca067ad146103ee578063ee35f3271461040357600080fd5b80639e5d4c49146102ce578063ab5d8943146102fc578063ae60bd1314610311578063c4d66de81461034e578063cb23bcb51461036e57600080fd5b80635fca4a16116100f25780635fca4a161461020b5780637a88b1071461022157806386598a56146102445780638db5993b1461028e578063945e1147146102a157600080fd5b806284120c1461013957806316bf55791461015d578063413b35bd1461017d57806347fb24c5146101c95780634f61f850146101eb57600080fd5b3661013457005b600080fd5b34801561014557600080fd5b506009545b6040519081526020015b60405180910390f35b34801561016957600080fd5b5061014a610178366004611005565b610423565b34801561018957600080fd5b506101b9610198366004611036565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610154565b3480156101d557600080fd5b506101e96101e436600461105a565b610444565b005b3480156101f757600080fd5b506101e9610206366004611036565b61074f565b34801561021757600080fd5b5061014a600a5481565b34801561022d57600080fd5b5061014a61023c366004611098565b600092915050565b34801561025057600080fd5b5061026e61025f3660046110c4565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610154565b61014a61029c3660046110f6565b610874565b3480156102ad57600080fd5b506102c16102bc366004611005565b6108bf565b604051610154919061113d565b3480156102da57600080fd5b506102ee6102e9366004611151565b6108e9565b6040516101549291906111da565b34801561030857600080fd5b506102c1610a41565b34801561031d57600080fd5b506101b961032c366004611036565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b34801561035a57600080fd5b506101e9610369366004611036565b610a6e565b34801561037a57600080fd5b506006546102c1906001600160a01b031681565b34801561039a57600080fd5b506101e96103a936600461105a565b610b54565b3480156103ba57600080fd5b5061014a6103c9366004611005565b610e56565b3480156103da57600080fd5b506102c16103e9366004611005565b610e66565b3480156103fa57600080fd5b5060085461014a565b34801561040f57600080fd5b506007546102c1906001600160a01b031681565b6009818154811061043357600080fd5b600091825260209091200154905081565b6006546001600160a01b0316331461051c5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561049b57600080fd5b505afa1580156104af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d39190611239565b9050336001600160a01b0382161461051a57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156105815750825b80610593575080158015610593575082155b1561059e5750505050565b821561062c57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610748565b6003805461063c90600190611279565b8154811061064c5761064c61129e565b6000918252602090912001548254600380546001600160a01b0390931692909190811061067b5761067b61129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106c9576106c961129e565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806106ff576106ff6112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b0316331461081e5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107a657600080fd5b505afa1580156107ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107de9190611239565b9050336001600160a01b0382161461081c57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061086990839061113d565b60405180910390a150565b3360009081526001602081905260408220015460ff166108a9573360405163b6c60ea360e01b8152600401610511919061113d565b6108b7848443424887610e76565b949350505050565b600481815481106108cf57600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff1661092157336040516332ea82ab60e01b8152600401610511919061113d565b821580159061093857506001600160a01b0386163b155b15610958578560405163b5cf5b8f60e01b8152600401610511919061113d565b600580546001600160a01b0319811633179091556040516001600160a01b0391821691881690879061098d90889088906112ca565b60006040518083038185875af1925050503d80600081146109ca576040519150601f19603f3d011682016040523d82523d6000602084013e6109cf565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610a2f908a908a908a906112da565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610a5e5750600090565b506005546001600160a01b031690565b600054610100900460ff16610a895760005460ff1615610a8d565b303b155b610af05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610511565b600054610100900460ff16158015610b12576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b0319918216811790925560068054909116918416919091179055801561074b576000805461ff00191690555050565b6006546001600160a01b03163314610c235760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610bab57600080fd5b505afa158015610bbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be39190611239565b9050336001600160a01b03821614610c2157600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610c895750825b80610c9b575080158015610c9b575082155b15610ca65750505050565b8215610d3557604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610748565b60048054610d4590600190611279565b81548110610d5557610d5561129e565b6000918252602090912001548254600480546001600160a01b03909316929091908110610d8457610d8461129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610dd257610dd261129e565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610e0857610e086112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6008818154811061043357600080fd5b600381815481106108cf57600080fd5b600854604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610f30576008610f12600185611279565b81548110610f2257610f2261129e565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b60006020828403121561101757600080fd5b5035919050565b6001600160a01b038116811461103357600080fd5b50565b60006020828403121561104857600080fd5b81356110538161101e565b9392505050565b6000806040838503121561106d57600080fd5b82356110788161101e565b91506020830135801515811461108d57600080fd5b809150509250929050565b600080604083850312156110ab57600080fd5b82356110b68161101e565b946020939093013593505050565b600080600080608085870312156110da57600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006060848603121561110b57600080fd5b833560ff8116811461111c57600080fd5b9250602084013561112c8161101e565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561116757600080fd5b84356111728161101e565b935060208501359250604085013567ffffffffffffffff8082111561119657600080fd5b818701915087601f8301126111aa57600080fd5b8135818111156111b957600080fd5b8860208285010111156111cb57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b81811015611210578581018301518582016060015282016111f4565b81811115611222576000606083870101525b50601f01601f191692909201606001949350505050565b60006020828403121561124b57600080fd5b81516110538161101e565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561129957634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea264697066735822122046f4d10fb290a6ec5112a18a6762316fc21133c7a13dbefd3cc4ce93bd1f1a7664736f6c63430008090033",
600
+ "deployedBytecode": "0x60806040526004361061012d5760003560e01c80639e5d4c49116100ab578063cee3d7281161006f578063cee3d7281461038e578063d5719dc2146103ae578063e76f5c8d146103ce578063e77145f4146101e9578063eca067ad146103ee578063ee35f3271461040357600080fd5b80639e5d4c49146102ce578063ab5d8943146102fc578063ae60bd1314610311578063c4d66de81461034e578063cb23bcb51461036e57600080fd5b80635fca4a16116100f25780635fca4a161461020b5780637a88b1071461022157806386598a56146102445780638db5993b1461028e578063945e1147146102a157600080fd5b806284120c1461013957806316bf55791461015d578063413b35bd1461017d57806347fb24c5146101c95780634f61f850146101eb57600080fd5b3661013457005b600080fd5b34801561014557600080fd5b506009545b6040519081526020015b60405180910390f35b34801561016957600080fd5b5061014a610178366004611005565b610423565b34801561018957600080fd5b506101b9610198366004611036565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610154565b3480156101d557600080fd5b506101e96101e436600461105a565b610444565b005b3480156101f757600080fd5b506101e9610206366004611036565b61074f565b34801561021757600080fd5b5061014a600a5481565b34801561022d57600080fd5b5061014a61023c366004611098565b600092915050565b34801561025057600080fd5b5061026e61025f3660046110c4565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610154565b61014a61029c3660046110f6565b610874565b3480156102ad57600080fd5b506102c16102bc366004611005565b6108bf565b604051610154919061113d565b3480156102da57600080fd5b506102ee6102e9366004611151565b6108e9565b6040516101549291906111da565b34801561030857600080fd5b506102c1610a41565b34801561031d57600080fd5b506101b961032c366004611036565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b34801561035a57600080fd5b506101e9610369366004611036565b610a6e565b34801561037a57600080fd5b506006546102c1906001600160a01b031681565b34801561039a57600080fd5b506101e96103a936600461105a565b610b54565b3480156103ba57600080fd5b5061014a6103c9366004611005565b610e56565b3480156103da57600080fd5b506102c16103e9366004611005565b610e66565b3480156103fa57600080fd5b5060085461014a565b34801561040f57600080fd5b506007546102c1906001600160a01b031681565b6009818154811061043357600080fd5b600091825260209091200154905081565b6006546001600160a01b0316331461051c5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561049b57600080fd5b505afa1580156104af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d39190611239565b9050336001600160a01b0382161461051a57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156105815750825b80610593575080158015610593575082155b1561059e5750505050565b821561062c57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b0319169091179055610748565b6003805461063c90600190611279565b8154811061064c5761064c61129e565b6000918252602090912001548254600380546001600160a01b0390931692909190811061067b5761067b61129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081600001546001600060038560000154815481106106c9576106c961129e565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806106ff576106ff6112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b0316331461081e5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b1580156107a657600080fd5b505afa1580156107ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107de9190611239565b9050336001600160a01b0382161461081c57600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061086990839061113d565b60405180910390a150565b3360009081526001602081905260408220015460ff166108a9573360405163b6c60ea360e01b8152600401610511919061113d565b6108b7848443424887610e76565b949350505050565b600481815481106108cf57600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff1661092157336040516332ea82ab60e01b8152600401610511919061113d565b821580159061093857506001600160a01b0386163b155b15610958578560405163b5cf5b8f60e01b8152600401610511919061113d565b600580546001600160a01b0319811633179091556040516001600160a01b0391821691881690879061098d90889088906112ca565b60006040518083038185875af1925050503d80600081146109ca576040519150601f19603f3d011682016040523d82523d6000602084013e6109cf565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610a2f908a908a908a906112da565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610a5e5750600090565b506005546001600160a01b031690565b600054610100900460ff16610a895760005460ff1615610a8d565b303b155b610af05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610511565b600054610100900460ff16158015610b12576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b0319918216811790925560068054909116918416919091179055801561074b576000805461ff00191690555050565b6006546001600160a01b03163314610c235760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610bab57600080fd5b505afa158015610bbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be39190611239565b9050336001600160a01b03821614610c2157600654604051630739600760e01b81526105119133916001600160a01b03909116908490600401611256565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610c895750825b80610c9b575080158015610c9b575082155b15610ca65750505050565b8215610d3557604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b0319169091179055610748565b60048054610d4590600190611279565b81548110610d5557610d5561129e565b6000918252602090912001548254600480546001600160a01b03909316929091908110610d8457610d8461129e565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610dd257610dd261129e565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610e0857610e086112b4565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b6008818154811061043357600080fd5b600381815481106108cf57600080fd5b600854604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610f30576008610f12600185611279565b81548110610f2257610f2261129e565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600880546001810182556000919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b60006020828403121561101757600080fd5b5035919050565b6001600160a01b038116811461103357600080fd5b50565b60006020828403121561104857600080fd5b81356110538161101e565b9392505050565b6000806040838503121561106d57600080fd5b82356110788161101e565b91506020830135801515811461108d57600080fd5b809150509250929050565b600080604083850312156110ab57600080fd5b82356110b68161101e565b946020939093013593505050565b600080600080608085870312156110da57600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006060848603121561110b57600080fd5b833560ff8116811461111c57600080fd5b9250602084013561112c8161101e565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561116757600080fd5b84356111728161101e565b935060208501359250604085013567ffffffffffffffff8082111561119657600080fd5b818701915087601f8301126111aa57600080fd5b8135818111156111b957600080fd5b8860208285010111156111cb57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b81811015611210578581018301518582016060015282016111f4565b81811115611222576000606083870101525b50601f01601f191692909201606001949350505050565b60006020828403121561124b57600080fd5b81516110538161101e565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561129957634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea264697066735822122046f4d10fb290a6ec5112a18a6762316fc21133c7a13dbefd3cc4ce93bd1f1a7664736f6c63430008090033",
601
601
  "linkReferences": {},
602
602
  "deployedLinkReferences": {}
603
603
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/392561f5b04c9f0976469785818f6718.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/fd24546935f4d6d8b79fbedb9ee58dba.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -513,8 +513,8 @@
513
513
  "type": "function"
514
514
  }
515
515
  ],
516
- "bytecode": "0x60a06040523060805234801561001457600080fd5b5060805161113861002d600039600050506111386000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80639f0c04bf116100925780639f0c04bf146101d8578063a04cee60146101eb578063ae6dead7146101fe578063b0f305371461021e578063c4d66de81461022f578063c75184df14610242578063cb23bcb514610262578063d5b5cc2314610275578063e78cea921461028857600080fd5b80627436d3146100fa57806308635a95146101205780631198527114610135578063288e5b101461013c578063465477901461014f5780635a129efe1461016057806372f2a8c71461019357806380648b021461019b5780638515bc6a146101c0575b600080fd5b61010d610108366004610aa6565b61029b565b6040519081526020015b60405180910390f35b61013361012e366004610bcb565b6102d8565b005b600061010d565b61013361014a366004610cbf565b61061a565b6004546001600160801b031661010d565b61018361016e366004610d5a565b60026020526000908152604090205460ff1681565b6040519015158152602001610117565b60065461010d565b6007546001600160a01b03165b6040516001600160a01b039091168152602001610117565b600454600160801b90046001600160801b031661010d565b61010d6101e6366004610d73565b610659565b6101336101f9366004610e01565b61069e565b61010d61020c366004610d5a565b60036020526000908152604090205481565b6005546001600160801b031661010d565b61013361023d366004610e23565b6106dd565b61024a600281565b6040516001600160801b039091168152602001610117565b6000546101a8906001600160a01b031681565b61010d610283366004610d5a565b6107b6565b6001546101a8906001600160a01b031681565b60006102d08484846040516020016102b591815260200190565b604051602081830303815290604052805190602001206107f2565b949350505050565b6000806102eb8a8a8a8a8a8a8a8a610659565b905061032d8d8d808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508f92508591506108959050565b915060008a6001600160a01b03168a6001600160a01b03167f20af7f3bbfe38132b8900ae295cd9c8d1914be7052d061a511f3f728dab189648e60405161037691815260200190565b60405180910390a450600060046040518060a00160405290816000820160009054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016000820160109054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016001820160009054906101000a90046001600160801b03166001600160801b03166001600160801b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152505090506040518060a00160405280896001600160801b03168152602001886001600160801b03168152602001876001600160801b031681526020018381526020018b6001600160a01b0316815250600460008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b0316021790555060408201518160010160006101000a8154816001600160801b0302191690836001600160801b031602179055506060820151816002015560808201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506105a5898686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061099892505050565b805160208201516001600160801b03918216600160801b91831691909102176004556040820151600580546001600160801b03191691909216179055606081015160065560800151600780546001600160a01b0319166001600160a01b03909216919091179055505050505050505050505050565b60405162461bcd60e51b815260206004820152600f60248201526e139bdd081a5b5c1b195b595b9d1959608a1b60448201526064015b60405180910390fd5b6000888888888888888860405160200161067a989796959493929190610e47565b60405160208183030381529060405280519060200120905098975050505050505050565b60008281526003602052604080822083905551829184917fb4df3847300f076a369cd76d2314b470a1194d9e8a6bb97f1860aee88a5f67489190a35050565b6001546001600160a01b03161561070757604051633bcd329760e21b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561075b57600080fd5b505afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107939190610ea0565b600080546001600160a01b0319166001600160a01b039290921691909117905550565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d253541311535155115160921b6044820152600090606401610650565b825160009061010081111561082557604051637ed6198f60e11b8152600481018290526101006024820152604401610650565b8260005b8281101561088b57600087828151811061084557610845610ebd565b60200260200101519050816001901b87166000141561087257826000528060205260406000209250610882565b8060005282602052604060002092505b50600101610829565b5095945050505050565b60006101008451106108bf57835160405163ab6a068360e01b815260040161065091815260200190565b83516108cc906002610fcf565b83106109035782845160026108e19190610fcf565b604051630b8a724b60e01b815260048101929092526024820152604401610650565b600061091085858561029b565b600081815260036020526040902054909150610942576040516310e61af960e31b815260048101829052602401610650565b60008481526002602052604090205460ff161561097557604051639715b8d360e01b815260048101859052602401610650565b50506000828152600260205260409020805460ff19166001179055819392505050565b600154604051639e5d4c4960e01b815260009182916001600160a01b0390911690639e5d4c49906109d19088908890889060040161100b565b600060405180830381600087803b1580156109eb57600080fd5b505af11580156109ff573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a279190810190611054565b9150915081610a5957805115610a405780518082602001fd5b604051631bb7daad60e11b815260040160405180910390fd5b5050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a60565b604052919050565b600080600060608486031215610abb57600080fd5b83356001600160401b0380821115610ad257600080fd5b818601915086601f830112610ae657600080fd5b8135602082821115610afa57610afa610a60565b8160051b9250610b0b818401610a76565b828152928401810192818101908a851115610b2557600080fd5b948201945b84861015610b4357853582529482019490820190610b2a565b9a918901359950506040909701359695505050505050565b6001600160a01b0381168114610b7057600080fd5b50565b8035610b7e81610b5b565b919050565b60008083601f840112610b9557600080fd5b5081356001600160401b03811115610bac57600080fd5b602083019150836020828501011115610bc457600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215610bed57600080fd5b8b356001600160401b0380821115610c0457600080fd5b818e0191508e601f830112610c1857600080fd5b813581811115610c2757600080fd5b8f60208260051b8501011115610c3c57600080fd5b60208381019e50909c508e01359a50610c5760408f01610b73565b9950610c6560608f01610b73565b985060808e0135975060a08e0135965060c08e0135955060e08e013594506101008e0135915080821115610c9857600080fd5b50610ca58e828f01610b83565b915080935050809150509295989b509295989b9093969950565b60008060008060008060008060006101008a8c031215610cde57600080fd5b8935985060208a0135610cf081610b5b565b975060408a0135610d0081610b5b565b965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115610d3757600080fd5b610d438c828d01610b83565b915080935050809150509295985092959850929598565b600060208284031215610d6c57600080fd5b5035919050565b60008060008060008060008060e0898b031215610d8f57600080fd5b8835610d9a81610b5b565b97506020890135610daa81610b5b565b965060408901359550606089013594506080890135935060a0890135925060c08901356001600160401b03811115610de157600080fd5b610ded8b828c01610b83565b999c989b5096995094979396929594505050565b60008060408385031215610e1457600080fd5b50508035926020909101359150565b600060208284031215610e3557600080fd5b8135610e4081610b5b565b9392505050565b60006bffffffffffffffffffffffff19808b60601b168352808a60601b16601484015250876028830152866048830152856068830152846088830152828460a8840137506000910160a801908152979650505050505050565b600060208284031215610eb257600080fd5b8151610e4081610b5b565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610f24578160001904821115610f0a57610f0a610ed3565b80851615610f1757918102915b93841c9390800290610eee565b509250929050565b600082610f3b57506001610fc9565b81610f4857506000610fc9565b8160018114610f5e5760028114610f6857610f84565b6001915050610fc9565b60ff841115610f7957610f79610ed3565b50506001821b610fc9565b5060208310610133831016604e8410600b8410161715610fa7575081810a610fc9565b610fb18383610ee9565b8060001904821115610fc557610fc5610ed3565b0290505b92915050565b6000610e408383610f2c565b60005b83811015610ff6578181015183820152602001610fde565b83811115611005576000848401525b50505050565b60018060a01b0384168152826020820152606060408201526000825180606084015261103e816080850160208701610fdb565b601f01601f191691909101608001949350505050565b6000806040838503121561106757600080fd5b8251801515811461107757600080fd5b60208401519092506001600160401b038082111561109457600080fd5b818501915085601f8301126110a857600080fd5b8151818111156110ba576110ba610a60565b6110cd601f8201601f1916602001610a76565b91508082528660208285010111156110e457600080fd5b6110f5816020840160208601610fdb565b508092505050925092905056fea264697066735822122005e69cc49990b667d0d7f4cef5cc53c8f8b527a25a8a3c6a1ea50dfdc21c6b0764736f6c63430008090033",
517
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80639f0c04bf116100925780639f0c04bf146101d8578063a04cee60146101eb578063ae6dead7146101fe578063b0f305371461021e578063c4d66de81461022f578063c75184df14610242578063cb23bcb514610262578063d5b5cc2314610275578063e78cea921461028857600080fd5b80627436d3146100fa57806308635a95146101205780631198527114610135578063288e5b101461013c578063465477901461014f5780635a129efe1461016057806372f2a8c71461019357806380648b021461019b5780638515bc6a146101c0575b600080fd5b61010d610108366004610aa6565b61029b565b6040519081526020015b60405180910390f35b61013361012e366004610bcb565b6102d8565b005b600061010d565b61013361014a366004610cbf565b61061a565b6004546001600160801b031661010d565b61018361016e366004610d5a565b60026020526000908152604090205460ff1681565b6040519015158152602001610117565b60065461010d565b6007546001600160a01b03165b6040516001600160a01b039091168152602001610117565b600454600160801b90046001600160801b031661010d565b61010d6101e6366004610d73565b610659565b6101336101f9366004610e01565b61069e565b61010d61020c366004610d5a565b60036020526000908152604090205481565b6005546001600160801b031661010d565b61013361023d366004610e23565b6106dd565b61024a600281565b6040516001600160801b039091168152602001610117565b6000546101a8906001600160a01b031681565b61010d610283366004610d5a565b6107b6565b6001546101a8906001600160a01b031681565b60006102d08484846040516020016102b591815260200190565b604051602081830303815290604052805190602001206107f2565b949350505050565b6000806102eb8a8a8a8a8a8a8a8a610659565b905061032d8d8d808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508f92508591506108959050565b915060008a6001600160a01b03168a6001600160a01b03167f20af7f3bbfe38132b8900ae295cd9c8d1914be7052d061a511f3f728dab189648e60405161037691815260200190565b60405180910390a450600060046040518060a00160405290816000820160009054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016000820160109054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016001820160009054906101000a90046001600160801b03166001600160801b03166001600160801b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152505090506040518060a00160405280896001600160801b03168152602001886001600160801b03168152602001876001600160801b031681526020018381526020018b6001600160a01b0316815250600460008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b0316021790555060408201518160010160006101000a8154816001600160801b0302191690836001600160801b031602179055506060820151816002015560808201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506105a5898686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061099892505050565b805160208201516001600160801b03918216600160801b91831691909102176004556040820151600580546001600160801b03191691909216179055606081015160065560800151600780546001600160a01b0319166001600160a01b03909216919091179055505050505050505050505050565b60405162461bcd60e51b815260206004820152600f60248201526e139bdd081a5b5c1b195b595b9d1959608a1b60448201526064015b60405180910390fd5b6000888888888888888860405160200161067a989796959493929190610e47565b60405160208183030381529060405280519060200120905098975050505050505050565b60008281526003602052604080822083905551829184917fb4df3847300f076a369cd76d2314b470a1194d9e8a6bb97f1860aee88a5f67489190a35050565b6001546001600160a01b03161561070757604051633bcd329760e21b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561075b57600080fd5b505afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107939190610ea0565b600080546001600160a01b0319166001600160a01b039290921691909117905550565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d253541311535155115160921b6044820152600090606401610650565b825160009061010081111561082557604051637ed6198f60e11b8152600481018290526101006024820152604401610650565b8260005b8281101561088b57600087828151811061084557610845610ebd565b60200260200101519050816001901b87166000141561087257826000528060205260406000209250610882565b8060005282602052604060002092505b50600101610829565b5095945050505050565b60006101008451106108bf57835160405163ab6a068360e01b815260040161065091815260200190565b83516108cc906002610fcf565b83106109035782845160026108e19190610fcf565b604051630b8a724b60e01b815260048101929092526024820152604401610650565b600061091085858561029b565b600081815260036020526040902054909150610942576040516310e61af960e31b815260048101829052602401610650565b60008481526002602052604090205460ff161561097557604051639715b8d360e01b815260048101859052602401610650565b50506000828152600260205260409020805460ff19166001179055819392505050565b600154604051639e5d4c4960e01b815260009182916001600160a01b0390911690639e5d4c49906109d19088908890889060040161100b565b600060405180830381600087803b1580156109eb57600080fd5b505af11580156109ff573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a279190810190611054565b9150915081610a5957805115610a405780518082602001fd5b604051631bb7daad60e11b815260040160405180910390fd5b5050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a60565b604052919050565b600080600060608486031215610abb57600080fd5b83356001600160401b0380821115610ad257600080fd5b818601915086601f830112610ae657600080fd5b8135602082821115610afa57610afa610a60565b8160051b9250610b0b818401610a76565b828152928401810192818101908a851115610b2557600080fd5b948201945b84861015610b4357853582529482019490820190610b2a565b9a918901359950506040909701359695505050505050565b6001600160a01b0381168114610b7057600080fd5b50565b8035610b7e81610b5b565b919050565b60008083601f840112610b9557600080fd5b5081356001600160401b03811115610bac57600080fd5b602083019150836020828501011115610bc457600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215610bed57600080fd5b8b356001600160401b0380821115610c0457600080fd5b818e0191508e601f830112610c1857600080fd5b813581811115610c2757600080fd5b8f60208260051b8501011115610c3c57600080fd5b60208381019e50909c508e01359a50610c5760408f01610b73565b9950610c6560608f01610b73565b985060808e0135975060a08e0135965060c08e0135955060e08e013594506101008e0135915080821115610c9857600080fd5b50610ca58e828f01610b83565b915080935050809150509295989b509295989b9093969950565b60008060008060008060008060006101008a8c031215610cde57600080fd5b8935985060208a0135610cf081610b5b565b975060408a0135610d0081610b5b565b965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115610d3757600080fd5b610d438c828d01610b83565b915080935050809150509295985092959850929598565b600060208284031215610d6c57600080fd5b5035919050565b60008060008060008060008060e0898b031215610d8f57600080fd5b8835610d9a81610b5b565b97506020890135610daa81610b5b565b965060408901359550606089013594506080890135935060a0890135925060c08901356001600160401b03811115610de157600080fd5b610ded8b828c01610b83565b999c989b5096995094979396929594505050565b60008060408385031215610e1457600080fd5b50508035926020909101359150565b600060208284031215610e3557600080fd5b8135610e4081610b5b565b9392505050565b60006bffffffffffffffffffffffff19808b60601b168352808a60601b16601484015250876028830152866048830152856068830152846088830152828460a8840137506000910160a801908152979650505050505050565b600060208284031215610eb257600080fd5b8151610e4081610b5b565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610f24578160001904821115610f0a57610f0a610ed3565b80851615610f1757918102915b93841c9390800290610eee565b509250929050565b600082610f3b57506001610fc9565b81610f4857506000610fc9565b8160018114610f5e5760028114610f6857610f84565b6001915050610fc9565b60ff841115610f7957610f79610ed3565b50506001821b610fc9565b5060208310610133831016604e8410600b8410161715610fa7575081810a610fc9565b610fb18383610ee9565b8060001904821115610fc557610fc5610ed3565b0290505b92915050565b6000610e408383610f2c565b60005b83811015610ff6578181015183820152602001610fde565b83811115611005576000848401525b50505050565b60018060a01b0384168152826020820152606060408201526000825180606084015261103e816080850160208701610fdb565b601f01601f191691909101608001949350505050565b6000806040838503121561106757600080fd5b8251801515811461107757600080fd5b60208401519092506001600160401b038082111561109457600080fd5b818501915085601f8301126110a857600080fd5b8151818111156110ba576110ba610a60565b6110cd601f8201601f1916602001610a76565b91508082528660208285010111156110e457600080fd5b6110f5816020840160208601610fdb565b508092505050925092905056fea264697066735822122005e69cc49990b667d0d7f4cef5cc53c8f8b527a25a8a3c6a1ea50dfdc21c6b0764736f6c63430008090033",
516
+ "bytecode": "0x60a06040523060805234801561001457600080fd5b5060805161113861002d600039600050506111386000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80639f0c04bf116100925780639f0c04bf146101d8578063a04cee60146101eb578063ae6dead7146101fe578063b0f305371461021e578063c4d66de81461022f578063c75184df14610242578063cb23bcb514610262578063d5b5cc2314610275578063e78cea921461028857600080fd5b80627436d3146100fa57806308635a95146101205780631198527114610135578063288e5b101461013c578063465477901461014f5780635a129efe1461016057806372f2a8c71461019357806380648b021461019b5780638515bc6a146101c0575b600080fd5b61010d610108366004610aa6565b61029b565b6040519081526020015b60405180910390f35b61013361012e366004610bcb565b6102d8565b005b600061010d565b61013361014a366004610cbf565b61061a565b6004546001600160801b031661010d565b61018361016e366004610d5a565b60026020526000908152604090205460ff1681565b6040519015158152602001610117565b60065461010d565b6007546001600160a01b03165b6040516001600160a01b039091168152602001610117565b600454600160801b90046001600160801b031661010d565b61010d6101e6366004610d73565b610659565b6101336101f9366004610e01565b61069e565b61010d61020c366004610d5a565b60036020526000908152604090205481565b6005546001600160801b031661010d565b61013361023d366004610e23565b6106dd565b61024a600281565b6040516001600160801b039091168152602001610117565b6000546101a8906001600160a01b031681565b61010d610283366004610d5a565b6107b6565b6001546101a8906001600160a01b031681565b60006102d08484846040516020016102b591815260200190565b604051602081830303815290604052805190602001206107f2565b949350505050565b6000806102eb8a8a8a8a8a8a8a8a610659565b905061032d8d8d808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508f92508591506108959050565b915060008a6001600160a01b03168a6001600160a01b03167f20af7f3bbfe38132b8900ae295cd9c8d1914be7052d061a511f3f728dab189648e60405161037691815260200190565b60405180910390a450600060046040518060a00160405290816000820160009054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016000820160109054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016001820160009054906101000a90046001600160801b03166001600160801b03166001600160801b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152505090506040518060a00160405280896001600160801b03168152602001886001600160801b03168152602001876001600160801b031681526020018381526020018b6001600160a01b0316815250600460008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b0316021790555060408201518160010160006101000a8154816001600160801b0302191690836001600160801b031602179055506060820151816002015560808201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506105a5898686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061099892505050565b805160208201516001600160801b03918216600160801b91831691909102176004556040820151600580546001600160801b03191691909216179055606081015160065560800151600780546001600160a01b0319166001600160a01b03909216919091179055505050505050505050505050565b60405162461bcd60e51b815260206004820152600f60248201526e139bdd081a5b5c1b195b595b9d1959608a1b60448201526064015b60405180910390fd5b6000888888888888888860405160200161067a989796959493929190610e47565b60405160208183030381529060405280519060200120905098975050505050505050565b60008281526003602052604080822083905551829184917fb4df3847300f076a369cd76d2314b470a1194d9e8a6bb97f1860aee88a5f67489190a35050565b6001546001600160a01b03161561070757604051633bcd329760e21b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561075b57600080fd5b505afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107939190610ea0565b600080546001600160a01b0319166001600160a01b039290921691909117905550565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d253541311535155115160921b6044820152600090606401610650565b825160009061010081111561082557604051637ed6198f60e11b8152600481018290526101006024820152604401610650565b8260005b8281101561088b57600087828151811061084557610845610ebd565b60200260200101519050816001901b87166000141561087257826000528060205260406000209250610882565b8060005282602052604060002092505b50600101610829565b5095945050505050565b60006101008451106108bf57835160405163ab6a068360e01b815260040161065091815260200190565b83516108cc906002610fcf565b83106109035782845160026108e19190610fcf565b604051630b8a724b60e01b815260048101929092526024820152604401610650565b600061091085858561029b565b600081815260036020526040902054909150610942576040516310e61af960e31b815260048101829052602401610650565b60008481526002602052604090205460ff161561097557604051639715b8d360e01b815260048101859052602401610650565b50506000828152600260205260409020805460ff19166001179055819392505050565b600154604051639e5d4c4960e01b815260009182916001600160a01b0390911690639e5d4c49906109d19088908890889060040161100b565b600060405180830381600087803b1580156109eb57600080fd5b505af11580156109ff573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a279190810190611054565b9150915081610a5957805115610a405780518082602001fd5b604051631bb7daad60e11b815260040160405180910390fd5b5050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a60565b604052919050565b600080600060608486031215610abb57600080fd5b83356001600160401b0380821115610ad257600080fd5b818601915086601f830112610ae657600080fd5b8135602082821115610afa57610afa610a60565b8160051b9250610b0b818401610a76565b828152928401810192818101908a851115610b2557600080fd5b948201945b84861015610b4357853582529482019490820190610b2a565b9a918901359950506040909701359695505050505050565b6001600160a01b0381168114610b7057600080fd5b50565b8035610b7e81610b5b565b919050565b60008083601f840112610b9557600080fd5b5081356001600160401b03811115610bac57600080fd5b602083019150836020828501011115610bc457600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215610bed57600080fd5b8b356001600160401b0380821115610c0457600080fd5b818e0191508e601f830112610c1857600080fd5b813581811115610c2757600080fd5b8f60208260051b8501011115610c3c57600080fd5b60208381019e50909c508e01359a50610c5760408f01610b73565b9950610c6560608f01610b73565b985060808e0135975060a08e0135965060c08e0135955060e08e013594506101008e0135915080821115610c9857600080fd5b50610ca58e828f01610b83565b915080935050809150509295989b509295989b9093969950565b60008060008060008060008060006101008a8c031215610cde57600080fd5b8935985060208a0135610cf081610b5b565b975060408a0135610d0081610b5b565b965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115610d3757600080fd5b610d438c828d01610b83565b915080935050809150509295985092959850929598565b600060208284031215610d6c57600080fd5b5035919050565b60008060008060008060008060e0898b031215610d8f57600080fd5b8835610d9a81610b5b565b97506020890135610daa81610b5b565b965060408901359550606089013594506080890135935060a0890135925060c08901356001600160401b03811115610de157600080fd5b610ded8b828c01610b83565b999c989b5096995094979396929594505050565b60008060408385031215610e1457600080fd5b50508035926020909101359150565b600060208284031215610e3557600080fd5b8135610e4081610b5b565b9392505050565b60006bffffffffffffffffffffffff19808b60601b168352808a60601b16601484015250876028830152866048830152856068830152846088830152828460a8840137506000910160a801908152979650505050505050565b600060208284031215610eb257600080fd5b8151610e4081610b5b565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610f24578160001904821115610f0a57610f0a610ed3565b80851615610f1757918102915b93841c9390800290610eee565b509250929050565b600082610f3b57506001610fc9565b81610f4857506000610fc9565b8160018114610f5e5760028114610f6857610f84565b6001915050610fc9565b60ff841115610f7957610f79610ed3565b50506001821b610fc9565b5060208310610133831016604e8410600b8410161715610fa7575081810a610fc9565b610fb18383610ee9565b8060001904821115610fc557610fc5610ed3565b0290505b92915050565b6000610e408383610f2c565b60005b83811015610ff6578181015183820152602001610fde565b83811115611005576000848401525b50505050565b60018060a01b0384168152826020820152606060408201526000825180606084015261103e816080850160208701610fdb565b601f01601f191691909101608001949350505050565b6000806040838503121561106757600080fd5b8251801515811461107757600080fd5b60208401519092506001600160401b038082111561109457600080fd5b818501915085601f8301126110a857600080fd5b8151818111156110ba576110ba610a60565b6110cd601f8201601f1916602001610a76565b91508082528660208285010111156110e457600080fd5b6110f5816020840160208601610fdb565b508092505050925092905056fea2646970667358221220c916b6ea5dfda23f935790e44c330519688fc9632ac7c236d7dfbe3b06d23b0464736f6c63430008090033",
517
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80639f0c04bf116100925780639f0c04bf146101d8578063a04cee60146101eb578063ae6dead7146101fe578063b0f305371461021e578063c4d66de81461022f578063c75184df14610242578063cb23bcb514610262578063d5b5cc2314610275578063e78cea921461028857600080fd5b80627436d3146100fa57806308635a95146101205780631198527114610135578063288e5b101461013c578063465477901461014f5780635a129efe1461016057806372f2a8c71461019357806380648b021461019b5780638515bc6a146101c0575b600080fd5b61010d610108366004610aa6565b61029b565b6040519081526020015b60405180910390f35b61013361012e366004610bcb565b6102d8565b005b600061010d565b61013361014a366004610cbf565b61061a565b6004546001600160801b031661010d565b61018361016e366004610d5a565b60026020526000908152604090205460ff1681565b6040519015158152602001610117565b60065461010d565b6007546001600160a01b03165b6040516001600160a01b039091168152602001610117565b600454600160801b90046001600160801b031661010d565b61010d6101e6366004610d73565b610659565b6101336101f9366004610e01565b61069e565b61010d61020c366004610d5a565b60036020526000908152604090205481565b6005546001600160801b031661010d565b61013361023d366004610e23565b6106dd565b61024a600281565b6040516001600160801b039091168152602001610117565b6000546101a8906001600160a01b031681565b61010d610283366004610d5a565b6107b6565b6001546101a8906001600160a01b031681565b60006102d08484846040516020016102b591815260200190565b604051602081830303815290604052805190602001206107f2565b949350505050565b6000806102eb8a8a8a8a8a8a8a8a610659565b905061032d8d8d808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508f92508591506108959050565b915060008a6001600160a01b03168a6001600160a01b03167f20af7f3bbfe38132b8900ae295cd9c8d1914be7052d061a511f3f728dab189648e60405161037691815260200190565b60405180910390a450600060046040518060a00160405290816000820160009054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016000820160109054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016001820160009054906101000a90046001600160801b03166001600160801b03166001600160801b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152505090506040518060a00160405280896001600160801b03168152602001886001600160801b03168152602001876001600160801b031681526020018381526020018b6001600160a01b0316815250600460008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b0316021790555060408201518160010160006101000a8154816001600160801b0302191690836001600160801b031602179055506060820151816002015560808201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506105a5898686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061099892505050565b805160208201516001600160801b03918216600160801b91831691909102176004556040820151600580546001600160801b03191691909216179055606081015160065560800151600780546001600160a01b0319166001600160a01b03909216919091179055505050505050505050505050565b60405162461bcd60e51b815260206004820152600f60248201526e139bdd081a5b5c1b195b595b9d1959608a1b60448201526064015b60405180910390fd5b6000888888888888888860405160200161067a989796959493929190610e47565b60405160208183030381529060405280519060200120905098975050505050505050565b60008281526003602052604080822083905551829184917fb4df3847300f076a369cd76d2314b470a1194d9e8a6bb97f1860aee88a5f67489190a35050565b6001546001600160a01b03161561070757604051633bcd329760e21b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561075b57600080fd5b505afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107939190610ea0565b600080546001600160a01b0319166001600160a01b039290921691909117905550565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d253541311535155115160921b6044820152600090606401610650565b825160009061010081111561082557604051637ed6198f60e11b8152600481018290526101006024820152604401610650565b8260005b8281101561088b57600087828151811061084557610845610ebd565b60200260200101519050816001901b87166000141561087257826000528060205260406000209250610882565b8060005282602052604060002092505b50600101610829565b5095945050505050565b60006101008451106108bf57835160405163ab6a068360e01b815260040161065091815260200190565b83516108cc906002610fcf565b83106109035782845160026108e19190610fcf565b604051630b8a724b60e01b815260048101929092526024820152604401610650565b600061091085858561029b565b600081815260036020526040902054909150610942576040516310e61af960e31b815260048101829052602401610650565b60008481526002602052604090205460ff161561097557604051639715b8d360e01b815260048101859052602401610650565b50506000828152600260205260409020805460ff19166001179055819392505050565b600154604051639e5d4c4960e01b815260009182916001600160a01b0390911690639e5d4c49906109d19088908890889060040161100b565b600060405180830381600087803b1580156109eb57600080fd5b505af11580156109ff573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a279190810190611054565b9150915081610a5957805115610a405780518082602001fd5b604051631bb7daad60e11b815260040160405180910390fd5b5050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a60565b604052919050565b600080600060608486031215610abb57600080fd5b83356001600160401b0380821115610ad257600080fd5b818601915086601f830112610ae657600080fd5b8135602082821115610afa57610afa610a60565b8160051b9250610b0b818401610a76565b828152928401810192818101908a851115610b2557600080fd5b948201945b84861015610b4357853582529482019490820190610b2a565b9a918901359950506040909701359695505050505050565b6001600160a01b0381168114610b7057600080fd5b50565b8035610b7e81610b5b565b919050565b60008083601f840112610b9557600080fd5b5081356001600160401b03811115610bac57600080fd5b602083019150836020828501011115610bc457600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215610bed57600080fd5b8b356001600160401b0380821115610c0457600080fd5b818e0191508e601f830112610c1857600080fd5b813581811115610c2757600080fd5b8f60208260051b8501011115610c3c57600080fd5b60208381019e50909c508e01359a50610c5760408f01610b73565b9950610c6560608f01610b73565b985060808e0135975060a08e0135965060c08e0135955060e08e013594506101008e0135915080821115610c9857600080fd5b50610ca58e828f01610b83565b915080935050809150509295989b509295989b9093969950565b60008060008060008060008060006101008a8c031215610cde57600080fd5b8935985060208a0135610cf081610b5b565b975060408a0135610d0081610b5b565b965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115610d3757600080fd5b610d438c828d01610b83565b915080935050809150509295985092959850929598565b600060208284031215610d6c57600080fd5b5035919050565b60008060008060008060008060e0898b031215610d8f57600080fd5b8835610d9a81610b5b565b97506020890135610daa81610b5b565b965060408901359550606089013594506080890135935060a0890135925060c08901356001600160401b03811115610de157600080fd5b610ded8b828c01610b83565b999c989b5096995094979396929594505050565b60008060408385031215610e1457600080fd5b50508035926020909101359150565b600060208284031215610e3557600080fd5b8135610e4081610b5b565b9392505050565b60006bffffffffffffffffffffffff19808b60601b168352808a60601b16601484015250876028830152866048830152856068830152846088830152828460a8840137506000910160a801908152979650505050505050565b600060208284031215610eb257600080fd5b8151610e4081610b5b565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610f24578160001904821115610f0a57610f0a610ed3565b80851615610f1757918102915b93841c9390800290610eee565b509250929050565b600082610f3b57506001610fc9565b81610f4857506000610fc9565b8160018114610f5e5760028114610f6857610f84565b6001915050610fc9565b60ff841115610f7957610f79610ed3565b50506001821b610fc9565b5060208310610133831016604e8410600b8410161715610fa7575081810a610fc9565b610fb18383610ee9565b8060001904821115610fc557610fc5610ed3565b0290505b92915050565b6000610e408383610f2c565b60005b83811015610ff6578181015183820152602001610fde565b83811115611005576000848401525b50505050565b60018060a01b0384168152826020820152606060408201526000825180606084015261103e816080850160208701610fdb565b601f01601f191691909101608001949350505050565b6000806040838503121561106757600080fd5b8251801515811461107757600080fd5b60208401519092506001600160401b038082111561109457600080fd5b818501915085601f8301126110a857600080fd5b8151818111156110ba576110ba610a60565b6110cd601f8201601f1916602001610a76565b91508082528660208285010111156110e457600080fd5b6110f5816020840160208601610fdb565b508092505050925092905056fea2646970667358221220c916b6ea5dfda23f935790e44c330519688fc9632ac7c236d7dfbe3b06d23b0464736f6c63430008090033",
518
518
  "linkReferences": {},
519
519
  "deployedLinkReferences": {}
520
520
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f775ba1b13e3322b84f038b2d4b8db11.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
+ }
@@ -0,0 +1,292 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "TestToken",
4
+ "sourceName": "src/test-helpers/TestToken.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint256",
10
+ "name": "initialSupply",
11
+ "type": "uint256"
12
+ }
13
+ ],
14
+ "stateMutability": "nonpayable",
15
+ "type": "constructor"
16
+ },
17
+ {
18
+ "anonymous": false,
19
+ "inputs": [
20
+ {
21
+ "indexed": true,
22
+ "internalType": "address",
23
+ "name": "owner",
24
+ "type": "address"
25
+ },
26
+ {
27
+ "indexed": true,
28
+ "internalType": "address",
29
+ "name": "spender",
30
+ "type": "address"
31
+ },
32
+ {
33
+ "indexed": false,
34
+ "internalType": "uint256",
35
+ "name": "value",
36
+ "type": "uint256"
37
+ }
38
+ ],
39
+ "name": "Approval",
40
+ "type": "event"
41
+ },
42
+ {
43
+ "anonymous": false,
44
+ "inputs": [
45
+ {
46
+ "indexed": true,
47
+ "internalType": "address",
48
+ "name": "from",
49
+ "type": "address"
50
+ },
51
+ {
52
+ "indexed": true,
53
+ "internalType": "address",
54
+ "name": "to",
55
+ "type": "address"
56
+ },
57
+ {
58
+ "indexed": false,
59
+ "internalType": "uint256",
60
+ "name": "value",
61
+ "type": "uint256"
62
+ }
63
+ ],
64
+ "name": "Transfer",
65
+ "type": "event"
66
+ },
67
+ {
68
+ "inputs": [
69
+ {
70
+ "internalType": "address",
71
+ "name": "owner",
72
+ "type": "address"
73
+ },
74
+ {
75
+ "internalType": "address",
76
+ "name": "spender",
77
+ "type": "address"
78
+ }
79
+ ],
80
+ "name": "allowance",
81
+ "outputs": [
82
+ {
83
+ "internalType": "uint256",
84
+ "name": "",
85
+ "type": "uint256"
86
+ }
87
+ ],
88
+ "stateMutability": "view",
89
+ "type": "function"
90
+ },
91
+ {
92
+ "inputs": [
93
+ {
94
+ "internalType": "address",
95
+ "name": "spender",
96
+ "type": "address"
97
+ },
98
+ {
99
+ "internalType": "uint256",
100
+ "name": "amount",
101
+ "type": "uint256"
102
+ }
103
+ ],
104
+ "name": "approve",
105
+ "outputs": [
106
+ {
107
+ "internalType": "bool",
108
+ "name": "",
109
+ "type": "bool"
110
+ }
111
+ ],
112
+ "stateMutability": "nonpayable",
113
+ "type": "function"
114
+ },
115
+ {
116
+ "inputs": [
117
+ {
118
+ "internalType": "address",
119
+ "name": "account",
120
+ "type": "address"
121
+ }
122
+ ],
123
+ "name": "balanceOf",
124
+ "outputs": [
125
+ {
126
+ "internalType": "uint256",
127
+ "name": "",
128
+ "type": "uint256"
129
+ }
130
+ ],
131
+ "stateMutability": "view",
132
+ "type": "function"
133
+ },
134
+ {
135
+ "inputs": [],
136
+ "name": "decimals",
137
+ "outputs": [
138
+ {
139
+ "internalType": "uint8",
140
+ "name": "",
141
+ "type": "uint8"
142
+ }
143
+ ],
144
+ "stateMutability": "view",
145
+ "type": "function"
146
+ },
147
+ {
148
+ "inputs": [
149
+ {
150
+ "internalType": "address",
151
+ "name": "spender",
152
+ "type": "address"
153
+ },
154
+ {
155
+ "internalType": "uint256",
156
+ "name": "subtractedValue",
157
+ "type": "uint256"
158
+ }
159
+ ],
160
+ "name": "decreaseAllowance",
161
+ "outputs": [
162
+ {
163
+ "internalType": "bool",
164
+ "name": "",
165
+ "type": "bool"
166
+ }
167
+ ],
168
+ "stateMutability": "nonpayable",
169
+ "type": "function"
170
+ },
171
+ {
172
+ "inputs": [
173
+ {
174
+ "internalType": "address",
175
+ "name": "spender",
176
+ "type": "address"
177
+ },
178
+ {
179
+ "internalType": "uint256",
180
+ "name": "addedValue",
181
+ "type": "uint256"
182
+ }
183
+ ],
184
+ "name": "increaseAllowance",
185
+ "outputs": [
186
+ {
187
+ "internalType": "bool",
188
+ "name": "",
189
+ "type": "bool"
190
+ }
191
+ ],
192
+ "stateMutability": "nonpayable",
193
+ "type": "function"
194
+ },
195
+ {
196
+ "inputs": [],
197
+ "name": "name",
198
+ "outputs": [
199
+ {
200
+ "internalType": "string",
201
+ "name": "",
202
+ "type": "string"
203
+ }
204
+ ],
205
+ "stateMutability": "view",
206
+ "type": "function"
207
+ },
208
+ {
209
+ "inputs": [],
210
+ "name": "symbol",
211
+ "outputs": [
212
+ {
213
+ "internalType": "string",
214
+ "name": "",
215
+ "type": "string"
216
+ }
217
+ ],
218
+ "stateMutability": "view",
219
+ "type": "function"
220
+ },
221
+ {
222
+ "inputs": [],
223
+ "name": "totalSupply",
224
+ "outputs": [
225
+ {
226
+ "internalType": "uint256",
227
+ "name": "",
228
+ "type": "uint256"
229
+ }
230
+ ],
231
+ "stateMutability": "view",
232
+ "type": "function"
233
+ },
234
+ {
235
+ "inputs": [
236
+ {
237
+ "internalType": "address",
238
+ "name": "to",
239
+ "type": "address"
240
+ },
241
+ {
242
+ "internalType": "uint256",
243
+ "name": "amount",
244
+ "type": "uint256"
245
+ }
246
+ ],
247
+ "name": "transfer",
248
+ "outputs": [
249
+ {
250
+ "internalType": "bool",
251
+ "name": "",
252
+ "type": "bool"
253
+ }
254
+ ],
255
+ "stateMutability": "nonpayable",
256
+ "type": "function"
257
+ },
258
+ {
259
+ "inputs": [
260
+ {
261
+ "internalType": "address",
262
+ "name": "from",
263
+ "type": "address"
264
+ },
265
+ {
266
+ "internalType": "address",
267
+ "name": "to",
268
+ "type": "address"
269
+ },
270
+ {
271
+ "internalType": "uint256",
272
+ "name": "amount",
273
+ "type": "uint256"
274
+ }
275
+ ],
276
+ "name": "transferFrom",
277
+ "outputs": [
278
+ {
279
+ "internalType": "bool",
280
+ "name": "",
281
+ "type": "bool"
282
+ }
283
+ ],
284
+ "stateMutability": "nonpayable",
285
+ "type": "function"
286
+ }
287
+ ],
288
+ "bytecode": "0x60806040523480156200001157600080fd5b5060405162000b8838038062000b8883398101604081905262000034916200023f565b60408051808201825260098152682a32b9ba2a37b5b2b760b91b602080830191825283518085019094526002845261151560f21b9084015281519192916200007f9160039162000199565b5080516200009590600490602084019062000199565b505050620000aa3382620000b160201b60201c565b50620002bd565b6001600160a01b0382166200010c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b806002600082825462000120919062000259565b90915550506001600160a01b038216600090815260208190526040812080548392906200014f90849062000259565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b828054620001a79062000280565b90600052602060002090601f016020900481019282620001cb576000855562000216565b82601f10620001e657805160ff191683800117855562000216565b8280016001018555821562000216579182015b8281111562000216578251825591602001919060010190620001f9565b506200022492915062000228565b5090565b5b8082111562000224576000815560010162000229565b6000602082840312156200025257600080fd5b5051919050565b600082198211156200027b57634e487b7160e01b600052601160045260246000fd5b500190565b600181811c908216806200029557607f821691505b60208210811415620002b757634e487b7160e01b600052602260045260246000fd5b50919050565b6108bb80620002cd6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c391906106f8565b60405180910390f35b6100df6100da366004610769565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610793565b61024a565b604051601281526020016100c3565b6100df610131366004610769565b61026e565b6100f36101443660046107cf565b6001600160a01b031660009081526020819052604090205490565b6100b66102ad565b6100df610175366004610769565b6102bc565b6100df610188366004610769565b610353565b6100f361019b3660046107f1565b610361565b6060600380546101af90610824565b80601f01602080910402602001604051908101604052809291908181526020018280546101db90610824565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561038c565b5060019392505050565b6000336102588582856104b0565b61026385858561052a565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061024090829086906102a890879061085f565b61038c565b6060600480546101af90610824565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156103465760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610263828686840361038c565b60003361024081858561052a565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ee5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161033d565b6001600160a01b03821661044f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161033d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104bc8484610361565b9050600019811461052457818110156105175760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161033d565b610524848484840361038c565b50505050565b6001600160a01b03831661058e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161033d565b6001600160a01b0382166105f05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161033d565b6001600160a01b038316600090815260208190526040902054818110156106685760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161033d565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061069f90849061085f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106eb91815260200190565b60405180910390a3610524565b600060208083528351808285015260005b8181101561072557858101830151858201604001528201610709565b81811115610737576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461076457600080fd5b919050565b6000806040838503121561077c57600080fd5b6107858361074d565b946020939093013593505050565b6000806000606084860312156107a857600080fd5b6107b18461074d565b92506107bf6020850161074d565b9150604084013590509250925092565b6000602082840312156107e157600080fd5b6107ea8261074d565b9392505050565b6000806040838503121561080457600080fd5b61080d8361074d565b915061081b6020840161074d565b90509250929050565b600181811c9082168061083857607f821691505b6020821081141561085957634e487b7160e01b600052602260045260246000fd5b50919050565b6000821982111561088057634e487b7160e01b600052601160045260246000fd5b50019056fea26469706673582212205520cebf912a7b37ad2078443ea206cc6187d18972e4366e20d773c71e326a0464736f6c63430008090033",
289
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461012357806370a082311461013657806395d89b411461015f578063a457c2d714610167578063a9059cbb1461017a578063dd62ed3e1461018d57600080fd5b806306fdde03146100ae578063095ea7b3146100cc57806318160ddd146100ef57806323b872dd14610101578063313ce56714610114575b600080fd5b6100b66101a0565b6040516100c391906106f8565b60405180910390f35b6100df6100da366004610769565b610232565b60405190151581526020016100c3565b6002545b6040519081526020016100c3565b6100df61010f366004610793565b61024a565b604051601281526020016100c3565b6100df610131366004610769565b61026e565b6100f36101443660046107cf565b6001600160a01b031660009081526020819052604090205490565b6100b66102ad565b6100df610175366004610769565b6102bc565b6100df610188366004610769565b610353565b6100f361019b3660046107f1565b610361565b6060600380546101af90610824565b80601f01602080910402602001604051908101604052809291908181526020018280546101db90610824565b80156102285780601f106101fd57610100808354040283529160200191610228565b820191906000526020600020905b81548152906001019060200180831161020b57829003601f168201915b5050505050905090565b60003361024081858561038c565b5060019392505050565b6000336102588582856104b0565b61026385858561052a565b506001949350505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490919061024090829086906102a890879061085f565b61038c565b6060600480546101af90610824565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156103465760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610263828686840361038c565b60003361024081858561052a565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ee5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161033d565b6001600160a01b03821661044f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161033d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006104bc8484610361565b9050600019811461052457818110156105175760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161033d565b610524848484840361038c565b50505050565b6001600160a01b03831661058e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161033d565b6001600160a01b0382166105f05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161033d565b6001600160a01b038316600090815260208190526040902054818110156106685760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161033d565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061069f90849061085f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106eb91815260200190565b60405180910390a3610524565b600060208083528351808285015260005b8181101561072557858101830151858201604001528201610709565b81811115610737576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461076457600080fd5b919050565b6000806040838503121561077c57600080fd5b6107858361074d565b946020939093013593505050565b6000806000606084860312156107a857600080fd5b6107b18461074d565b92506107bf6020850161074d565b9150604084013590509250925092565b6000602082840312156107e157600080fd5b6107ea8261074d565b9392505050565b6000806040838503121561080457600080fd5b61080d8361074d565b915061081b6020840161074d565b90509250929050565b600181811c9082168061083857607f821691505b6020821081141561085957634e487b7160e01b600052602260045260246000fd5b50919050565b6000821982111561088057634e487b7160e01b600052601160045260246000fd5b50019056fea26469706673582212205520cebf912a7b37ad2078443ea206cc6187d18972e4366e20d773c71e326a0464736f6c63430008090033",
290
+ "linkReferences": {},
291
+ "deployedLinkReferences": {}
292
+ }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/028b7f7957bbed4b884988233864d528.json"
3
+ "buildInfo": "../../../build-info/a7ce9cbb097e32701fcf0a033259bcca.json"
4
4
  }