@arbitrum/nitro-contracts 1.1.0-alpha.7 → 1.1.0-beta.1
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 +4 -0
- package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.json +10 -0
- 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-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.json +215 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.json +183 -0
- 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 +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.json +10 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.json +10 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.json +30 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.json +30 -0
- 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/AbsInbox.sol/AbsInbox.json +26 -0
- 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 +7 -2
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.json +39 -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 +4 -0
- package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.json +539 -0
- 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/IERC20Inbox.sol/IERC20Inbox.json +26 -0
- 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/IInbox.sol/IInbox.json +26 -0
- package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.json +26 -0
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.json +13 -0
- 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/ISequencerInbox.sol/ISequencerInbox.json +13 -0
- package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Inbox.sol/Inbox.json +39 -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 +26 -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/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
- package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/src/libraries/IGasRefunder.sol/GasRefundEnabled.dbg.json +1 -1
- package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.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/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 +33 -2
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +1 -1
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +2 -2
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.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 +20 -2
- package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +1 -1
- package/build/contracts/src/mocks/Simple.sol/Simple.json +2 -2
- 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 +4 -0
- package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.json +350 -0
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.json +43 -0
- 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/IOneStepProofEntry.sol/OneStepProofEntryLib.json +2 -2
- 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/OneStepProofEntry.sol/OneStepProofEntry.json +2 -2
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +2 -2
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +2 -2
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +2 -2
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +2 -2
- 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/ArbOwner.sol/ArbOwner.json +13 -0
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.json +39 -0
- 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/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 +214 -83
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +4 -0
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +214 -0
- 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/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/IRollupUserAbs.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +1 -1
- 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 +148 -98
- 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/RollupLib.sol/RollupLib.json +2 -2
- 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/ERC20RollupUserLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +2 -2
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +2 -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/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 +4 -0
- package/build/contracts/src/test-helpers/TestToken.sol/TestToken.json +292 -0
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
- package/package.json +9 -8
- package/src/bridge/AbsBridge.sol +1 -1
- package/src/bridge/AbsInbox.sol +27 -6
- package/src/bridge/AbsOutbox.sol +7 -0
- package/src/bridge/ERC20Bridge.sol +22 -5
- package/src/bridge/ERC20Inbox.sol +4 -1
- package/src/bridge/ERC20Outbox.sol +3 -0
- package/src/bridge/GasRefunder.sol +255 -0
- package/src/bridge/IERC20Bridge.sol +5 -3
- package/src/bridge/IInboxBase.sol +5 -0
- package/src/bridge/IOutbox.sol +2 -0
- package/src/bridge/ISequencerInbox.sol +2 -0
- package/src/bridge/Inbox.sol +2 -1
- package/src/bridge/Outbox.sol +4 -0
- package/src/bridge/SequencerInbox.sol +8 -4
- package/src/libraries/Constants.sol +0 -3
- package/src/libraries/Error.sol +3 -0
- package/src/mocks/InboxStub.sol +9 -0
- package/src/mocks/SequencerInboxStub.sol +3 -2
- package/src/mocks/Simple.sol +2 -1
- package/src/mocks/UpgradeExecutorMock.sol +82 -0
- package/src/node-interface/NodeInterface.sol +16 -0
- package/src/precompiles/ArbOwner.sol +6 -0
- package/src/precompiles/ArbOwnerPublic.sol +12 -0
- package/src/rollup/BridgeCreator.sol +90 -28
- package/src/rollup/DeployHelper.sol +149 -0
- package/src/rollup/RollupCreator.sol +149 -71
- package/src/test-helpers/TestToken.sol +16 -0
- package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.dbg.json +0 -4
- package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.json +0 -312
- package/build/contracts/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol/ERC20PresetFixedSupply.dbg.json +0 -4
- package/build/contracts/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol/ERC20PresetFixedSupply.json +0 -338
- package/build/contracts/src/rollup/AbsBridgeCreator.sol/AbsBridgeCreator.dbg.json +0 -4
- package/build/contracts/src/rollup/AbsBridgeCreator.sol/AbsBridgeCreator.json +0 -167
- package/build/contracts/src/rollup/ERC20BridgeCreator.sol/ERC20BridgeCreator.dbg.json +0 -4
- package/build/contracts/src/rollup/ERC20BridgeCreator.sol/ERC20BridgeCreator.json +0 -248
- package/build/contracts/src/rollup/IBridgeCreator.sol/IBridgeCreator.dbg.json +0 -4
- package/build/contracts/src/rollup/IBridgeCreator.sol/IBridgeCreator.json +0 -109
- package/build/contracts/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.dbg.json +0 -4
- package/build/contracts/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.json +0 -185
- package/build/contracts/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.dbg.json +0 -4
- package/build/contracts/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.json +0 -180
- package/build/types/@openzeppelin/contracts/access/Ownable.ts +0 -175
- package/build/types/@openzeppelin/contracts/access/index.ts +0 -4
- package/build/types/@openzeppelin/contracts/index.ts +0 -11
- package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +0 -87
- package/build/types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +0 -4
- package/build/types/@openzeppelin/contracts/interfaces/index.ts +0 -5
- package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +0 -108
- package/build/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.ts +0 -108
- package/build/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +0 -5
- package/build/types/@openzeppelin/contracts/proxy/Proxy.ts +0 -55
- package/build/types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +0 -87
- package/build/types/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.ts +0 -239
- package/build/types/@openzeppelin/contracts/proxy/beacon/index.ts +0 -5
- package/build/types/@openzeppelin/contracts/proxy/index.ts +0 -12
- package/build/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.ts +0 -359
- package/build/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.ts +0 -278
- package/build/types/@openzeppelin/contracts/proxy/transparent/index.ts +0 -5
- package/build/types/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.ts +0 -216
- package/build/types/@openzeppelin/contracts/proxy/utils/index.ts +0 -4
- package/build/types/@openzeppelin/contracts/token/ERC20/ERC20.ts +0 -444
- package/build/types/@openzeppelin/contracts/token/ERC20/IERC20.ts +0 -322
- package/build/types/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.ts +0 -507
- package/build/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +0 -364
- package/build/types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -5
- package/build/types/@openzeppelin/contracts/token/ERC20/index.ts +0 -9
- package/build/types/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply.ts +0 -507
- package/build/types/@openzeppelin/contracts/token/ERC20/presets/index.ts +0 -4
- package/build/types/@openzeppelin/contracts/token/index.ts +0 -5
- package/build/types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +0 -175
- package/build/types/@openzeppelin/contracts-upgradeable/access/index.ts +0 -4
- package/build/types/@openzeppelin/contracts-upgradeable/index.ts +0 -9
- package/build/types/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.ts +0 -111
- package/build/types/@openzeppelin/contracts-upgradeable/security/index.ts +0 -4
- package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.ts +0 -322
- package/build/types/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +0 -4
- package/build/types/@openzeppelin/contracts-upgradeable/token/index.ts +0 -5
- package/build/types/@openzeppelin/index.ts +0 -7
- package/build/types/common.ts +0 -44
- package/build/types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +0 -78
- package/build/types/factories/@openzeppelin/contracts/access/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts/index.ts +0 -7
- package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +0 -39
- package/build/types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts/interfaces/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +0 -146
- package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade__factory.ts +0 -71
- package/build/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +0 -5
- package/build/types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +0 -31
- package/build/types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +0 -39
- package/build/types/factories/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon__factory.ts +0 -169
- package/build/types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +0 -5
- package/build/types/factories/@openzeppelin/contracts/proxy/index.ts +0 -8
- package/build/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.ts +0 -211
- package/build/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy__factory.ts +0 -228
- package/build/types/factories/@openzeppelin/contracts/proxy/transparent/index.ts +0 -5
- package/build/types/factories/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable__factory.ts +0 -115
- package/build/types/factories/@openzeppelin/contracts/proxy/utils/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +0 -349
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +0 -206
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable__factory.ts +0 -327
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +0 -248
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -5
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/index.ts +0 -7
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/ERC20PresetFixedSupply__factory.ts +0 -420
- package/build/types/factories/@openzeppelin/contracts/token/ERC20/presets/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts/token/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +0 -78
- package/build/types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts-upgradeable/index.ts +0 -6
- package/build/types/factories/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable__factory.ts +0 -65
- package/build/types/factories/@openzeppelin/contracts-upgradeable/security/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.ts +0 -209
- package/build/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.ts +0 -4
- package/build/types/factories/@openzeppelin/contracts-upgradeable/token/index.ts +0 -4
- package/build/types/factories/@openzeppelin/index.ts +0 -5
- package/build/types/factories/index.ts +0 -5
- package/build/types/factories/src/bridge/AbsBridge__factory.ts +0 -612
- package/build/types/factories/src/bridge/AbsInbox__factory.ts +0 -455
- package/build/types/factories/src/bridge/AbsOutbox__factory.ts +0 -561
- package/build/types/factories/src/bridge/Bridge__factory.ts +0 -695
- package/build/types/factories/src/bridge/ERC20Bridge__factory.ts +0 -746
- package/build/types/factories/src/bridge/ERC20Inbox__factory.ts +0 -719
- package/build/types/factories/src/bridge/ERC20Outbox__factory.ts +0 -610
- package/build/types/factories/src/bridge/IBridge__factory.ts +0 -508
- package/build/types/factories/src/bridge/IDelayedMessageProvider__factory.ts +0 -62
- package/build/types/factories/src/bridge/IERC20Bridge__factory.ts +0 -576
- package/build/types/factories/src/bridge/IERC20Inbox__factory.ts +0 -461
- package/build/types/factories/src/bridge/IEthBridge__factory.ts +0 -553
- package/build/types/factories/src/bridge/IInboxBase__factory.ts +0 -324
- package/build/types/factories/src/bridge/IInbox__factory.ts +0 -647
- package/build/types/factories/src/bridge/IOutbox__factory.ts +0 -431
- package/build/types/factories/src/bridge/IOwnable__factory.ts +0 -36
- package/build/types/factories/src/bridge/ISequencerInbox__factory.ts +0 -666
- package/build/types/factories/src/bridge/Inbox__factory.ts +0 -999
- package/build/types/factories/src/bridge/Outbox__factory.ts +0 -591
- package/build/types/factories/src/bridge/SequencerInbox__factory.ts +0 -865
- package/build/types/factories/src/bridge/index.ts +0 -23
- package/build/types/factories/src/challenge/ChallengeManager__factory.ts +0 -720
- package/build/types/factories/src/challenge/IChallengeManager__factory.ts +0 -401
- package/build/types/factories/src/challenge/IChallengeResultReceiver__factory.ts +0 -53
- package/build/types/factories/src/challenge/index.ts +0 -6
- package/build/types/factories/src/index.ts +0 -12
- package/build/types/factories/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy__factory.ts +0 -128
- package/build/types/factories/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade__factory.ts +0 -88
- package/build/types/factories/src/libraries/AdminFallbackProxy.sol/index.ts +0 -5
- package/build/types/factories/src/libraries/DoubleLogicUUPSUpgradeable__factory.ts +0 -163
- package/build/types/factories/src/libraries/IGasRefunder__factory.ts +0 -55
- package/build/types/factories/src/libraries/UUPSNotUpgradeable__factory.ts +0 -97
- package/build/types/factories/src/libraries/index.ts +0 -7
- package/build/types/factories/src/mocks/BridgeStub__factory.ts +0 -612
- package/build/types/factories/src/mocks/BridgeUnproxied__factory.ts +0 -706
- package/build/types/factories/src/mocks/InboxStub__factory.ts +0 -702
- package/build/types/factories/src/mocks/MockResultReceiver__factory.ts +0 -244
- package/build/types/factories/src/mocks/ProxyAdminForBinding__factory.ts +0 -215
- package/build/types/factories/src/mocks/SequencerInboxStub__factory.ts +0 -938
- package/build/types/factories/src/mocks/SimpleProxy__factory.ts +0 -83
- package/build/types/factories/src/mocks/Simple__factory.ts +0 -287
- package/build/types/factories/src/mocks/SingleExecutionChallenge__factory.ts +0 -823
- package/build/types/factories/src/mocks/TimedOutChallengeManager__factory.ts +0 -724
- package/build/types/factories/src/mocks/index.ts +0 -13
- package/build/types/factories/src/node-interface/NodeInterfaceDebug__factory.ts +0 -82
- package/build/types/factories/src/node-interface/NodeInterface__factory.ts +0 -301
- package/build/types/factories/src/node-interface/index.ts +0 -5
- package/build/types/factories/src/osp/HashProofHelper__factory.ts +0 -216
- package/build/types/factories/src/osp/IOneStepProofEntry__factory.ts +0 -72
- package/build/types/factories/src/osp/IOneStepProver__factory.ts +0 -492
- package/build/types/factories/src/osp/OneStepProofEntry__factory.ts +0 -206
- package/build/types/factories/src/osp/OneStepProver0__factory.ts +0 -528
- package/build/types/factories/src/osp/OneStepProverHostIo__factory.ts +0 -528
- package/build/types/factories/src/osp/OneStepProverMath__factory.ts +0 -528
- package/build/types/factories/src/osp/OneStepProverMemory__factory.ts +0 -528
- package/build/types/factories/src/osp/index.ts +0 -11
- package/build/types/factories/src/precompiles/ArbAddressTable__factory.ts +0 -163
- package/build/types/factories/src/precompiles/ArbAggregator__factory.ts +0 -163
- package/build/types/factories/src/precompiles/ArbDebug__factory.ts +0 -208
- package/build/types/factories/src/precompiles/ArbFunctionTable__factory.ts +0 -92
- package/build/types/factories/src/precompiles/ArbGasInfo__factory.ts +0 -365
- package/build/types/factories/src/precompiles/ArbInfo__factory.ts +0 -64
- package/build/types/factories/src/precompiles/ArbOwnerPublic__factory.ts +0 -84
- package/build/types/factories/src/precompiles/ArbOwner__factory.ts +0 -393
- package/build/types/factories/src/precompiles/ArbRetryableTx__factory.ts +0 -321
- package/build/types/factories/src/precompiles/ArbStatistics__factory.ts +0 -64
- package/build/types/factories/src/precompiles/ArbSys__factory.ts +0 -389
- package/build/types/factories/src/precompiles/ArbosActs__factory.ts +0 -92
- package/build/types/factories/src/precompiles/ArbosTest__factory.ts +0 -39
- package/build/types/factories/src/precompiles/index.ts +0 -16
- package/build/types/factories/src/rollup/AbsBridgeCreator__factory.ts +0 -182
- package/build/types/factories/src/rollup/AbsRollupEventInbox__factory.ts +0 -125
- package/build/types/factories/src/rollup/BridgeCreator__factory.ts +0 -294
- package/build/types/factories/src/rollup/ERC20BridgeCreator__factory.ts +0 -299
- package/build/types/factories/src/rollup/ERC20RollupEventInbox__factory.ts +0 -170
- package/build/types/factories/src/rollup/IBridgeCreator.sol/IBridgeCreator__factory.ts +0 -124
- package/build/types/factories/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator__factory.ts +0 -200
- package/build/types/factories/src/rollup/IBridgeCreator.sol/IEthBridgeCreator__factory.ts +0 -195
- package/build/types/factories/src/rollup/IBridgeCreator.sol/index.ts +0 -6
- package/build/types/factories/src/rollup/IRollupAdmin__factory.ts +0 -559
- package/build/types/factories/src/rollup/IRollupCore__factory.ts +0 -904
- package/build/types/factories/src/rollup/IRollupEventInbox__factory.ts +0 -83
- package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserAbs__factory.ts +0 -1324
- package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUserERC20__factory.ts +0 -1458
- package/build/types/factories/src/rollup/IRollupLogic.sol/IRollupUser__factory.ts +0 -1443
- package/build/types/factories/src/rollup/IRollupLogic.sol/index.ts +0 -6
- package/build/types/factories/src/rollup/RollupAdminLogic__factory.ts +0 -1859
- package/build/types/factories/src/rollup/RollupCore__factory.ts +0 -1066
- package/build/types/factories/src/rollup/RollupCreator__factory.ts +0 -463
- package/build/types/factories/src/rollup/RollupEventInbox__factory.ts +0 -166
- package/build/types/factories/src/rollup/RollupProxy__factory.ts +0 -277
- package/build/types/factories/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic__factory.ts +0 -1593
- package/build/types/factories/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic__factory.ts +0 -1767
- package/build/types/factories/src/rollup/RollupUserLogic.sol/RollupUserLogic__factory.ts +0 -1748
- package/build/types/factories/src/rollup/RollupUserLogic.sol/index.ts +0 -6
- package/build/types/factories/src/rollup/ValidatorUtils__factory.ts +0 -430
- package/build/types/factories/src/rollup/ValidatorWalletCreator__factory.ts +0 -205
- package/build/types/factories/src/rollup/ValidatorWallet__factory.ts +0 -486
- package/build/types/factories/src/rollup/index.ts +0 -22
- package/build/types/factories/src/test-helpers/BridgeTester__factory.ts +0 -654
- package/build/types/factories/src/test-helpers/CryptographyPrimitivesTester__factory.ts +0 -111
- package/build/types/factories/src/test-helpers/EthVault__factory.ts +0 -95
- package/build/types/factories/src/test-helpers/MessageTester__factory.ts +0 -135
- package/build/types/factories/src/test-helpers/OutboxWithoutOptTester__factory.ts +0 -575
- package/build/types/factories/src/test-helpers/RollupMock__factory.ts +0 -100
- package/build/types/factories/src/test-helpers/ValueArrayTester__factory.ts +0 -69
- package/build/types/factories/src/test-helpers/index.ts +0 -10
- package/build/types/index.ts +0 -230
- package/build/types/src/bridge/AbsBridge.ts +0 -863
- package/build/types/src/bridge/AbsInbox.ts +0 -664
- package/build/types/src/bridge/AbsOutbox.ts +0 -700
- package/build/types/src/bridge/Bridge.ts +0 -934
- package/build/types/src/bridge/ERC20Bridge.ts +0 -970
- package/build/types/src/bridge/ERC20Inbox.ts +0 -869
- package/build/types/src/bridge/ERC20Outbox.ts +0 -722
- package/build/types/src/bridge/IBridge.ts +0 -799
- package/build/types/src/bridge/IDelayedMessageProvider.ts +0 -108
- package/build/types/src/bridge/IERC20Bridge.ts +0 -906
- package/build/types/src/bridge/IERC20Inbox.ts +0 -788
- package/build/types/src/bridge/IEthBridge.ts +0 -871
- package/build/types/src/bridge/IInbox.ts +0 -1081
- package/build/types/src/bridge/IInboxBase.ts +0 -583
- package/build/types/src/bridge/IOutbox.ts +0 -654
- package/build/types/src/bridge/IOwnable.ts +0 -81
- package/build/types/src/bridge/ISequencerInbox.ts +0 -1038
- package/build/types/src/bridge/Inbox.ts +0 -1279
- package/build/types/src/bridge/Outbox.ts +0 -700
- package/build/types/src/bridge/SequencerInbox.ts +0 -1138
- package/build/types/src/bridge/index.ts +0 -23
- package/build/types/src/challenge/ChallengeManager.ts +0 -889
- package/build/types/src/challenge/IChallengeManager.ts +0 -543
- package/build/types/src/challenge/IChallengeResultReceiver.ts +0 -115
- package/build/types/src/challenge/index.ts +0 -6
- package/build/types/src/index.ts +0 -21
- package/build/types/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.ts +0 -128
- package/build/types/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.ts +0 -128
- package/build/types/src/libraries/AdminFallbackProxy.sol/index.ts +0 -5
- package/build/types/src/libraries/DoubleLogicUUPSUpgradeable.ts +0 -314
- package/build/types/src/libraries/IGasRefunder.ts +0 -112
- package/build/types/src/libraries/UUPSNotUpgradeable.ts +0 -164
- package/build/types/src/libraries/index.ts +0 -8
- package/build/types/src/mocks/BridgeStub.ts +0 -887
- package/build/types/src/mocks/BridgeUnproxied.ts +0 -934
- package/build/types/src/mocks/InboxStub.ts +0 -1076
- package/build/types/src/mocks/MockResultReceiver.ts +0 -301
- package/build/types/src/mocks/ProxyAdminForBinding.ts +0 -359
- package/build/types/src/mocks/SequencerInboxStub.ts +0 -1173
- package/build/types/src/mocks/Simple.ts +0 -514
- package/build/types/src/mocks/SimpleProxy.ts +0 -55
- package/build/types/src/mocks/SingleExecutionChallenge.ts +0 -889
- package/build/types/src/mocks/TimedOutChallengeManager.ts +0 -883
- package/build/types/src/mocks/index.ts +0 -13
- package/build/types/src/node-interface/NodeInterface.ts +0 -502
- package/build/types/src/node-interface/NodeInterfaceDebug.ts +0 -137
- package/build/types/src/node-interface/index.ts +0 -5
- package/build/types/src/osp/HashProofHelper.ts +0 -308
- package/build/types/src/osp/IOneStepProofEntry.ts +0 -128
- package/build/types/src/osp/IOneStepProver.ts +0 -284
- package/build/types/src/osp/OneStepProofEntry.ts +0 -196
- package/build/types/src/osp/OneStepProver0.ts +0 -284
- package/build/types/src/osp/OneStepProverHostIo.ts +0 -284
- package/build/types/src/osp/OneStepProverMath.ts +0 -284
- package/build/types/src/osp/OneStepProverMemory.ts +0 -284
- package/build/types/src/osp/index.ts +0 -11
- package/build/types/src/precompiles/ArbAddressTable.ts +0 -248
- package/build/types/src/precompiles/ArbAggregator.ts +0 -335
- package/build/types/src/precompiles/ArbDebug.ts +0 -292
- package/build/types/src/precompiles/ArbFunctionTable.ts +0 -150
- package/build/types/src/precompiles/ArbGasInfo.ts +0 -536
- package/build/types/src/precompiles/ArbInfo.ts +0 -105
- package/build/types/src/precompiles/ArbOwner.ts +0 -928
- package/build/types/src/precompiles/ArbOwnerPublic.ts +0 -157
- package/build/types/src/precompiles/ArbRetryableTx.ts +0 -467
- package/build/types/src/precompiles/ArbStatistics.ts +0 -93
- package/build/types/src/precompiles/ArbSys.ts +0 -553
- package/build/types/src/precompiles/ArbosActs.ts +0 -173
- package/build/types/src/precompiles/ArbosTest.ts +0 -97
- package/build/types/src/precompiles/index.ts +0 -16
- package/build/types/src/rollup/AbsBridgeCreator.ts +0 -348
- package/build/types/src/rollup/AbsRollupEventInbox.ts +0 -218
- package/build/types/src/rollup/BridgeCreator.ts +0 -415
- package/build/types/src/rollup/ERC20BridgeCreator.ts +0 -420
- package/build/types/src/rollup/ERC20RollupEventInbox.ts +0 -218
- package/build/types/src/rollup/IBridgeCreator.sol/IBridgeCreator.ts +0 -231
- package/build/types/src/rollup/IBridgeCreator.sol/IERC20BridgeCreator.ts +0 -303
- package/build/types/src/rollup/IBridgeCreator.sol/IEthBridgeCreator.ts +0 -298
- package/build/types/src/rollup/IBridgeCreator.sol/index.ts +0 -6
- package/build/types/src/rollup/IRollupAdmin.ts +0 -1003
- package/build/types/src/rollup/IRollupCore.ts +0 -1183
- package/build/types/src/rollup/IRollupEventInbox.ts +0 -167
- package/build/types/src/rollup/IRollupLogic.sol/IRollupUser.ts +0 -2022
- package/build/types/src/rollup/IRollupLogic.sol/IRollupUserAbs.ts +0 -1901
- package/build/types/src/rollup/IRollupLogic.sol/IRollupUserERC20.ts +0 -2036
- package/build/types/src/rollup/IRollupLogic.sol/index.ts +0 -6
- package/build/types/src/rollup/RollupAdminLogic.ts +0 -2593
- package/build/types/src/rollup/RollupCore.ts +0 -1406
- package/build/types/src/rollup/RollupCreator.ts +0 -592
- package/build/types/src/rollup/RollupEventInbox.ts +0 -218
- package/build/types/src/rollup/RollupProxy.ts +0 -285
- package/build/types/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.ts +0 -2282
- package/build/types/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.ts +0 -2417
- package/build/types/src/rollup/RollupUserLogic.sol/RollupUserLogic.ts +0 -2403
- package/build/types/src/rollup/RollupUserLogic.sol/index.ts +0 -6
- package/build/types/src/rollup/ValidatorUtils.ts +0 -561
- package/build/types/src/rollup/ValidatorWallet.ts +0 -751
- package/build/types/src/rollup/ValidatorWalletCreator.ts +0 -294
- package/build/types/src/rollup/index.ts +0 -25
- package/build/types/src/test-helpers/BridgeTester.ts +0 -899
- package/build/types/src/test-helpers/CryptographyPrimitivesTester.ts +0 -141
- package/build/types/src/test-helpers/EthVault.ts +0 -141
- package/build/types/src/test-helpers/MessageTester.ts +0 -182
- package/build/types/src/test-helpers/OutboxWithoutOptTester.ts +0 -700
- package/build/types/src/test-helpers/RollupMock.ts +0 -164
- package/build/types/src/test-helpers/ValueArrayTester.ts +0 -81
- package/build/types/src/test-helpers/index.ts +0 -10
- package/src/rollup/AbsBridgeCreator.sol +0 -117
- package/src/rollup/ERC20BridgeCreator.sol +0 -48
- package/src/rollup/IBridgeCreator.sol +0 -64
@@ -7,12 +7,16 @@ pragma solidity ^0.8.0;
|
|
7
7
|
import "./RollupProxy.sol";
|
8
8
|
import "./IRollupAdmin.sol";
|
9
9
|
import "./BridgeCreator.sol";
|
10
|
-
import "
|
10
|
+
import "@offchainlabs/upgrade-executor/src/IUpgradeExecutor.sol";
|
11
11
|
import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";
|
12
12
|
import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
|
13
13
|
import "@openzeppelin/contracts/access/Ownable.sol";
|
14
|
+
import {DeployHelper} from "./DeployHelper.sol";
|
15
|
+
import {SafeERC20, IERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
|
14
16
|
|
15
17
|
contract RollupCreator is Ownable {
|
18
|
+
using SafeERC20 for IERC20;
|
19
|
+
|
16
20
|
event RollupCreated(
|
17
21
|
address indexed rollupAddress,
|
18
22
|
address indexed nativeToken,
|
@@ -23,106 +27,117 @@ contract RollupCreator is Ownable {
|
|
23
27
|
address adminProxy,
|
24
28
|
address sequencerInbox,
|
25
29
|
address bridge,
|
30
|
+
address upgradeExecutor,
|
26
31
|
address validatorUtils,
|
27
32
|
address validatorWalletCreator
|
28
33
|
);
|
29
34
|
event TemplatesUpdated();
|
30
35
|
|
31
|
-
|
32
|
-
|
36
|
+
struct RollupDeploymentParams {
|
37
|
+
Config config;
|
38
|
+
address batchPoster;
|
39
|
+
address[] validators;
|
40
|
+
uint256 maxDataSize;
|
41
|
+
address nativeToken;
|
42
|
+
bool deployFactoriesToL2;
|
43
|
+
uint256 maxFeePerGasForRetryables;
|
44
|
+
}
|
45
|
+
|
46
|
+
BridgeCreator public bridgeCreator;
|
33
47
|
IOneStepProofEntry public osp;
|
34
48
|
IChallengeManager public challengeManagerTemplate;
|
35
49
|
IRollupAdmin public rollupAdminLogic;
|
36
50
|
IRollupUser public rollupUserLogic;
|
51
|
+
IUpgradeExecutor public upgradeExecutorLogic;
|
37
52
|
|
38
53
|
address public validatorUtils;
|
39
54
|
address public validatorWalletCreator;
|
40
55
|
|
41
|
-
|
42
|
-
IBridge bridge;
|
43
|
-
ISequencerInbox sequencerInbox;
|
44
|
-
IInboxBase inbox;
|
45
|
-
IRollupEventInbox rollupEventInbox;
|
46
|
-
IOutbox outbox;
|
47
|
-
}
|
56
|
+
DeployHelper public l2FactoriesDeployer;
|
48
57
|
|
49
58
|
constructor() Ownable() {}
|
50
59
|
|
60
|
+
// creator receives back excess fees (for deploying L2 factories) so it can refund the caller
|
61
|
+
receive() external payable {}
|
62
|
+
|
51
63
|
function setTemplates(
|
52
|
-
BridgeCreator
|
53
|
-
ERC20BridgeCreator _erc20BridgeCreator,
|
64
|
+
BridgeCreator _bridgeCreator,
|
54
65
|
IOneStepProofEntry _osp,
|
55
66
|
IChallengeManager _challengeManagerLogic,
|
56
67
|
IRollupAdmin _rollupAdminLogic,
|
57
68
|
IRollupUser _rollupUserLogic,
|
69
|
+
IUpgradeExecutor _upgradeExecutorLogic,
|
58
70
|
address _validatorUtils,
|
59
|
-
address _validatorWalletCreator
|
71
|
+
address _validatorWalletCreator,
|
72
|
+
DeployHelper _l2FactoriesDeployer
|
60
73
|
) external onlyOwner {
|
61
|
-
|
62
|
-
erc20BridgeCreator = _erc20BridgeCreator;
|
74
|
+
bridgeCreator = _bridgeCreator;
|
63
75
|
osp = _osp;
|
64
76
|
challengeManagerTemplate = _challengeManagerLogic;
|
65
77
|
rollupAdminLogic = _rollupAdminLogic;
|
66
78
|
rollupUserLogic = _rollupUserLogic;
|
79
|
+
upgradeExecutorLogic = _upgradeExecutorLogic;
|
67
80
|
validatorUtils = _validatorUtils;
|
68
81
|
validatorWalletCreator = _validatorWalletCreator;
|
82
|
+
l2FactoriesDeployer = _l2FactoriesDeployer;
|
69
83
|
emit TemplatesUpdated();
|
70
84
|
}
|
71
85
|
|
72
86
|
/**
|
73
87
|
* @notice Create a new rollup
|
74
88
|
* @dev After this setup:
|
75
|
-
* @dev -
|
76
|
-
* @dev -
|
77
|
-
* @dev -
|
89
|
+
* @dev - UpgradeExecutor should be the owner of rollup
|
90
|
+
* @dev - UpgradeExecutor should be the owner of proxyAdmin which manages bridge contracts
|
91
|
+
* @dev - config.rollupOwner should have executor role on upgradeExecutor
|
78
92
|
* @dev - Bridge should have a single inbox and outbox
|
79
93
|
* @dev - Validators and batch poster should be set if provided
|
80
|
-
* @param
|
81
|
-
*
|
82
|
-
*
|
83
|
-
*
|
94
|
+
* @param deployParams The parameters for the rollup deployment. It consists of:
|
95
|
+
* - config The configuration for the rollup
|
96
|
+
* - batchPoster The address of the batch poster, not used when set to zero address
|
97
|
+
* - validators The list of validator addresses, not used when set to empty list
|
98
|
+
* - nativeToken Address of the custom fee token used by rollup. If rollup is ETH-based address(0) should be provided
|
99
|
+
* - deployFactoriesToL2 Whether to deploy L2 factories using retryable tickets. If true, retryables need to be paid for in native currency.
|
100
|
+
* Deploying factories via retryable tickets at rollup creation time is the most reliable method to do it since it
|
101
|
+
* doesn't require paying the L1 gas. If deployment is not done as part of rollup creation TX, there is a risk that
|
102
|
+
* anyone can try to deploy factories and potentially burn the nonce 0 (ie. due to gas price spike when doing direct
|
103
|
+
* L2 TX). That would mean we permanently lost capability to deploy deterministic factory at expected address.
|
104
|
+
* - maxFeePerGasForRetryables price bid for L2 execution.
|
84
105
|
* @return The address of the newly created rollup
|
85
106
|
*/
|
86
|
-
function createRollup(
|
87
|
-
|
88
|
-
|
89
|
-
address
|
90
|
-
|
91
|
-
|
107
|
+
function createRollup(RollupDeploymentParams memory deployParams)
|
108
|
+
public
|
109
|
+
payable
|
110
|
+
returns (address)
|
111
|
+
{
|
112
|
+
// Make sure the immutable maxDataSize is as expected
|
113
|
+
(, ISequencerInbox ethSequencerInbox, IInboxBase ethInbox, , ) = bridgeCreator
|
114
|
+
.ethBasedTemplates();
|
115
|
+
require(
|
116
|
+
deployParams.maxDataSize == ethSequencerInbox.maxDataSize(),
|
117
|
+
"SI_MAX_DATA_SIZE_MISMATCH"
|
118
|
+
);
|
119
|
+
require(deployParams.maxDataSize == ethInbox.maxDataSize(), "I_MAX_DATA_SIZE_MISMATCH");
|
120
|
+
|
121
|
+
(, ISequencerInbox erc20SequencerInbox, IInboxBase erc20Inbox, , ) = bridgeCreator
|
122
|
+
.erc20BasedTemplates();
|
123
|
+
require(
|
124
|
+
deployParams.maxDataSize == erc20SequencerInbox.maxDataSize(),
|
125
|
+
"SI_MAX_DATA_SIZE_MISMATCH"
|
126
|
+
);
|
127
|
+
require(deployParams.maxDataSize == erc20Inbox.maxDataSize(), "I_MAX_DATA_SIZE_MISMATCH");
|
128
|
+
|
129
|
+
// create proxy admin which will manage bridge contracts
|
92
130
|
ProxyAdmin proxyAdmin = new ProxyAdmin();
|
93
131
|
|
94
132
|
// Create the rollup proxy to figure out the address and initialize it later
|
95
|
-
RollupProxy rollup = new RollupProxy{salt: keccak256(abi.encode(
|
133
|
+
RollupProxy rollup = new RollupProxy{salt: keccak256(abi.encode(deployParams))}();
|
96
134
|
|
97
|
-
BridgeContracts memory bridgeContracts
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
bridgeContracts.inbox,
|
104
|
-
bridgeContracts.rollupEventInbox,
|
105
|
-
bridgeContracts.outbox
|
106
|
-
) = ethBridgeCreator.createBridge(
|
107
|
-
address(proxyAdmin),
|
108
|
-
address(rollup),
|
109
|
-
config.sequencerInboxMaxTimeVariation
|
110
|
-
);
|
111
|
-
} else {
|
112
|
-
// otherwise create ERC20-based rollup with custom fee token
|
113
|
-
(
|
114
|
-
bridgeContracts.bridge,
|
115
|
-
bridgeContracts.sequencerInbox,
|
116
|
-
bridgeContracts.inbox,
|
117
|
-
bridgeContracts.rollupEventInbox,
|
118
|
-
bridgeContracts.outbox
|
119
|
-
) = erc20BridgeCreator.createBridge(
|
120
|
-
address(proxyAdmin),
|
121
|
-
address(rollup),
|
122
|
-
_nativeToken,
|
123
|
-
config.sequencerInboxMaxTimeVariation
|
124
|
-
);
|
125
|
-
}
|
135
|
+
BridgeCreator.BridgeContracts memory bridgeContracts = bridgeCreator.createBridge(
|
136
|
+
address(proxyAdmin),
|
137
|
+
address(rollup),
|
138
|
+
deployParams.nativeToken,
|
139
|
+
deployParams.config.sequencerInboxMaxTimeVariation
|
140
|
+
);
|
126
141
|
|
127
142
|
IChallengeManager challengeManager = IChallengeManager(
|
128
143
|
address(
|
@@ -140,14 +155,17 @@ contract RollupCreator is Ownable {
|
|
140
155
|
osp
|
141
156
|
);
|
142
157
|
|
143
|
-
|
158
|
+
// deploy and init upgrade executor
|
159
|
+
address upgradeExecutor = _deployUpgradeExecutor(deployParams.config.owner, proxyAdmin);
|
160
|
+
|
161
|
+
// upgradeExecutor shall be proxyAdmin's owner
|
162
|
+
proxyAdmin.transferOwnership(address(upgradeExecutor));
|
144
163
|
|
145
164
|
// initialize the rollup with this contract as owner to set batch poster and validators
|
146
|
-
// it will transfer the ownership
|
147
|
-
|
148
|
-
config.owner = address(this);
|
165
|
+
// it will transfer the ownership to the upgrade executor later
|
166
|
+
deployParams.config.owner = address(this);
|
149
167
|
rollup.initializeProxy(
|
150
|
-
config,
|
168
|
+
deployParams.config,
|
151
169
|
ContractDependencies({
|
152
170
|
bridge: bridgeContracts.bridge,
|
153
171
|
sequencerInbox: bridgeContracts.sequencerInbox,
|
@@ -163,24 +181,32 @@ contract RollupCreator is Ownable {
|
|
163
181
|
);
|
164
182
|
|
165
183
|
// setting batch poster, if the address provided is not zero address
|
166
|
-
if (
|
167
|
-
bridgeContracts.sequencerInbox.setIsBatchPoster(
|
184
|
+
if (deployParams.batchPoster != address(0)) {
|
185
|
+
bridgeContracts.sequencerInbox.setIsBatchPoster(deployParams.batchPoster, true);
|
168
186
|
}
|
169
187
|
|
170
188
|
// Call setValidator on the newly created rollup contract just if validator set is not empty
|
171
|
-
if (
|
172
|
-
bool[] memory _vals = new bool[](
|
173
|
-
for (uint256 i = 0; i <
|
189
|
+
if (deployParams.validators.length != 0) {
|
190
|
+
bool[] memory _vals = new bool[](deployParams.validators.length);
|
191
|
+
for (uint256 i = 0; i < deployParams.validators.length; i++) {
|
174
192
|
_vals[i] = true;
|
175
193
|
}
|
176
|
-
IRollupAdmin(address(rollup)).setValidator(
|
194
|
+
IRollupAdmin(address(rollup)).setValidator(deployParams.validators, _vals);
|
177
195
|
}
|
178
196
|
|
179
|
-
IRollupAdmin(address(rollup)).setOwner(
|
197
|
+
IRollupAdmin(address(rollup)).setOwner(address(upgradeExecutor));
|
198
|
+
|
199
|
+
if (deployParams.deployFactoriesToL2) {
|
200
|
+
_deployFactories(
|
201
|
+
address(bridgeContracts.inbox),
|
202
|
+
deployParams.nativeToken,
|
203
|
+
deployParams.maxFeePerGasForRetryables
|
204
|
+
);
|
205
|
+
}
|
180
206
|
|
181
207
|
emit RollupCreated(
|
182
208
|
address(rollup),
|
183
|
-
|
209
|
+
deployParams.nativeToken,
|
184
210
|
address(bridgeContracts.inbox),
|
185
211
|
address(bridgeContracts.outbox),
|
186
212
|
address(bridgeContracts.rollupEventInbox),
|
@@ -188,9 +214,61 @@ contract RollupCreator is Ownable {
|
|
188
214
|
address(proxyAdmin),
|
189
215
|
address(bridgeContracts.sequencerInbox),
|
190
216
|
address(bridgeContracts.bridge),
|
217
|
+
address(upgradeExecutor),
|
191
218
|
address(validatorUtils),
|
192
219
|
address(validatorWalletCreator)
|
193
220
|
);
|
194
221
|
return address(rollup);
|
195
222
|
}
|
223
|
+
|
224
|
+
function _deployUpgradeExecutor(address rollupOwner, ProxyAdmin proxyAdmin)
|
225
|
+
internal
|
226
|
+
returns (address)
|
227
|
+
{
|
228
|
+
IUpgradeExecutor upgradeExecutor = IUpgradeExecutor(
|
229
|
+
address(
|
230
|
+
new TransparentUpgradeableProxy(
|
231
|
+
address(upgradeExecutorLogic),
|
232
|
+
address(proxyAdmin),
|
233
|
+
bytes("")
|
234
|
+
)
|
235
|
+
)
|
236
|
+
);
|
237
|
+
address[] memory executors = new address[](1);
|
238
|
+
executors[0] = rollupOwner;
|
239
|
+
upgradeExecutor.initialize(address(upgradeExecutor), executors);
|
240
|
+
|
241
|
+
return address(upgradeExecutor);
|
242
|
+
}
|
243
|
+
|
244
|
+
function _deployFactories(
|
245
|
+
address _inbox,
|
246
|
+
address _nativeToken,
|
247
|
+
uint256 _maxFeePerGas
|
248
|
+
) internal {
|
249
|
+
if (_nativeToken == address(0)) {
|
250
|
+
// we need to fund 4 retryable tickets
|
251
|
+
uint256 cost = l2FactoriesDeployer.getDeploymentTotalCost(
|
252
|
+
IInboxBase(_inbox),
|
253
|
+
_maxFeePerGas
|
254
|
+
);
|
255
|
+
|
256
|
+
// do it
|
257
|
+
l2FactoriesDeployer.perform{value: cost}(_inbox, _nativeToken, _maxFeePerGas);
|
258
|
+
|
259
|
+
// refund the caller
|
260
|
+
(bool sent, ) = msg.sender.call{value: address(this).balance}("");
|
261
|
+
require(sent, "Refund failed");
|
262
|
+
} else {
|
263
|
+
// Transfer fee token amount needed to pay for retryable fees to the inbox.
|
264
|
+
uint256 totalFee = l2FactoriesDeployer.getDeploymentTotalCost(
|
265
|
+
IInboxBase(_inbox),
|
266
|
+
_maxFeePerGas
|
267
|
+
);
|
268
|
+
IERC20(_nativeToken).safeTransferFrom(msg.sender, _inbox, totalFee);
|
269
|
+
|
270
|
+
// do it
|
271
|
+
l2FactoriesDeployer.perform(_inbox, _nativeToken, _maxFeePerGas);
|
272
|
+
}
|
273
|
+
}
|
196
274
|
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
+
// For license information, see https://github.com/nitro/blob/master/LICENSE
|
3
|
+
// SPDX-License-Identifier: BUSL-1.1
|
4
|
+
|
5
|
+
pragma solidity ^0.8.0;
|
6
|
+
|
7
|
+
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
|
8
|
+
|
9
|
+
/**
|
10
|
+
* Basic ERC20 token
|
11
|
+
*/
|
12
|
+
contract TestToken is ERC20 {
|
13
|
+
constructor(uint256 initialSupply) ERC20("TestToken", "TT") {
|
14
|
+
_mint(msg.sender, initialSupply);
|
15
|
+
}
|
16
|
+
}
|
@@ -1,312 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"_format": "hh-sol-artifact-1",
|
3
|
-
"contractName": "ERC20Burnable",
|
4
|
-
"sourceName": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol",
|
5
|
-
"abi": [
|
6
|
-
{
|
7
|
-
"anonymous": false,
|
8
|
-
"inputs": [
|
9
|
-
{
|
10
|
-
"indexed": true,
|
11
|
-
"internalType": "address",
|
12
|
-
"name": "owner",
|
13
|
-
"type": "address"
|
14
|
-
},
|
15
|
-
{
|
16
|
-
"indexed": true,
|
17
|
-
"internalType": "address",
|
18
|
-
"name": "spender",
|
19
|
-
"type": "address"
|
20
|
-
},
|
21
|
-
{
|
22
|
-
"indexed": false,
|
23
|
-
"internalType": "uint256",
|
24
|
-
"name": "value",
|
25
|
-
"type": "uint256"
|
26
|
-
}
|
27
|
-
],
|
28
|
-
"name": "Approval",
|
29
|
-
"type": "event"
|
30
|
-
},
|
31
|
-
{
|
32
|
-
"anonymous": false,
|
33
|
-
"inputs": [
|
34
|
-
{
|
35
|
-
"indexed": true,
|
36
|
-
"internalType": "address",
|
37
|
-
"name": "from",
|
38
|
-
"type": "address"
|
39
|
-
},
|
40
|
-
{
|
41
|
-
"indexed": true,
|
42
|
-
"internalType": "address",
|
43
|
-
"name": "to",
|
44
|
-
"type": "address"
|
45
|
-
},
|
46
|
-
{
|
47
|
-
"indexed": false,
|
48
|
-
"internalType": "uint256",
|
49
|
-
"name": "value",
|
50
|
-
"type": "uint256"
|
51
|
-
}
|
52
|
-
],
|
53
|
-
"name": "Transfer",
|
54
|
-
"type": "event"
|
55
|
-
},
|
56
|
-
{
|
57
|
-
"inputs": [
|
58
|
-
{
|
59
|
-
"internalType": "address",
|
60
|
-
"name": "owner",
|
61
|
-
"type": "address"
|
62
|
-
},
|
63
|
-
{
|
64
|
-
"internalType": "address",
|
65
|
-
"name": "spender",
|
66
|
-
"type": "address"
|
67
|
-
}
|
68
|
-
],
|
69
|
-
"name": "allowance",
|
70
|
-
"outputs": [
|
71
|
-
{
|
72
|
-
"internalType": "uint256",
|
73
|
-
"name": "",
|
74
|
-
"type": "uint256"
|
75
|
-
}
|
76
|
-
],
|
77
|
-
"stateMutability": "view",
|
78
|
-
"type": "function"
|
79
|
-
},
|
80
|
-
{
|
81
|
-
"inputs": [
|
82
|
-
{
|
83
|
-
"internalType": "address",
|
84
|
-
"name": "spender",
|
85
|
-
"type": "address"
|
86
|
-
},
|
87
|
-
{
|
88
|
-
"internalType": "uint256",
|
89
|
-
"name": "amount",
|
90
|
-
"type": "uint256"
|
91
|
-
}
|
92
|
-
],
|
93
|
-
"name": "approve",
|
94
|
-
"outputs": [
|
95
|
-
{
|
96
|
-
"internalType": "bool",
|
97
|
-
"name": "",
|
98
|
-
"type": "bool"
|
99
|
-
}
|
100
|
-
],
|
101
|
-
"stateMutability": "nonpayable",
|
102
|
-
"type": "function"
|
103
|
-
},
|
104
|
-
{
|
105
|
-
"inputs": [
|
106
|
-
{
|
107
|
-
"internalType": "address",
|
108
|
-
"name": "account",
|
109
|
-
"type": "address"
|
110
|
-
}
|
111
|
-
],
|
112
|
-
"name": "balanceOf",
|
113
|
-
"outputs": [
|
114
|
-
{
|
115
|
-
"internalType": "uint256",
|
116
|
-
"name": "",
|
117
|
-
"type": "uint256"
|
118
|
-
}
|
119
|
-
],
|
120
|
-
"stateMutability": "view",
|
121
|
-
"type": "function"
|
122
|
-
},
|
123
|
-
{
|
124
|
-
"inputs": [
|
125
|
-
{
|
126
|
-
"internalType": "uint256",
|
127
|
-
"name": "amount",
|
128
|
-
"type": "uint256"
|
129
|
-
}
|
130
|
-
],
|
131
|
-
"name": "burn",
|
132
|
-
"outputs": [],
|
133
|
-
"stateMutability": "nonpayable",
|
134
|
-
"type": "function"
|
135
|
-
},
|
136
|
-
{
|
137
|
-
"inputs": [
|
138
|
-
{
|
139
|
-
"internalType": "address",
|
140
|
-
"name": "account",
|
141
|
-
"type": "address"
|
142
|
-
},
|
143
|
-
{
|
144
|
-
"internalType": "uint256",
|
145
|
-
"name": "amount",
|
146
|
-
"type": "uint256"
|
147
|
-
}
|
148
|
-
],
|
149
|
-
"name": "burnFrom",
|
150
|
-
"outputs": [],
|
151
|
-
"stateMutability": "nonpayable",
|
152
|
-
"type": "function"
|
153
|
-
},
|
154
|
-
{
|
155
|
-
"inputs": [],
|
156
|
-
"name": "decimals",
|
157
|
-
"outputs": [
|
158
|
-
{
|
159
|
-
"internalType": "uint8",
|
160
|
-
"name": "",
|
161
|
-
"type": "uint8"
|
162
|
-
}
|
163
|
-
],
|
164
|
-
"stateMutability": "view",
|
165
|
-
"type": "function"
|
166
|
-
},
|
167
|
-
{
|
168
|
-
"inputs": [
|
169
|
-
{
|
170
|
-
"internalType": "address",
|
171
|
-
"name": "spender",
|
172
|
-
"type": "address"
|
173
|
-
},
|
174
|
-
{
|
175
|
-
"internalType": "uint256",
|
176
|
-
"name": "subtractedValue",
|
177
|
-
"type": "uint256"
|
178
|
-
}
|
179
|
-
],
|
180
|
-
"name": "decreaseAllowance",
|
181
|
-
"outputs": [
|
182
|
-
{
|
183
|
-
"internalType": "bool",
|
184
|
-
"name": "",
|
185
|
-
"type": "bool"
|
186
|
-
}
|
187
|
-
],
|
188
|
-
"stateMutability": "nonpayable",
|
189
|
-
"type": "function"
|
190
|
-
},
|
191
|
-
{
|
192
|
-
"inputs": [
|
193
|
-
{
|
194
|
-
"internalType": "address",
|
195
|
-
"name": "spender",
|
196
|
-
"type": "address"
|
197
|
-
},
|
198
|
-
{
|
199
|
-
"internalType": "uint256",
|
200
|
-
"name": "addedValue",
|
201
|
-
"type": "uint256"
|
202
|
-
}
|
203
|
-
],
|
204
|
-
"name": "increaseAllowance",
|
205
|
-
"outputs": [
|
206
|
-
{
|
207
|
-
"internalType": "bool",
|
208
|
-
"name": "",
|
209
|
-
"type": "bool"
|
210
|
-
}
|
211
|
-
],
|
212
|
-
"stateMutability": "nonpayable",
|
213
|
-
"type": "function"
|
214
|
-
},
|
215
|
-
{
|
216
|
-
"inputs": [],
|
217
|
-
"name": "name",
|
218
|
-
"outputs": [
|
219
|
-
{
|
220
|
-
"internalType": "string",
|
221
|
-
"name": "",
|
222
|
-
"type": "string"
|
223
|
-
}
|
224
|
-
],
|
225
|
-
"stateMutability": "view",
|
226
|
-
"type": "function"
|
227
|
-
},
|
228
|
-
{
|
229
|
-
"inputs": [],
|
230
|
-
"name": "symbol",
|
231
|
-
"outputs": [
|
232
|
-
{
|
233
|
-
"internalType": "string",
|
234
|
-
"name": "",
|
235
|
-
"type": "string"
|
236
|
-
}
|
237
|
-
],
|
238
|
-
"stateMutability": "view",
|
239
|
-
"type": "function"
|
240
|
-
},
|
241
|
-
{
|
242
|
-
"inputs": [],
|
243
|
-
"name": "totalSupply",
|
244
|
-
"outputs": [
|
245
|
-
{
|
246
|
-
"internalType": "uint256",
|
247
|
-
"name": "",
|
248
|
-
"type": "uint256"
|
249
|
-
}
|
250
|
-
],
|
251
|
-
"stateMutability": "view",
|
252
|
-
"type": "function"
|
253
|
-
},
|
254
|
-
{
|
255
|
-
"inputs": [
|
256
|
-
{
|
257
|
-
"internalType": "address",
|
258
|
-
"name": "to",
|
259
|
-
"type": "address"
|
260
|
-
},
|
261
|
-
{
|
262
|
-
"internalType": "uint256",
|
263
|
-
"name": "amount",
|
264
|
-
"type": "uint256"
|
265
|
-
}
|
266
|
-
],
|
267
|
-
"name": "transfer",
|
268
|
-
"outputs": [
|
269
|
-
{
|
270
|
-
"internalType": "bool",
|
271
|
-
"name": "",
|
272
|
-
"type": "bool"
|
273
|
-
}
|
274
|
-
],
|
275
|
-
"stateMutability": "nonpayable",
|
276
|
-
"type": "function"
|
277
|
-
},
|
278
|
-
{
|
279
|
-
"inputs": [
|
280
|
-
{
|
281
|
-
"internalType": "address",
|
282
|
-
"name": "from",
|
283
|
-
"type": "address"
|
284
|
-
},
|
285
|
-
{
|
286
|
-
"internalType": "address",
|
287
|
-
"name": "to",
|
288
|
-
"type": "address"
|
289
|
-
},
|
290
|
-
{
|
291
|
-
"internalType": "uint256",
|
292
|
-
"name": "amount",
|
293
|
-
"type": "uint256"
|
294
|
-
}
|
295
|
-
],
|
296
|
-
"name": "transferFrom",
|
297
|
-
"outputs": [
|
298
|
-
{
|
299
|
-
"internalType": "bool",
|
300
|
-
"name": "",
|
301
|
-
"type": "bool"
|
302
|
-
}
|
303
|
-
],
|
304
|
-
"stateMutability": "nonpayable",
|
305
|
-
"type": "function"
|
306
|
-
}
|
307
|
-
],
|
308
|
-
"bytecode": "0x",
|
309
|
-
"deployedBytecode": "0x",
|
310
|
-
"linkReferences": {},
|
311
|
-
"deployedLinkReferences": {}
|
312
|
-
}
|