@arbitrum/nitro-contracts 1.1.0-alpha.7 → 1.1.0-beta.0
Sign up to get free protection for your applications and to get access to all the features.
- 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 +67 -24
- 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 +124 -55
- 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
@@ -470,8 +470,8 @@
|
|
470
470
|
"type": "function"
|
471
471
|
}
|
472
472
|
],
|
473
|
-
"bytecode": "0x608060405234801561001057600080fd5b50612364806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e3660046118ae565b61005a565b604051610051929190611ac0565b60405180910390f35b6100626117e3565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611f63565b91506100bf36879003870187612066565b905060006100d060208701876120fd565b905061188c61ffff8216604514806100ec575061ffff82166050145b156100fa57506103096102eb565b604661ffff831610801590610122575061011660096046612137565b61ffff168261ffff1611155b1561013057506104226102eb565b606761ffff831610801590610158575061014c60026067612137565b61ffff168261ffff1611155b1561016657506105056102eb565b606a61ffff8316108015906101805750607861ffff831611155b1561018e575061056d6102eb565b605161ffff8316108015906101b657506101aa60096051612137565b61ffff168261ffff1611155b156101c4575061075a6102eb565b607961ffff8316108015906101ec57506101e060026079612137565b61ffff168261ffff1611155b156101fa57506107bf6102eb565b607c61ffff8316108015906102145750608a61ffff831611155b1561022257506108126102eb565b61ffff821660a7141561023857506109cd6102eb565b61ffff821660ac148061024f575061ffff821660ad145b1561025d57506109ee6102eb565b60c061ffff831610801590610277575060c461ffff831611155b156102855750610a426102eb565b60bc61ffff83161080159061029f575060bf61ffff831611155b156102ad5750610c576102eb565b60405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f4f50434f444560901b60448201526064015b60405180910390fd5b6102fc84848989898663ffffffff16565b5050965096945050505050565b60006103188660200151610de2565b9050604561032960208601866120fd565b61ffff16141561036a5760008151600681111561034857610348611991565b146103655760405162461bcd60e51b81526004016102e29061215d565b6103e7565b605061037960208601866120fd565b61ffff1614156103b55760018151600681111561039857610398611991565b146103655760405162461bcd60e51b81526004016102e29061217e565b60405162461bcd60e51b81526020600482015260076024820152662120a22fa2a8ad60c91b60448201526064016102e2565b60008160200151600014156103fe57506001610402565b5060005b61041961040e82610e07565b602089015190610e3a565b50505050505050565b60006104396104348760200151610de2565b610e4a565b9050600061044d6104348860200151610de2565b90506000604661046060208801886120fd565b61046a919061219f565b905060008061ffff831660021480610486575061ffff83166004145b80610495575061ffff83166006145b806104a4575061ffff83166008145b156104c4576104b284610ec1565b91506104bd85610ec1565b90506104d2565b505063ffffffff8083169084165b60006104df838386610eed565b90506104f86104ed82611096565b60208d015190610e3a565b5050505050505050505050565b60006105176104348760200151610de2565b90506000606761052a60208701876120fd565b610534919061219f565b9050600061054a8363ffffffff168360206110c9565b905061056361055882610e07565b60208a015190610e3a565b5050505050505050565b600061057f6104348760200151610de2565b905060006105936104348860200151610de2565b9050600080606a6105a760208901896120fd565b6105b1919061219f565b90508061ffff166003141561062f5763ffffffff841615806105e957508260030b637fffffff191480156105e957508360030b600019145b15610612578860025b9081600381111561060557610605611991565b8152505050505050610753565b8360030b8360030b81610627576106276121c2565b059150610737565b8061ffff166005141561066c5763ffffffff841661064f578860026105f2565b8360030b8360030b81610664576106646121c2565b079150610737565b8061ffff16600a141561068c5763ffffffff8316601f85161b9150610737565b8061ffff16600c14156106ac5763ffffffff8316601f85161c9150610737565b8061ffff16600b14156106ca57600383900b601f85161d9150610737565b8061ffff16600d14156106e8576106e1838561128d565b9150610737565b8061ffff16600e14156106ff576106e183856112cf565b6000806107198563ffffffff168763ffffffff1685611311565b915091508015610733575050600289525061075392505050565b5091505b61074e61074383610e07565b60208b015190610e3a565b505050505b5050505050565b600061077161076c8760200151610de2565b611497565b9050600061078561076c8860200151610de2565b90506000605161079860208801886120fd565b6107a2919061219f565b905060006107b1838584610eed565b905061074e61074382611096565b60006107d161076c8760200151610de2565b9050600060796107e460208701876120fd565b6107ee919061219f565b905060006107fe838360406110c9565b63ffffffff1690506105636105588261150e565b600061082461076c8760200151610de2565b9050600061083861076c8860200151610de2565b9050600080607c61084c60208901896120fd565b610856919061219f565b90508061ffff16600314156108bf576001600160401b038416158061089557508260070b677fffffffffffffff1914801561089557508360070b600019145b156108a2578860026105f2565b8360070b8360070b816108b7576108b76121c2565b0591506109c1565b8061ffff16600514156108ff576001600160401b0384166108e2578860026105f2565b8360070b8360070b816108f7576108f76121c2565b0791506109c1565b8061ffff16600a1415610922576001600160401b038316603f85161b91506109c1565b8061ffff16600c1415610945576001600160401b038316603f85161c91506109c1565b8061ffff16600b141561096357600783900b603f85161d91506109c1565b8061ffff16600d14156109815761097a8385611544565b91506109c1565b8061ffff16600e14156109985761097a8385611592565b60006109a5848684611311565b909350905080156109bf5750506002885250610753915050565b505b61074e6107438361150e565b60006109df61076c8760200151610de2565b90508061041961040e82610e07565b6000610a006104348760200151610de2565b9050600060ac610a1360208701876120fd565b61ffff161415610a2d57610a2682610ec1565b9050610a36565b5063ffffffff81165b61041961040e8261150e565b60008060c0610a5460208701876120fd565b61ffff161415610a6a5750600090506008610b41565b60c1610a7960208701876120fd565b61ffff161415610a8f5750600090506010610b41565b60c2610a9e60208701876120fd565b61ffff161415610ab45750600190506008610b41565b60c3610ac360208701876120fd565b61ffff161415610ad95750600190506010610b41565b60c4610ae860208701876120fd565b61ffff161415610afe5750600190506020610b41565b60405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f455854454e445f53414d455f5459504560401b60448201526064016102e2565b600080836006811115610b5657610b56611991565b1415610b67575063ffffffff610b71565b506001600160401b035b6000610b808960200151610de2565b9050836006811115610b9457610b94611991565b81516006811115610ba757610ba7611991565b14610bf05760405162461bcd60e51b81526020600482015260196024820152784241445f455854454e445f53414d455f545950455f5459504560381b60448201526064016102e2565b6000610c03600160ff861681901b6121d8565b602083018051821690529050610c1a6001856121ef565b60ff166001901b826020015116600014610c3c57602082018051821985161790525b60208a0151610c4b9083610e3a565b50505050505050505050565b60008060bc610c6960208701876120fd565b61ffff161415610c7f5750600090506002610d2c565b60bd610c8e60208701876120fd565b61ffff161415610ca45750600190506003610d2c565b60be610cb360208701876120fd565b61ffff161415610cc95750600290506000610d2c565b60bf610cd860208701876120fd565b61ffff161415610cee5750600390506001610d2c565b60405162461bcd60e51b81526020600482015260136024820152721253959053125117d491525395115494149155606a1b60448201526064016102e2565b6000610d3b8860200151610de2565b9050816006811115610d4f57610d4f611991565b81516006811115610d6257610d62611991565b14610daa5760405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f5245494e544552505245545f5459504560401b60448201526064016102e2565b80836006811115610dbd57610dbd611991565b90816006811115610dd057610dd0611991565b90525060208801516105639082610e3a565b60408051808201909152600080825260208201528151610e01906115e0565b92915050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b8151610e4690826116f0565b5050565b60208101516000908183516006811115610e6657610e66611991565b14610e835760405162461bcd60e51b81526004016102e29061215d565b6401000000008110610e015760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016102e2565b60006380000000821615610ee3575063ffffffff1667ffffffff000000001790565b5063ffffffff1690565b600061ffff8216610f1457826001600160401b0316846001600160401b031614905061108f565b61ffff821660011415610f3e57826001600160401b0316846001600160401b03161415905061108f565b61ffff821660021415610f5b578260070b8460070b12905061108f565b61ffff821660031415610f8457826001600160401b0316846001600160401b031610905061108f565b61ffff821660041415610fa1578260070b8460070b13905061108f565b61ffff821660051415610fca57826001600160401b0316846001600160401b031611905061108f565b61ffff821660061415610fe8578260070b8460070b1315905061108f565b61ffff82166007141561101257826001600160401b0316846001600160401b03161115905061108f565b61ffff821660081415611030578260070b8460070b1215905061108f565b61ffff82166009141561105a57826001600160401b0316846001600160401b03161015905061108f565b60405162461bcd60e51b815260206004820152600a6024820152690424144204952454c4f560b41b60448201526064016102e2565b9392505050565b604080518082019091526000808252602082015281156110ba57610e016001610e07565b610e016000610e07565b919050565b60008161ffff16602014806110e257508161ffff166040145b6111295760405162461bcd60e51b8152602060048201526018602482015277057524f4e4720555345204f462067656e65726963556e4f760441b60448201526064016102e2565b61ffff831661119a5761ffff82165b60008163ffffffff1611801561116d5750611154600182612212565b63ffffffff166001901b856001600160401b0316166000145b156111845761117d600182612212565b9050611138565b6111928161ffff8516612212565b91505061108f565b61ffff8316600114156111f35760005b8261ffff168163ffffffff161080156111d55750600163ffffffff82161b85166001600160401b0316155b156111ec576111e560018261222f565b90506111aa565b905061108f565b61ffff831660021415611259576000805b8361ffff168263ffffffff16101561125057600163ffffffff83161b86166001600160401b03161561123e5761123b60018261222f565b90505b816112488161224e565b925050611204565b915061108f9050565b60405162461bcd60e51b815260206004820152600960248201526804241442049556e4f760bc1b60448201526064016102e2565b600061129a602083612272565b91506112a7826020612212565b63ffffffff168363ffffffff16901c8263ffffffff168463ffffffff16901b17905092915050565b60006112dc602083612272565b91506112e9826020612212565b63ffffffff168363ffffffff16901b8263ffffffff168463ffffffff16901c17905092915050565b60008061ffff8316611329575050828201600061148f565b8261ffff1660011415611342575050818303600061148f565b8261ffff166002141561135b575050828202600061148f565b8261ffff16600414156113af576001600160401b038416611382575060009050600161148f565b836001600160401b0316856001600160401b0316816113a3576113a36121c2565b0460009150915061148f565b8261ffff1660061415611403576001600160401b0384166113d6575060009050600161148f565b836001600160401b0316856001600160401b0316816113f7576113f76121c2565b0660009150915061148f565b8261ffff166007141561141c575050828216600061148f565b8261ffff1660081415611435575050828217600061148f565b8261ffff166009141561144e575050828218600061148f565b60405162461bcd60e51b81526020600482015260166024820152750494e56414c49445f47454e455249435f42494e5f4f560541b60448201526064016102e2565b935093915050565b60208101516000906001835160068111156114b4576114b4611991565b146114d15760405162461bcd60e51b81526004016102e29061217e565b600160401b8110610e015760405162461bcd60e51b815260206004820152600760248201526610905117d24d8d60ca1b60448201526064016102e2565b60408051808201909152600080825260208201525060408051808201909152600181526001600160401b03909116602082015290565b6000611551604083612295565b915061155e8260406122af565b6001600160401b0316836001600160401b0316901c826001600160401b0316846001600160401b0316901b17905092915050565b600061159f604083612295565b91506115ac8260406122af565b6001600160401b0316836001600160401b0316901b826001600160401b0316846001600160401b0316901c17905092915050565b604080518082019091526000808252602082015281518051611604906001906121d8565b81518110611614576116146122cf565b602002602001015190506000600183600001515161163291906121d8565b6001600160401b0381111561164957611649611be8565b60405190808252806020026020018201604052801561168e57816020015b60408051808201909152600080825260208201528152602001906001900390816116675790505b50905060005b81518110156116e95783518051829081106116b1576116b16122cf565b60200260200101518282815181106116cb576116cb6122cf565b602002602001018190525080806116e1906122e5565b915050611694565b5090915290565b815151600090611701906001612300565b6001600160401b0381111561171857611718611be8565b60405190808252806020026020018201604052801561175d57816020015b60408051808201909152600080825260208201528152602001906001900390816117365790505b50905060005b8351518110156117b9578351805182908110611781576117816122cf565b602002602001015182828151811061179b5761179b6122cf565b602002602001018190525080806117b1906122e5565b915050611763565b508181846000015151815181106117d2576117d26122cf565b602090810291909101015290915250565b604080516101208101909152806000815260200161181860408051606080820183529181019182529081526000602082015290565b815260200161183e60408051606080820183529181019182529081526000602082015290565b8152602001611863604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611894612318565b565b6000604082840312156118a857600080fd5b50919050565b6000806000806000808688036101a08112156118c957600080fd5b6118d38989611896565b965060408801356001600160401b03808211156118ef57600080fd5b90890190610120828c03121561190457600080fd5b81975060e0605f198401121561191957600080fd5b60608a01965061192d8b6101408c01611896565b95506101808a013592508083111561194457600080fd5b828a0192508a601f84011261195857600080fd5b823591508082111561196957600080fd5b5089602082840101111561197c57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b600481106119b7576119b7611991565b9052565b8051600781106119cd576119cd611991565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611a2a57611a168286516119bb565b938201936001939093019290850190611a03565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b82811015611aa9578451611a758582516119bb565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a090930192600101611a60565b509687015197909601969096525093949350505050565b6000610100808352611ad581840186516119a7565b602085015161012084810152611aef6102208501826119da565b9050604086015160ff198086840301610140870152611b0e83836119da565b925060608801519150808684030161016087015250611b2d8282611a3e565b915050608086015161018085015260a0860151611b536101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e08601525090850151610200840152905061108f60208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611c2057611c20611be8565b60405290565b604051602081016001600160401b0381118282101715611c2057611c20611be8565b604051608081016001600160401b0381118282101715611c2057611c20611be8565b60405161012081016001600160401b0381118282101715611c2057611c20611be8565b60405160a081016001600160401b0381118282101715611c2057611c20611be8565b604051606081016001600160401b0381118282101715611c2057611c20611be8565b604051601f8201601f191681016001600160401b0381118282101715611cf957611cf9611be8565b604052919050565b8035600481106110c457600080fd5b60006001600160401b03821115611d2957611d29611be8565b5060051b60200190565b600060408284031215611d4557600080fd5b611d4d611bfe565b9050813560078110611d5e57600080fd5b808252506020820135602082015292915050565b60006040808385031215611d8557600080fd5b611d8d611bfe565b915082356001600160401b0380821115611da657600080fd5b81850191506020808388031215611dbc57600080fd5b611dc4611c26565b833583811115611dd357600080fd5b80850194505087601f850112611de857600080fd5b83359250611dfd611df884611d10565b611cd1565b83815260069390931b84018201928281019089851115611e1c57600080fd5b948301945b84861015611e4257611e338a87611d33565b82529486019490830190611e21565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146110c457600080fd5b60006040808385031215611e8257600080fd5b611e8a611bfe565b915082356001600160401b03811115611ea257600080fd5b8301601f81018513611eb357600080fd5b80356020611ec3611df883611d10565b82815260a09283028401820192828201919089851115611ee257600080fd5b948301945b84861015611f4b5780868b031215611eff5760008081fd5b611f07611c48565b611f118b88611d33565b815287870135858201526060611f28818901611e5b565b89830152611f3860808901611e5b565b9082015283529485019491830191611ee7565b50808752505080860135818601525050505092915050565b60006101208236031215611f7657600080fd5b611f7e611c6a565b611f8783611d01565b815260208301356001600160401b0380821115611fa357600080fd5b611faf36838701611d72565b60208401526040850135915080821115611fc857600080fd5b611fd436838701611d72565b60408401526060850135915080821115611fed57600080fd5b50611ffa36828601611e6f565b6060830152506080830135608082015261201660a08401611e5b565b60a082015261202760c08401611e5b565b60c082015261203860e08401611e5b565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146110c457600080fd5b600081830360e081121561207957600080fd5b612081611c8d565b833581526060601f198301121561209757600080fd5b61209f611caf565b91506120ad6020850161204f565b82526120bb6040850161204f565b6020830152606084013560408301528160208201526080840135604082015260a084013560608201526120f060c08501611e5b565b6080820152949350505050565b60006020828403121561210f57600080fd5b813561ffff8116811461108f57600080fd5b634e487b7160e01b600052601160045260246000fd5b600061ffff80831681851680830382111561215457612154612121565b01949350505050565b6020808252600790820152662727aa2fa4999960c91b604082015260600190565b6020808252600790820152661393d517d24d8d60ca1b604082015260600190565b600061ffff838116908316818110156121ba576121ba612121565b039392505050565b634e487b7160e01b600052601260045260246000fd5b6000828210156121ea576121ea612121565b500390565b600060ff821660ff84168082101561220957612209612121565b90039392505050565b600063ffffffff838116908316818110156121ba576121ba612121565b600063ffffffff80831681851680830382111561215457612154612121565b600063ffffffff8083168181141561226857612268612121565b6001019392505050565b600063ffffffff80841680612289576122896121c2565b92169190910692915050565b60006001600160401b0380841680612289576122896121c2565b60006001600160401b03838116908316818110156121ba576121ba612121565b634e487b7160e01b600052603260045260246000fd5b60006000198214156122f9576122f9612121565b5060010190565b6000821982111561231357612313612121565b500190565b634e487b7160e01b600052605160045260246000fdfea264697066735822122085483be6f9ef63b127b1efde4e926ffbf8ccff676f9864407734f30425119d8164736f6c63430008090033",
|
474
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e3660046118ae565b61005a565b604051610051929190611ac0565b60405180910390f35b6100626117e3565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611f63565b91506100bf36879003870187612066565b905060006100d060208701876120fd565b905061188c61ffff8216604514806100ec575061ffff82166050145b156100fa57506103096102eb565b604661ffff831610801590610122575061011660096046612137565b61ffff168261ffff1611155b1561013057506104226102eb565b606761ffff831610801590610158575061014c60026067612137565b61ffff168261ffff1611155b1561016657506105056102eb565b606a61ffff8316108015906101805750607861ffff831611155b1561018e575061056d6102eb565b605161ffff8316108015906101b657506101aa60096051612137565b61ffff168261ffff1611155b156101c4575061075a6102eb565b607961ffff8316108015906101ec57506101e060026079612137565b61ffff168261ffff1611155b156101fa57506107bf6102eb565b607c61ffff8316108015906102145750608a61ffff831611155b1561022257506108126102eb565b61ffff821660a7141561023857506109cd6102eb565b61ffff821660ac148061024f575061ffff821660ad145b1561025d57506109ee6102eb565b60c061ffff831610801590610277575060c461ffff831611155b156102855750610a426102eb565b60bc61ffff83161080159061029f575060bf61ffff831611155b156102ad5750610c576102eb565b60405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f4f50434f444560901b60448201526064015b60405180910390fd5b6102fc84848989898663ffffffff16565b5050965096945050505050565b60006103188660200151610de2565b9050604561032960208601866120fd565b61ffff16141561036a5760008151600681111561034857610348611991565b146103655760405162461bcd60e51b81526004016102e29061215d565b6103e7565b605061037960208601866120fd565b61ffff1614156103b55760018151600681111561039857610398611991565b146103655760405162461bcd60e51b81526004016102e29061217e565b60405162461bcd60e51b81526020600482015260076024820152662120a22fa2a8ad60c91b60448201526064016102e2565b60008160200151600014156103fe57506001610402565b5060005b61041961040e82610e07565b602089015190610e3a565b50505050505050565b60006104396104348760200151610de2565b610e4a565b9050600061044d6104348860200151610de2565b90506000604661046060208801886120fd565b61046a919061219f565b905060008061ffff831660021480610486575061ffff83166004145b80610495575061ffff83166006145b806104a4575061ffff83166008145b156104c4576104b284610ec1565b91506104bd85610ec1565b90506104d2565b505063ffffffff8083169084165b60006104df838386610eed565b90506104f86104ed82611096565b60208d015190610e3a565b5050505050505050505050565b60006105176104348760200151610de2565b90506000606761052a60208701876120fd565b610534919061219f565b9050600061054a8363ffffffff168360206110c9565b905061056361055882610e07565b60208a015190610e3a565b5050505050505050565b600061057f6104348760200151610de2565b905060006105936104348860200151610de2565b9050600080606a6105a760208901896120fd565b6105b1919061219f565b90508061ffff166003141561062f5763ffffffff841615806105e957508260030b637fffffff191480156105e957508360030b600019145b15610612578860025b9081600381111561060557610605611991565b8152505050505050610753565b8360030b8360030b81610627576106276121c2565b059150610737565b8061ffff166005141561066c5763ffffffff841661064f578860026105f2565b8360030b8360030b81610664576106646121c2565b079150610737565b8061ffff16600a141561068c5763ffffffff8316601f85161b9150610737565b8061ffff16600c14156106ac5763ffffffff8316601f85161c9150610737565b8061ffff16600b14156106ca57600383900b601f85161d9150610737565b8061ffff16600d14156106e8576106e1838561128d565b9150610737565b8061ffff16600e14156106ff576106e183856112cf565b6000806107198563ffffffff168763ffffffff1685611311565b915091508015610733575050600289525061075392505050565b5091505b61074e61074383610e07565b60208b015190610e3a565b505050505b5050505050565b600061077161076c8760200151610de2565b611497565b9050600061078561076c8860200151610de2565b90506000605161079860208801886120fd565b6107a2919061219f565b905060006107b1838584610eed565b905061074e61074382611096565b60006107d161076c8760200151610de2565b9050600060796107e460208701876120fd565b6107ee919061219f565b905060006107fe838360406110c9565b63ffffffff1690506105636105588261150e565b600061082461076c8760200151610de2565b9050600061083861076c8860200151610de2565b9050600080607c61084c60208901896120fd565b610856919061219f565b90508061ffff16600314156108bf576001600160401b038416158061089557508260070b677fffffffffffffff1914801561089557508360070b600019145b156108a2578860026105f2565b8360070b8360070b816108b7576108b76121c2565b0591506109c1565b8061ffff16600514156108ff576001600160401b0384166108e2578860026105f2565b8360070b8360070b816108f7576108f76121c2565b0791506109c1565b8061ffff16600a1415610922576001600160401b038316603f85161b91506109c1565b8061ffff16600c1415610945576001600160401b038316603f85161c91506109c1565b8061ffff16600b141561096357600783900b603f85161d91506109c1565b8061ffff16600d14156109815761097a8385611544565b91506109c1565b8061ffff16600e14156109985761097a8385611592565b60006109a5848684611311565b909350905080156109bf5750506002885250610753915050565b505b61074e6107438361150e565b60006109df61076c8760200151610de2565b90508061041961040e82610e07565b6000610a006104348760200151610de2565b9050600060ac610a1360208701876120fd565b61ffff161415610a2d57610a2682610ec1565b9050610a36565b5063ffffffff81165b61041961040e8261150e565b60008060c0610a5460208701876120fd565b61ffff161415610a6a5750600090506008610b41565b60c1610a7960208701876120fd565b61ffff161415610a8f5750600090506010610b41565b60c2610a9e60208701876120fd565b61ffff161415610ab45750600190506008610b41565b60c3610ac360208701876120fd565b61ffff161415610ad95750600190506010610b41565b60c4610ae860208701876120fd565b61ffff161415610afe5750600190506020610b41565b60405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f455854454e445f53414d455f5459504560401b60448201526064016102e2565b600080836006811115610b5657610b56611991565b1415610b67575063ffffffff610b71565b506001600160401b035b6000610b808960200151610de2565b9050836006811115610b9457610b94611991565b81516006811115610ba757610ba7611991565b14610bf05760405162461bcd60e51b81526020600482015260196024820152784241445f455854454e445f53414d455f545950455f5459504560381b60448201526064016102e2565b6000610c03600160ff861681901b6121d8565b602083018051821690529050610c1a6001856121ef565b60ff166001901b826020015116600014610c3c57602082018051821985161790525b60208a0151610c4b9083610e3a565b50505050505050505050565b60008060bc610c6960208701876120fd565b61ffff161415610c7f5750600090506002610d2c565b60bd610c8e60208701876120fd565b61ffff161415610ca45750600190506003610d2c565b60be610cb360208701876120fd565b61ffff161415610cc95750600290506000610d2c565b60bf610cd860208701876120fd565b61ffff161415610cee5750600390506001610d2c565b60405162461bcd60e51b81526020600482015260136024820152721253959053125117d491525395115494149155606a1b60448201526064016102e2565b6000610d3b8860200151610de2565b9050816006811115610d4f57610d4f611991565b81516006811115610d6257610d62611991565b14610daa5760405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f5245494e544552505245545f5459504560401b60448201526064016102e2565b80836006811115610dbd57610dbd611991565b90816006811115610dd057610dd0611991565b90525060208801516105639082610e3a565b60408051808201909152600080825260208201528151610e01906115e0565b92915050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b8151610e4690826116f0565b5050565b60208101516000908183516006811115610e6657610e66611991565b14610e835760405162461bcd60e51b81526004016102e29061215d565b6401000000008110610e015760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016102e2565b60006380000000821615610ee3575063ffffffff1667ffffffff000000001790565b5063ffffffff1690565b600061ffff8216610f1457826001600160401b0316846001600160401b031614905061108f565b61ffff821660011415610f3e57826001600160401b0316846001600160401b03161415905061108f565b61ffff821660021415610f5b578260070b8460070b12905061108f565b61ffff821660031415610f8457826001600160401b0316846001600160401b031610905061108f565b61ffff821660041415610fa1578260070b8460070b13905061108f565b61ffff821660051415610fca57826001600160401b0316846001600160401b031611905061108f565b61ffff821660061415610fe8578260070b8460070b1315905061108f565b61ffff82166007141561101257826001600160401b0316846001600160401b03161115905061108f565b61ffff821660081415611030578260070b8460070b1215905061108f565b61ffff82166009141561105a57826001600160401b0316846001600160401b03161015905061108f565b60405162461bcd60e51b815260206004820152600a6024820152690424144204952454c4f560b41b60448201526064016102e2565b9392505050565b604080518082019091526000808252602082015281156110ba57610e016001610e07565b610e016000610e07565b919050565b60008161ffff16602014806110e257508161ffff166040145b6111295760405162461bcd60e51b8152602060048201526018602482015277057524f4e4720555345204f462067656e65726963556e4f760441b60448201526064016102e2565b61ffff831661119a5761ffff82165b60008163ffffffff1611801561116d5750611154600182612212565b63ffffffff166001901b856001600160401b0316166000145b156111845761117d600182612212565b9050611138565b6111928161ffff8516612212565b91505061108f565b61ffff8316600114156111f35760005b8261ffff168163ffffffff161080156111d55750600163ffffffff82161b85166001600160401b0316155b156111ec576111e560018261222f565b90506111aa565b905061108f565b61ffff831660021415611259576000805b8361ffff168263ffffffff16101561125057600163ffffffff83161b86166001600160401b03161561123e5761123b60018261222f565b90505b816112488161224e565b925050611204565b915061108f9050565b60405162461bcd60e51b815260206004820152600960248201526804241442049556e4f760bc1b60448201526064016102e2565b600061129a602083612272565b91506112a7826020612212565b63ffffffff168363ffffffff16901c8263ffffffff168463ffffffff16901b17905092915050565b60006112dc602083612272565b91506112e9826020612212565b63ffffffff168363ffffffff16901b8263ffffffff168463ffffffff16901c17905092915050565b60008061ffff8316611329575050828201600061148f565b8261ffff1660011415611342575050818303600061148f565b8261ffff166002141561135b575050828202600061148f565b8261ffff16600414156113af576001600160401b038416611382575060009050600161148f565b836001600160401b0316856001600160401b0316816113a3576113a36121c2565b0460009150915061148f565b8261ffff1660061415611403576001600160401b0384166113d6575060009050600161148f565b836001600160401b0316856001600160401b0316816113f7576113f76121c2565b0660009150915061148f565b8261ffff166007141561141c575050828216600061148f565b8261ffff1660081415611435575050828217600061148f565b8261ffff166009141561144e575050828218600061148f565b60405162461bcd60e51b81526020600482015260166024820152750494e56414c49445f47454e455249435f42494e5f4f560541b60448201526064016102e2565b935093915050565b60208101516000906001835160068111156114b4576114b4611991565b146114d15760405162461bcd60e51b81526004016102e29061217e565b600160401b8110610e015760405162461bcd60e51b815260206004820152600760248201526610905117d24d8d60ca1b60448201526064016102e2565b60408051808201909152600080825260208201525060408051808201909152600181526001600160401b03909116602082015290565b6000611551604083612295565b915061155e8260406122af565b6001600160401b0316836001600160401b0316901c826001600160401b0316846001600160401b0316901b17905092915050565b600061159f604083612295565b91506115ac8260406122af565b6001600160401b0316836001600160401b0316901b826001600160401b0316846001600160401b0316901c17905092915050565b604080518082019091526000808252602082015281518051611604906001906121d8565b81518110611614576116146122cf565b602002602001015190506000600183600001515161163291906121d8565b6001600160401b0381111561164957611649611be8565b60405190808252806020026020018201604052801561168e57816020015b60408051808201909152600080825260208201528152602001906001900390816116675790505b50905060005b81518110156116e95783518051829081106116b1576116b16122cf565b60200260200101518282815181106116cb576116cb6122cf565b602002602001018190525080806116e1906122e5565b915050611694565b5090915290565b815151600090611701906001612300565b6001600160401b0381111561171857611718611be8565b60405190808252806020026020018201604052801561175d57816020015b60408051808201909152600080825260208201528152602001906001900390816117365790505b50905060005b8351518110156117b9578351805182908110611781576117816122cf565b602002602001015182828151811061179b5761179b6122cf565b602002602001018190525080806117b1906122e5565b915050611763565b508181846000015151815181106117d2576117d26122cf565b602090810291909101015290915250565b604080516101208101909152806000815260200161181860408051606080820183529181019182529081526000602082015290565b815260200161183e60408051606080820183529181019182529081526000602082015290565b8152602001611863604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611894612318565b565b6000604082840312156118a857600080fd5b50919050565b6000806000806000808688036101a08112156118c957600080fd5b6118d38989611896565b965060408801356001600160401b03808211156118ef57600080fd5b90890190610120828c03121561190457600080fd5b81975060e0605f198401121561191957600080fd5b60608a01965061192d8b6101408c01611896565b95506101808a013592508083111561194457600080fd5b828a0192508a601f84011261195857600080fd5b823591508082111561196957600080fd5b5089602082840101111561197c57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b600481106119b7576119b7611991565b9052565b8051600781106119cd576119cd611991565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611a2a57611a168286516119bb565b938201936001939093019290850190611a03565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b82811015611aa9578451611a758582516119bb565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a090930192600101611a60565b509687015197909601969096525093949350505050565b6000610100808352611ad581840186516119a7565b602085015161012084810152611aef6102208501826119da565b9050604086015160ff198086840301610140870152611b0e83836119da565b925060608801519150808684030161016087015250611b2d8282611a3e565b915050608086015161018085015260a0860151611b536101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e08601525090850151610200840152905061108f60208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611c2057611c20611be8565b60405290565b604051602081016001600160401b0381118282101715611c2057611c20611be8565b604051608081016001600160401b0381118282101715611c2057611c20611be8565b60405161012081016001600160401b0381118282101715611c2057611c20611be8565b60405160a081016001600160401b0381118282101715611c2057611c20611be8565b604051606081016001600160401b0381118282101715611c2057611c20611be8565b604051601f8201601f191681016001600160401b0381118282101715611cf957611cf9611be8565b604052919050565b8035600481106110c457600080fd5b60006001600160401b03821115611d2957611d29611be8565b5060051b60200190565b600060408284031215611d4557600080fd5b611d4d611bfe565b9050813560078110611d5e57600080fd5b808252506020820135602082015292915050565b60006040808385031215611d8557600080fd5b611d8d611bfe565b915082356001600160401b0380821115611da657600080fd5b81850191506020808388031215611dbc57600080fd5b611dc4611c26565b833583811115611dd357600080fd5b80850194505087601f850112611de857600080fd5b83359250611dfd611df884611d10565b611cd1565b83815260069390931b84018201928281019089851115611e1c57600080fd5b948301945b84861015611e4257611e338a87611d33565b82529486019490830190611e21565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146110c457600080fd5b60006040808385031215611e8257600080fd5b611e8a611bfe565b915082356001600160401b03811115611ea257600080fd5b8301601f81018513611eb357600080fd5b80356020611ec3611df883611d10565b82815260a09283028401820192828201919089851115611ee257600080fd5b948301945b84861015611f4b5780868b031215611eff5760008081fd5b611f07611c48565b611f118b88611d33565b815287870135858201526060611f28818901611e5b565b89830152611f3860808901611e5b565b9082015283529485019491830191611ee7565b50808752505080860135818601525050505092915050565b60006101208236031215611f7657600080fd5b611f7e611c6a565b611f8783611d01565b815260208301356001600160401b0380821115611fa357600080fd5b611faf36838701611d72565b60208401526040850135915080821115611fc857600080fd5b611fd436838701611d72565b60408401526060850135915080821115611fed57600080fd5b50611ffa36828601611e6f565b6060830152506080830135608082015261201660a08401611e5b565b60a082015261202760c08401611e5b565b60c082015261203860e08401611e5b565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146110c457600080fd5b600081830360e081121561207957600080fd5b612081611c8d565b833581526060601f198301121561209757600080fd5b61209f611caf565b91506120ad6020850161204f565b82526120bb6040850161204f565b6020830152606084013560408301528160208201526080840135604082015260a084013560608201526120f060c08501611e5b565b6080820152949350505050565b60006020828403121561210f57600080fd5b813561ffff8116811461108f57600080fd5b634e487b7160e01b600052601160045260246000fd5b600061ffff80831681851680830382111561215457612154612121565b01949350505050565b6020808252600790820152662727aa2fa4999960c91b604082015260600190565b6020808252600790820152661393d517d24d8d60ca1b604082015260600190565b600061ffff838116908316818110156121ba576121ba612121565b039392505050565b634e487b7160e01b600052601260045260246000fd5b6000828210156121ea576121ea612121565b500390565b600060ff821660ff84168082101561220957612209612121565b90039392505050565b600063ffffffff838116908316818110156121ba576121ba612121565b600063ffffffff80831681851680830382111561215457612154612121565b600063ffffffff8083168181141561226857612268612121565b6001019392505050565b600063ffffffff80841680612289576122896121c2565b92169190910692915050565b60006001600160401b0380841680612289576122896121c2565b60006001600160401b03838116908316818110156121ba576121ba612121565b634e487b7160e01b600052603260045260246000fd5b60006000198214156122f9576122f9612121565b5060010190565b6000821982111561231357612313612121565b500190565b634e487b7160e01b600052605160045260246000fdfea264697066735822122085483be6f9ef63b127b1efde4e926ffbf8ccff676f9864407734f30425119d8164736f6c63430008090033",
|
473
|
+
"bytecode": "0x608060405234801561001057600080fd5b50612364806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e3660046118ae565b61005a565b604051610051929190611ac0565b60405180910390f35b6100626117e3565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611f63565b91506100bf36879003870187612066565b905060006100d060208701876120fd565b905061188c61ffff8216604514806100ec575061ffff82166050145b156100fa57506103096102eb565b604661ffff831610801590610122575061011660096046612137565b61ffff168261ffff1611155b1561013057506104226102eb565b606761ffff831610801590610158575061014c60026067612137565b61ffff168261ffff1611155b1561016657506105056102eb565b606a61ffff8316108015906101805750607861ffff831611155b1561018e575061056d6102eb565b605161ffff8316108015906101b657506101aa60096051612137565b61ffff168261ffff1611155b156101c4575061075a6102eb565b607961ffff8316108015906101ec57506101e060026079612137565b61ffff168261ffff1611155b156101fa57506107bf6102eb565b607c61ffff8316108015906102145750608a61ffff831611155b1561022257506108126102eb565b61ffff821660a7141561023857506109cd6102eb565b61ffff821660ac148061024f575061ffff821660ad145b1561025d57506109ee6102eb565b60c061ffff831610801590610277575060c461ffff831611155b156102855750610a426102eb565b60bc61ffff83161080159061029f575060bf61ffff831611155b156102ad5750610c576102eb565b60405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f4f50434f444560901b60448201526064015b60405180910390fd5b6102fc84848989898663ffffffff16565b5050965096945050505050565b60006103188660200151610de2565b9050604561032960208601866120fd565b61ffff16141561036a5760008151600681111561034857610348611991565b146103655760405162461bcd60e51b81526004016102e29061215d565b6103e7565b605061037960208601866120fd565b61ffff1614156103b55760018151600681111561039857610398611991565b146103655760405162461bcd60e51b81526004016102e29061217e565b60405162461bcd60e51b81526020600482015260076024820152662120a22fa2a8ad60c91b60448201526064016102e2565b60008160200151600014156103fe57506001610402565b5060005b61041961040e82610e07565b602089015190610e3a565b50505050505050565b60006104396104348760200151610de2565b610e4a565b9050600061044d6104348860200151610de2565b90506000604661046060208801886120fd565b61046a919061219f565b905060008061ffff831660021480610486575061ffff83166004145b80610495575061ffff83166006145b806104a4575061ffff83166008145b156104c4576104b284610ec1565b91506104bd85610ec1565b90506104d2565b505063ffffffff8083169084165b60006104df838386610eed565b90506104f86104ed82611096565b60208d015190610e3a565b5050505050505050505050565b60006105176104348760200151610de2565b90506000606761052a60208701876120fd565b610534919061219f565b9050600061054a8363ffffffff168360206110c9565b905061056361055882610e07565b60208a015190610e3a565b5050505050505050565b600061057f6104348760200151610de2565b905060006105936104348860200151610de2565b9050600080606a6105a760208901896120fd565b6105b1919061219f565b90508061ffff166003141561062f5763ffffffff841615806105e957508260030b637fffffff191480156105e957508360030b600019145b15610612578860025b9081600381111561060557610605611991565b8152505050505050610753565b8360030b8360030b81610627576106276121c2565b059150610737565b8061ffff166005141561066c5763ffffffff841661064f578860026105f2565b8360030b8360030b81610664576106646121c2565b079150610737565b8061ffff16600a141561068c5763ffffffff8316601f85161b9150610737565b8061ffff16600c14156106ac5763ffffffff8316601f85161c9150610737565b8061ffff16600b14156106ca57600383900b601f85161d9150610737565b8061ffff16600d14156106e8576106e1838561128d565b9150610737565b8061ffff16600e14156106ff576106e183856112cf565b6000806107198563ffffffff168763ffffffff1685611311565b915091508015610733575050600289525061075392505050565b5091505b61074e61074383610e07565b60208b015190610e3a565b505050505b5050505050565b600061077161076c8760200151610de2565b611497565b9050600061078561076c8860200151610de2565b90506000605161079860208801886120fd565b6107a2919061219f565b905060006107b1838584610eed565b905061074e61074382611096565b60006107d161076c8760200151610de2565b9050600060796107e460208701876120fd565b6107ee919061219f565b905060006107fe838360406110c9565b63ffffffff1690506105636105588261150e565b600061082461076c8760200151610de2565b9050600061083861076c8860200151610de2565b9050600080607c61084c60208901896120fd565b610856919061219f565b90508061ffff16600314156108bf576001600160401b038416158061089557508260070b677fffffffffffffff1914801561089557508360070b600019145b156108a2578860026105f2565b8360070b8360070b816108b7576108b76121c2565b0591506109c1565b8061ffff16600514156108ff576001600160401b0384166108e2578860026105f2565b8360070b8360070b816108f7576108f76121c2565b0791506109c1565b8061ffff16600a1415610922576001600160401b038316603f85161b91506109c1565b8061ffff16600c1415610945576001600160401b038316603f85161c91506109c1565b8061ffff16600b141561096357600783900b603f85161d91506109c1565b8061ffff16600d14156109815761097a8385611544565b91506109c1565b8061ffff16600e14156109985761097a8385611592565b60006109a5848684611311565b909350905080156109bf5750506002885250610753915050565b505b61074e6107438361150e565b60006109df61076c8760200151610de2565b90508061041961040e82610e07565b6000610a006104348760200151610de2565b9050600060ac610a1360208701876120fd565b61ffff161415610a2d57610a2682610ec1565b9050610a36565b5063ffffffff81165b61041961040e8261150e565b60008060c0610a5460208701876120fd565b61ffff161415610a6a5750600090506008610b41565b60c1610a7960208701876120fd565b61ffff161415610a8f5750600090506010610b41565b60c2610a9e60208701876120fd565b61ffff161415610ab45750600190506008610b41565b60c3610ac360208701876120fd565b61ffff161415610ad95750600190506010610b41565b60c4610ae860208701876120fd565b61ffff161415610afe5750600190506020610b41565b60405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f455854454e445f53414d455f5459504560401b60448201526064016102e2565b600080836006811115610b5657610b56611991565b1415610b67575063ffffffff610b71565b506001600160401b035b6000610b808960200151610de2565b9050836006811115610b9457610b94611991565b81516006811115610ba757610ba7611991565b14610bf05760405162461bcd60e51b81526020600482015260196024820152784241445f455854454e445f53414d455f545950455f5459504560381b60448201526064016102e2565b6000610c03600160ff861681901b6121d8565b602083018051821690529050610c1a6001856121ef565b60ff166001901b826020015116600014610c3c57602082018051821985161790525b60208a0151610c4b9083610e3a565b50505050505050505050565b60008060bc610c6960208701876120fd565b61ffff161415610c7f5750600090506002610d2c565b60bd610c8e60208701876120fd565b61ffff161415610ca45750600190506003610d2c565b60be610cb360208701876120fd565b61ffff161415610cc95750600290506000610d2c565b60bf610cd860208701876120fd565b61ffff161415610cee5750600390506001610d2c565b60405162461bcd60e51b81526020600482015260136024820152721253959053125117d491525395115494149155606a1b60448201526064016102e2565b6000610d3b8860200151610de2565b9050816006811115610d4f57610d4f611991565b81516006811115610d6257610d62611991565b14610daa5760405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f5245494e544552505245545f5459504560401b60448201526064016102e2565b80836006811115610dbd57610dbd611991565b90816006811115610dd057610dd0611991565b90525060208801516105639082610e3a565b60408051808201909152600080825260208201528151610e01906115e0565b92915050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b8151610e4690826116f0565b5050565b60208101516000908183516006811115610e6657610e66611991565b14610e835760405162461bcd60e51b81526004016102e29061215d565b6401000000008110610e015760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016102e2565b60006380000000821615610ee3575063ffffffff1667ffffffff000000001790565b5063ffffffff1690565b600061ffff8216610f1457826001600160401b0316846001600160401b031614905061108f565b61ffff821660011415610f3e57826001600160401b0316846001600160401b03161415905061108f565b61ffff821660021415610f5b578260070b8460070b12905061108f565b61ffff821660031415610f8457826001600160401b0316846001600160401b031610905061108f565b61ffff821660041415610fa1578260070b8460070b13905061108f565b61ffff821660051415610fca57826001600160401b0316846001600160401b031611905061108f565b61ffff821660061415610fe8578260070b8460070b1315905061108f565b61ffff82166007141561101257826001600160401b0316846001600160401b03161115905061108f565b61ffff821660081415611030578260070b8460070b1215905061108f565b61ffff82166009141561105a57826001600160401b0316846001600160401b03161015905061108f565b60405162461bcd60e51b815260206004820152600a6024820152690424144204952454c4f560b41b60448201526064016102e2565b9392505050565b604080518082019091526000808252602082015281156110ba57610e016001610e07565b610e016000610e07565b919050565b60008161ffff16602014806110e257508161ffff166040145b6111295760405162461bcd60e51b8152602060048201526018602482015277057524f4e4720555345204f462067656e65726963556e4f760441b60448201526064016102e2565b61ffff831661119a5761ffff82165b60008163ffffffff1611801561116d5750611154600182612212565b63ffffffff166001901b856001600160401b0316166000145b156111845761117d600182612212565b9050611138565b6111928161ffff8516612212565b91505061108f565b61ffff8316600114156111f35760005b8261ffff168163ffffffff161080156111d55750600163ffffffff82161b85166001600160401b0316155b156111ec576111e560018261222f565b90506111aa565b905061108f565b61ffff831660021415611259576000805b8361ffff168263ffffffff16101561125057600163ffffffff83161b86166001600160401b03161561123e5761123b60018261222f565b90505b816112488161224e565b925050611204565b915061108f9050565b60405162461bcd60e51b815260206004820152600960248201526804241442049556e4f760bc1b60448201526064016102e2565b600061129a602083612272565b91506112a7826020612212565b63ffffffff168363ffffffff16901c8263ffffffff168463ffffffff16901b17905092915050565b60006112dc602083612272565b91506112e9826020612212565b63ffffffff168363ffffffff16901b8263ffffffff168463ffffffff16901c17905092915050565b60008061ffff8316611329575050828201600061148f565b8261ffff1660011415611342575050818303600061148f565b8261ffff166002141561135b575050828202600061148f565b8261ffff16600414156113af576001600160401b038416611382575060009050600161148f565b836001600160401b0316856001600160401b0316816113a3576113a36121c2565b0460009150915061148f565b8261ffff1660061415611403576001600160401b0384166113d6575060009050600161148f565b836001600160401b0316856001600160401b0316816113f7576113f76121c2565b0660009150915061148f565b8261ffff166007141561141c575050828216600061148f565b8261ffff1660081415611435575050828217600061148f565b8261ffff166009141561144e575050828218600061148f565b60405162461bcd60e51b81526020600482015260166024820152750494e56414c49445f47454e455249435f42494e5f4f560541b60448201526064016102e2565b935093915050565b60208101516000906001835160068111156114b4576114b4611991565b146114d15760405162461bcd60e51b81526004016102e29061217e565b600160401b8110610e015760405162461bcd60e51b815260206004820152600760248201526610905117d24d8d60ca1b60448201526064016102e2565b60408051808201909152600080825260208201525060408051808201909152600181526001600160401b03909116602082015290565b6000611551604083612295565b915061155e8260406122af565b6001600160401b0316836001600160401b0316901c826001600160401b0316846001600160401b0316901b17905092915050565b600061159f604083612295565b91506115ac8260406122af565b6001600160401b0316836001600160401b0316901b826001600160401b0316846001600160401b0316901c17905092915050565b604080518082019091526000808252602082015281518051611604906001906121d8565b81518110611614576116146122cf565b602002602001015190506000600183600001515161163291906121d8565b6001600160401b0381111561164957611649611be8565b60405190808252806020026020018201604052801561168e57816020015b60408051808201909152600080825260208201528152602001906001900390816116675790505b50905060005b81518110156116e95783518051829081106116b1576116b16122cf565b60200260200101518282815181106116cb576116cb6122cf565b602002602001018190525080806116e1906122e5565b915050611694565b5090915290565b815151600090611701906001612300565b6001600160401b0381111561171857611718611be8565b60405190808252806020026020018201604052801561175d57816020015b60408051808201909152600080825260208201528152602001906001900390816117365790505b50905060005b8351518110156117b9578351805182908110611781576117816122cf565b602002602001015182828151811061179b5761179b6122cf565b602002602001018190525080806117b1906122e5565b915050611763565b508181846000015151815181106117d2576117d26122cf565b602090810291909101015290915250565b604080516101208101909152806000815260200161181860408051606080820183529181019182529081526000602082015290565b815260200161183e60408051606080820183529181019182529081526000602082015290565b8152602001611863604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611894612318565b565b6000604082840312156118a857600080fd5b50919050565b6000806000806000808688036101a08112156118c957600080fd5b6118d38989611896565b965060408801356001600160401b03808211156118ef57600080fd5b90890190610120828c03121561190457600080fd5b81975060e0605f198401121561191957600080fd5b60608a01965061192d8b6101408c01611896565b95506101808a013592508083111561194457600080fd5b828a0192508a601f84011261195857600080fd5b823591508082111561196957600080fd5b5089602082840101111561197c57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b600481106119b7576119b7611991565b9052565b8051600781106119cd576119cd611991565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611a2a57611a168286516119bb565b938201936001939093019290850190611a03565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b82811015611aa9578451611a758582516119bb565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a090930192600101611a60565b509687015197909601969096525093949350505050565b6000610100808352611ad581840186516119a7565b602085015161012084810152611aef6102208501826119da565b9050604086015160ff198086840301610140870152611b0e83836119da565b925060608801519150808684030161016087015250611b2d8282611a3e565b915050608086015161018085015260a0860151611b536101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e08601525090850151610200840152905061108f60208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611c2057611c20611be8565b60405290565b604051602081016001600160401b0381118282101715611c2057611c20611be8565b604051608081016001600160401b0381118282101715611c2057611c20611be8565b60405161012081016001600160401b0381118282101715611c2057611c20611be8565b60405160a081016001600160401b0381118282101715611c2057611c20611be8565b604051606081016001600160401b0381118282101715611c2057611c20611be8565b604051601f8201601f191681016001600160401b0381118282101715611cf957611cf9611be8565b604052919050565b8035600481106110c457600080fd5b60006001600160401b03821115611d2957611d29611be8565b5060051b60200190565b600060408284031215611d4557600080fd5b611d4d611bfe565b9050813560078110611d5e57600080fd5b808252506020820135602082015292915050565b60006040808385031215611d8557600080fd5b611d8d611bfe565b915082356001600160401b0380821115611da657600080fd5b81850191506020808388031215611dbc57600080fd5b611dc4611c26565b833583811115611dd357600080fd5b80850194505087601f850112611de857600080fd5b83359250611dfd611df884611d10565b611cd1565b83815260069390931b84018201928281019089851115611e1c57600080fd5b948301945b84861015611e4257611e338a87611d33565b82529486019490830190611e21565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146110c457600080fd5b60006040808385031215611e8257600080fd5b611e8a611bfe565b915082356001600160401b03811115611ea257600080fd5b8301601f81018513611eb357600080fd5b80356020611ec3611df883611d10565b82815260a09283028401820192828201919089851115611ee257600080fd5b948301945b84861015611f4b5780868b031215611eff5760008081fd5b611f07611c48565b611f118b88611d33565b815287870135858201526060611f28818901611e5b565b89830152611f3860808901611e5b565b9082015283529485019491830191611ee7565b50808752505080860135818601525050505092915050565b60006101208236031215611f7657600080fd5b611f7e611c6a565b611f8783611d01565b815260208301356001600160401b0380821115611fa357600080fd5b611faf36838701611d72565b60208401526040850135915080821115611fc857600080fd5b611fd436838701611d72565b60408401526060850135915080821115611fed57600080fd5b50611ffa36828601611e6f565b6060830152506080830135608082015261201660a08401611e5b565b60a082015261202760c08401611e5b565b60c082015261203860e08401611e5b565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146110c457600080fd5b600081830360e081121561207957600080fd5b612081611c8d565b833581526060601f198301121561209757600080fd5b61209f611caf565b91506120ad6020850161204f565b82526120bb6040850161204f565b6020830152606084013560408301528160208201526080840135604082015260a084013560608201526120f060c08501611e5b565b6080820152949350505050565b60006020828403121561210f57600080fd5b813561ffff8116811461108f57600080fd5b634e487b7160e01b600052601160045260246000fd5b600061ffff80831681851680830382111561215457612154612121565b01949350505050565b6020808252600790820152662727aa2fa4999960c91b604082015260600190565b6020808252600790820152661393d517d24d8d60ca1b604082015260600190565b600061ffff838116908316818110156121ba576121ba612121565b039392505050565b634e487b7160e01b600052601260045260246000fd5b6000828210156121ea576121ea612121565b500390565b600060ff821660ff84168082101561220957612209612121565b90039392505050565b600063ffffffff838116908316818110156121ba576121ba612121565b600063ffffffff80831681851680830382111561215457612154612121565b600063ffffffff8083168181141561226857612268612121565b6001019392505050565b600063ffffffff80841680612289576122896121c2565b92169190910692915050565b60006001600160401b0380841680612289576122896121c2565b60006001600160401b03838116908316818110156121ba576121ba612121565b634e487b7160e01b600052603260045260246000fd5b60006000198214156122f9576122f9612121565b5060010190565b6000821982111561231357612313612121565b500190565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220051d50532524766c3941af4319fee3c679926d63474437b2bfa4e288239b9cff64736f6c63430008090033",
|
474
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e3660046118ae565b61005a565b604051610051929190611ac0565b60405180910390f35b6100626117e3565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611f63565b91506100bf36879003870187612066565b905060006100d060208701876120fd565b905061188c61ffff8216604514806100ec575061ffff82166050145b156100fa57506103096102eb565b604661ffff831610801590610122575061011660096046612137565b61ffff168261ffff1611155b1561013057506104226102eb565b606761ffff831610801590610158575061014c60026067612137565b61ffff168261ffff1611155b1561016657506105056102eb565b606a61ffff8316108015906101805750607861ffff831611155b1561018e575061056d6102eb565b605161ffff8316108015906101b657506101aa60096051612137565b61ffff168261ffff1611155b156101c4575061075a6102eb565b607961ffff8316108015906101ec57506101e060026079612137565b61ffff168261ffff1611155b156101fa57506107bf6102eb565b607c61ffff8316108015906102145750608a61ffff831611155b1561022257506108126102eb565b61ffff821660a7141561023857506109cd6102eb565b61ffff821660ac148061024f575061ffff821660ad145b1561025d57506109ee6102eb565b60c061ffff831610801590610277575060c461ffff831611155b156102855750610a426102eb565b60bc61ffff83161080159061029f575060bf61ffff831611155b156102ad5750610c576102eb565b60405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f4f50434f444560901b60448201526064015b60405180910390fd5b6102fc84848989898663ffffffff16565b5050965096945050505050565b60006103188660200151610de2565b9050604561032960208601866120fd565b61ffff16141561036a5760008151600681111561034857610348611991565b146103655760405162461bcd60e51b81526004016102e29061215d565b6103e7565b605061037960208601866120fd565b61ffff1614156103b55760018151600681111561039857610398611991565b146103655760405162461bcd60e51b81526004016102e29061217e565b60405162461bcd60e51b81526020600482015260076024820152662120a22fa2a8ad60c91b60448201526064016102e2565b60008160200151600014156103fe57506001610402565b5060005b61041961040e82610e07565b602089015190610e3a565b50505050505050565b60006104396104348760200151610de2565b610e4a565b9050600061044d6104348860200151610de2565b90506000604661046060208801886120fd565b61046a919061219f565b905060008061ffff831660021480610486575061ffff83166004145b80610495575061ffff83166006145b806104a4575061ffff83166008145b156104c4576104b284610ec1565b91506104bd85610ec1565b90506104d2565b505063ffffffff8083169084165b60006104df838386610eed565b90506104f86104ed82611096565b60208d015190610e3a565b5050505050505050505050565b60006105176104348760200151610de2565b90506000606761052a60208701876120fd565b610534919061219f565b9050600061054a8363ffffffff168360206110c9565b905061056361055882610e07565b60208a015190610e3a565b5050505050505050565b600061057f6104348760200151610de2565b905060006105936104348860200151610de2565b9050600080606a6105a760208901896120fd565b6105b1919061219f565b90508061ffff166003141561062f5763ffffffff841615806105e957508260030b637fffffff191480156105e957508360030b600019145b15610612578860025b9081600381111561060557610605611991565b8152505050505050610753565b8360030b8360030b81610627576106276121c2565b059150610737565b8061ffff166005141561066c5763ffffffff841661064f578860026105f2565b8360030b8360030b81610664576106646121c2565b079150610737565b8061ffff16600a141561068c5763ffffffff8316601f85161b9150610737565b8061ffff16600c14156106ac5763ffffffff8316601f85161c9150610737565b8061ffff16600b14156106ca57600383900b601f85161d9150610737565b8061ffff16600d14156106e8576106e1838561128d565b9150610737565b8061ffff16600e14156106ff576106e183856112cf565b6000806107198563ffffffff168763ffffffff1685611311565b915091508015610733575050600289525061075392505050565b5091505b61074e61074383610e07565b60208b015190610e3a565b505050505b5050505050565b600061077161076c8760200151610de2565b611497565b9050600061078561076c8860200151610de2565b90506000605161079860208801886120fd565b6107a2919061219f565b905060006107b1838584610eed565b905061074e61074382611096565b60006107d161076c8760200151610de2565b9050600060796107e460208701876120fd565b6107ee919061219f565b905060006107fe838360406110c9565b63ffffffff1690506105636105588261150e565b600061082461076c8760200151610de2565b9050600061083861076c8860200151610de2565b9050600080607c61084c60208901896120fd565b610856919061219f565b90508061ffff16600314156108bf576001600160401b038416158061089557508260070b677fffffffffffffff1914801561089557508360070b600019145b156108a2578860026105f2565b8360070b8360070b816108b7576108b76121c2565b0591506109c1565b8061ffff16600514156108ff576001600160401b0384166108e2578860026105f2565b8360070b8360070b816108f7576108f76121c2565b0791506109c1565b8061ffff16600a1415610922576001600160401b038316603f85161b91506109c1565b8061ffff16600c1415610945576001600160401b038316603f85161c91506109c1565b8061ffff16600b141561096357600783900b603f85161d91506109c1565b8061ffff16600d14156109815761097a8385611544565b91506109c1565b8061ffff16600e14156109985761097a8385611592565b60006109a5848684611311565b909350905080156109bf5750506002885250610753915050565b505b61074e6107438361150e565b60006109df61076c8760200151610de2565b90508061041961040e82610e07565b6000610a006104348760200151610de2565b9050600060ac610a1360208701876120fd565b61ffff161415610a2d57610a2682610ec1565b9050610a36565b5063ffffffff81165b61041961040e8261150e565b60008060c0610a5460208701876120fd565b61ffff161415610a6a5750600090506008610b41565b60c1610a7960208701876120fd565b61ffff161415610a8f5750600090506010610b41565b60c2610a9e60208701876120fd565b61ffff161415610ab45750600190506008610b41565b60c3610ac360208701876120fd565b61ffff161415610ad95750600190506010610b41565b60c4610ae860208701876120fd565b61ffff161415610afe5750600190506020610b41565b60405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f455854454e445f53414d455f5459504560401b60448201526064016102e2565b600080836006811115610b5657610b56611991565b1415610b67575063ffffffff610b71565b506001600160401b035b6000610b808960200151610de2565b9050836006811115610b9457610b94611991565b81516006811115610ba757610ba7611991565b14610bf05760405162461bcd60e51b81526020600482015260196024820152784241445f455854454e445f53414d455f545950455f5459504560381b60448201526064016102e2565b6000610c03600160ff861681901b6121d8565b602083018051821690529050610c1a6001856121ef565b60ff166001901b826020015116600014610c3c57602082018051821985161790525b60208a0151610c4b9083610e3a565b50505050505050505050565b60008060bc610c6960208701876120fd565b61ffff161415610c7f5750600090506002610d2c565b60bd610c8e60208701876120fd565b61ffff161415610ca45750600190506003610d2c565b60be610cb360208701876120fd565b61ffff161415610cc95750600290506000610d2c565b60bf610cd860208701876120fd565b61ffff161415610cee5750600390506001610d2c565b60405162461bcd60e51b81526020600482015260136024820152721253959053125117d491525395115494149155606a1b60448201526064016102e2565b6000610d3b8860200151610de2565b9050816006811115610d4f57610d4f611991565b81516006811115610d6257610d62611991565b14610daa5760405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f5245494e544552505245545f5459504560401b60448201526064016102e2565b80836006811115610dbd57610dbd611991565b90816006811115610dd057610dd0611991565b90525060208801516105639082610e3a565b60408051808201909152600080825260208201528151610e01906115e0565b92915050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b8151610e4690826116f0565b5050565b60208101516000908183516006811115610e6657610e66611991565b14610e835760405162461bcd60e51b81526004016102e29061215d565b6401000000008110610e015760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016102e2565b60006380000000821615610ee3575063ffffffff1667ffffffff000000001790565b5063ffffffff1690565b600061ffff8216610f1457826001600160401b0316846001600160401b031614905061108f565b61ffff821660011415610f3e57826001600160401b0316846001600160401b03161415905061108f565b61ffff821660021415610f5b578260070b8460070b12905061108f565b61ffff821660031415610f8457826001600160401b0316846001600160401b031610905061108f565b61ffff821660041415610fa1578260070b8460070b13905061108f565b61ffff821660051415610fca57826001600160401b0316846001600160401b031611905061108f565b61ffff821660061415610fe8578260070b8460070b1315905061108f565b61ffff82166007141561101257826001600160401b0316846001600160401b03161115905061108f565b61ffff821660081415611030578260070b8460070b1215905061108f565b61ffff82166009141561105a57826001600160401b0316846001600160401b03161015905061108f565b60405162461bcd60e51b815260206004820152600a6024820152690424144204952454c4f560b41b60448201526064016102e2565b9392505050565b604080518082019091526000808252602082015281156110ba57610e016001610e07565b610e016000610e07565b919050565b60008161ffff16602014806110e257508161ffff166040145b6111295760405162461bcd60e51b8152602060048201526018602482015277057524f4e4720555345204f462067656e65726963556e4f760441b60448201526064016102e2565b61ffff831661119a5761ffff82165b60008163ffffffff1611801561116d5750611154600182612212565b63ffffffff166001901b856001600160401b0316166000145b156111845761117d600182612212565b9050611138565b6111928161ffff8516612212565b91505061108f565b61ffff8316600114156111f35760005b8261ffff168163ffffffff161080156111d55750600163ffffffff82161b85166001600160401b0316155b156111ec576111e560018261222f565b90506111aa565b905061108f565b61ffff831660021415611259576000805b8361ffff168263ffffffff16101561125057600163ffffffff83161b86166001600160401b03161561123e5761123b60018261222f565b90505b816112488161224e565b925050611204565b915061108f9050565b60405162461bcd60e51b815260206004820152600960248201526804241442049556e4f760bc1b60448201526064016102e2565b600061129a602083612272565b91506112a7826020612212565b63ffffffff168363ffffffff16901c8263ffffffff168463ffffffff16901b17905092915050565b60006112dc602083612272565b91506112e9826020612212565b63ffffffff168363ffffffff16901b8263ffffffff168463ffffffff16901c17905092915050565b60008061ffff8316611329575050828201600061148f565b8261ffff1660011415611342575050818303600061148f565b8261ffff166002141561135b575050828202600061148f565b8261ffff16600414156113af576001600160401b038416611382575060009050600161148f565b836001600160401b0316856001600160401b0316816113a3576113a36121c2565b0460009150915061148f565b8261ffff1660061415611403576001600160401b0384166113d6575060009050600161148f565b836001600160401b0316856001600160401b0316816113f7576113f76121c2565b0660009150915061148f565b8261ffff166007141561141c575050828216600061148f565b8261ffff1660081415611435575050828217600061148f565b8261ffff166009141561144e575050828218600061148f565b60405162461bcd60e51b81526020600482015260166024820152750494e56414c49445f47454e455249435f42494e5f4f560541b60448201526064016102e2565b935093915050565b60208101516000906001835160068111156114b4576114b4611991565b146114d15760405162461bcd60e51b81526004016102e29061217e565b600160401b8110610e015760405162461bcd60e51b815260206004820152600760248201526610905117d24d8d60ca1b60448201526064016102e2565b60408051808201909152600080825260208201525060408051808201909152600181526001600160401b03909116602082015290565b6000611551604083612295565b915061155e8260406122af565b6001600160401b0316836001600160401b0316901c826001600160401b0316846001600160401b0316901b17905092915050565b600061159f604083612295565b91506115ac8260406122af565b6001600160401b0316836001600160401b0316901b826001600160401b0316846001600160401b0316901c17905092915050565b604080518082019091526000808252602082015281518051611604906001906121d8565b81518110611614576116146122cf565b602002602001015190506000600183600001515161163291906121d8565b6001600160401b0381111561164957611649611be8565b60405190808252806020026020018201604052801561168e57816020015b60408051808201909152600080825260208201528152602001906001900390816116675790505b50905060005b81518110156116e95783518051829081106116b1576116b16122cf565b60200260200101518282815181106116cb576116cb6122cf565b602002602001018190525080806116e1906122e5565b915050611694565b5090915290565b815151600090611701906001612300565b6001600160401b0381111561171857611718611be8565b60405190808252806020026020018201604052801561175d57816020015b60408051808201909152600080825260208201528152602001906001900390816117365790505b50905060005b8351518110156117b9578351805182908110611781576117816122cf565b602002602001015182828151811061179b5761179b6122cf565b602002602001018190525080806117b1906122e5565b915050611763565b508181846000015151815181106117d2576117d26122cf565b602090810291909101015290915250565b604080516101208101909152806000815260200161181860408051606080820183529181019182529081526000602082015290565b815260200161183e60408051606080820183529181019182529081526000602082015290565b8152602001611863604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611894612318565b565b6000604082840312156118a857600080fd5b50919050565b6000806000806000808688036101a08112156118c957600080fd5b6118d38989611896565b965060408801356001600160401b03808211156118ef57600080fd5b90890190610120828c03121561190457600080fd5b81975060e0605f198401121561191957600080fd5b60608a01965061192d8b6101408c01611896565b95506101808a013592508083111561194457600080fd5b828a0192508a601f84011261195857600080fd5b823591508082111561196957600080fd5b5089602082840101111561197c57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b600481106119b7576119b7611991565b9052565b8051600781106119cd576119cd611991565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611a2a57611a168286516119bb565b938201936001939093019290850190611a03565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b82811015611aa9578451611a758582516119bb565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a090930192600101611a60565b509687015197909601969096525093949350505050565b6000610100808352611ad581840186516119a7565b602085015161012084810152611aef6102208501826119da565b9050604086015160ff198086840301610140870152611b0e83836119da565b925060608801519150808684030161016087015250611b2d8282611a3e565b915050608086015161018085015260a0860151611b536101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e08601525090850151610200840152905061108f60208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611c2057611c20611be8565b60405290565b604051602081016001600160401b0381118282101715611c2057611c20611be8565b604051608081016001600160401b0381118282101715611c2057611c20611be8565b60405161012081016001600160401b0381118282101715611c2057611c20611be8565b60405160a081016001600160401b0381118282101715611c2057611c20611be8565b604051606081016001600160401b0381118282101715611c2057611c20611be8565b604051601f8201601f191681016001600160401b0381118282101715611cf957611cf9611be8565b604052919050565b8035600481106110c457600080fd5b60006001600160401b03821115611d2957611d29611be8565b5060051b60200190565b600060408284031215611d4557600080fd5b611d4d611bfe565b9050813560078110611d5e57600080fd5b808252506020820135602082015292915050565b60006040808385031215611d8557600080fd5b611d8d611bfe565b915082356001600160401b0380821115611da657600080fd5b81850191506020808388031215611dbc57600080fd5b611dc4611c26565b833583811115611dd357600080fd5b80850194505087601f850112611de857600080fd5b83359250611dfd611df884611d10565b611cd1565b83815260069390931b84018201928281019089851115611e1c57600080fd5b948301945b84861015611e4257611e338a87611d33565b82529486019490830190611e21565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146110c457600080fd5b60006040808385031215611e8257600080fd5b611e8a611bfe565b915082356001600160401b03811115611ea257600080fd5b8301601f81018513611eb357600080fd5b80356020611ec3611df883611d10565b82815260a09283028401820192828201919089851115611ee257600080fd5b948301945b84861015611f4b5780868b031215611eff5760008081fd5b611f07611c48565b611f118b88611d33565b815287870135858201526060611f28818901611e5b565b89830152611f3860808901611e5b565b9082015283529485019491830191611ee7565b50808752505080860135818601525050505092915050565b60006101208236031215611f7657600080fd5b611f7e611c6a565b611f8783611d01565b815260208301356001600160401b0380821115611fa357600080fd5b611faf36838701611d72565b60208401526040850135915080821115611fc857600080fd5b611fd436838701611d72565b60408401526060850135915080821115611fed57600080fd5b50611ffa36828601611e6f565b6060830152506080830135608082015261201660a08401611e5b565b60a082015261202760c08401611e5b565b60c082015261203860e08401611e5b565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146110c457600080fd5b600081830360e081121561207957600080fd5b612081611c8d565b833581526060601f198301121561209757600080fd5b61209f611caf565b91506120ad6020850161204f565b82526120bb6040850161204f565b6020830152606084013560408301528160208201526080840135604082015260a084013560608201526120f060c08501611e5b565b6080820152949350505050565b60006020828403121561210f57600080fd5b813561ffff8116811461108f57600080fd5b634e487b7160e01b600052601160045260246000fd5b600061ffff80831681851680830382111561215457612154612121565b01949350505050565b6020808252600790820152662727aa2fa4999960c91b604082015260600190565b6020808252600790820152661393d517d24d8d60ca1b604082015260600190565b600061ffff838116908316818110156121ba576121ba612121565b039392505050565b634e487b7160e01b600052601260045260246000fd5b6000828210156121ea576121ea612121565b500390565b600060ff821660ff84168082101561220957612209612121565b90039392505050565b600063ffffffff838116908316818110156121ba576121ba612121565b600063ffffffff80831681851680830382111561215457612154612121565b600063ffffffff8083168181141561226857612268612121565b6001019392505050565b600063ffffffff80841680612289576122896121c2565b92169190910692915050565b60006001600160401b0380841680612289576122896121c2565b60006001600160401b03838116908316818110156121ba576121ba612121565b634e487b7160e01b600052603260045260246000fd5b60006000198214156122f9576122f9612121565b5060010190565b6000821982111561231357612313612121565b500190565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220051d50532524766c3941af4319fee3c679926d63474437b2bfa4e288239b9cff64736f6c63430008090033",
|
475
475
|
"linkReferences": {},
|
476
476
|
"deployedLinkReferences": {}
|
477
477
|
}
|
@@ -470,8 +470,8 @@
|
|
470
470
|
"type": "function"
|
471
471
|
}
|
472
472
|
],
|
473
|
-
"bytecode": "0x608060405234801561001057600080fd5b50611e07806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e36600461138d565b61005a565b60405161005192919061159f565b60405180910390f35b6100626112c2565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611a47565b91506100bf36879003870187611b4a565b905060006100d06020870187611be1565b905061136b602861ffff8316108015906100ef5750603561ffff831611155b156100fd57506101b4610196565b603661ffff8316108015906101175750603e61ffff831611155b1561012557506106bf610196565b61ffff8216603f141561013b5750610a69610196565b61ffff8216604014156101515750610aa1610196565b60405162461bcd60e51b8152602060048201526015602482015274494e56414c49445f4d454d4f52595f4f50434f444560581b60448201526064015b60405180910390fd5b6101a784848989898663ffffffff16565b5050965096945050505050565b6000808060286101c76020880188611be1565b61ffff1614156101e05750600091506004905081610435565b60296101ef6020880188611be1565b61ffff161415610209575060019150600890506000610435565b602a6102186020880188611be1565b61ffff161415610232575060029150600490506000610435565b602b6102416020880188611be1565b61ffff16141561025b575060039150600890506000610435565b602c61026a6020880188611be1565b61ffff1614156102835750600091506001905080610435565b602d6102926020880188611be1565b61ffff1614156102ab5750600091506001905081610435565b602e6102ba6020880188611be1565b61ffff1614156102d4575060009150600290506001610435565b602f6102e36020880188611be1565b61ffff1614156102fc5750600091506002905081610435565b603061030b6020880188611be1565b61ffff16141561032357506001915081905080610435565b60316103326020880188611be1565b61ffff16141561034b5750600191508190506000610435565b603261035a6020880188611be1565b61ffff1614156103735750600191506002905081610435565b60336103826020880188611be1565b61ffff16141561039c575060019150600290506000610435565b60346103ab6020880188611be1565b61ffff1614156103c45750600191506004905081610435565b60356103d36020880188611be1565b61ffff1614156103ed575060019150600490506000610435565b60405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d454d4f52595f4c4f41445f4f50434f4445000000000000604482015260640161018d565b600061044c6104478a60200151610b50565b610b75565b6104609063ffffffff166020890135611c1b565b6020890151519091506001600160401b031661047c8483611c1b565b111561049057505060028752506106b89050565b60006000198180805b878110156105355760006104ad8288611c1b565b905060006104bc602083611c49565b90508581146104e0576104d68f60200151828f8f8b610c06565b5097509095509350845b60006104ed602084611c5d565b90506104fa846008611c71565b6001600160401b031661050d8783610ca0565b60ff166001600160401b0316901b85179450505050808061052d90611c90565b915050610499565b5085156106745786600114801561055d5750600088600681111561055b5761055b611470565b145b15610573578060000b63ffffffff169050610674565b8660011480156105945750600188600681111561059257610592611470565b145b156105a15760000b610674565b8660021480156105c2575060008860068111156105c0576105c0611470565b145b156105d8578060010b63ffffffff169050610674565b8660021480156105f9575060018860068111156105f7576105f7611470565b145b156106065760010b610674565b8660041480156106275750600188600681111561062557610625611470565b145b156106345760030b610674565b60405162461bcd60e51b815260206004820152601560248201527410905117d491505117d096551154d7d4d251d39151605a1b604482015260640161018d565b6106af60405180604001604052808a600681111561069457610694611470565b81526001600160401b0384166020918201528f015190610d1a565b50505050505050505b5050505050565b6000808060366106d26020880188611be1565b61ffff1614156106e85750600491506000610857565b60376106f76020880188611be1565b61ffff16141561070d5750600891506001610857565b603861071c6020880188611be1565b61ffff1614156107325750600491506002610857565b60396107416020880188611be1565b61ffff1614156107575750600891506003610857565b603a6107666020880188611be1565b61ffff16141561077c5750600191506000610857565b603b61078b6020880188611be1565b61ffff1614156107a15750600291506000610857565b603c6107b06020880188611be1565b61ffff1614156107c557506001915081610857565b603d6107d46020880188611be1565b61ffff1614156107ea5750600291506001610857565b603e6107f96020880188611be1565b61ffff16141561080f5750600491506001610857565b60405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f4d454d4f52595f53544f52455f4f50434f44450000000000604482015260640161018d565b60006108668960200151610b50565b905081600681111561087a5761087a611470565b8151600681111561088d5761088d611470565b146108cb5760405162461bcd60e51b815260206004820152600e60248201526d4241445f53544f52455f5459504560901b604482015260640161018d565b806020015192506008846001600160401b031610156109165760016108f1856008611cab565b6001600160401b031660016001600160401b0316901b6109119190611cda565b831692505b5050600061092a6104478960200151610b50565b61093e9063ffffffff166020880135611c1b565b90508660200151600001516001600160401b0316836001600160401b0316826109679190611c1b565b111561097957505060028652506106b8565b604080516020810190915260608152600090600019906000805b876001600160401b0316811015610a465760006109b08288611c1b565b905060006109bf602083611c49565b9050858114610a045760001986146109e6576109dc858786610d2a565b60208f0151604001525b6109f78e60200151828e8e8b610c06565b9098509196509094509250845b6000610a11602084611c5d565b9050610a1e85828c610dab565b945060088a6001600160401b0316901c99505050508080610a3e90611c90565b915050610993565b50610a52828483610d2a565b60208c015160400152505050505050505050505050565b602084015151600090610a80906201000090611d02565b9050610a99610a8e82610e30565b602088015190610d1a565b505050505050565b602084015151600090610ab8906201000090611d02565b90506000610acc6104478860200151610b50565b90506000610ae363ffffffff808416908516611c1b565b90508660200151602001516001600160401b03168111610b3857610b0a6201000082611c71565b60208801516001600160401b039091169052610b33610b2884610e30565b60208a015190610d1a565b610b46565b610b46610b28600019610e30565b5050505050505050565b60408051808201909152600080825260208201528151610b6f90610e63565b92915050565b60208101516000908183516006811115610b9157610b91611470565b14610bc85760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b604482015260640161018d565b6401000000008110610b6f5760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b604482015260640161018d565b600080610c1f6040518060200160405280606081525090565b839150610c2d868684610f73565b9093509150610c3d868684610f8f565b925090506000610c4e828986610d2a565b905088604001518114610c945760405162461bcd60e51b815260206004820152600e60248201526d15d493d391d7d3515357d493d3d560921b604482015260640161018d565b50955095509592505050565b600060208210610ceb5760405162461bcd60e51b81526020600482015260166024820152750848288bea0aa9898be988a828cbe84b2a88abe9288b60531b604482015260640161018d565b600082610cfa60016020611d28565b610d049190611d28565b610d0f906008611c71565b9390931c9392505050565b8151610d269082611069565b5050565b6040516b26b2b6b7b93c903632b0b31d60a11b6020820152602c81018290526000908190604c01604051602081830303815290604052805190602001209050610da08585836040518060400160405280601381526020017226b2b6b7b93c9036b2b935b632903a3932b29d60691b81525061115c565b9150505b9392505050565b600060208310610df55760405162461bcd60e51b81526020600482015260156024820152740848288bea68aa8be988a828cbe84b2a88abe9288b605b1b604482015260640161018d565b600083610e0460016020611d28565b610e0e9190611d28565b610e19906008611c71565b60ff848116821b911b198616179150509392505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b604080518082019091526000808252602082015281518051610e8790600190611d28565b81518110610e9757610e97611d3f565b6020026020010151905060006001836000015151610eb59190611d28565b6001600160401b03811115610ecc57610ecc6116c7565b604051908082528060200260200182016040528015610f1157816020015b6040805180820190915260008082526020820152815260200190600190039081610eea5790505b50905060005b8151811015610f6c578351805182908110610f3457610f34611d3f565b6020026020010151828281518110610f4e57610f4e611d3f565b60200260200101819052508080610f6490611c90565b915050610f17565b5090915290565b60008181610f8286868461122e565b9097909650945050505050565b604080516020810190915260608152816000610fac86868461128c565b92509050600060ff82166001600160401b03811115610fcd57610fcd6116c7565b604051908082528060200260200182016040528015610ff6578160200160208202803683370190505b50905060005b8260ff168160ff16101561104d57611015888886610f73565b838360ff168151811061102a5761102a611d3f565b60200260200101819650828152505050808061104590611d55565b915050610ffc565b5060405180602001604052808281525093505050935093915050565b81515160009061107a906001611c1b565b6001600160401b03811115611091576110916116c7565b6040519080825280602002602001820160405280156110d657816020015b60408051808201909152600080825260208201528152602001906001900390816110af5790505b50905060005b8351518110156111325783518051829081106110fa576110fa611d3f565b602002602001015182828151811061111457611114611d3f565b6020026020010181905250808061112a90611c90565b9150506110dc565b5081818460000151518151811061114b5761114b611d3f565b602090810291909101015290915250565b8160005b85515181101561122557600185166111c15782828760000151838151811061118a5761118a611d3f565b60200260200101516040516020016111a493929190611d75565b60405160208183030381529060405280519060200120915061120c565b82866000015182815181106111d8576111d8611d3f565b6020026020010151836040516020016111f393929190611d75565b6040516020818303038152906040528051906020012091505b60019490941c938061121d81611c90565b915050611160565b50949350505050565b600081815b602081101561128357600883901b925085858381811061125557611255611d3f565b919091013560f81c9390931792508161126d81611c90565b925050808061127b90611c90565b915050611233565b50935093915050565b6000818484828181106112a1576112a1611d3f565b919091013560f81c92508190506112b781611c90565b915050935093915050565b60408051610120810190915280600081526020016112f760408051606080820183529181019182529081526000602082015290565b815260200161131d60408051606080820183529181019182529081526000602082015290565b8152602001611342604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611373611dbb565b565b60006040828403121561138757600080fd5b50919050565b6000806000806000808688036101a08112156113a857600080fd5b6113b28989611375565b965060408801356001600160401b03808211156113ce57600080fd5b90890190610120828c0312156113e357600080fd5b81975060e0605f19840112156113f857600080fd5b60608a01965061140c8b6101408c01611375565b95506101808a013592508083111561142357600080fd5b828a0192508a601f84011261143757600080fd5b823591508082111561144857600080fd5b5089602082840101111561145b57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b6004811061149657611496611470565b9052565b8051600781106114ac576114ac611470565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611509576114f582865161149a565b9382019360019390930192908501906114e2565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b8281101561158857845161155485825161149a565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a09093019260010161153f565b509687015197909601969096525093949350505050565b60006101008083526115b48184018651611486565b6020850151610120848101526115ce6102208501826114b9565b9050604086015160ff1980868403016101408701526115ed83836114b9565b92506060880151915080868403016101608701525061160c828261151d565b915050608086015161018085015260a08601516116326101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e086015250908501516102008401529050610da460208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156116ff576116ff6116c7565b60405290565b604051602081016001600160401b03811182821017156116ff576116ff6116c7565b604051608081016001600160401b03811182821017156116ff576116ff6116c7565b60405161012081016001600160401b03811182821017156116ff576116ff6116c7565b60405160a081016001600160401b03811182821017156116ff576116ff6116c7565b604051606081016001600160401b03811182821017156116ff576116ff6116c7565b604051601f8201601f191681016001600160401b03811182821017156117d8576117d86116c7565b604052919050565b8035600481106117ef57600080fd5b919050565b60006001600160401b0382111561180d5761180d6116c7565b5060051b60200190565b60006040828403121561182957600080fd5b6118316116dd565b905081356007811061184257600080fd5b808252506020820135602082015292915050565b6000604080838503121561186957600080fd5b6118716116dd565b915082356001600160401b038082111561188a57600080fd5b818501915060208083880312156118a057600080fd5b6118a8611705565b8335838111156118b757600080fd5b80850194505087601f8501126118cc57600080fd5b833592506118e16118dc846117f4565b6117b0565b83815260069390931b8401820192828101908985111561190057600080fd5b948301945b84861015611926576119178a87611817565b82529486019490830190611905565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146117ef57600080fd5b6000604080838503121561196657600080fd5b61196e6116dd565b915082356001600160401b0381111561198657600080fd5b8301601f8101851361199757600080fd5b803560206119a76118dc836117f4565b82815260a092830284018201928282019190898511156119c657600080fd5b948301945b84861015611a2f5780868b0312156119e35760008081fd5b6119eb611727565b6119f58b88611817565b815287870135858201526060611a0c81890161193f565b89830152611a1c6080890161193f565b90820152835294850194918301916119cb565b50808752505080860135818601525050505092915050565b60006101208236031215611a5a57600080fd5b611a62611749565b611a6b836117e0565b815260208301356001600160401b0380821115611a8757600080fd5b611a9336838701611856565b60208401526040850135915080821115611aac57600080fd5b611ab836838701611856565b60408401526060850135915080821115611ad157600080fd5b50611ade36828601611953565b60608301525060808301356080820152611afa60a0840161193f565b60a0820152611b0b60c0840161193f565b60c0820152611b1c60e0840161193f565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146117ef57600080fd5b600081830360e0811215611b5d57600080fd5b611b6561176c565b833581526060601f1983011215611b7b57600080fd5b611b8361178e565b9150611b9160208501611b33565b8252611b9f60408501611b33565b6020830152606084013560408301528160208201526080840135604082015260a08401356060820152611bd460c0850161193f565b6080820152949350505050565b600060208284031215611bf357600080fd5b813561ffff81168114610da457600080fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611c2e57611c2e611c05565b500190565b634e487b7160e01b600052601260045260246000fd5b600082611c5857611c58611c33565b500490565b600082611c6c57611c6c611c33565b500690565b6000816000190483118215151615611c8b57611c8b611c05565b500290565b6000600019821415611ca457611ca4611c05565b5060010190565b60006001600160401b0380831681851681830481118215151615611cd157611cd1611c05565b02949350505050565b60006001600160401b0383811690831681811015611cfa57611cfa611c05565b039392505050565b60006001600160401b0380841680611d1c57611d1c611c33565b92169190910492915050565b600082821015611d3a57611d3a611c05565b500390565b634e487b7160e01b600052603260045260246000fd5b600060ff821660ff811415611d6c57611d6c611c05565b60010192915050565b6000845160005b81811015611d965760208188018101518583015201611d7c565b81811115611da5576000828501525b5091909101928352506020820152604001919050565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220e20003e40f7e9e75035cb9f26e9405dd17cd795ab9929ad657dbfd33b62acc6464736f6c63430008090033",
|
474
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e36600461138d565b61005a565b60405161005192919061159f565b60405180910390f35b6100626112c2565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611a47565b91506100bf36879003870187611b4a565b905060006100d06020870187611be1565b905061136b602861ffff8316108015906100ef5750603561ffff831611155b156100fd57506101b4610196565b603661ffff8316108015906101175750603e61ffff831611155b1561012557506106bf610196565b61ffff8216603f141561013b5750610a69610196565b61ffff8216604014156101515750610aa1610196565b60405162461bcd60e51b8152602060048201526015602482015274494e56414c49445f4d454d4f52595f4f50434f444560581b60448201526064015b60405180910390fd5b6101a784848989898663ffffffff16565b5050965096945050505050565b6000808060286101c76020880188611be1565b61ffff1614156101e05750600091506004905081610435565b60296101ef6020880188611be1565b61ffff161415610209575060019150600890506000610435565b602a6102186020880188611be1565b61ffff161415610232575060029150600490506000610435565b602b6102416020880188611be1565b61ffff16141561025b575060039150600890506000610435565b602c61026a6020880188611be1565b61ffff1614156102835750600091506001905080610435565b602d6102926020880188611be1565b61ffff1614156102ab5750600091506001905081610435565b602e6102ba6020880188611be1565b61ffff1614156102d4575060009150600290506001610435565b602f6102e36020880188611be1565b61ffff1614156102fc5750600091506002905081610435565b603061030b6020880188611be1565b61ffff16141561032357506001915081905080610435565b60316103326020880188611be1565b61ffff16141561034b5750600191508190506000610435565b603261035a6020880188611be1565b61ffff1614156103735750600191506002905081610435565b60336103826020880188611be1565b61ffff16141561039c575060019150600290506000610435565b60346103ab6020880188611be1565b61ffff1614156103c45750600191506004905081610435565b60356103d36020880188611be1565b61ffff1614156103ed575060019150600490506000610435565b60405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d454d4f52595f4c4f41445f4f50434f4445000000000000604482015260640161018d565b600061044c6104478a60200151610b50565b610b75565b6104609063ffffffff166020890135611c1b565b6020890151519091506001600160401b031661047c8483611c1b565b111561049057505060028752506106b89050565b60006000198180805b878110156105355760006104ad8288611c1b565b905060006104bc602083611c49565b90508581146104e0576104d68f60200151828f8f8b610c06565b5097509095509350845b60006104ed602084611c5d565b90506104fa846008611c71565b6001600160401b031661050d8783610ca0565b60ff166001600160401b0316901b85179450505050808061052d90611c90565b915050610499565b5085156106745786600114801561055d5750600088600681111561055b5761055b611470565b145b15610573578060000b63ffffffff169050610674565b8660011480156105945750600188600681111561059257610592611470565b145b156105a15760000b610674565b8660021480156105c2575060008860068111156105c0576105c0611470565b145b156105d8578060010b63ffffffff169050610674565b8660021480156105f9575060018860068111156105f7576105f7611470565b145b156106065760010b610674565b8660041480156106275750600188600681111561062557610625611470565b145b156106345760030b610674565b60405162461bcd60e51b815260206004820152601560248201527410905117d491505117d096551154d7d4d251d39151605a1b604482015260640161018d565b6106af60405180604001604052808a600681111561069457610694611470565b81526001600160401b0384166020918201528f015190610d1a565b50505050505050505b5050505050565b6000808060366106d26020880188611be1565b61ffff1614156106e85750600491506000610857565b60376106f76020880188611be1565b61ffff16141561070d5750600891506001610857565b603861071c6020880188611be1565b61ffff1614156107325750600491506002610857565b60396107416020880188611be1565b61ffff1614156107575750600891506003610857565b603a6107666020880188611be1565b61ffff16141561077c5750600191506000610857565b603b61078b6020880188611be1565b61ffff1614156107a15750600291506000610857565b603c6107b06020880188611be1565b61ffff1614156107c557506001915081610857565b603d6107d46020880188611be1565b61ffff1614156107ea5750600291506001610857565b603e6107f96020880188611be1565b61ffff16141561080f5750600491506001610857565b60405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f4d454d4f52595f53544f52455f4f50434f44450000000000604482015260640161018d565b60006108668960200151610b50565b905081600681111561087a5761087a611470565b8151600681111561088d5761088d611470565b146108cb5760405162461bcd60e51b815260206004820152600e60248201526d4241445f53544f52455f5459504560901b604482015260640161018d565b806020015192506008846001600160401b031610156109165760016108f1856008611cab565b6001600160401b031660016001600160401b0316901b6109119190611cda565b831692505b5050600061092a6104478960200151610b50565b61093e9063ffffffff166020880135611c1b565b90508660200151600001516001600160401b0316836001600160401b0316826109679190611c1b565b111561097957505060028652506106b8565b604080516020810190915260608152600090600019906000805b876001600160401b0316811015610a465760006109b08288611c1b565b905060006109bf602083611c49565b9050858114610a045760001986146109e6576109dc858786610d2a565b60208f0151604001525b6109f78e60200151828e8e8b610c06565b9098509196509094509250845b6000610a11602084611c5d565b9050610a1e85828c610dab565b945060088a6001600160401b0316901c99505050508080610a3e90611c90565b915050610993565b50610a52828483610d2a565b60208c015160400152505050505050505050505050565b602084015151600090610a80906201000090611d02565b9050610a99610a8e82610e30565b602088015190610d1a565b505050505050565b602084015151600090610ab8906201000090611d02565b90506000610acc6104478860200151610b50565b90506000610ae363ffffffff808416908516611c1b565b90508660200151602001516001600160401b03168111610b3857610b0a6201000082611c71565b60208801516001600160401b039091169052610b33610b2884610e30565b60208a015190610d1a565b610b46565b610b46610b28600019610e30565b5050505050505050565b60408051808201909152600080825260208201528151610b6f90610e63565b92915050565b60208101516000908183516006811115610b9157610b91611470565b14610bc85760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b604482015260640161018d565b6401000000008110610b6f5760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b604482015260640161018d565b600080610c1f6040518060200160405280606081525090565b839150610c2d868684610f73565b9093509150610c3d868684610f8f565b925090506000610c4e828986610d2a565b905088604001518114610c945760405162461bcd60e51b815260206004820152600e60248201526d15d493d391d7d3515357d493d3d560921b604482015260640161018d565b50955095509592505050565b600060208210610ceb5760405162461bcd60e51b81526020600482015260166024820152750848288bea0aa9898be988a828cbe84b2a88abe9288b60531b604482015260640161018d565b600082610cfa60016020611d28565b610d049190611d28565b610d0f906008611c71565b9390931c9392505050565b8151610d269082611069565b5050565b6040516b26b2b6b7b93c903632b0b31d60a11b6020820152602c81018290526000908190604c01604051602081830303815290604052805190602001209050610da08585836040518060400160405280601381526020017226b2b6b7b93c9036b2b935b632903a3932b29d60691b81525061115c565b9150505b9392505050565b600060208310610df55760405162461bcd60e51b81526020600482015260156024820152740848288bea68aa8be988a828cbe84b2a88abe9288b605b1b604482015260640161018d565b600083610e0460016020611d28565b610e0e9190611d28565b610e19906008611c71565b60ff848116821b911b198616179150509392505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b604080518082019091526000808252602082015281518051610e8790600190611d28565b81518110610e9757610e97611d3f565b6020026020010151905060006001836000015151610eb59190611d28565b6001600160401b03811115610ecc57610ecc6116c7565b604051908082528060200260200182016040528015610f1157816020015b6040805180820190915260008082526020820152815260200190600190039081610eea5790505b50905060005b8151811015610f6c578351805182908110610f3457610f34611d3f565b6020026020010151828281518110610f4e57610f4e611d3f565b60200260200101819052508080610f6490611c90565b915050610f17565b5090915290565b60008181610f8286868461122e565b9097909650945050505050565b604080516020810190915260608152816000610fac86868461128c565b92509050600060ff82166001600160401b03811115610fcd57610fcd6116c7565b604051908082528060200260200182016040528015610ff6578160200160208202803683370190505b50905060005b8260ff168160ff16101561104d57611015888886610f73565b838360ff168151811061102a5761102a611d3f565b60200260200101819650828152505050808061104590611d55565b915050610ffc565b5060405180602001604052808281525093505050935093915050565b81515160009061107a906001611c1b565b6001600160401b03811115611091576110916116c7565b6040519080825280602002602001820160405280156110d657816020015b60408051808201909152600080825260208201528152602001906001900390816110af5790505b50905060005b8351518110156111325783518051829081106110fa576110fa611d3f565b602002602001015182828151811061111457611114611d3f565b6020026020010181905250808061112a90611c90565b9150506110dc565b5081818460000151518151811061114b5761114b611d3f565b602090810291909101015290915250565b8160005b85515181101561122557600185166111c15782828760000151838151811061118a5761118a611d3f565b60200260200101516040516020016111a493929190611d75565b60405160208183030381529060405280519060200120915061120c565b82866000015182815181106111d8576111d8611d3f565b6020026020010151836040516020016111f393929190611d75565b6040516020818303038152906040528051906020012091505b60019490941c938061121d81611c90565b915050611160565b50949350505050565b600081815b602081101561128357600883901b925085858381811061125557611255611d3f565b919091013560f81c9390931792508161126d81611c90565b925050808061127b90611c90565b915050611233565b50935093915050565b6000818484828181106112a1576112a1611d3f565b919091013560f81c92508190506112b781611c90565b915050935093915050565b60408051610120810190915280600081526020016112f760408051606080820183529181019182529081526000602082015290565b815260200161131d60408051606080820183529181019182529081526000602082015290565b8152602001611342604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611373611dbb565b565b60006040828403121561138757600080fd5b50919050565b6000806000806000808688036101a08112156113a857600080fd5b6113b28989611375565b965060408801356001600160401b03808211156113ce57600080fd5b90890190610120828c0312156113e357600080fd5b81975060e0605f19840112156113f857600080fd5b60608a01965061140c8b6101408c01611375565b95506101808a013592508083111561142357600080fd5b828a0192508a601f84011261143757600080fd5b823591508082111561144857600080fd5b5089602082840101111561145b57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b6004811061149657611496611470565b9052565b8051600781106114ac576114ac611470565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611509576114f582865161149a565b9382019360019390930192908501906114e2565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b8281101561158857845161155485825161149a565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a09093019260010161153f565b509687015197909601969096525093949350505050565b60006101008083526115b48184018651611486565b6020850151610120848101526115ce6102208501826114b9565b9050604086015160ff1980868403016101408701526115ed83836114b9565b92506060880151915080868403016101608701525061160c828261151d565b915050608086015161018085015260a08601516116326101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e086015250908501516102008401529050610da460208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156116ff576116ff6116c7565b60405290565b604051602081016001600160401b03811182821017156116ff576116ff6116c7565b604051608081016001600160401b03811182821017156116ff576116ff6116c7565b60405161012081016001600160401b03811182821017156116ff576116ff6116c7565b60405160a081016001600160401b03811182821017156116ff576116ff6116c7565b604051606081016001600160401b03811182821017156116ff576116ff6116c7565b604051601f8201601f191681016001600160401b03811182821017156117d8576117d86116c7565b604052919050565b8035600481106117ef57600080fd5b919050565b60006001600160401b0382111561180d5761180d6116c7565b5060051b60200190565b60006040828403121561182957600080fd5b6118316116dd565b905081356007811061184257600080fd5b808252506020820135602082015292915050565b6000604080838503121561186957600080fd5b6118716116dd565b915082356001600160401b038082111561188a57600080fd5b818501915060208083880312156118a057600080fd5b6118a8611705565b8335838111156118b757600080fd5b80850194505087601f8501126118cc57600080fd5b833592506118e16118dc846117f4565b6117b0565b83815260069390931b8401820192828101908985111561190057600080fd5b948301945b84861015611926576119178a87611817565b82529486019490830190611905565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146117ef57600080fd5b6000604080838503121561196657600080fd5b61196e6116dd565b915082356001600160401b0381111561198657600080fd5b8301601f8101851361199757600080fd5b803560206119a76118dc836117f4565b82815260a092830284018201928282019190898511156119c657600080fd5b948301945b84861015611a2f5780868b0312156119e35760008081fd5b6119eb611727565b6119f58b88611817565b815287870135858201526060611a0c81890161193f565b89830152611a1c6080890161193f565b90820152835294850194918301916119cb565b50808752505080860135818601525050505092915050565b60006101208236031215611a5a57600080fd5b611a62611749565b611a6b836117e0565b815260208301356001600160401b0380821115611a8757600080fd5b611a9336838701611856565b60208401526040850135915080821115611aac57600080fd5b611ab836838701611856565b60408401526060850135915080821115611ad157600080fd5b50611ade36828601611953565b60608301525060808301356080820152611afa60a0840161193f565b60a0820152611b0b60c0840161193f565b60c0820152611b1c60e0840161193f565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146117ef57600080fd5b600081830360e0811215611b5d57600080fd5b611b6561176c565b833581526060601f1983011215611b7b57600080fd5b611b8361178e565b9150611b9160208501611b33565b8252611b9f60408501611b33565b6020830152606084013560408301528160208201526080840135604082015260a08401356060820152611bd460c0850161193f565b6080820152949350505050565b600060208284031215611bf357600080fd5b813561ffff81168114610da457600080fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611c2e57611c2e611c05565b500190565b634e487b7160e01b600052601260045260246000fd5b600082611c5857611c58611c33565b500490565b600082611c6c57611c6c611c33565b500690565b6000816000190483118215151615611c8b57611c8b611c05565b500290565b6000600019821415611ca457611ca4611c05565b5060010190565b60006001600160401b0380831681851681830481118215151615611cd157611cd1611c05565b02949350505050565b60006001600160401b0383811690831681811015611cfa57611cfa611c05565b039392505050565b60006001600160401b0380841680611d1c57611d1c611c33565b92169190910492915050565b600082821015611d3a57611d3a611c05565b500390565b634e487b7160e01b600052603260045260246000fd5b600060ff821660ff811415611d6c57611d6c611c05565b60010192915050565b6000845160005b81811015611d965760208188018101518583015201611d7c565b81811115611da5576000828501525b5091909101928352506020820152604001919050565b634e487b7160e01b600052605160045260246000fdfea2646970667358221220e20003e40f7e9e75035cb9f26e9405dd17cd795ab9929ad657dbfd33b62acc6464736f6c63430008090033",
|
473
|
+
"bytecode": "0x608060405234801561001057600080fd5b50611e07806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e36600461138d565b61005a565b60405161005192919061159f565b60405180910390f35b6100626112c2565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611a47565b91506100bf36879003870187611b4a565b905060006100d06020870187611be1565b905061136b602861ffff8316108015906100ef5750603561ffff831611155b156100fd57506101b4610196565b603661ffff8316108015906101175750603e61ffff831611155b1561012557506106bf610196565b61ffff8216603f141561013b5750610a69610196565b61ffff8216604014156101515750610aa1610196565b60405162461bcd60e51b8152602060048201526015602482015274494e56414c49445f4d454d4f52595f4f50434f444560581b60448201526064015b60405180910390fd5b6101a784848989898663ffffffff16565b5050965096945050505050565b6000808060286101c76020880188611be1565b61ffff1614156101e05750600091506004905081610435565b60296101ef6020880188611be1565b61ffff161415610209575060019150600890506000610435565b602a6102186020880188611be1565b61ffff161415610232575060029150600490506000610435565b602b6102416020880188611be1565b61ffff16141561025b575060039150600890506000610435565b602c61026a6020880188611be1565b61ffff1614156102835750600091506001905080610435565b602d6102926020880188611be1565b61ffff1614156102ab5750600091506001905081610435565b602e6102ba6020880188611be1565b61ffff1614156102d4575060009150600290506001610435565b602f6102e36020880188611be1565b61ffff1614156102fc5750600091506002905081610435565b603061030b6020880188611be1565b61ffff16141561032357506001915081905080610435565b60316103326020880188611be1565b61ffff16141561034b5750600191508190506000610435565b603261035a6020880188611be1565b61ffff1614156103735750600191506002905081610435565b60336103826020880188611be1565b61ffff16141561039c575060019150600290506000610435565b60346103ab6020880188611be1565b61ffff1614156103c45750600191506004905081610435565b60356103d36020880188611be1565b61ffff1614156103ed575060019150600490506000610435565b60405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d454d4f52595f4c4f41445f4f50434f4445000000000000604482015260640161018d565b600061044c6104478a60200151610b50565b610b75565b6104609063ffffffff166020890135611c1b565b6020890151519091506001600160401b031661047c8483611c1b565b111561049057505060028752506106b89050565b60006000198180805b878110156105355760006104ad8288611c1b565b905060006104bc602083611c49565b90508581146104e0576104d68f60200151828f8f8b610c06565b5097509095509350845b60006104ed602084611c5d565b90506104fa846008611c71565b6001600160401b031661050d8783610ca0565b60ff166001600160401b0316901b85179450505050808061052d90611c90565b915050610499565b5085156106745786600114801561055d5750600088600681111561055b5761055b611470565b145b15610573578060000b63ffffffff169050610674565b8660011480156105945750600188600681111561059257610592611470565b145b156105a15760000b610674565b8660021480156105c2575060008860068111156105c0576105c0611470565b145b156105d8578060010b63ffffffff169050610674565b8660021480156105f9575060018860068111156105f7576105f7611470565b145b156106065760010b610674565b8660041480156106275750600188600681111561062557610625611470565b145b156106345760030b610674565b60405162461bcd60e51b815260206004820152601560248201527410905117d491505117d096551154d7d4d251d39151605a1b604482015260640161018d565b6106af60405180604001604052808a600681111561069457610694611470565b81526001600160401b0384166020918201528f015190610d1a565b50505050505050505b5050505050565b6000808060366106d26020880188611be1565b61ffff1614156106e85750600491506000610857565b60376106f76020880188611be1565b61ffff16141561070d5750600891506001610857565b603861071c6020880188611be1565b61ffff1614156107325750600491506002610857565b60396107416020880188611be1565b61ffff1614156107575750600891506003610857565b603a6107666020880188611be1565b61ffff16141561077c5750600191506000610857565b603b61078b6020880188611be1565b61ffff1614156107a15750600291506000610857565b603c6107b06020880188611be1565b61ffff1614156107c557506001915081610857565b603d6107d46020880188611be1565b61ffff1614156107ea5750600291506001610857565b603e6107f96020880188611be1565b61ffff16141561080f5750600491506001610857565b60405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f4d454d4f52595f53544f52455f4f50434f44450000000000604482015260640161018d565b60006108668960200151610b50565b905081600681111561087a5761087a611470565b8151600681111561088d5761088d611470565b146108cb5760405162461bcd60e51b815260206004820152600e60248201526d4241445f53544f52455f5459504560901b604482015260640161018d565b806020015192506008846001600160401b031610156109165760016108f1856008611cab565b6001600160401b031660016001600160401b0316901b6109119190611cda565b831692505b5050600061092a6104478960200151610b50565b61093e9063ffffffff166020880135611c1b565b90508660200151600001516001600160401b0316836001600160401b0316826109679190611c1b565b111561097957505060028652506106b8565b604080516020810190915260608152600090600019906000805b876001600160401b0316811015610a465760006109b08288611c1b565b905060006109bf602083611c49565b9050858114610a045760001986146109e6576109dc858786610d2a565b60208f0151604001525b6109f78e60200151828e8e8b610c06565b9098509196509094509250845b6000610a11602084611c5d565b9050610a1e85828c610dab565b945060088a6001600160401b0316901c99505050508080610a3e90611c90565b915050610993565b50610a52828483610d2a565b60208c015160400152505050505050505050505050565b602084015151600090610a80906201000090611d02565b9050610a99610a8e82610e30565b602088015190610d1a565b505050505050565b602084015151600090610ab8906201000090611d02565b90506000610acc6104478860200151610b50565b90506000610ae363ffffffff808416908516611c1b565b90508660200151602001516001600160401b03168111610b3857610b0a6201000082611c71565b60208801516001600160401b039091169052610b33610b2884610e30565b60208a015190610d1a565b610b46565b610b46610b28600019610e30565b5050505050505050565b60408051808201909152600080825260208201528151610b6f90610e63565b92915050565b60208101516000908183516006811115610b9157610b91611470565b14610bc85760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b604482015260640161018d565b6401000000008110610b6f5760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b604482015260640161018d565b600080610c1f6040518060200160405280606081525090565b839150610c2d868684610f73565b9093509150610c3d868684610f8f565b925090506000610c4e828986610d2a565b905088604001518114610c945760405162461bcd60e51b815260206004820152600e60248201526d15d493d391d7d3515357d493d3d560921b604482015260640161018d565b50955095509592505050565b600060208210610ceb5760405162461bcd60e51b81526020600482015260166024820152750848288bea0aa9898be988a828cbe84b2a88abe9288b60531b604482015260640161018d565b600082610cfa60016020611d28565b610d049190611d28565b610d0f906008611c71565b9390931c9392505050565b8151610d269082611069565b5050565b6040516b26b2b6b7b93c903632b0b31d60a11b6020820152602c81018290526000908190604c01604051602081830303815290604052805190602001209050610da08585836040518060400160405280601381526020017226b2b6b7b93c9036b2b935b632903a3932b29d60691b81525061115c565b9150505b9392505050565b600060208310610df55760405162461bcd60e51b81526020600482015260156024820152740848288bea68aa8be988a828cbe84b2a88abe9288b605b1b604482015260640161018d565b600083610e0460016020611d28565b610e0e9190611d28565b610e19906008611c71565b60ff848116821b911b198616179150509392505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b604080518082019091526000808252602082015281518051610e8790600190611d28565b81518110610e9757610e97611d3f565b6020026020010151905060006001836000015151610eb59190611d28565b6001600160401b03811115610ecc57610ecc6116c7565b604051908082528060200260200182016040528015610f1157816020015b6040805180820190915260008082526020820152815260200190600190039081610eea5790505b50905060005b8151811015610f6c578351805182908110610f3457610f34611d3f565b6020026020010151828281518110610f4e57610f4e611d3f565b60200260200101819052508080610f6490611c90565b915050610f17565b5090915290565b60008181610f8286868461122e565b9097909650945050505050565b604080516020810190915260608152816000610fac86868461128c565b92509050600060ff82166001600160401b03811115610fcd57610fcd6116c7565b604051908082528060200260200182016040528015610ff6578160200160208202803683370190505b50905060005b8260ff168160ff16101561104d57611015888886610f73565b838360ff168151811061102a5761102a611d3f565b60200260200101819650828152505050808061104590611d55565b915050610ffc565b5060405180602001604052808281525093505050935093915050565b81515160009061107a906001611c1b565b6001600160401b03811115611091576110916116c7565b6040519080825280602002602001820160405280156110d657816020015b60408051808201909152600080825260208201528152602001906001900390816110af5790505b50905060005b8351518110156111325783518051829081106110fa576110fa611d3f565b602002602001015182828151811061111457611114611d3f565b6020026020010181905250808061112a90611c90565b9150506110dc565b5081818460000151518151811061114b5761114b611d3f565b602090810291909101015290915250565b8160005b85515181101561122557600185166111c15782828760000151838151811061118a5761118a611d3f565b60200260200101516040516020016111a493929190611d75565b60405160208183030381529060405280519060200120915061120c565b82866000015182815181106111d8576111d8611d3f565b6020026020010151836040516020016111f393929190611d75565b6040516020818303038152906040528051906020012091505b60019490941c938061121d81611c90565b915050611160565b50949350505050565b600081815b602081101561128357600883901b925085858381811061125557611255611d3f565b919091013560f81c9390931792508161126d81611c90565b925050808061127b90611c90565b915050611233565b50935093915050565b6000818484828181106112a1576112a1611d3f565b919091013560f81c92508190506112b781611c90565b915050935093915050565b60408051610120810190915280600081526020016112f760408051606080820183529181019182529081526000602082015290565b815260200161131d60408051606080820183529181019182529081526000602082015290565b8152602001611342604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611373611dbb565b565b60006040828403121561138757600080fd5b50919050565b6000806000806000808688036101a08112156113a857600080fd5b6113b28989611375565b965060408801356001600160401b03808211156113ce57600080fd5b90890190610120828c0312156113e357600080fd5b81975060e0605f19840112156113f857600080fd5b60608a01965061140c8b6101408c01611375565b95506101808a013592508083111561142357600080fd5b828a0192508a601f84011261143757600080fd5b823591508082111561144857600080fd5b5089602082840101111561145b57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b6004811061149657611496611470565b9052565b8051600781106114ac576114ac611470565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611509576114f582865161149a565b9382019360019390930192908501906114e2565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b8281101561158857845161155485825161149a565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a09093019260010161153f565b509687015197909601969096525093949350505050565b60006101008083526115b48184018651611486565b6020850151610120848101526115ce6102208501826114b9565b9050604086015160ff1980868403016101408701526115ed83836114b9565b92506060880151915080868403016101608701525061160c828261151d565b915050608086015161018085015260a08601516116326101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e086015250908501516102008401529050610da460208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156116ff576116ff6116c7565b60405290565b604051602081016001600160401b03811182821017156116ff576116ff6116c7565b604051608081016001600160401b03811182821017156116ff576116ff6116c7565b60405161012081016001600160401b03811182821017156116ff576116ff6116c7565b60405160a081016001600160401b03811182821017156116ff576116ff6116c7565b604051606081016001600160401b03811182821017156116ff576116ff6116c7565b604051601f8201601f191681016001600160401b03811182821017156117d8576117d86116c7565b604052919050565b8035600481106117ef57600080fd5b919050565b60006001600160401b0382111561180d5761180d6116c7565b5060051b60200190565b60006040828403121561182957600080fd5b6118316116dd565b905081356007811061184257600080fd5b808252506020820135602082015292915050565b6000604080838503121561186957600080fd5b6118716116dd565b915082356001600160401b038082111561188a57600080fd5b818501915060208083880312156118a057600080fd5b6118a8611705565b8335838111156118b757600080fd5b80850194505087601f8501126118cc57600080fd5b833592506118e16118dc846117f4565b6117b0565b83815260069390931b8401820192828101908985111561190057600080fd5b948301945b84861015611926576119178a87611817565b82529486019490830190611905565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146117ef57600080fd5b6000604080838503121561196657600080fd5b61196e6116dd565b915082356001600160401b0381111561198657600080fd5b8301601f8101851361199757600080fd5b803560206119a76118dc836117f4565b82815260a092830284018201928282019190898511156119c657600080fd5b948301945b84861015611a2f5780868b0312156119e35760008081fd5b6119eb611727565b6119f58b88611817565b815287870135858201526060611a0c81890161193f565b89830152611a1c6080890161193f565b90820152835294850194918301916119cb565b50808752505080860135818601525050505092915050565b60006101208236031215611a5a57600080fd5b611a62611749565b611a6b836117e0565b815260208301356001600160401b0380821115611a8757600080fd5b611a9336838701611856565b60208401526040850135915080821115611aac57600080fd5b611ab836838701611856565b60408401526060850135915080821115611ad157600080fd5b50611ade36828601611953565b60608301525060808301356080820152611afa60a0840161193f565b60a0820152611b0b60c0840161193f565b60c0820152611b1c60e0840161193f565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146117ef57600080fd5b600081830360e0811215611b5d57600080fd5b611b6561176c565b833581526060601f1983011215611b7b57600080fd5b611b8361178e565b9150611b9160208501611b33565b8252611b9f60408501611b33565b6020830152606084013560408301528160208201526080840135604082015260a08401356060820152611bd460c0850161193f565b6080820152949350505050565b600060208284031215611bf357600080fd5b813561ffff81168114610da457600080fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611c2e57611c2e611c05565b500190565b634e487b7160e01b600052601260045260246000fd5b600082611c5857611c58611c33565b500490565b600082611c6c57611c6c611c33565b500690565b6000816000190483118215151615611c8b57611c8b611c05565b500290565b6000600019821415611ca457611ca4611c05565b5060010190565b60006001600160401b0380831681851681830481118215151615611cd157611cd1611c05565b02949350505050565b60006001600160401b0383811690831681811015611cfa57611cfa611c05565b039392505050565b60006001600160401b0380841680611d1c57611d1c611c33565b92169190910492915050565b600082821015611d3a57611d3a611c05565b500390565b634e487b7160e01b600052603260045260246000fd5b600060ff821660ff811415611d6c57611d6c611c05565b60010192915050565b6000845160005b81811015611d965760208188018101518583015201611d7c565b81811115611da5576000828501525b5091909101928352506020820152604001919050565b634e487b7160e01b600052605160045260246000fdfea26469706673582212205f7075e58f7364049d8c9575d1e87bcf7bcef7f4d33b63e72ec18c37f5f6803364736f6c63430008090033",
|
474
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063da78e7d114610030575b600080fd5b61004361003e36600461138d565b61005a565b60405161005192919061159f565b60405180910390f35b6100626112c2565b6040805160a0810182526000808252825160608082018552828252602080830184905282860184905284019190915292820181905291810182905260808101919091526100ae87611a47565b91506100bf36879003870187611b4a565b905060006100d06020870187611be1565b905061136b602861ffff8316108015906100ef5750603561ffff831611155b156100fd57506101b4610196565b603661ffff8316108015906101175750603e61ffff831611155b1561012557506106bf610196565b61ffff8216603f141561013b5750610a69610196565b61ffff8216604014156101515750610aa1610196565b60405162461bcd60e51b8152602060048201526015602482015274494e56414c49445f4d454d4f52595f4f50434f444560581b60448201526064015b60405180910390fd5b6101a784848989898663ffffffff16565b5050965096945050505050565b6000808060286101c76020880188611be1565b61ffff1614156101e05750600091506004905081610435565b60296101ef6020880188611be1565b61ffff161415610209575060019150600890506000610435565b602a6102186020880188611be1565b61ffff161415610232575060029150600490506000610435565b602b6102416020880188611be1565b61ffff16141561025b575060039150600890506000610435565b602c61026a6020880188611be1565b61ffff1614156102835750600091506001905080610435565b602d6102926020880188611be1565b61ffff1614156102ab5750600091506001905081610435565b602e6102ba6020880188611be1565b61ffff1614156102d4575060009150600290506001610435565b602f6102e36020880188611be1565b61ffff1614156102fc5750600091506002905081610435565b603061030b6020880188611be1565b61ffff16141561032357506001915081905080610435565b60316103326020880188611be1565b61ffff16141561034b5750600191508190506000610435565b603261035a6020880188611be1565b61ffff1614156103735750600191506002905081610435565b60336103826020880188611be1565b61ffff16141561039c575060019150600290506000610435565b60346103ab6020880188611be1565b61ffff1614156103c45750600191506004905081610435565b60356103d36020880188611be1565b61ffff1614156103ed575060019150600490506000610435565b60405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d454d4f52595f4c4f41445f4f50434f4445000000000000604482015260640161018d565b600061044c6104478a60200151610b50565b610b75565b6104609063ffffffff166020890135611c1b565b6020890151519091506001600160401b031661047c8483611c1b565b111561049057505060028752506106b89050565b60006000198180805b878110156105355760006104ad8288611c1b565b905060006104bc602083611c49565b90508581146104e0576104d68f60200151828f8f8b610c06565b5097509095509350845b60006104ed602084611c5d565b90506104fa846008611c71565b6001600160401b031661050d8783610ca0565b60ff166001600160401b0316901b85179450505050808061052d90611c90565b915050610499565b5085156106745786600114801561055d5750600088600681111561055b5761055b611470565b145b15610573578060000b63ffffffff169050610674565b8660011480156105945750600188600681111561059257610592611470565b145b156105a15760000b610674565b8660021480156105c2575060008860068111156105c0576105c0611470565b145b156105d8578060010b63ffffffff169050610674565b8660021480156105f9575060018860068111156105f7576105f7611470565b145b156106065760010b610674565b8660041480156106275750600188600681111561062557610625611470565b145b156106345760030b610674565b60405162461bcd60e51b815260206004820152601560248201527410905117d491505117d096551154d7d4d251d39151605a1b604482015260640161018d565b6106af60405180604001604052808a600681111561069457610694611470565b81526001600160401b0384166020918201528f015190610d1a565b50505050505050505b5050505050565b6000808060366106d26020880188611be1565b61ffff1614156106e85750600491506000610857565b60376106f76020880188611be1565b61ffff16141561070d5750600891506001610857565b603861071c6020880188611be1565b61ffff1614156107325750600491506002610857565b60396107416020880188611be1565b61ffff1614156107575750600891506003610857565b603a6107666020880188611be1565b61ffff16141561077c5750600191506000610857565b603b61078b6020880188611be1565b61ffff1614156107a15750600291506000610857565b603c6107b06020880188611be1565b61ffff1614156107c557506001915081610857565b603d6107d46020880188611be1565b61ffff1614156107ea5750600291506001610857565b603e6107f96020880188611be1565b61ffff16141561080f5750600491506001610857565b60405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f4d454d4f52595f53544f52455f4f50434f44450000000000604482015260640161018d565b60006108668960200151610b50565b905081600681111561087a5761087a611470565b8151600681111561088d5761088d611470565b146108cb5760405162461bcd60e51b815260206004820152600e60248201526d4241445f53544f52455f5459504560901b604482015260640161018d565b806020015192506008846001600160401b031610156109165760016108f1856008611cab565b6001600160401b031660016001600160401b0316901b6109119190611cda565b831692505b5050600061092a6104478960200151610b50565b61093e9063ffffffff166020880135611c1b565b90508660200151600001516001600160401b0316836001600160401b0316826109679190611c1b565b111561097957505060028652506106b8565b604080516020810190915260608152600090600019906000805b876001600160401b0316811015610a465760006109b08288611c1b565b905060006109bf602083611c49565b9050858114610a045760001986146109e6576109dc858786610d2a565b60208f0151604001525b6109f78e60200151828e8e8b610c06565b9098509196509094509250845b6000610a11602084611c5d565b9050610a1e85828c610dab565b945060088a6001600160401b0316901c99505050508080610a3e90611c90565b915050610993565b50610a52828483610d2a565b60208c015160400152505050505050505050505050565b602084015151600090610a80906201000090611d02565b9050610a99610a8e82610e30565b602088015190610d1a565b505050505050565b602084015151600090610ab8906201000090611d02565b90506000610acc6104478860200151610b50565b90506000610ae363ffffffff808416908516611c1b565b90508660200151602001516001600160401b03168111610b3857610b0a6201000082611c71565b60208801516001600160401b039091169052610b33610b2884610e30565b60208a015190610d1a565b610b46565b610b46610b28600019610e30565b5050505050505050565b60408051808201909152600080825260208201528151610b6f90610e63565b92915050565b60208101516000908183516006811115610b9157610b91611470565b14610bc85760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b604482015260640161018d565b6401000000008110610b6f5760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b604482015260640161018d565b600080610c1f6040518060200160405280606081525090565b839150610c2d868684610f73565b9093509150610c3d868684610f8f565b925090506000610c4e828986610d2a565b905088604001518114610c945760405162461bcd60e51b815260206004820152600e60248201526d15d493d391d7d3515357d493d3d560921b604482015260640161018d565b50955095509592505050565b600060208210610ceb5760405162461bcd60e51b81526020600482015260166024820152750848288bea0aa9898be988a828cbe84b2a88abe9288b60531b604482015260640161018d565b600082610cfa60016020611d28565b610d049190611d28565b610d0f906008611c71565b9390931c9392505050565b8151610d269082611069565b5050565b6040516b26b2b6b7b93c903632b0b31d60a11b6020820152602c81018290526000908190604c01604051602081830303815290604052805190602001209050610da08585836040518060400160405280601381526020017226b2b6b7b93c9036b2b935b632903a3932b29d60691b81525061115c565b9150505b9392505050565b600060208310610df55760405162461bcd60e51b81526020600482015260156024820152740848288bea68aa8be988a828cbe84b2a88abe9288b605b1b604482015260640161018d565b600083610e0460016020611d28565b610e0e9190611d28565b610e19906008611c71565b60ff848116821b911b198616179150509392505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b604080518082019091526000808252602082015281518051610e8790600190611d28565b81518110610e9757610e97611d3f565b6020026020010151905060006001836000015151610eb59190611d28565b6001600160401b03811115610ecc57610ecc6116c7565b604051908082528060200260200182016040528015610f1157816020015b6040805180820190915260008082526020820152815260200190600190039081610eea5790505b50905060005b8151811015610f6c578351805182908110610f3457610f34611d3f565b6020026020010151828281518110610f4e57610f4e611d3f565b60200260200101819052508080610f6490611c90565b915050610f17565b5090915290565b60008181610f8286868461122e565b9097909650945050505050565b604080516020810190915260608152816000610fac86868461128c565b92509050600060ff82166001600160401b03811115610fcd57610fcd6116c7565b604051908082528060200260200182016040528015610ff6578160200160208202803683370190505b50905060005b8260ff168160ff16101561104d57611015888886610f73565b838360ff168151811061102a5761102a611d3f565b60200260200101819650828152505050808061104590611d55565b915050610ffc565b5060405180602001604052808281525093505050935093915050565b81515160009061107a906001611c1b565b6001600160401b03811115611091576110916116c7565b6040519080825280602002602001820160405280156110d657816020015b60408051808201909152600080825260208201528152602001906001900390816110af5790505b50905060005b8351518110156111325783518051829081106110fa576110fa611d3f565b602002602001015182828151811061111457611114611d3f565b6020026020010181905250808061112a90611c90565b9150506110dc565b5081818460000151518151811061114b5761114b611d3f565b602090810291909101015290915250565b8160005b85515181101561122557600185166111c15782828760000151838151811061118a5761118a611d3f565b60200260200101516040516020016111a493929190611d75565b60405160208183030381529060405280519060200120915061120c565b82866000015182815181106111d8576111d8611d3f565b6020026020010151836040516020016111f393929190611d75565b6040516020818303038152906040528051906020012091505b60019490941c938061121d81611c90565b915050611160565b50949350505050565b600081815b602081101561128357600883901b925085858381811061125557611255611d3f565b919091013560f81c9390931792508161126d81611c90565b925050808061127b90611c90565b915050611233565b50935093915050565b6000818484828181106112a1576112a1611d3f565b919091013560f81c92508190506112b781611c90565b915050935093915050565b60408051610120810190915280600081526020016112f760408051606080820183529181019182529081526000602082015290565b815260200161131d60408051606080820183529181019182529081526000602082015290565b8152602001611342604051806040016040528060608152602001600080191681525090565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b611373611dbb565b565b60006040828403121561138757600080fd5b50919050565b6000806000806000808688036101a08112156113a857600080fd5b6113b28989611375565b965060408801356001600160401b03808211156113ce57600080fd5b90890190610120828c0312156113e357600080fd5b81975060e0605f19840112156113f857600080fd5b60608a01965061140c8b6101408c01611375565b95506101808a013592508083111561142357600080fd5b828a0192508a601f84011261143757600080fd5b823591508082111561144857600080fd5b5089602082840101111561145b57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b6004811061149657611496611470565b9052565b8051600781106114ac576114ac611470565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611509576114f582865161149a565b9382019360019390930192908501906114e2565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b8281101561158857845161155485825161149a565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a09093019260010161153f565b509687015197909601969096525093949350505050565b60006101008083526115b48184018651611486565b6020850151610120848101526115ce6102208501826114b9565b9050604086015160ff1980868403016101408701526115ed83836114b9565b92506060880151915080868403016101608701525061160c828261151d565b915050608086015161018085015260a08601516116326101a086018263ffffffff169052565b5060c086015163ffffffff81166101c08601525060e086015163ffffffff81166101e086015250908501516102008401529050610da460208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a083015263ffffffff60808201511660c08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156116ff576116ff6116c7565b60405290565b604051602081016001600160401b03811182821017156116ff576116ff6116c7565b604051608081016001600160401b03811182821017156116ff576116ff6116c7565b60405161012081016001600160401b03811182821017156116ff576116ff6116c7565b60405160a081016001600160401b03811182821017156116ff576116ff6116c7565b604051606081016001600160401b03811182821017156116ff576116ff6116c7565b604051601f8201601f191681016001600160401b03811182821017156117d8576117d86116c7565b604052919050565b8035600481106117ef57600080fd5b919050565b60006001600160401b0382111561180d5761180d6116c7565b5060051b60200190565b60006040828403121561182957600080fd5b6118316116dd565b905081356007811061184257600080fd5b808252506020820135602082015292915050565b6000604080838503121561186957600080fd5b6118716116dd565b915082356001600160401b038082111561188a57600080fd5b818501915060208083880312156118a057600080fd5b6118a8611705565b8335838111156118b757600080fd5b80850194505087601f8501126118cc57600080fd5b833592506118e16118dc846117f4565b6117b0565b83815260069390931b8401820192828101908985111561190057600080fd5b948301945b84861015611926576119178a87611817565b82529486019490830190611905565b8252508552948501359484019490945250909392505050565b803563ffffffff811681146117ef57600080fd5b6000604080838503121561196657600080fd5b61196e6116dd565b915082356001600160401b0381111561198657600080fd5b8301601f8101851361199757600080fd5b803560206119a76118dc836117f4565b82815260a092830284018201928282019190898511156119c657600080fd5b948301945b84861015611a2f5780868b0312156119e35760008081fd5b6119eb611727565b6119f58b88611817565b815287870135858201526060611a0c81890161193f565b89830152611a1c6080890161193f565b90820152835294850194918301916119cb565b50808752505080860135818601525050505092915050565b60006101208236031215611a5a57600080fd5b611a62611749565b611a6b836117e0565b815260208301356001600160401b0380821115611a8757600080fd5b611a9336838701611856565b60208401526040850135915080821115611aac57600080fd5b611ab836838701611856565b60408401526060850135915080821115611ad157600080fd5b50611ade36828601611953565b60608301525060808301356080820152611afa60a0840161193f565b60a0820152611b0b60c0840161193f565b60c0820152611b1c60e0840161193f565b60e082015261010092830135928101929092525090565b80356001600160401b03811681146117ef57600080fd5b600081830360e0811215611b5d57600080fd5b611b6561176c565b833581526060601f1983011215611b7b57600080fd5b611b8361178e565b9150611b9160208501611b33565b8252611b9f60408501611b33565b6020830152606084013560408301528160208201526080840135604082015260a08401356060820152611bd460c0850161193f565b6080820152949350505050565b600060208284031215611bf357600080fd5b813561ffff81168114610da457600080fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611c2e57611c2e611c05565b500190565b634e487b7160e01b600052601260045260246000fd5b600082611c5857611c58611c33565b500490565b600082611c6c57611c6c611c33565b500690565b6000816000190483118215151615611c8b57611c8b611c05565b500290565b6000600019821415611ca457611ca4611c05565b5060010190565b60006001600160401b0380831681851681830481118215151615611cd157611cd1611c05565b02949350505050565b60006001600160401b0383811690831681811015611cfa57611cfa611c05565b039392505050565b60006001600160401b0380841680611d1c57611d1c611c33565b92169190910492915050565b600082821015611d3a57611d3a611c05565b500390565b634e487b7160e01b600052603260045260246000fd5b600060ff821660ff811415611d6c57611d6c611c05565b60010192915050565b6000845160005b81811015611d965760208188018101518583015201611d7c565b81811115611da5576000828501525b5091909101928352506020820152604001919050565b634e487b7160e01b600052605160045260246000fdfea26469706673582212205f7075e58f7364049d8c9575d1e87bcf7bcef7f4d33b63e72ec18c37f5f6803364736f6c63430008090033",
|
475
475
|
"linkReferences": {},
|
476
476
|
"deployedLinkReferences": {}
|
477
477
|
}
|
@@ -162,6 +162,19 @@
|
|
162
162
|
"stateMutability": "nonpayable",
|
163
163
|
"type": "function"
|
164
164
|
},
|
165
|
+
{
|
166
|
+
"inputs": [
|
167
|
+
{
|
168
|
+
"internalType": "uint64",
|
169
|
+
"name": "level",
|
170
|
+
"type": "uint64"
|
171
|
+
}
|
172
|
+
],
|
173
|
+
"name": "setBrotliCompressionLevel",
|
174
|
+
"outputs": [],
|
175
|
+
"stateMutability": "nonpayable",
|
176
|
+
"type": "function"
|
177
|
+
},
|
165
178
|
{
|
166
179
|
"inputs": [
|
167
180
|
{
|
@@ -3,6 +3,19 @@
|
|
3
3
|
"contractName": "ArbOwnerPublic",
|
4
4
|
"sourceName": "src/precompiles/ArbOwnerPublic.sol",
|
5
5
|
"abi": [
|
6
|
+
{
|
7
|
+
"anonymous": false,
|
8
|
+
"inputs": [
|
9
|
+
{
|
10
|
+
"indexed": false,
|
11
|
+
"internalType": "address",
|
12
|
+
"name": "rectifiedOwner",
|
13
|
+
"type": "address"
|
14
|
+
}
|
15
|
+
],
|
16
|
+
"name": "ChainOwnerRectified",
|
17
|
+
"type": "event"
|
18
|
+
},
|
6
19
|
{
|
7
20
|
"inputs": [],
|
8
21
|
"name": "getAllChainOwners",
|
@@ -16,6 +29,19 @@
|
|
16
29
|
"stateMutability": "view",
|
17
30
|
"type": "function"
|
18
31
|
},
|
32
|
+
{
|
33
|
+
"inputs": [],
|
34
|
+
"name": "getBrotliCompressionLevel",
|
35
|
+
"outputs": [
|
36
|
+
{
|
37
|
+
"internalType": "uint64",
|
38
|
+
"name": "",
|
39
|
+
"type": "uint64"
|
40
|
+
}
|
41
|
+
],
|
42
|
+
"stateMutability": "view",
|
43
|
+
"type": "function"
|
44
|
+
},
|
19
45
|
{
|
20
46
|
"inputs": [],
|
21
47
|
"name": "getInfraFeeAccount",
|
@@ -60,6 +86,19 @@
|
|
60
86
|
],
|
61
87
|
"stateMutability": "view",
|
62
88
|
"type": "function"
|
89
|
+
},
|
90
|
+
{
|
91
|
+
"inputs": [
|
92
|
+
{
|
93
|
+
"internalType": "address",
|
94
|
+
"name": "ownerToRectify",
|
95
|
+
"type": "address"
|
96
|
+
}
|
97
|
+
],
|
98
|
+
"name": "rectifyChainOwner",
|
99
|
+
"outputs": [],
|
100
|
+
"stateMutability": "nonpayable",
|
101
|
+
"type": "function"
|
63
102
|
}
|
64
103
|
],
|
65
104
|
"bytecode": "0x",
|