@arbitrum/nitro-contracts 2.0.0-beta.1 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsOutbox.sol/AbsOutbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/Bridge.sol/Bridge.json +2 -2
- package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.json +2 -2
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.json +2 -2
- package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.json +2 -2
- package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +1 -1
- package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +1 -1
- package/build/contracts/src/bridge/IERC20Bridge.sol/IERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
- package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Inbox.sol/Inbox.json +2 -2
- package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
- package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Outbox.sol/Outbox.json +2 -2
- package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.json +2 -2
- package/build/contracts/src/chain/CacheManager.sol/CacheManager.dbg.json +1 -1
- package/build/contracts/src/chain/CacheManager.sol/CacheManager.json +2 -2
- package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +1 -1
- package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +1 -1
- package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +2 -2
- package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +1 -1
- package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +1 -1
- package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +1 -1
- package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +1 -1
- package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
- package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.dbg.json +1 -1
- package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
- package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/src/libraries/GasRefundEnabled.sol/GasRefundEnabled.dbg.json +1 -1
- package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
- package/build/contracts/src/libraries/IReader4844.sol/IReader4844.dbg.json +1 -1
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +2 -2
- package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
- package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +2 -2
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +2 -2
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +2 -2
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +1 -1
- package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.dbg.json +1 -1
- package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.dbg.json +1 -1
- package/build/contracts/src/mocks/Program.sol/ProgramTest.dbg.json +1 -1
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +1 -1
- package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.dbg.json +1 -1
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +2 -2
- package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +1 -1
- package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.dbg.json +1 -1
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +1 -1
- package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +1 -1
- package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +2 -2
- package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +1 -1
- package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +2 -2
- package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +1 -1
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
- package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
- package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbWasm.sol/ArbWasm.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbWasmCache.sol/ArbWasmCache.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
- package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +2 -2
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +2 -2
- package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.json +2 -2
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IDeployHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.json +5 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.json +5 -0
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.json +5 -0
- package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +2 -2
- package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +2 -2
- package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.json +2 -2
- package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.json +2 -2
- package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.json +5 -0
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +7 -2
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +7 -2
- package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +1 -1
- package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +2 -2
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +2 -2
- package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.json +2 -2
- package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +1 -1
- package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
- package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
- package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
- package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
- package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
- package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
- package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
- package/build/contracts/src/state/MultiStack.sol/MultiStackLib.dbg.json +1 -1
- package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
- package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
- package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
- package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
- package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +2 -2
- package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
- package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json +2 -2
- package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +1 -1
- package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +1 -1
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
- package/package.json +2 -2
- package/src/libraries/Error.sol +0 -9
- package/src/rollup/IRollupLogic.sol +5 -1
- package/src/rollup/RollupUserLogic.sol +10 -8
@@ -648,8 +648,8 @@
|
|
648
648
|
"type": "receive"
|
649
649
|
}
|
650
650
|
],
|
651
|
-
"bytecode": "0x60a06040523060805234801561001457600080fd5b506080516113f761002d600039600050506113f76000f3fe60806040526004361061014e5760003560e01c8063ab5d8943116100b6578063d5719dc21161006f578063d5719dc21461043f578063e1758bd81461045f578063e76f5c8d1461047f578063e77145f41461020a578063eca067ad1461049f578063ee35f327146104b457600080fd5b8063ab5d89431461035a578063ad48cb5e1461036f578063ae60bd13146103a2578063c4d66de8146103df578063cb23bcb5146103ff578063cee3d7281461041f57600080fd5b80637a88b107116101085780637a88b1071461024257806386598a56146102655780638db5993b146102af578063919cc706146102c2578063945e1147146102ff5780639e5d4c491461032c57600080fd5b806284120c1461015a57806316bf55791461017e578063413b35bd1461019e57806347fb24c5146101ea5780634f61f8501461020c5780635fca4a161461022c57600080fd5b3661015557005b600080fd5b34801561016657600080fd5b50600a545b6040519081526020015b60405180910390f35b34801561018a57600080fd5b5061016b6101993660046110b6565b6104d4565b3480156101aa57600080fd5b506101da6101b93660046110e7565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610175565b3480156101f657600080fd5b5061020a61020536600461110b565b6104f5565b005b34801561021857600080fd5b5061020a6102273660046110e7565b610800565b34801561023857600080fd5b5061016b600b5481565b34801561024e57600080fd5b5061016b61025d366004611149565b600092915050565b34801561027157600080fd5b5061028f610280366004611175565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610175565b61016b6102bd3660046111a7565b610925565b3480156102ce57600080fd5b5061020a6102dd3660046110e7565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b34801561030b57600080fd5b5061031f61031a3660046110b6565b610970565b60405161017591906111ee565b34801561033857600080fd5b5061034c610347366004611202565b61099a565b60405161017592919061128b565b34801561036657600080fd5b5061031f610af2565b34801561037b57600080fd5b5060085461039090600160a01b900460ff1681565b60405160ff9091168152602001610175565b3480156103ae57600080fd5b506101da6103bd3660046110e7565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b3480156103eb57600080fd5b5061020a6103fa3660046110e7565b610b1f565b34801561040b57600080fd5b5060065461031f906001600160a01b031681565b34801561042b57600080fd5b5061020a61043a36600461110b565b610c05565b34801561044b57600080fd5b5061016b61045a3660046110b6565b610f07565b34801561046b57600080fd5b5060085461031f906001600160a01b031681565b34801561048b57600080fd5b5061031f61049a3660046110b6565b610f17565b3480156104ab57600080fd5b5060095461016b565b3480156104c057600080fd5b5060075461031f906001600160a01b031681565b600a81815481106104e457600080fd5b600091825260209091200154905081565b6006546001600160a01b031633146105cd5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561054c57600080fd5b505afa158015610560573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058491906112ea565b9050336001600160a01b038216146105cb57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156106325750825b80610644575080158015610644575082155b1561064f5750505050565b82156106dd57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b03191690911790556107f9565b600380546106ed9060019061132a565b815481106106fd576106fd61134f565b6000918252602090912001548254600380546001600160a01b0390931692909190811061072c5761072c61134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460016000600385600001548154811061077a5761077a61134f565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806107b0576107b0611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b031633146108cf5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561085757600080fd5b505afa15801561086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088f91906112ea565b9050336001600160a01b038216146108cd57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061091a9083906111ee565b60405180910390a150565b3360009081526001602081905260408220015460ff1661095a573360405163b6c60ea360e01b81526004016105c291906111ee565b610968848443424887610f27565b949350505050565b6004818154811061098057600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff166109d257336040516332ea82ab60e01b81526004016105c291906111ee565b82158015906109e957506001600160a01b0386163b155b15610a09578560405163b5cf5b8f60e01b81526004016105c291906111ee565b600580546001600160a01b0319811633179091556040516001600160a01b03918216918816908790610a3e908890889061137b565b60006040518083038185875af1925050503d8060008114610a7b576040519150601f19603f3d011682016040523d82523d6000602084013e610a80565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610ae0908a908a908a9061138b565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610b0f5750600090565b506005546001600160a01b031690565b600054610100900460ff16610b3a5760005460ff1615610b3e565b303b155b610ba15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016105c2565b600054610100900460ff16158015610bc3576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b031991821681179092556006805490911691841691909117905580156107fc576000805461ff00191690555050565b6006546001600160a01b03163314610cd45760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610c5c57600080fd5b505afa158015610c70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9491906112ea565b9050336001600160a01b03821614610cd257600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610d3a5750825b80610d4c575080158015610d4c575082155b15610d575750505050565b8215610de657604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b03191690911790556107f9565b60048054610df69060019061132a565b81548110610e0657610e0661134f565b6000918252602090912001548254600480546001600160a01b03909316929091908110610e3557610e3561134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610e8357610e8361134f565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610eb957610eb9611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b600981815481106104e457600080fd5b6003818154811061098057600080fd5b600954604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610fe1576009610fc360018561132a565b81548110610fd357610fd361134f565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600980546001810182556000919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b6000602082840312156110c857600080fd5b5035919050565b6001600160a01b03811681146110e457600080fd5b50565b6000602082840312156110f957600080fd5b8135611104816110cf565b9392505050565b6000806040838503121561111e57600080fd5b8235611129816110cf565b91506020830135801515811461113e57600080fd5b809150509250929050565b6000806040838503121561115c57600080fd5b8235611167816110cf565b946020939093013593505050565b6000806000806080858703121561118b57600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156111bc57600080fd5b833560ff811681146111cd57600080fd5b925060208401356111dd816110cf565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561121857600080fd5b8435611223816110cf565b935060208501359250604085013567ffffffffffffffff8082111561124757600080fd5b818701915087601f83011261125b57600080fd5b81358181111561126a57600080fd5b88602082850101111561127c57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b818110156112c1578581018301518582016060015282016112a5565b818111156112d3576000606083870101525b50601f01601f191692909201606001949350505050565b6000602082840312156112fc57600080fd5b8151611104816110cf565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561134a57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea2646970667358221220ec153ecbd8c7c453b731522ea563c33d530fd85c1c0cea1935c3c75cd4a53b2a64736f6c63430008090033",
|
652
|
-
"deployedBytecode": "0x60806040526004361061014e5760003560e01c8063ab5d8943116100b6578063d5719dc21161006f578063d5719dc21461043f578063e1758bd81461045f578063e76f5c8d1461047f578063e77145f41461020a578063eca067ad1461049f578063ee35f327146104b457600080fd5b8063ab5d89431461035a578063ad48cb5e1461036f578063ae60bd13146103a2578063c4d66de8146103df578063cb23bcb5146103ff578063cee3d7281461041f57600080fd5b80637a88b107116101085780637a88b1071461024257806386598a56146102655780638db5993b146102af578063919cc706146102c2578063945e1147146102ff5780639e5d4c491461032c57600080fd5b806284120c1461015a57806316bf55791461017e578063413b35bd1461019e57806347fb24c5146101ea5780634f61f8501461020c5780635fca4a161461022c57600080fd5b3661015557005b600080fd5b34801561016657600080fd5b50600a545b6040519081526020015b60405180910390f35b34801561018a57600080fd5b5061016b6101993660046110b6565b6104d4565b3480156101aa57600080fd5b506101da6101b93660046110e7565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610175565b3480156101f657600080fd5b5061020a61020536600461110b565b6104f5565b005b34801561021857600080fd5b5061020a6102273660046110e7565b610800565b34801561023857600080fd5b5061016b600b5481565b34801561024e57600080fd5b5061016b61025d366004611149565b600092915050565b34801561027157600080fd5b5061028f610280366004611175565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610175565b61016b6102bd3660046111a7565b610925565b3480156102ce57600080fd5b5061020a6102dd3660046110e7565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b34801561030b57600080fd5b5061031f61031a3660046110b6565b610970565b60405161017591906111ee565b34801561033857600080fd5b5061034c610347366004611202565b61099a565b60405161017592919061128b565b34801561036657600080fd5b5061031f610af2565b34801561037b57600080fd5b5060085461039090600160a01b900460ff1681565b60405160ff9091168152602001610175565b3480156103ae57600080fd5b506101da6103bd3660046110e7565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b3480156103eb57600080fd5b5061020a6103fa3660046110e7565b610b1f565b34801561040b57600080fd5b5060065461031f906001600160a01b031681565b34801561042b57600080fd5b5061020a61043a36600461110b565b610c05565b34801561044b57600080fd5b5061016b61045a3660046110b6565b610f07565b34801561046b57600080fd5b5060085461031f906001600160a01b031681565b34801561048b57600080fd5b5061031f61049a3660046110b6565b610f17565b3480156104ab57600080fd5b5060095461016b565b3480156104c057600080fd5b5060075461031f906001600160a01b031681565b600a81815481106104e457600080fd5b600091825260209091200154905081565b6006546001600160a01b031633146105cd5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561054c57600080fd5b505afa158015610560573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058491906112ea565b9050336001600160a01b038216146105cb57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156106325750825b80610644575080158015610644575082155b1561064f5750505050565b82156106dd57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b03191690911790556107f9565b600380546106ed9060019061132a565b815481106106fd576106fd61134f565b6000918252602090912001548254600380546001600160a01b0390931692909190811061072c5761072c61134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460016000600385600001548154811061077a5761077a61134f565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806107b0576107b0611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b031633146108cf5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561085757600080fd5b505afa15801561086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088f91906112ea565b9050336001600160a01b038216146108cd57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061091a9083906111ee565b60405180910390a150565b3360009081526001602081905260408220015460ff1661095a573360405163b6c60ea360e01b81526004016105c291906111ee565b610968848443424887610f27565b949350505050565b6004818154811061098057600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff166109d257336040516332ea82ab60e01b81526004016105c291906111ee565b82158015906109e957506001600160a01b0386163b155b15610a09578560405163b5cf5b8f60e01b81526004016105c291906111ee565b600580546001600160a01b0319811633179091556040516001600160a01b03918216918816908790610a3e908890889061137b565b60006040518083038185875af1925050503d8060008114610a7b576040519150601f19603f3d011682016040523d82523d6000602084013e610a80565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610ae0908a908a908a9061138b565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610b0f5750600090565b506005546001600160a01b031690565b600054610100900460ff16610b3a5760005460ff1615610b3e565b303b155b610ba15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016105c2565b600054610100900460ff16158015610bc3576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b031991821681179092556006805490911691841691909117905580156107fc576000805461ff00191690555050565b6006546001600160a01b03163314610cd45760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610c5c57600080fd5b505afa158015610c70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9491906112ea565b9050336001600160a01b03821614610cd257600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610d3a5750825b80610d4c575080158015610d4c575082155b15610d575750505050565b8215610de657604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b03191690911790556107f9565b60048054610df69060019061132a565b81548110610e0657610e0661134f565b6000918252602090912001548254600480546001600160a01b03909316929091908110610e3557610e3561134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610e8357610e8361134f565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610eb957610eb9611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b600981815481106104e457600080fd5b6003818154811061098057600080fd5b600954604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610fe1576009610fc360018561132a565b81548110610fd357610fd361134f565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600980546001810182556000919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b6000602082840312156110c857600080fd5b5035919050565b6001600160a01b03811681146110e457600080fd5b50565b6000602082840312156110f957600080fd5b8135611104816110cf565b9392505050565b6000806040838503121561111e57600080fd5b8235611129816110cf565b91506020830135801515811461113e57600080fd5b809150509250929050565b6000806040838503121561115c57600080fd5b8235611167816110cf565b946020939093013593505050565b6000806000806080858703121561118b57600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156111bc57600080fd5b833560ff811681146111cd57600080fd5b925060208401356111dd816110cf565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561121857600080fd5b8435611223816110cf565b935060208501359250604085013567ffffffffffffffff8082111561124757600080fd5b818701915087601f83011261125b57600080fd5b81358181111561126a57600080fd5b88602082850101111561127c57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b818110156112c1578581018301518582016060015282016112a5565b818111156112d3576000606083870101525b50601f01601f191692909201606001949350505050565b6000602082840312156112fc57600080fd5b8151611104816110cf565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561134a57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea2646970667358221220ec153ecbd8c7c453b731522ea563c33d530fd85c1c0cea1935c3c75cd4a53b2a64736f6c63430008090033",
|
651
|
+
"bytecode": "0x60a06040523060805234801561001457600080fd5b506080516113f761002d600039600050506113f76000f3fe60806040526004361061014e5760003560e01c8063ab5d8943116100b6578063d5719dc21161006f578063d5719dc21461043f578063e1758bd81461045f578063e76f5c8d1461047f578063e77145f41461020a578063eca067ad1461049f578063ee35f327146104b457600080fd5b8063ab5d89431461035a578063ad48cb5e1461036f578063ae60bd13146103a2578063c4d66de8146103df578063cb23bcb5146103ff578063cee3d7281461041f57600080fd5b80637a88b107116101085780637a88b1071461024257806386598a56146102655780638db5993b146102af578063919cc706146102c2578063945e1147146102ff5780639e5d4c491461032c57600080fd5b806284120c1461015a57806316bf55791461017e578063413b35bd1461019e57806347fb24c5146101ea5780634f61f8501461020c5780635fca4a161461022c57600080fd5b3661015557005b600080fd5b34801561016657600080fd5b50600a545b6040519081526020015b60405180910390f35b34801561018a57600080fd5b5061016b6101993660046110b6565b6104d4565b3480156101aa57600080fd5b506101da6101b93660046110e7565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610175565b3480156101f657600080fd5b5061020a61020536600461110b565b6104f5565b005b34801561021857600080fd5b5061020a6102273660046110e7565b610800565b34801561023857600080fd5b5061016b600b5481565b34801561024e57600080fd5b5061016b61025d366004611149565b600092915050565b34801561027157600080fd5b5061028f610280366004611175565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610175565b61016b6102bd3660046111a7565b610925565b3480156102ce57600080fd5b5061020a6102dd3660046110e7565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b34801561030b57600080fd5b5061031f61031a3660046110b6565b610970565b60405161017591906111ee565b34801561033857600080fd5b5061034c610347366004611202565b61099a565b60405161017592919061128b565b34801561036657600080fd5b5061031f610af2565b34801561037b57600080fd5b5060085461039090600160a01b900460ff1681565b60405160ff9091168152602001610175565b3480156103ae57600080fd5b506101da6103bd3660046110e7565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b3480156103eb57600080fd5b5061020a6103fa3660046110e7565b610b1f565b34801561040b57600080fd5b5060065461031f906001600160a01b031681565b34801561042b57600080fd5b5061020a61043a36600461110b565b610c05565b34801561044b57600080fd5b5061016b61045a3660046110b6565b610f07565b34801561046b57600080fd5b5060085461031f906001600160a01b031681565b34801561048b57600080fd5b5061031f61049a3660046110b6565b610f17565b3480156104ab57600080fd5b5060095461016b565b3480156104c057600080fd5b5060075461031f906001600160a01b031681565b600a81815481106104e457600080fd5b600091825260209091200154905081565b6006546001600160a01b031633146105cd5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561054c57600080fd5b505afa158015610560573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058491906112ea565b9050336001600160a01b038216146105cb57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156106325750825b80610644575080158015610644575082155b1561064f5750505050565b82156106dd57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b03191690911790556107f9565b600380546106ed9060019061132a565b815481106106fd576106fd61134f565b6000918252602090912001548254600380546001600160a01b0390931692909190811061072c5761072c61134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460016000600385600001548154811061077a5761077a61134f565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806107b0576107b0611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b031633146108cf5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561085757600080fd5b505afa15801561086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088f91906112ea565b9050336001600160a01b038216146108cd57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061091a9083906111ee565b60405180910390a150565b3360009081526001602081905260408220015460ff1661095a573360405163b6c60ea360e01b81526004016105c291906111ee565b610968848443424887610f27565b949350505050565b6004818154811061098057600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff166109d257336040516332ea82ab60e01b81526004016105c291906111ee565b82158015906109e957506001600160a01b0386163b155b15610a09578560405163b5cf5b8f60e01b81526004016105c291906111ee565b600580546001600160a01b0319811633179091556040516001600160a01b03918216918816908790610a3e908890889061137b565b60006040518083038185875af1925050503d8060008114610a7b576040519150601f19603f3d011682016040523d82523d6000602084013e610a80565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610ae0908a908a908a9061138b565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610b0f5750600090565b506005546001600160a01b031690565b600054610100900460ff16610b3a5760005460ff1615610b3e565b303b155b610ba15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016105c2565b600054610100900460ff16158015610bc3576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b031991821681179092556006805490911691841691909117905580156107fc576000805461ff00191690555050565b6006546001600160a01b03163314610cd45760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610c5c57600080fd5b505afa158015610c70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9491906112ea565b9050336001600160a01b03821614610cd257600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610d3a5750825b80610d4c575080158015610d4c575082155b15610d575750505050565b8215610de657604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b03191690911790556107f9565b60048054610df69060019061132a565b81548110610e0657610e0661134f565b6000918252602090912001548254600480546001600160a01b03909316929091908110610e3557610e3561134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610e8357610e8361134f565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610eb957610eb9611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b600981815481106104e457600080fd5b6003818154811061098057600080fd5b600954604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610fe1576009610fc360018561132a565b81548110610fd357610fd361134f565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600980546001810182556000919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b6000602082840312156110c857600080fd5b5035919050565b6001600160a01b03811681146110e457600080fd5b50565b6000602082840312156110f957600080fd5b8135611104816110cf565b9392505050565b6000806040838503121561111e57600080fd5b8235611129816110cf565b91506020830135801515811461113e57600080fd5b809150509250929050565b6000806040838503121561115c57600080fd5b8235611167816110cf565b946020939093013593505050565b6000806000806080858703121561118b57600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156111bc57600080fd5b833560ff811681146111cd57600080fd5b925060208401356111dd816110cf565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561121857600080fd5b8435611223816110cf565b935060208501359250604085013567ffffffffffffffff8082111561124757600080fd5b818701915087601f83011261125b57600080fd5b81358181111561126a57600080fd5b88602082850101111561127c57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b818110156112c1578581018301518582016060015282016112a5565b818111156112d3576000606083870101525b50601f01601f191692909201606001949350505050565b6000602082840312156112fc57600080fd5b8151611104816110cf565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561134a57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea2646970667358221220c4ae51fe13f074428edcbf1d14f0c2d7324a9384d1962213f12810bd06e136d264736f6c63430008090033",
|
652
|
+
"deployedBytecode": "0x60806040526004361061014e5760003560e01c8063ab5d8943116100b6578063d5719dc21161006f578063d5719dc21461043f578063e1758bd81461045f578063e76f5c8d1461047f578063e77145f41461020a578063eca067ad1461049f578063ee35f327146104b457600080fd5b8063ab5d89431461035a578063ad48cb5e1461036f578063ae60bd13146103a2578063c4d66de8146103df578063cb23bcb5146103ff578063cee3d7281461041f57600080fd5b80637a88b107116101085780637a88b1071461024257806386598a56146102655780638db5993b146102af578063919cc706146102c2578063945e1147146102ff5780639e5d4c491461032c57600080fd5b806284120c1461015a57806316bf55791461017e578063413b35bd1461019e57806347fb24c5146101ea5780634f61f8501461020c5780635fca4a161461022c57600080fd5b3661015557005b600080fd5b34801561016657600080fd5b50600a545b6040519081526020015b60405180910390f35b34801561018a57600080fd5b5061016b6101993660046110b6565b6104d4565b3480156101aa57600080fd5b506101da6101b93660046110e7565b6001600160a01b031660009081526002602052604090206001015460ff1690565b6040519015158152602001610175565b3480156101f657600080fd5b5061020a61020536600461110b565b6104f5565b005b34801561021857600080fd5b5061020a6102273660046110e7565b610800565b34801561023857600080fd5b5061016b600b5481565b34801561024e57600080fd5b5061016b61025d366004611149565b600092915050565b34801561027157600080fd5b5061028f610280366004611175565b50600093849350839250829150565b604080519485526020850193909352918301526060820152608001610175565b61016b6102bd3660046111a7565b610925565b3480156102ce57600080fd5b5061020a6102dd3660046110e7565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b34801561030b57600080fd5b5061031f61031a3660046110b6565b610970565b60405161017591906111ee565b34801561033857600080fd5b5061034c610347366004611202565b61099a565b60405161017592919061128b565b34801561036657600080fd5b5061031f610af2565b34801561037b57600080fd5b5060085461039090600160a01b900460ff1681565b60405160ff9091168152602001610175565b3480156103ae57600080fd5b506101da6103bd3660046110e7565b6001600160a01b03166000908152600160208190526040909120015460ff1690565b3480156103eb57600080fd5b5061020a6103fa3660046110e7565b610b1f565b34801561040b57600080fd5b5060065461031f906001600160a01b031681565b34801561042b57600080fd5b5061020a61043a36600461110b565b610c05565b34801561044b57600080fd5b5061016b61045a3660046110b6565b610f07565b34801561046b57600080fd5b5060085461031f906001600160a01b031681565b34801561048b57600080fd5b5061031f61049a3660046110b6565b610f17565b3480156104ab57600080fd5b5060095461016b565b3480156104c057600080fd5b5060075461031f906001600160a01b031681565b600a81815481106104e457600080fd5b600091825260209091200154905081565b6006546001600160a01b031633146105cd5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561054c57600080fd5b505afa158015610560573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061058491906112ea565b9050336001600160a01b038216146105cb57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b60405180910390fd5b505b6001600160a01b0382166000818152600160208181526040928390209182015492518515158152919360ff90931692917f6675ce8882cb71637de5903a193d218cc0544be9c0650cb83e0955f6aa2bf521910160405180910390a28080156106325750825b80610644575080158015610644575082155b1561064f5750505050565b82156106dd57604080518082018252600380548252600160208084018281526001600160a01b038a166000818152928490529582209451855551938201805460ff1916941515949094179093558154908101825591527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b0180546001600160a01b03191690911790556107f9565b600380546106ed9060019061132a565b815481106106fd576106fd61134f565b6000918252602090912001548254600380546001600160a01b0390931692909190811061072c5761072c61134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816000015460016000600385600001548154811061077a5761077a61134f565b60009182526020808320909101546001600160a01b0316835282019290925260400190205560038054806107b0576107b0611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526001908190526040822091825501805460ff191690555b50505b5050565b6006546001600160a01b031633146108cf5760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b15801561085757600080fd5b505afa15801561086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088f91906112ea565b9050336001600160a01b038216146108cd57600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b600780546001600160a01b0319166001600160a01b0383161790556040517f8c1e6003ed33ca6748d4ad3dd4ecc949065c89dceb31fdf546a5289202763c6a9061091a9083906111ee565b60405180910390a150565b3360009081526001602081905260408220015460ff1661095a573360405163b6c60ea360e01b81526004016105c291906111ee565b610968848443424887610f27565b949350505050565b6004818154811061098057600080fd5b6000918252602090912001546001600160a01b0316905081565b3360009081526002602052604081206001015460609060ff166109d257336040516332ea82ab60e01b81526004016105c291906111ee565b82158015906109e957506001600160a01b0386163b155b15610a09578560405163b5cf5b8f60e01b81526004016105c291906111ee565b600580546001600160a01b0319811633179091556040516001600160a01b03918216918816908790610a3e908890889061137b565b60006040518083038185875af1925050503d8060008114610a7b576040519150601f19603f3d011682016040523d82523d6000602084013e610a80565b606091505b50600580546001600160a01b0319166001600160a01b038581169190911790915560405192955090935088169033907f2d9d115ef3e4a606d698913b1eae831a3cdfe20d9a83d48007b0526749c3d46690610ae0908a908a908a9061138b565b60405180910390a35094509492505050565b6005546000906001600160a01b039081161415610b0f5750600090565b506005546001600160a01b031690565b600054610100900460ff16610b3a5760005460ff1615610b3e565b303b155b610ba15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016105c2565b600054610100900460ff16158015610bc3576000805461ffff19166101011790555b600580546001600160a01b036001600160a01b031991821681179092556006805490911691841691909117905580156107fc576000805461ff00191690555050565b6006546001600160a01b03163314610cd45760065460408051638da5cb5b60e01b815290516000926001600160a01b031691638da5cb5b916004808301926020929190829003018186803b158015610c5c57600080fd5b505afa158015610c70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c9491906112ea565b9050336001600160a01b03821614610cd257600654604051630739600760e01b81526105c29133916001600160a01b03909116908490600401611307565b505b6001600160a01b038216600081815260026020908152604091829020600181015492518515158152909360ff90931692917f49477e7356dbcb654ab85d7534b50126772d938130d1350e23e2540370c8dffa910160405180910390a2808015610d3a5750825b80610d4c575080158015610d4c575082155b15610d575750505050565b8215610de657604080518082018252600480548252600160208084018281526001600160a01b038a16600081815260029093529582209451855551938201805460ff1916941515949094179093558154908101825591527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160a01b03191690911790556107f9565b60048054610df69060019061132a565b81548110610e0657610e0661134f565b6000918252602090912001548254600480546001600160a01b03909316929091908110610e3557610e3561134f565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508160000154600260006004856000015481548110610e8357610e8361134f565b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610eb957610eb9611365565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03861682526002905260408120908155600101805460ff1916905550505050565b600981815481106104e457600080fd5b6003818154811061098057600080fd5b600954604080516001600160f81b031960f88a901b166020808301919091526bffffffffffffffffffffffff1960608a901b1660218301526001600160c01b031960c089811b8216603585015288901b16603d830152604582018490526065820186905260858083018690528351808403909101815260a590920190925280519101206000919060008215610fe1576009610fc360018561132a565b81548110610fd357610fd361134f565b906000526020600020015490505b6040805160208082018490528183018590528251808303840181526060830180855281519190920120600980546001810182556000919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af015533905260ff8c1660808201526001600160a01b038b1660a082015260c0810187905260e0810188905267ffffffffffffffff89166101008201529051829185917f5e3c1311ea442664e8b1611bfabef659120ea7a0a2cfc0667700bebc69cbffe1918190036101200190a3509098975050505050505050565b6000602082840312156110c857600080fd5b5035919050565b6001600160a01b03811681146110e457600080fd5b50565b6000602082840312156110f957600080fd5b8135611104816110cf565b9392505050565b6000806040838503121561111e57600080fd5b8235611129816110cf565b91506020830135801515811461113e57600080fd5b809150509250929050565b6000806040838503121561115c57600080fd5b8235611167816110cf565b946020939093013593505050565b6000806000806080858703121561118b57600080fd5b5050823594602084013594506040840135936060013592509050565b6000806000606084860312156111bc57600080fd5b833560ff811681146111cd57600080fd5b925060208401356111dd816110cf565b929592945050506040919091013590565b6001600160a01b0391909116815260200190565b6000806000806060858703121561121857600080fd5b8435611223816110cf565b935060208501359250604085013567ffffffffffffffff8082111561124757600080fd5b818701915087601f83011261125b57600080fd5b81358181111561126a57600080fd5b88602082850101111561127c57600080fd5b95989497505060200194505050565b821515815260006020604081840152835180604085015260005b818110156112c1578581018301518582016060015282016112a5565b818111156112d3576000606083870101525b50601f01601f191692909201606001949350505050565b6000602082840312156112fc57600080fd5b8151611104816110cf565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60008282101561134a57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b8183823760009101908152919050565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f191601019291505056fea2646970667358221220c4ae51fe13f074428edcbf1d14f0c2d7324a9384d1962213f12810bd06e136d264736f6c63430008090033",
|
653
653
|
"linkReferences": {},
|
654
654
|
"deployedLinkReferences": {}
|
655
655
|
}
|
package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.json
CHANGED
@@ -543,8 +543,8 @@
|
|
543
543
|
"type": "function"
|
544
544
|
}
|
545
545
|
],
|
546
|
-
"bytecode": "
|
547
|
-
"deployedBytecode": "
|
546
|
+
"bytecode": "0x60a06040523060805234801561001457600080fd5b5060805161130b61003060003960006106a2015261130b6000f3fe608060405234801561001057600080fd5b506004361061012b5760003560e01c806395fcea78116100ad578063c4d66de811610071578063c4d66de81461026d578063c75184df14610280578063cb23bcb5146102a0578063d5b5cc23146102b3578063e78cea92146102c657600080fd5b806395fcea78146101695780639f0c04bf14610216578063a04cee6014610229578063ae6dead71461023c578063b0f305371461025c57600080fd5b80635a129efe116100f45780635a129efe146101965780636ae71f12146101c957806372f2a8c7146101d157806380648b02146101d95780638515bc6a146101fe57600080fd5b80627436d31461013057806308635a9514610156578063119852711461016b578063288e5b10146101725780634654779014610185575b600080fd5b61014361013e366004610c79565b6102d9565b6040519081526020015b60405180910390f35b610169610164366004610d9e565b610316565b005b6000610143565b610169610180366004610e92565b610658565b6004546001600160801b0316610143565b6101b96101a4366004610f2d565b60026020526000908152604090205460ff1681565b604051901515815260200161014d565b610169610697565b600654610143565b6007546001600160a01b03165b6040516001600160a01b03909116815260200161014d565b600454600160801b90046001600160801b0316610143565b610143610224366004610f46565b61082c565b610169610237366004610fd4565b610871565b61014361024a366004610f2d565b60036020526000908152604090205481565b6005546001600160801b0316610143565b61016961027b366004610ff6565b6108b0565b610288600281565b6040516001600160801b03909116815260200161014d565b6000546101e6906001600160a01b031681565b6101436102c1366004610f2d565b610989565b6001546101e6906001600160a01b031681565b600061030e8484846040516020016102f391815260200190565b604051602081830303815290604052805190602001206109c5565b949350505050565b6000806103298a8a8a8a8a8a8a8a61082c565b905061036b8d8d808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508f9250859150610a689050565b915060008a6001600160a01b03168a6001600160a01b03167f20af7f3bbfe38132b8900ae295cd9c8d1914be7052d061a511f3f728dab189648e6040516103b491815260200190565b60405180910390a450600060046040518060a00160405290816000820160009054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016000820160109054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016001820160009054906101000a90046001600160801b03166001600160801b03166001600160801b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152505090506040518060a00160405280896001600160801b03168152602001886001600160801b03168152602001876001600160801b031681526020018381526020018b6001600160a01b0316815250600460008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b0316021790555060408201518160010160006101000a8154816001600160801b0302191690836001600160801b031602179055506060820151816002015560808201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506105e3898686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b6b92505050565b805160208201516001600160801b03918216600160801b91831691909102176004556040820151600580546001600160801b03191691909216179055606081015160065560800151600780546001600160a01b0319166001600160a01b03909216919091179055505050505050505050505050565b60405162461bcd60e51b815260206004820152600f60248201526e139bdd081a5b5c1b195b595b9d1959608a1b60448201526064015b60405180910390fd5b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156107255760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b606482015260840161068e565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b0382161461078257604051631194af8760e11b81523360048201526001600160a01b038216602482015260440161068e565b600160009054906101000a90046001600160a01b03166001600160a01b031663cb23bcb56040518163ffffffff1660e01b815260040160206040518083038186803b1580156107d057600080fd5b505afa1580156107e4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610808919061101a565b600080546001600160a01b0319166001600160a01b03929092169190911790555050565b6000888888888888888860405160200161084d989796959493929190611037565b60405160208183030381529060405280519060200120905098975050505050505050565b60008281526003602052604080822083905551829184917fb4df3847300f076a369cd76d2314b470a1194d9e8a6bb97f1860aee88a5f67489190a35050565b6001546001600160a01b0316156108da57604051633bcd329760e21b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561092e57600080fd5b505afa158015610942573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610966919061101a565b600080546001600160a01b0319166001600160a01b039290921691909117905550565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d253541311535155115160921b604482015260009060640161068e565b82516000906101008111156109f857604051637ed6198f60e11b815260048101829052610100602482015260440161068e565b8260005b82811015610a5e576000878281518110610a1857610a18611090565b60200260200101519050816001901b871660001415610a4557826000528060205260406000209250610a55565b8060005282602052604060002092505b506001016109fc565b5095945050505050565b6000610100845110610a9257835160405163ab6a068360e01b815260040161068e91815260200190565b8351610a9f9060026111a2565b8310610ad6578284516002610ab491906111a2565b604051630b8a724b60e01b81526004810192909252602482015260440161068e565b6000610ae38585856102d9565b600081815260036020526040902054909150610b15576040516310e61af960e31b81526004810182905260240161068e565b60008481526002602052604090205460ff1615610b4857604051639715b8d360e01b81526004810185905260240161068e565b50506000828152600260205260409020805460ff19166001179055819392505050565b600154604051639e5d4c4960e01b815260009182916001600160a01b0390911690639e5d4c4990610ba4908890889088906004016111de565b600060405180830381600087803b158015610bbe57600080fd5b505af1158015610bd2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610bfa9190810190611227565b9150915081610c2c57805115610c135780518082602001fd5b604051631bb7daad60e11b815260040160405180910390fd5b5050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610c7157610c71610c33565b604052919050565b600080600060608486031215610c8e57600080fd5b83356001600160401b0380821115610ca557600080fd5b818601915086601f830112610cb957600080fd5b8135602082821115610ccd57610ccd610c33565b8160051b9250610cde818401610c49565b828152928401810192818101908a851115610cf857600080fd5b948201945b84861015610d1657853582529482019490820190610cfd565b9a918901359950506040909701359695505050505050565b6001600160a01b0381168114610d4357600080fd5b50565b8035610d5181610d2e565b919050565b60008083601f840112610d6857600080fd5b5081356001600160401b03811115610d7f57600080fd5b602083019150836020828501011115610d9757600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215610dc057600080fd5b8b356001600160401b0380821115610dd757600080fd5b818e0191508e601f830112610deb57600080fd5b813581811115610dfa57600080fd5b8f60208260051b8501011115610e0f57600080fd5b60208381019e50909c508e01359a50610e2a60408f01610d46565b9950610e3860608f01610d46565b985060808e0135975060a08e0135965060c08e0135955060e08e013594506101008e0135915080821115610e6b57600080fd5b50610e788e828f01610d56565b915080935050809150509295989b509295989b9093969950565b60008060008060008060008060006101008a8c031215610eb157600080fd5b8935985060208a0135610ec381610d2e565b975060408a0135610ed381610d2e565b965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115610f0a57600080fd5b610f168c828d01610d56565b915080935050809150509295985092959850929598565b600060208284031215610f3f57600080fd5b5035919050565b60008060008060008060008060e0898b031215610f6257600080fd5b8835610f6d81610d2e565b97506020890135610f7d81610d2e565b965060408901359550606089013594506080890135935060a0890135925060c08901356001600160401b03811115610fb457600080fd5b610fc08b828c01610d56565b999c989b5096995094979396929594505050565b60008060408385031215610fe757600080fd5b50508035926020909101359150565b60006020828403121561100857600080fd5b813561101381610d2e565b9392505050565b60006020828403121561102c57600080fd5b815161101381610d2e565b60006bffffffffffffffffffffffff19808b60601b168352808a60601b16601484015250876028830152866048830152856068830152846088830152828460a8840137506000910160a801908152979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b808511156110f75781600019048211156110dd576110dd6110a6565b808516156110ea57918102915b93841c93908002906110c1565b509250929050565b60008261110e5750600161119c565b8161111b5750600061119c565b8160018114611131576002811461113b57611157565b600191505061119c565b60ff84111561114c5761114c6110a6565b50506001821b61119c565b5060208310610133831016604e8410600b841016171561117a575081810a61119c565b61118483836110bc565b8060001904821115611198576111986110a6565b0290505b92915050565b600061101383836110ff565b60005b838110156111c95781810151838201526020016111b1565b838111156111d8576000848401525b50505050565b60018060a01b038416815282602082015260606040820152600082518060608401526112118160808501602087016111ae565b601f01601f191691909101608001949350505050565b6000806040838503121561123a57600080fd5b8251801515811461124a57600080fd5b60208401519092506001600160401b038082111561126757600080fd5b818501915085601f83011261127b57600080fd5b81518181111561128d5761128d610c33565b6112a0601f8201601f1916602001610c49565b91508082528660208285010111156112b757600080fd5b6112c88160208401602086016111ae565b508092505050925092905056fea264697066735822122085a1e096a6c93ac33950140d1f6bd826d1e767475bb5f2e9d3dcb9d2799f148f64736f6c63430008090033",
|
547
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061012b5760003560e01c806395fcea78116100ad578063c4d66de811610071578063c4d66de81461026d578063c75184df14610280578063cb23bcb5146102a0578063d5b5cc23146102b3578063e78cea92146102c657600080fd5b806395fcea78146101695780639f0c04bf14610216578063a04cee6014610229578063ae6dead71461023c578063b0f305371461025c57600080fd5b80635a129efe116100f45780635a129efe146101965780636ae71f12146101c957806372f2a8c7146101d157806380648b02146101d95780638515bc6a146101fe57600080fd5b80627436d31461013057806308635a9514610156578063119852711461016b578063288e5b10146101725780634654779014610185575b600080fd5b61014361013e366004610c79565b6102d9565b6040519081526020015b60405180910390f35b610169610164366004610d9e565b610316565b005b6000610143565b610169610180366004610e92565b610658565b6004546001600160801b0316610143565b6101b96101a4366004610f2d565b60026020526000908152604090205460ff1681565b604051901515815260200161014d565b610169610697565b600654610143565b6007546001600160a01b03165b6040516001600160a01b03909116815260200161014d565b600454600160801b90046001600160801b0316610143565b610143610224366004610f46565b61082c565b610169610237366004610fd4565b610871565b61014361024a366004610f2d565b60036020526000908152604090205481565b6005546001600160801b0316610143565b61016961027b366004610ff6565b6108b0565b610288600281565b6040516001600160801b03909116815260200161014d565b6000546101e6906001600160a01b031681565b6101436102c1366004610f2d565b610989565b6001546101e6906001600160a01b031681565b600061030e8484846040516020016102f391815260200190565b604051602081830303815290604052805190602001206109c5565b949350505050565b6000806103298a8a8a8a8a8a8a8a61082c565b905061036b8d8d808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508f9250859150610a689050565b915060008a6001600160a01b03168a6001600160a01b03167f20af7f3bbfe38132b8900ae295cd9c8d1914be7052d061a511f3f728dab189648e6040516103b491815260200190565b60405180910390a450600060046040518060a00160405290816000820160009054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016000820160109054906101000a90046001600160801b03166001600160801b03166001600160801b031681526020016001820160009054906101000a90046001600160801b03166001600160801b03166001600160801b03168152602001600282015481526020016003820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152505090506040518060a00160405280896001600160801b03168152602001886001600160801b03168152602001876001600160801b031681526020018381526020018b6001600160a01b0316815250600460008201518160000160006101000a8154816001600160801b0302191690836001600160801b0316021790555060208201518160000160106101000a8154816001600160801b0302191690836001600160801b0316021790555060408201518160010160006101000a8154816001600160801b0302191690836001600160801b031602179055506060820151816002015560808201518160030160006101000a8154816001600160a01b0302191690836001600160a01b031602179055509050506105e3898686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610b6b92505050565b805160208201516001600160801b03918216600160801b91831691909102176004556040820151600580546001600160801b03191691909216179055606081015160065560800151600780546001600160a01b0319166001600160a01b03909216919091179055505050505050505050505050565b60405162461bcd60e51b815260206004820152600f60248201526e139bdd081a5b5c1b195b595b9d1959608a1b60448201526064015b60405180910390fd5b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156107255760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b606482015260840161068e565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b0382161461078257604051631194af8760e11b81523360048201526001600160a01b038216602482015260440161068e565b600160009054906101000a90046001600160a01b03166001600160a01b031663cb23bcb56040518163ffffffff1660e01b815260040160206040518083038186803b1580156107d057600080fd5b505afa1580156107e4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610808919061101a565b600080546001600160a01b0319166001600160a01b03929092169190911790555050565b6000888888888888888860405160200161084d989796959493929190611037565b60405160208183030381529060405280519060200120905098975050505050505050565b60008281526003602052604080822083905551829184917fb4df3847300f076a369cd76d2314b470a1194d9e8a6bb97f1860aee88a5f67489190a35050565b6001546001600160a01b0316156108da57604051633bcd329760e21b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040805163cb23bcb560e01b8152905163cb23bcb591600480820192602092909190829003018186803b15801561092e57600080fd5b505afa158015610942573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610966919061101a565b600080546001600160a01b0319166001600160a01b039290921691909117905550565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d253541311535155115160921b604482015260009060640161068e565b82516000906101008111156109f857604051637ed6198f60e11b815260048101829052610100602482015260440161068e565b8260005b82811015610a5e576000878281518110610a1857610a18611090565b60200260200101519050816001901b871660001415610a4557826000528060205260406000209250610a55565b8060005282602052604060002092505b506001016109fc565b5095945050505050565b6000610100845110610a9257835160405163ab6a068360e01b815260040161068e91815260200190565b8351610a9f9060026111a2565b8310610ad6578284516002610ab491906111a2565b604051630b8a724b60e01b81526004810192909252602482015260440161068e565b6000610ae38585856102d9565b600081815260036020526040902054909150610b15576040516310e61af960e31b81526004810182905260240161068e565b60008481526002602052604090205460ff1615610b4857604051639715b8d360e01b81526004810185905260240161068e565b50506000828152600260205260409020805460ff19166001179055819392505050565b600154604051639e5d4c4960e01b815260009182916001600160a01b0390911690639e5d4c4990610ba4908890889088906004016111de565b600060405180830381600087803b158015610bbe57600080fd5b505af1158015610bd2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610bfa9190810190611227565b9150915081610c2c57805115610c135780518082602001fd5b604051631bb7daad60e11b815260040160405180910390fd5b5050505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715610c7157610c71610c33565b604052919050565b600080600060608486031215610c8e57600080fd5b83356001600160401b0380821115610ca557600080fd5b818601915086601f830112610cb957600080fd5b8135602082821115610ccd57610ccd610c33565b8160051b9250610cde818401610c49565b828152928401810192818101908a851115610cf857600080fd5b948201945b84861015610d1657853582529482019490820190610cfd565b9a918901359950506040909701359695505050505050565b6001600160a01b0381168114610d4357600080fd5b50565b8035610d5181610d2e565b919050565b60008083601f840112610d6857600080fd5b5081356001600160401b03811115610d7f57600080fd5b602083019150836020828501011115610d9757600080fd5b9250929050565b60008060008060008060008060008060006101208c8e031215610dc057600080fd5b8b356001600160401b0380821115610dd757600080fd5b818e0191508e601f830112610deb57600080fd5b813581811115610dfa57600080fd5b8f60208260051b8501011115610e0f57600080fd5b60208381019e50909c508e01359a50610e2a60408f01610d46565b9950610e3860608f01610d46565b985060808e0135975060a08e0135965060c08e0135955060e08e013594506101008e0135915080821115610e6b57600080fd5b50610e788e828f01610d56565b915080935050809150509295989b509295989b9093969950565b60008060008060008060008060006101008a8c031215610eb157600080fd5b8935985060208a0135610ec381610d2e565b975060408a0135610ed381610d2e565b965060608a0135955060808a0135945060a08a0135935060c08a0135925060e08a01356001600160401b03811115610f0a57600080fd5b610f168c828d01610d56565b915080935050809150509295985092959850929598565b600060208284031215610f3f57600080fd5b5035919050565b60008060008060008060008060e0898b031215610f6257600080fd5b8835610f6d81610d2e565b97506020890135610f7d81610d2e565b965060408901359550606089013594506080890135935060a0890135925060c08901356001600160401b03811115610fb457600080fd5b610fc08b828c01610d56565b999c989b5096995094979396929594505050565b60008060408385031215610fe757600080fd5b50508035926020909101359150565b60006020828403121561100857600080fd5b813561101381610d2e565b9392505050565b60006020828403121561102c57600080fd5b815161101381610d2e565b60006bffffffffffffffffffffffff19808b60601b168352808a60601b16601484015250876028830152866048830152856068830152846088830152828460a8840137506000910160a801908152979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600181815b808511156110f75781600019048211156110dd576110dd6110a6565b808516156110ea57918102915b93841c93908002906110c1565b509250929050565b60008261110e5750600161119c565b8161111b5750600061119c565b8160018114611131576002811461113b57611157565b600191505061119c565b60ff84111561114c5761114c6110a6565b50506001821b61119c565b5060208310610133831016604e8410600b841016171561117a575081810a61119c565b61118483836110bc565b8060001904821115611198576111986110a6565b0290505b92915050565b600061101383836110ff565b60005b838110156111c95781810151838201526020016111b1565b838111156111d8576000848401525b50505050565b60018060a01b038416815282602082015260606040820152600082518060608401526112118160808501602087016111ae565b601f01601f191691909101608001949350505050565b6000806040838503121561123a57600080fd5b8251801515811461124a57600080fd5b60208401519092506001600160401b038082111561126757600080fd5b818501915085601f83011261127b57600080fd5b81518181111561128d5761128d610c33565b6112a0601f8201601f1916602001610c49565b91508082528660208285010111156112b757600080fd5b6112c88160208401602086016111ae565b508092505050925092905056fea264697066735822122085a1e096a6c93ac33950140d1f6bd826d1e767475bb5f2e9d3dcb9d2799f148f64736f6c63430008090033",
|
548
548
|
"linkReferences": {},
|
549
549
|
"deployedLinkReferences": {}
|
550
550
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@arbitrum/nitro-contracts",
|
3
|
-
"version": "2.
|
3
|
+
"version": "2.1.0",
|
4
4
|
"description": "Layer 2 precompiles and rollup for Arbitrum Nitro",
|
5
5
|
"author": "Offchain Labs, Inc.",
|
6
6
|
"license": "BUSL-1.1",
|
@@ -26,7 +26,7 @@
|
|
26
26
|
"build:forge:sol": "forge build --skip *.yul",
|
27
27
|
"build:forge:yul": "FOUNDRY_PROFILE=yul forge build --skip *.sol",
|
28
28
|
"build:forge": "yarn build:forge:sol && yarn build:forge:yul",
|
29
|
-
"contract:size": "
|
29
|
+
"contract:size": "hardhat size-contracts",
|
30
30
|
"lint:test": "eslint ./test",
|
31
31
|
"solhint": "solhint -f table src/**/*.sol",
|
32
32
|
"prettier:solidity": "prettier --write src/**/*.sol",
|
package/src/libraries/Error.sol
CHANGED
@@ -77,15 +77,6 @@ error CallNotAllowed();
|
|
77
77
|
|
78
78
|
// Inbox Errors
|
79
79
|
|
80
|
-
/// @dev The contract is paused, so cannot be paused
|
81
|
-
error AlreadyPaused();
|
82
|
-
|
83
|
-
/// @dev The contract is unpaused, so cannot be unpaused
|
84
|
-
error AlreadyUnpaused();
|
85
|
-
|
86
|
-
/// @dev The contract is paused
|
87
|
-
error Paused();
|
88
|
-
|
89
80
|
/// @dev msg.value sent to the inbox isn't high enough
|
90
81
|
error InsufficientValue(uint256 expected, uint256 actual);
|
91
82
|
|
@@ -24,7 +24,11 @@ interface IRollupUserAbs is IRollupCore, IOwnable {
|
|
24
24
|
|
25
25
|
function confirmNextNode(bytes32 blockHash, bytes32 sendRoot) external;
|
26
26
|
|
27
|
-
function fastConfirmNextNode(
|
27
|
+
function fastConfirmNextNode(
|
28
|
+
bytes32 blockHash,
|
29
|
+
bytes32 sendRoot,
|
30
|
+
bytes32 nodeHash
|
31
|
+
) external;
|
28
32
|
|
29
33
|
function stakeOnExistingNode(uint64 nodeNum, bytes32 nodeHash) external;
|
30
34
|
|
@@ -120,7 +120,7 @@ abstract contract AbsRollupUserLogic is
|
|
120
120
|
bytes32 blockHash,
|
121
121
|
bytes32 sendRoot,
|
122
122
|
bool isFastConfirm
|
123
|
-
) internal {
|
123
|
+
) internal whenNotPaused {
|
124
124
|
requireUnresolvedExists();
|
125
125
|
|
126
126
|
uint64 nodeNum = firstUnresolvedNode();
|
@@ -159,11 +159,7 @@ abstract contract AbsRollupUserLogic is
|
|
159
159
|
* @param blockHash The block hash at the end of the assertion
|
160
160
|
* @param sendRoot The send root at the end of the assertion
|
161
161
|
*/
|
162
|
-
function confirmNextNode(bytes32 blockHash, bytes32 sendRoot)
|
163
|
-
external
|
164
|
-
onlyValidator
|
165
|
-
whenNotPaused
|
166
|
-
{
|
162
|
+
function confirmNextNode(bytes32 blockHash, bytes32 sendRoot) external onlyValidator {
|
167
163
|
_confirmNextNode(blockHash, sendRoot, false);
|
168
164
|
}
|
169
165
|
|
@@ -171,9 +167,15 @@ abstract contract AbsRollupUserLogic is
|
|
171
167
|
* @notice This allow anyTrustFastConfirmer to confirm next node regardless of deadline
|
172
168
|
* the anyTrustFastConfirmer is supposed to be set only on an AnyTrust chain to
|
173
169
|
* a contract that can call this function when received sufficient signatures
|
170
|
+
* node hash must be match the node to be confirmed to protect against reorgs
|
174
171
|
*/
|
175
|
-
function fastConfirmNextNode(
|
176
|
-
|
172
|
+
function fastConfirmNextNode(
|
173
|
+
bytes32 blockHash,
|
174
|
+
bytes32 sendRoot,
|
175
|
+
bytes32 nodeHash
|
176
|
+
) external {
|
177
|
+
require(msg.sender == anyTrustFastConfirmer, "NFC");
|
178
|
+
require(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash, "WH");
|
177
179
|
_confirmNextNode(blockHash, sendRoot, true);
|
178
180
|
}
|
179
181
|
|