@arbitrum/nitro-contracts 2.1.0 → 3.0.0-alpha.0
Sign up to get free protection for your applications and to get access to all the features.
- 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/ERC1967Proxy.sol/ERC1967Proxy.json +2 -2
- 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/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +2 -2
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +2 -2
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +2 -2
- package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +2 -2
- 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/extensions/draft-IERC20Permit.sol/IERC20Permit.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.json +86 -0
- package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.json +2 -2
- package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.json +2 -2
- package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.json +10 -0
- package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +2 -2
- package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +2 -2
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.json +13 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.json +13 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.json +15 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.json +13 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +2 -2
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.json +15 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.json +10 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.json +2 -2
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.json +2 -2
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.json +13 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.dbg.json +4 -0
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.json +10 -0
- package/build/contracts/src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.dbg.json +4 -0
- package/build/contracts/{@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.json → src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.json} +41 -95
- package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.json +340 -0
- package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.json +89 -0
- package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.json +248 -0
- package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.json +83 -0
- package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.json +16 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.json +140 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.json +324 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.json +84 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.json +232 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.dbg.json +4 -0
- package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.json +78 -0
- package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.json +13 -0
- package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.json +20 -7
- 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 +15 -2
- package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.dbg.json +4 -0
- package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.json +24 -0
- package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.json +15 -2
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.json +22 -9
- package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.json +2 -2
- package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +1 -1
- package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.json +2 -2
- 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 +1 -1
- package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IInbox.sol/IInbox.json +1 -1
- package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.json +1 -1
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
- package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.json +441 -0
- package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Inbox.sol/Inbox.json +22 -4
- package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
- package/build/contracts/src/bridge/Messages.sol/Messages.json +2 -2
- 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 +564 -7
- package/build/contracts/src/chain/CacheManager.sol/CacheManager.dbg.json +1 -1
- package/build/contracts/src/chain/CacheManager.sol/CacheManager.json +15 -2
- package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/EdgeChallengeManager.dbg.json +4 -0
- package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/EdgeChallengeManager.json +1631 -0
- package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/IEdgeChallengeManager.dbg.json +4 -0
- package/build/contracts/src/challengeV2/EdgeChallengeManager.sol/IEdgeChallengeManager.json +762 -0
- package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.dbg.json +4 -0
- package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.json +247 -0
- package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.dbg.json +4 -0
- package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.json +10 -0
- package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.dbg.json +4 -0
- package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.json +10 -0
- package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.dbg.json +4 -0
- package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.json +24 -0
- package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.dbg.json +4 -0
- package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.json +24 -0
- package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.dbg.json +4 -0
- package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.json +10 -0
- package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
- package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.json +2 -2
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.json +2 -2
- 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/ArbitrumChecker.sol/ArbitrumChecker.json +2 -2
- package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
- package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.json +2 -2
- package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.dbg.json +1 -1
- package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.json +2 -2
- package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
- package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/src/libraries/GasRefundEnabled.sol/GasRefundEnabled.dbg.json +1 -1
- package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
- package/build/contracts/src/libraries/IReader4844.sol/IReader4844.dbg.json +1 -1
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.json +2 -2
- package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
- package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.dbg.json +1 -1
- package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.json +2 -2
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.json +8 -8
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.json +28 -2
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.json +2 -2
- package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.dbg.json +4 -0
- package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.json +227 -0
- package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.dbg.json +4 -0
- package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.json +133 -0
- package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.dbg.json +1 -1
- package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.json +2 -2
- package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.dbg.json +1 -1
- package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.json +2 -2
- package/build/contracts/src/mocks/Program.sol/ProgramTest.dbg.json +1 -1
- package/build/contracts/src/mocks/Program.sol/ProgramTest.json +2 -2
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +1 -1
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.json +2 -2
- package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.dbg.json +1 -1
- package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.json +2 -2
- package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.dbg.json +4 -0
- package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.json +1632 -0
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.json +564 -7
- 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/SimpleCacheManager.sol/SimpleCacheManager.dbg.json +1 -1
- package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.json +2 -2
- package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.dbg.json +4 -0
- package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.json +142 -0
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +1 -1
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.json +2 -2
- package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.dbg.json +4 -0
- package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.json +31 -0
- package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.dbg.json +4 -0
- package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.json +317 -0
- package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +1 -1
- package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.json +15 -2
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
- package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
- package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
- package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.json +2 -2
- package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.json +33 -9
- 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/IOneStepProver.sol/IOneStepProver.json +5 -0
- package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.json +35 -11
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.json +7 -2
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.json +7 -2
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.json +7 -2
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.json +7 -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/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbWasm.sol/ArbWasm.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbWasmCache.sol/ArbWasmCache.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
- package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/Assertion.sol/AssertionNodeLib.dbg.json +4 -0
- package/build/contracts/src/rollup/{Node.sol/NodeLib.json → Assertion.sol/AssertionNodeLib.json} +4 -4
- package/build/contracts/src/rollup/AssertionState.sol/AssertionStateLib.dbg.json +4 -0
- package/build/contracts/src/{challenge/ChallengeLib.sol/ChallengeLib.json → rollup/AssertionState.sol/AssertionStateLib.json} +4 -4
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.json +807 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.json +35 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.json +361 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.json +38 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.json +41 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/RollupReader.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/RollupReader.json +385 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.dbg.json +4 -0
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.json +203 -0
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.json +62 -10
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.json +2 -2
- package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.json +2 -2
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.json +2 -2
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IDeployHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.json +473 -99
- package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.json +315 -221
- package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.json +678 -499
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.json +806 -435
- package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupCore.sol/RollupCore.json +323 -235
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.json +98 -36
- 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 +97 -16
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupUserLogic.sol/RollupUserLogic.json +924 -535
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.json +15 -43
- 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/Deserialize.sol/Deserialize.json +2 -2
- package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
- package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.json +2 -2
- package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
- package/build/contracts/src/state/Instructions.sol/Instructions.json +2 -2
- package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
- package/build/contracts/src/state/Machine.sol/MachineLib.json +2 -2
- package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
- package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.json +2 -2
- package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
- package/build/contracts/src/state/Module.sol/ModuleLib.json +2 -2
- package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
- package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.json +2 -2
- package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
- package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.json +2 -2
- package/build/contracts/src/state/MultiStack.sol/MultiStackLib.dbg.json +1 -1
- package/build/contracts/src/state/MultiStack.sol/MultiStackLib.json +2 -2
- package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
- package/build/contracts/src/state/PcArray.sol/PcArrayLib.json +2 -2
- package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
- package/build/contracts/src/state/StackFrame.sol/StackFrameLib.json +2 -2
- package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
- package/build/contracts/src/state/Value.sol/ValueLib.json +2 -2
- package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
- package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.json +2 -2
- package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
- package/build/contracts/src/state/ValueStack.sol/ValueStackLib.json +2 -2
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.json +15 -2
- package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.json +2 -2
- package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
- package/build/contracts/src/test-helpers/EthVault.sol/EthVault.json +2 -2
- package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.json +2 -2
- 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/RollupMock.sol/RollupMock.json +2 -15
- package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +1 -1
- package/build/contracts/src/test-helpers/TestToken.sol/TestToken.json +2 -2
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.json +2 -2
- package/out/yul/Reader4844.yul/Reader4844.json +1 -1
- package/package.json +15 -5
- package/src/assertionStakingPool/AbsBoldStakingPool.sol +66 -0
- package/src/assertionStakingPool/AssertionStakingPool.sol +70 -0
- package/src/assertionStakingPool/AssertionStakingPoolCreator.sol +35 -0
- package/src/assertionStakingPool/EdgeStakingPool.sol +57 -0
- package/src/assertionStakingPool/EdgeStakingPoolCreator.sol +34 -0
- package/src/assertionStakingPool/StakingPoolCreatorUtils.sol +25 -0
- package/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol +41 -0
- package/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol +36 -0
- package/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol +31 -0
- package/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol +27 -0
- package/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol +28 -0
- package/src/bridge/AbsBridge.sol +38 -48
- package/src/bridge/AbsInbox.sol +88 -97
- package/src/bridge/AbsOutbox.sol +23 -37
- package/src/bridge/Bridge.sol +6 -4
- package/src/bridge/DelayBuffer.sol +123 -0
- package/src/bridge/DelayBufferTypes.sol +38 -0
- package/src/bridge/ERC20Bridge.sol +8 -4
- package/src/bridge/ERC20Inbox.sol +46 -53
- package/src/bridge/ERC20Outbox.sol +7 -3
- package/src/bridge/GasRefunder.sol +38 -24
- package/src/bridge/IBridge.sol +30 -21
- package/src/bridge/IERC20Bridge.sol +1 -1
- package/src/bridge/IERC20Inbox.sol +4 -2
- package/src/bridge/IEthBridge.sol +4 -2
- package/src/bridge/IInbox.sol +4 -2
- package/src/bridge/IInboxBase.sol +17 -13
- package/src/bridge/IOutbox.sol +13 -8
- package/src/bridge/ISequencerInbox.sol +118 -13
- package/src/bridge/Inbox.sol +131 -151
- package/src/bridge/Messages.sol +48 -18
- package/src/bridge/Outbox.sol +6 -2
- package/src/bridge/SequencerInbox.sol +339 -274
- package/src/chain/CacheManager.sol +49 -18
- package/src/challengeV2/EdgeChallengeManager.sol +783 -0
- package/src/challengeV2/IAssertionChain.sol +39 -0
- package/src/challengeV2/libraries/ArrayUtilsLib.sol +61 -0
- package/src/challengeV2/libraries/ChallengeEdgeLib.sol +333 -0
- package/src/challengeV2/libraries/ChallengeErrors.sol +108 -0
- package/src/challengeV2/libraries/EdgeChallengeManagerLib.sol +930 -0
- package/src/challengeV2/libraries/Enums.sol +26 -0
- package/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol +390 -0
- package/src/challengeV2/libraries/UintUtilsLib.sol +74 -0
- package/src/libraries/AddressAliasHelper.sol +6 -2
- package/src/libraries/AdminFallbackProxy.sol +8 -4
- package/src/libraries/ArbitrumChecker.sol +3 -4
- package/src/libraries/CryptographyPrimitives.sol +39 -46
- package/src/libraries/DecimalsConverterHelper.sol +2 -4
- package/src/libraries/DoubleLogicUUPSUpgradeable.sol +10 -7
- package/src/libraries/Error.sol +18 -3
- package/src/libraries/GasRefundEnabled.sol +3 -4
- package/src/libraries/MerkleLib.sol +6 -5
- package/src/libraries/UUPSNotUpgradeable.sol +2 -4
- package/src/mocks/BridgeStub.sol +50 -48
- package/src/mocks/BridgeUnproxied.sol +2 -0
- package/src/mocks/InboxStub.sol +22 -17
- package/src/mocks/MerkleTreeAccess.sol +72 -0
- package/src/mocks/MockRollupEventInbox.sol +59 -0
- package/src/mocks/MultiCallTest.sol +3 -1
- package/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol +3 -1
- package/src/mocks/Program.sol +9 -7
- package/src/mocks/SequencerInboxBlobMock.sol +38 -0
- package/src/mocks/SequencerInboxStub.sol +9 -12
- package/src/mocks/Simple.sol +13 -25
- package/src/mocks/SimpleCacheManager.sol +10 -3
- package/src/mocks/SimpleOneStepProofEntry.sol +60 -0
- package/src/mocks/SimpleProxy.sol +3 -1
- package/src/mocks/TestWETH9.sol +30 -0
- package/src/mocks/UpgradeExecutorMock.sol +10 -17
- package/src/node-interface/NodeInterface.sol +23 -22
- package/src/node-interface/NodeInterfaceDebug.sol +5 -3
- package/src/osp/HashProofHelper.sol +9 -10
- package/src/osp/IOneStepProofEntry.sol +14 -9
- package/src/osp/IOneStepProver.sol +1 -0
- package/src/osp/OneStepProofEntry.sol +63 -54
- package/src/osp/OneStepProver0.sol +14 -27
- package/src/osp/OneStepProverHostIo.sol +31 -58
- package/src/osp/OneStepProverMath.sol +15 -23
- package/src/osp/OneStepProverMemory.sol +9 -23
- package/src/precompiles/ArbAddressTable.sol +19 -9
- package/src/precompiles/ArbAggregator.sol +12 -4
- package/src/precompiles/ArbBLS.sol +1 -3
- package/src/precompiles/ArbDebug.sol +5 -11
- package/src/precompiles/ArbFunctionTable.sol +7 -10
- package/src/precompiles/ArbGasInfo.sol +9 -43
- package/src/precompiles/ArbInfo.sol +6 -2
- package/src/precompiles/ArbOwner.sol +101 -34
- package/src/precompiles/ArbOwnerPublic.sol +6 -2
- package/src/precompiles/ArbRetryableTx.sol +15 -5
- package/src/precompiles/ArbStatistics.sol +1 -8
- package/src/precompiles/ArbSys.sol +16 -18
- package/src/precompiles/ArbWasm.sol +24 -14
- package/src/precompiles/ArbWasmCache.sol +15 -5
- package/src/precompiles/ArbosTest.sol +3 -1
- package/src/rollup/AbsRollupEventInbox.sol +15 -16
- package/src/rollup/Assertion.sol +100 -0
- package/src/rollup/AssertionState.sol +29 -0
- package/src/rollup/BOLDUpgradeAction.sol +631 -0
- package/src/rollup/BridgeCreator.sol +42 -15
- package/src/rollup/Config.sol +15 -7
- package/src/rollup/DeployHelper.sol +12 -31
- package/src/rollup/ERC20RollupEventInbox.sol +8 -9
- package/src/rollup/FactoryDeployerHelper.sol +8 -10
- package/src/rollup/IRollupAdmin.sol +127 -45
- package/src/rollup/IRollupCore.sol +64 -84
- package/src/rollup/IRollupEventInbox.sol +3 -1
- package/src/rollup/IRollupLogic.sol +35 -72
- package/src/rollup/RollupAdminLogic.sol +224 -203
- package/src/rollup/RollupCore.sol +407 -428
- package/src/rollup/RollupCreator.sol +88 -75
- package/src/rollup/RollupEventInbox.sol +7 -7
- package/src/rollup/RollupLib.sol +50 -86
- package/src/rollup/RollupProxy.sol +8 -12
- package/src/rollup/RollupUserLogic.sol +279 -644
- package/src/rollup/ValidatorUtils.sol +0 -242
- package/src/rollup/ValidatorWallet.sol +22 -38
- package/src/rollup/ValidatorWalletCreator.sol +8 -8
- package/src/state/Deserialize.sol +74 -96
- package/src/state/GlobalState.sol +74 -20
- package/src/state/Instructions.sol +4 -3
- package/src/state/Machine.sol +18 -19
- package/src/state/Module.sol +14 -13
- package/src/state/ModuleMemory.sol +6 -25
- package/src/state/ModuleMemoryCompact.sol +3 -1
- package/src/state/MultiStack.sol +16 -20
- package/src/state/PcArray.sol +7 -7
- package/src/state/StackFrame.sol +21 -14
- package/src/state/Value.sol +18 -6
- package/src/state/ValueArray.sol +7 -7
- package/src/state/ValueStack.sol +9 -3
- package/src/test-helpers/BridgeTester.sol +32 -42
- package/src/test-helpers/CryptographyPrimitivesTester.sol +12 -13
- package/src/test-helpers/EthVault.sol +4 -2
- package/src/test-helpers/InterfaceCompatibilityTester.sol +1 -1
- package/src/test-helpers/MessageTester.sol +3 -10
- package/src/test-helpers/OutboxWithoutOptTester.sol +12 -19
- package/src/test-helpers/RollupMock.sol +3 -7
- package/src/test-helpers/TestToken.sol +4 -2
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +0 -4
- package/build/contracts/src/challenge/ChallengeLib.sol/ChallengeLib.dbg.json +0 -4
- package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.dbg.json +0 -4
- package/build/contracts/src/challenge/ChallengeManager.sol/ChallengeManager.json +0 -746
- package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.dbg.json +0 -4
- package/build/contracts/src/challenge/IChallengeManager.sol/IChallengeManager.json +0 -441
- package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.dbg.json +0 -4
- package/build/contracts/src/challenge/IChallengeResultReceiver.sol/IChallengeResultReceiver.json +0 -34
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.dbg.json +0 -4
- package/build/contracts/src/mocks/MockResultReceiver.sol/MockResultReceiver.json +0 -188
- package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.dbg.json +0 -4
- package/build/contracts/src/mocks/SingleExecutionChallenge.sol/SingleExecutionChallenge.json +0 -797
- package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.dbg.json +0 -4
- package/build/contracts/src/mocks/TimedOutChallengeManager.sol/TimedOutChallengeManager.json +0 -746
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.dbg.json +0 -4
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserAbs.json +0 -1332
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.dbg.json +0 -4
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUserERC20.json +0 -1466
- package/build/contracts/src/rollup/Node.sol/NodeLib.dbg.json +0 -4
- package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.dbg.json +0 -4
- package/build/contracts/src/rollup/RollupUserLogic.sol/AbsRollupUserLogic.json +0 -1614
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.dbg.json +0 -4
- package/build/contracts/src/rollup/RollupUserLogic.sol/ERC20RollupUserLogic.json +0 -1748
- package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.dbg.json +0 -4
- package/build/contracts/src/rollup/ValidatorUtils.sol/ValidatorUtils.json +0 -379
- package/src/challenge/ChallengeLib.sol +0 -88
- package/src/challenge/ChallengeManager.sol +0 -375
- package/src/challenge/IChallengeManager.sol +0 -86
- package/src/challenge/IChallengeResultReceiver.sol +0 -13
- package/src/mocks/MockResultReceiver.sol +0 -59
- package/src/mocks/SingleExecutionChallenge.sol +0 -41
- package/src/mocks/TimedOutChallengeManager.sol +0 -13
- package/src/rollup/Node.sol +0 -113
@@ -0,0 +1,1632 @@
|
|
1
|
+
{
|
2
|
+
"_format": "hh-sol-artifact-1",
|
3
|
+
"contractName": "SequencerInboxBlobMock",
|
4
|
+
"sourceName": "src/mocks/SequencerInboxBlobMock.sol",
|
5
|
+
"abi": [
|
6
|
+
{
|
7
|
+
"inputs": [
|
8
|
+
{
|
9
|
+
"internalType": "uint256",
|
10
|
+
"name": "maxDataSize_",
|
11
|
+
"type": "uint256"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"internalType": "contract IReader4844",
|
15
|
+
"name": "reader_",
|
16
|
+
"type": "address"
|
17
|
+
},
|
18
|
+
{
|
19
|
+
"internalType": "bool",
|
20
|
+
"name": "isUsingFeeToken_",
|
21
|
+
"type": "bool"
|
22
|
+
},
|
23
|
+
{
|
24
|
+
"internalType": "bool",
|
25
|
+
"name": "isDelayBufferable_",
|
26
|
+
"type": "bool"
|
27
|
+
}
|
28
|
+
],
|
29
|
+
"stateMutability": "nonpayable",
|
30
|
+
"type": "constructor"
|
31
|
+
},
|
32
|
+
{
|
33
|
+
"inputs": [],
|
34
|
+
"name": "AlreadyInit",
|
35
|
+
"type": "error"
|
36
|
+
},
|
37
|
+
{
|
38
|
+
"inputs": [
|
39
|
+
{
|
40
|
+
"internalType": "bytes32",
|
41
|
+
"name": "",
|
42
|
+
"type": "bytes32"
|
43
|
+
}
|
44
|
+
],
|
45
|
+
"name": "AlreadyValidDASKeyset",
|
46
|
+
"type": "error"
|
47
|
+
},
|
48
|
+
{
|
49
|
+
"inputs": [],
|
50
|
+
"name": "BadBufferConfig",
|
51
|
+
"type": "error"
|
52
|
+
},
|
53
|
+
{
|
54
|
+
"inputs": [],
|
55
|
+
"name": "BadMaxTimeVariation",
|
56
|
+
"type": "error"
|
57
|
+
},
|
58
|
+
{
|
59
|
+
"inputs": [
|
60
|
+
{
|
61
|
+
"internalType": "uint256",
|
62
|
+
"name": "stored",
|
63
|
+
"type": "uint256"
|
64
|
+
},
|
65
|
+
{
|
66
|
+
"internalType": "uint256",
|
67
|
+
"name": "received",
|
68
|
+
"type": "uint256"
|
69
|
+
}
|
70
|
+
],
|
71
|
+
"name": "BadSequencerNumber",
|
72
|
+
"type": "error"
|
73
|
+
},
|
74
|
+
{
|
75
|
+
"inputs": [],
|
76
|
+
"name": "DataBlobsNotSupported",
|
77
|
+
"type": "error"
|
78
|
+
},
|
79
|
+
{
|
80
|
+
"inputs": [
|
81
|
+
{
|
82
|
+
"internalType": "uint256",
|
83
|
+
"name": "dataLength",
|
84
|
+
"type": "uint256"
|
85
|
+
},
|
86
|
+
{
|
87
|
+
"internalType": "uint256",
|
88
|
+
"name": "maxDataLength",
|
89
|
+
"type": "uint256"
|
90
|
+
}
|
91
|
+
],
|
92
|
+
"name": "DataTooLarge",
|
93
|
+
"type": "error"
|
94
|
+
},
|
95
|
+
{
|
96
|
+
"inputs": [],
|
97
|
+
"name": "DelayProofRequired",
|
98
|
+
"type": "error"
|
99
|
+
},
|
100
|
+
{
|
101
|
+
"inputs": [],
|
102
|
+
"name": "DelayedBackwards",
|
103
|
+
"type": "error"
|
104
|
+
},
|
105
|
+
{
|
106
|
+
"inputs": [],
|
107
|
+
"name": "DelayedTooFar",
|
108
|
+
"type": "error"
|
109
|
+
},
|
110
|
+
{
|
111
|
+
"inputs": [],
|
112
|
+
"name": "Deprecated",
|
113
|
+
"type": "error"
|
114
|
+
},
|
115
|
+
{
|
116
|
+
"inputs": [],
|
117
|
+
"name": "ExtraGasNotUint64",
|
118
|
+
"type": "error"
|
119
|
+
},
|
120
|
+
{
|
121
|
+
"inputs": [],
|
122
|
+
"name": "ForceIncludeBlockTooSoon",
|
123
|
+
"type": "error"
|
124
|
+
},
|
125
|
+
{
|
126
|
+
"inputs": [],
|
127
|
+
"name": "HadZeroInit",
|
128
|
+
"type": "error"
|
129
|
+
},
|
130
|
+
{
|
131
|
+
"inputs": [],
|
132
|
+
"name": "IncorrectMessagePreimage",
|
133
|
+
"type": "error"
|
134
|
+
},
|
135
|
+
{
|
136
|
+
"inputs": [
|
137
|
+
{
|
138
|
+
"internalType": "string",
|
139
|
+
"name": "name",
|
140
|
+
"type": "string"
|
141
|
+
}
|
142
|
+
],
|
143
|
+
"name": "InitParamZero",
|
144
|
+
"type": "error"
|
145
|
+
},
|
146
|
+
{
|
147
|
+
"inputs": [],
|
148
|
+
"name": "InvalidDelayedAccPreimage",
|
149
|
+
"type": "error"
|
150
|
+
},
|
151
|
+
{
|
152
|
+
"inputs": [
|
153
|
+
{
|
154
|
+
"internalType": "bytes1",
|
155
|
+
"name": "",
|
156
|
+
"type": "bytes1"
|
157
|
+
}
|
158
|
+
],
|
159
|
+
"name": "InvalidHeaderFlag",
|
160
|
+
"type": "error"
|
161
|
+
},
|
162
|
+
{
|
163
|
+
"inputs": [],
|
164
|
+
"name": "KeysetTooLarge",
|
165
|
+
"type": "error"
|
166
|
+
},
|
167
|
+
{
|
168
|
+
"inputs": [],
|
169
|
+
"name": "MissingDataHashes",
|
170
|
+
"type": "error"
|
171
|
+
},
|
172
|
+
{
|
173
|
+
"inputs": [],
|
174
|
+
"name": "NativeTokenMismatch",
|
175
|
+
"type": "error"
|
176
|
+
},
|
177
|
+
{
|
178
|
+
"inputs": [
|
179
|
+
{
|
180
|
+
"internalType": "bytes32",
|
181
|
+
"name": "",
|
182
|
+
"type": "bytes32"
|
183
|
+
}
|
184
|
+
],
|
185
|
+
"name": "NoSuchKeyset",
|
186
|
+
"type": "error"
|
187
|
+
},
|
188
|
+
{
|
189
|
+
"inputs": [],
|
190
|
+
"name": "NotBatchPoster",
|
191
|
+
"type": "error"
|
192
|
+
},
|
193
|
+
{
|
194
|
+
"inputs": [
|
195
|
+
{
|
196
|
+
"internalType": "address",
|
197
|
+
"name": "",
|
198
|
+
"type": "address"
|
199
|
+
}
|
200
|
+
],
|
201
|
+
"name": "NotBatchPosterManager",
|
202
|
+
"type": "error"
|
203
|
+
},
|
204
|
+
{
|
205
|
+
"inputs": [],
|
206
|
+
"name": "NotDelayBufferable",
|
207
|
+
"type": "error"
|
208
|
+
},
|
209
|
+
{
|
210
|
+
"inputs": [],
|
211
|
+
"name": "NotForked",
|
212
|
+
"type": "error"
|
213
|
+
},
|
214
|
+
{
|
215
|
+
"inputs": [],
|
216
|
+
"name": "NotOrigin",
|
217
|
+
"type": "error"
|
218
|
+
},
|
219
|
+
{
|
220
|
+
"inputs": [
|
221
|
+
{
|
222
|
+
"internalType": "address",
|
223
|
+
"name": "sender",
|
224
|
+
"type": "address"
|
225
|
+
},
|
226
|
+
{
|
227
|
+
"internalType": "address",
|
228
|
+
"name": "owner",
|
229
|
+
"type": "address"
|
230
|
+
}
|
231
|
+
],
|
232
|
+
"name": "NotOwner",
|
233
|
+
"type": "error"
|
234
|
+
},
|
235
|
+
{
|
236
|
+
"inputs": [],
|
237
|
+
"name": "RollupNotChanged",
|
238
|
+
"type": "error"
|
239
|
+
},
|
240
|
+
{
|
241
|
+
"anonymous": false,
|
242
|
+
"inputs": [
|
243
|
+
{
|
244
|
+
"indexed": false,
|
245
|
+
"internalType": "address",
|
246
|
+
"name": "newBatchPosterManager",
|
247
|
+
"type": "address"
|
248
|
+
}
|
249
|
+
],
|
250
|
+
"name": "BatchPosterManagerSet",
|
251
|
+
"type": "event"
|
252
|
+
},
|
253
|
+
{
|
254
|
+
"anonymous": false,
|
255
|
+
"inputs": [
|
256
|
+
{
|
257
|
+
"indexed": false,
|
258
|
+
"internalType": "address",
|
259
|
+
"name": "batchPoster",
|
260
|
+
"type": "address"
|
261
|
+
},
|
262
|
+
{
|
263
|
+
"indexed": false,
|
264
|
+
"internalType": "bool",
|
265
|
+
"name": "isBatchPoster",
|
266
|
+
"type": "bool"
|
267
|
+
}
|
268
|
+
],
|
269
|
+
"name": "BatchPosterSet",
|
270
|
+
"type": "event"
|
271
|
+
},
|
272
|
+
{
|
273
|
+
"anonymous": false,
|
274
|
+
"inputs": [
|
275
|
+
{
|
276
|
+
"components": [
|
277
|
+
{
|
278
|
+
"internalType": "uint64",
|
279
|
+
"name": "threshold",
|
280
|
+
"type": "uint64"
|
281
|
+
},
|
282
|
+
{
|
283
|
+
"internalType": "uint64",
|
284
|
+
"name": "max",
|
285
|
+
"type": "uint64"
|
286
|
+
},
|
287
|
+
{
|
288
|
+
"internalType": "uint64",
|
289
|
+
"name": "replenishRateInBasis",
|
290
|
+
"type": "uint64"
|
291
|
+
}
|
292
|
+
],
|
293
|
+
"indexed": false,
|
294
|
+
"internalType": "struct BufferConfig",
|
295
|
+
"name": "bufferConfig",
|
296
|
+
"type": "tuple"
|
297
|
+
}
|
298
|
+
],
|
299
|
+
"name": "BufferConfigSet",
|
300
|
+
"type": "event"
|
301
|
+
},
|
302
|
+
{
|
303
|
+
"anonymous": false,
|
304
|
+
"inputs": [
|
305
|
+
{
|
306
|
+
"indexed": true,
|
307
|
+
"internalType": "uint256",
|
308
|
+
"name": "messageNum",
|
309
|
+
"type": "uint256"
|
310
|
+
},
|
311
|
+
{
|
312
|
+
"indexed": false,
|
313
|
+
"internalType": "bytes",
|
314
|
+
"name": "data",
|
315
|
+
"type": "bytes"
|
316
|
+
}
|
317
|
+
],
|
318
|
+
"name": "InboxMessageDelivered",
|
319
|
+
"type": "event"
|
320
|
+
},
|
321
|
+
{
|
322
|
+
"anonymous": false,
|
323
|
+
"inputs": [
|
324
|
+
{
|
325
|
+
"indexed": true,
|
326
|
+
"internalType": "uint256",
|
327
|
+
"name": "messageNum",
|
328
|
+
"type": "uint256"
|
329
|
+
}
|
330
|
+
],
|
331
|
+
"name": "InboxMessageDeliveredFromOrigin",
|
332
|
+
"type": "event"
|
333
|
+
},
|
334
|
+
{
|
335
|
+
"anonymous": false,
|
336
|
+
"inputs": [
|
337
|
+
{
|
338
|
+
"indexed": true,
|
339
|
+
"internalType": "bytes32",
|
340
|
+
"name": "keysetHash",
|
341
|
+
"type": "bytes32"
|
342
|
+
}
|
343
|
+
],
|
344
|
+
"name": "InvalidateKeyset",
|
345
|
+
"type": "event"
|
346
|
+
},
|
347
|
+
{
|
348
|
+
"anonymous": false,
|
349
|
+
"inputs": [
|
350
|
+
{
|
351
|
+
"components": [
|
352
|
+
{
|
353
|
+
"internalType": "uint256",
|
354
|
+
"name": "delayBlocks",
|
355
|
+
"type": "uint256"
|
356
|
+
},
|
357
|
+
{
|
358
|
+
"internalType": "uint256",
|
359
|
+
"name": "futureBlocks",
|
360
|
+
"type": "uint256"
|
361
|
+
},
|
362
|
+
{
|
363
|
+
"internalType": "uint256",
|
364
|
+
"name": "delaySeconds",
|
365
|
+
"type": "uint256"
|
366
|
+
},
|
367
|
+
{
|
368
|
+
"internalType": "uint256",
|
369
|
+
"name": "futureSeconds",
|
370
|
+
"type": "uint256"
|
371
|
+
}
|
372
|
+
],
|
373
|
+
"indexed": false,
|
374
|
+
"internalType": "struct ISequencerInbox.MaxTimeVariation",
|
375
|
+
"name": "maxTimeVariation",
|
376
|
+
"type": "tuple"
|
377
|
+
}
|
378
|
+
],
|
379
|
+
"name": "MaxTimeVariationSet",
|
380
|
+
"type": "event"
|
381
|
+
},
|
382
|
+
{
|
383
|
+
"anonymous": false,
|
384
|
+
"inputs": [
|
385
|
+
{
|
386
|
+
"indexed": true,
|
387
|
+
"internalType": "uint256",
|
388
|
+
"name": "id",
|
389
|
+
"type": "uint256"
|
390
|
+
}
|
391
|
+
],
|
392
|
+
"name": "OwnerFunctionCalled",
|
393
|
+
"type": "event"
|
394
|
+
},
|
395
|
+
{
|
396
|
+
"anonymous": false,
|
397
|
+
"inputs": [
|
398
|
+
{
|
399
|
+
"indexed": true,
|
400
|
+
"internalType": "uint256",
|
401
|
+
"name": "batchSequenceNumber",
|
402
|
+
"type": "uint256"
|
403
|
+
},
|
404
|
+
{
|
405
|
+
"indexed": false,
|
406
|
+
"internalType": "bytes",
|
407
|
+
"name": "data",
|
408
|
+
"type": "bytes"
|
409
|
+
}
|
410
|
+
],
|
411
|
+
"name": "SequencerBatchData",
|
412
|
+
"type": "event"
|
413
|
+
},
|
414
|
+
{
|
415
|
+
"anonymous": false,
|
416
|
+
"inputs": [
|
417
|
+
{
|
418
|
+
"indexed": true,
|
419
|
+
"internalType": "uint256",
|
420
|
+
"name": "batchSequenceNumber",
|
421
|
+
"type": "uint256"
|
422
|
+
},
|
423
|
+
{
|
424
|
+
"indexed": true,
|
425
|
+
"internalType": "bytes32",
|
426
|
+
"name": "beforeAcc",
|
427
|
+
"type": "bytes32"
|
428
|
+
},
|
429
|
+
{
|
430
|
+
"indexed": true,
|
431
|
+
"internalType": "bytes32",
|
432
|
+
"name": "afterAcc",
|
433
|
+
"type": "bytes32"
|
434
|
+
},
|
435
|
+
{
|
436
|
+
"indexed": false,
|
437
|
+
"internalType": "bytes32",
|
438
|
+
"name": "delayedAcc",
|
439
|
+
"type": "bytes32"
|
440
|
+
},
|
441
|
+
{
|
442
|
+
"indexed": false,
|
443
|
+
"internalType": "uint256",
|
444
|
+
"name": "afterDelayedMessagesRead",
|
445
|
+
"type": "uint256"
|
446
|
+
},
|
447
|
+
{
|
448
|
+
"components": [
|
449
|
+
{
|
450
|
+
"internalType": "uint64",
|
451
|
+
"name": "minTimestamp",
|
452
|
+
"type": "uint64"
|
453
|
+
},
|
454
|
+
{
|
455
|
+
"internalType": "uint64",
|
456
|
+
"name": "maxTimestamp",
|
457
|
+
"type": "uint64"
|
458
|
+
},
|
459
|
+
{
|
460
|
+
"internalType": "uint64",
|
461
|
+
"name": "minBlockNumber",
|
462
|
+
"type": "uint64"
|
463
|
+
},
|
464
|
+
{
|
465
|
+
"internalType": "uint64",
|
466
|
+
"name": "maxBlockNumber",
|
467
|
+
"type": "uint64"
|
468
|
+
}
|
469
|
+
],
|
470
|
+
"indexed": false,
|
471
|
+
"internalType": "struct IBridge.TimeBounds",
|
472
|
+
"name": "timeBounds",
|
473
|
+
"type": "tuple"
|
474
|
+
},
|
475
|
+
{
|
476
|
+
"indexed": false,
|
477
|
+
"internalType": "enum IBridge.BatchDataLocation",
|
478
|
+
"name": "dataLocation",
|
479
|
+
"type": "uint8"
|
480
|
+
}
|
481
|
+
],
|
482
|
+
"name": "SequencerBatchDelivered",
|
483
|
+
"type": "event"
|
484
|
+
},
|
485
|
+
{
|
486
|
+
"anonymous": false,
|
487
|
+
"inputs": [
|
488
|
+
{
|
489
|
+
"indexed": false,
|
490
|
+
"internalType": "address",
|
491
|
+
"name": "addr",
|
492
|
+
"type": "address"
|
493
|
+
},
|
494
|
+
{
|
495
|
+
"indexed": false,
|
496
|
+
"internalType": "bool",
|
497
|
+
"name": "isSequencer",
|
498
|
+
"type": "bool"
|
499
|
+
}
|
500
|
+
],
|
501
|
+
"name": "SequencerSet",
|
502
|
+
"type": "event"
|
503
|
+
},
|
504
|
+
{
|
505
|
+
"anonymous": false,
|
506
|
+
"inputs": [
|
507
|
+
{
|
508
|
+
"indexed": true,
|
509
|
+
"internalType": "bytes32",
|
510
|
+
"name": "keysetHash",
|
511
|
+
"type": "bytes32"
|
512
|
+
},
|
513
|
+
{
|
514
|
+
"indexed": false,
|
515
|
+
"internalType": "bytes",
|
516
|
+
"name": "keysetBytes",
|
517
|
+
"type": "bytes"
|
518
|
+
}
|
519
|
+
],
|
520
|
+
"name": "SetValidKeyset",
|
521
|
+
"type": "event"
|
522
|
+
},
|
523
|
+
{
|
524
|
+
"inputs": [],
|
525
|
+
"name": "BROTLI_MESSAGE_HEADER_FLAG",
|
526
|
+
"outputs": [
|
527
|
+
{
|
528
|
+
"internalType": "bytes1",
|
529
|
+
"name": "",
|
530
|
+
"type": "bytes1"
|
531
|
+
}
|
532
|
+
],
|
533
|
+
"stateMutability": "view",
|
534
|
+
"type": "function"
|
535
|
+
},
|
536
|
+
{
|
537
|
+
"inputs": [],
|
538
|
+
"name": "DAS_MESSAGE_HEADER_FLAG",
|
539
|
+
"outputs": [
|
540
|
+
{
|
541
|
+
"internalType": "bytes1",
|
542
|
+
"name": "",
|
543
|
+
"type": "bytes1"
|
544
|
+
}
|
545
|
+
],
|
546
|
+
"stateMutability": "view",
|
547
|
+
"type": "function"
|
548
|
+
},
|
549
|
+
{
|
550
|
+
"inputs": [],
|
551
|
+
"name": "DATA_AUTHENTICATED_FLAG",
|
552
|
+
"outputs": [
|
553
|
+
{
|
554
|
+
"internalType": "bytes1",
|
555
|
+
"name": "",
|
556
|
+
"type": "bytes1"
|
557
|
+
}
|
558
|
+
],
|
559
|
+
"stateMutability": "view",
|
560
|
+
"type": "function"
|
561
|
+
},
|
562
|
+
{
|
563
|
+
"inputs": [],
|
564
|
+
"name": "DATA_BLOB_HEADER_FLAG",
|
565
|
+
"outputs": [
|
566
|
+
{
|
567
|
+
"internalType": "bytes1",
|
568
|
+
"name": "",
|
569
|
+
"type": "bytes1"
|
570
|
+
}
|
571
|
+
],
|
572
|
+
"stateMutability": "view",
|
573
|
+
"type": "function"
|
574
|
+
},
|
575
|
+
{
|
576
|
+
"inputs": [],
|
577
|
+
"name": "HEADER_LENGTH",
|
578
|
+
"outputs": [
|
579
|
+
{
|
580
|
+
"internalType": "uint256",
|
581
|
+
"name": "",
|
582
|
+
"type": "uint256"
|
583
|
+
}
|
584
|
+
],
|
585
|
+
"stateMutability": "view",
|
586
|
+
"type": "function"
|
587
|
+
},
|
588
|
+
{
|
589
|
+
"inputs": [],
|
590
|
+
"name": "TREE_DAS_MESSAGE_HEADER_FLAG",
|
591
|
+
"outputs": [
|
592
|
+
{
|
593
|
+
"internalType": "bytes1",
|
594
|
+
"name": "",
|
595
|
+
"type": "bytes1"
|
596
|
+
}
|
597
|
+
],
|
598
|
+
"stateMutability": "view",
|
599
|
+
"type": "function"
|
600
|
+
},
|
601
|
+
{
|
602
|
+
"inputs": [],
|
603
|
+
"name": "ZERO_HEAVY_MESSAGE_HEADER_FLAG",
|
604
|
+
"outputs": [
|
605
|
+
{
|
606
|
+
"internalType": "bytes1",
|
607
|
+
"name": "",
|
608
|
+
"type": "bytes1"
|
609
|
+
}
|
610
|
+
],
|
611
|
+
"stateMutability": "view",
|
612
|
+
"type": "function"
|
613
|
+
},
|
614
|
+
{
|
615
|
+
"inputs": [
|
616
|
+
{
|
617
|
+
"internalType": "uint256",
|
618
|
+
"name": "sequenceNumber",
|
619
|
+
"type": "uint256"
|
620
|
+
},
|
621
|
+
{
|
622
|
+
"internalType": "bytes",
|
623
|
+
"name": "data",
|
624
|
+
"type": "bytes"
|
625
|
+
},
|
626
|
+
{
|
627
|
+
"internalType": "uint256",
|
628
|
+
"name": "afterDelayedMessagesRead",
|
629
|
+
"type": "uint256"
|
630
|
+
},
|
631
|
+
{
|
632
|
+
"internalType": "contract IGasRefunder",
|
633
|
+
"name": "gasRefunder",
|
634
|
+
"type": "address"
|
635
|
+
},
|
636
|
+
{
|
637
|
+
"internalType": "uint256",
|
638
|
+
"name": "prevMessageCount",
|
639
|
+
"type": "uint256"
|
640
|
+
},
|
641
|
+
{
|
642
|
+
"internalType": "uint256",
|
643
|
+
"name": "newMessageCount",
|
644
|
+
"type": "uint256"
|
645
|
+
}
|
646
|
+
],
|
647
|
+
"name": "addSequencerL2Batch",
|
648
|
+
"outputs": [],
|
649
|
+
"stateMutability": "nonpayable",
|
650
|
+
"type": "function"
|
651
|
+
},
|
652
|
+
{
|
653
|
+
"inputs": [
|
654
|
+
{
|
655
|
+
"internalType": "uint256",
|
656
|
+
"name": "sequenceNumber",
|
657
|
+
"type": "uint256"
|
658
|
+
},
|
659
|
+
{
|
660
|
+
"internalType": "bytes",
|
661
|
+
"name": "data",
|
662
|
+
"type": "bytes"
|
663
|
+
},
|
664
|
+
{
|
665
|
+
"internalType": "uint256",
|
666
|
+
"name": "afterDelayedMessagesRead",
|
667
|
+
"type": "uint256"
|
668
|
+
},
|
669
|
+
{
|
670
|
+
"internalType": "contract IGasRefunder",
|
671
|
+
"name": "gasRefunder",
|
672
|
+
"type": "address"
|
673
|
+
},
|
674
|
+
{
|
675
|
+
"internalType": "uint256",
|
676
|
+
"name": "prevMessageCount",
|
677
|
+
"type": "uint256"
|
678
|
+
},
|
679
|
+
{
|
680
|
+
"internalType": "uint256",
|
681
|
+
"name": "newMessageCount",
|
682
|
+
"type": "uint256"
|
683
|
+
},
|
684
|
+
{
|
685
|
+
"components": [
|
686
|
+
{
|
687
|
+
"internalType": "bytes32",
|
688
|
+
"name": "beforeDelayedAcc",
|
689
|
+
"type": "bytes32"
|
690
|
+
},
|
691
|
+
{
|
692
|
+
"components": [
|
693
|
+
{
|
694
|
+
"internalType": "uint8",
|
695
|
+
"name": "kind",
|
696
|
+
"type": "uint8"
|
697
|
+
},
|
698
|
+
{
|
699
|
+
"internalType": "address",
|
700
|
+
"name": "sender",
|
701
|
+
"type": "address"
|
702
|
+
},
|
703
|
+
{
|
704
|
+
"internalType": "uint64",
|
705
|
+
"name": "blockNumber",
|
706
|
+
"type": "uint64"
|
707
|
+
},
|
708
|
+
{
|
709
|
+
"internalType": "uint64",
|
710
|
+
"name": "timestamp",
|
711
|
+
"type": "uint64"
|
712
|
+
},
|
713
|
+
{
|
714
|
+
"internalType": "uint256",
|
715
|
+
"name": "inboxSeqNum",
|
716
|
+
"type": "uint256"
|
717
|
+
},
|
718
|
+
{
|
719
|
+
"internalType": "uint256",
|
720
|
+
"name": "baseFeeL1",
|
721
|
+
"type": "uint256"
|
722
|
+
},
|
723
|
+
{
|
724
|
+
"internalType": "bytes32",
|
725
|
+
"name": "messageDataHash",
|
726
|
+
"type": "bytes32"
|
727
|
+
}
|
728
|
+
],
|
729
|
+
"internalType": "struct Messages.Message",
|
730
|
+
"name": "delayedMessage",
|
731
|
+
"type": "tuple"
|
732
|
+
}
|
733
|
+
],
|
734
|
+
"internalType": "struct DelayProof",
|
735
|
+
"name": "delayProof",
|
736
|
+
"type": "tuple"
|
737
|
+
}
|
738
|
+
],
|
739
|
+
"name": "addSequencerL2BatchDelayProof",
|
740
|
+
"outputs": [],
|
741
|
+
"stateMutability": "nonpayable",
|
742
|
+
"type": "function"
|
743
|
+
},
|
744
|
+
{
|
745
|
+
"inputs": [
|
746
|
+
{
|
747
|
+
"internalType": "uint256",
|
748
|
+
"name": "sequenceNumber",
|
749
|
+
"type": "uint256"
|
750
|
+
},
|
751
|
+
{
|
752
|
+
"internalType": "uint256",
|
753
|
+
"name": "afterDelayedMessagesRead",
|
754
|
+
"type": "uint256"
|
755
|
+
},
|
756
|
+
{
|
757
|
+
"internalType": "contract IGasRefunder",
|
758
|
+
"name": "gasRefunder",
|
759
|
+
"type": "address"
|
760
|
+
},
|
761
|
+
{
|
762
|
+
"internalType": "uint256",
|
763
|
+
"name": "prevMessageCount",
|
764
|
+
"type": "uint256"
|
765
|
+
},
|
766
|
+
{
|
767
|
+
"internalType": "uint256",
|
768
|
+
"name": "newMessageCount",
|
769
|
+
"type": "uint256"
|
770
|
+
}
|
771
|
+
],
|
772
|
+
"name": "addSequencerL2BatchFromBlobs",
|
773
|
+
"outputs": [],
|
774
|
+
"stateMutability": "nonpayable",
|
775
|
+
"type": "function"
|
776
|
+
},
|
777
|
+
{
|
778
|
+
"inputs": [
|
779
|
+
{
|
780
|
+
"internalType": "uint256",
|
781
|
+
"name": "sequenceNumber",
|
782
|
+
"type": "uint256"
|
783
|
+
},
|
784
|
+
{
|
785
|
+
"internalType": "uint256",
|
786
|
+
"name": "afterDelayedMessagesRead",
|
787
|
+
"type": "uint256"
|
788
|
+
},
|
789
|
+
{
|
790
|
+
"internalType": "contract IGasRefunder",
|
791
|
+
"name": "gasRefunder",
|
792
|
+
"type": "address"
|
793
|
+
},
|
794
|
+
{
|
795
|
+
"internalType": "uint256",
|
796
|
+
"name": "prevMessageCount",
|
797
|
+
"type": "uint256"
|
798
|
+
},
|
799
|
+
{
|
800
|
+
"internalType": "uint256",
|
801
|
+
"name": "newMessageCount",
|
802
|
+
"type": "uint256"
|
803
|
+
},
|
804
|
+
{
|
805
|
+
"components": [
|
806
|
+
{
|
807
|
+
"internalType": "bytes32",
|
808
|
+
"name": "beforeDelayedAcc",
|
809
|
+
"type": "bytes32"
|
810
|
+
},
|
811
|
+
{
|
812
|
+
"components": [
|
813
|
+
{
|
814
|
+
"internalType": "uint8",
|
815
|
+
"name": "kind",
|
816
|
+
"type": "uint8"
|
817
|
+
},
|
818
|
+
{
|
819
|
+
"internalType": "address",
|
820
|
+
"name": "sender",
|
821
|
+
"type": "address"
|
822
|
+
},
|
823
|
+
{
|
824
|
+
"internalType": "uint64",
|
825
|
+
"name": "blockNumber",
|
826
|
+
"type": "uint64"
|
827
|
+
},
|
828
|
+
{
|
829
|
+
"internalType": "uint64",
|
830
|
+
"name": "timestamp",
|
831
|
+
"type": "uint64"
|
832
|
+
},
|
833
|
+
{
|
834
|
+
"internalType": "uint256",
|
835
|
+
"name": "inboxSeqNum",
|
836
|
+
"type": "uint256"
|
837
|
+
},
|
838
|
+
{
|
839
|
+
"internalType": "uint256",
|
840
|
+
"name": "baseFeeL1",
|
841
|
+
"type": "uint256"
|
842
|
+
},
|
843
|
+
{
|
844
|
+
"internalType": "bytes32",
|
845
|
+
"name": "messageDataHash",
|
846
|
+
"type": "bytes32"
|
847
|
+
}
|
848
|
+
],
|
849
|
+
"internalType": "struct Messages.Message",
|
850
|
+
"name": "delayedMessage",
|
851
|
+
"type": "tuple"
|
852
|
+
}
|
853
|
+
],
|
854
|
+
"internalType": "struct DelayProof",
|
855
|
+
"name": "delayProof",
|
856
|
+
"type": "tuple"
|
857
|
+
}
|
858
|
+
],
|
859
|
+
"name": "addSequencerL2BatchFromBlobsDelayProof",
|
860
|
+
"outputs": [],
|
861
|
+
"stateMutability": "nonpayable",
|
862
|
+
"type": "function"
|
863
|
+
},
|
864
|
+
{
|
865
|
+
"inputs": [
|
866
|
+
{
|
867
|
+
"internalType": "uint256",
|
868
|
+
"name": "",
|
869
|
+
"type": "uint256"
|
870
|
+
},
|
871
|
+
{
|
872
|
+
"internalType": "bytes",
|
873
|
+
"name": "",
|
874
|
+
"type": "bytes"
|
875
|
+
},
|
876
|
+
{
|
877
|
+
"internalType": "uint256",
|
878
|
+
"name": "",
|
879
|
+
"type": "uint256"
|
880
|
+
},
|
881
|
+
{
|
882
|
+
"internalType": "contract IGasRefunder",
|
883
|
+
"name": "",
|
884
|
+
"type": "address"
|
885
|
+
}
|
886
|
+
],
|
887
|
+
"name": "addSequencerL2BatchFromOrigin",
|
888
|
+
"outputs": [],
|
889
|
+
"stateMutability": "pure",
|
890
|
+
"type": "function"
|
891
|
+
},
|
892
|
+
{
|
893
|
+
"inputs": [
|
894
|
+
{
|
895
|
+
"internalType": "uint256",
|
896
|
+
"name": "sequenceNumber",
|
897
|
+
"type": "uint256"
|
898
|
+
},
|
899
|
+
{
|
900
|
+
"internalType": "bytes",
|
901
|
+
"name": "data",
|
902
|
+
"type": "bytes"
|
903
|
+
},
|
904
|
+
{
|
905
|
+
"internalType": "uint256",
|
906
|
+
"name": "afterDelayedMessagesRead",
|
907
|
+
"type": "uint256"
|
908
|
+
},
|
909
|
+
{
|
910
|
+
"internalType": "contract IGasRefunder",
|
911
|
+
"name": "gasRefunder",
|
912
|
+
"type": "address"
|
913
|
+
},
|
914
|
+
{
|
915
|
+
"internalType": "uint256",
|
916
|
+
"name": "prevMessageCount",
|
917
|
+
"type": "uint256"
|
918
|
+
},
|
919
|
+
{
|
920
|
+
"internalType": "uint256",
|
921
|
+
"name": "newMessageCount",
|
922
|
+
"type": "uint256"
|
923
|
+
}
|
924
|
+
],
|
925
|
+
"name": "addSequencerL2BatchFromOrigin",
|
926
|
+
"outputs": [],
|
927
|
+
"stateMutability": "nonpayable",
|
928
|
+
"type": "function"
|
929
|
+
},
|
930
|
+
{
|
931
|
+
"inputs": [
|
932
|
+
{
|
933
|
+
"internalType": "uint256",
|
934
|
+
"name": "sequenceNumber",
|
935
|
+
"type": "uint256"
|
936
|
+
},
|
937
|
+
{
|
938
|
+
"internalType": "bytes",
|
939
|
+
"name": "data",
|
940
|
+
"type": "bytes"
|
941
|
+
},
|
942
|
+
{
|
943
|
+
"internalType": "uint256",
|
944
|
+
"name": "afterDelayedMessagesRead",
|
945
|
+
"type": "uint256"
|
946
|
+
},
|
947
|
+
{
|
948
|
+
"internalType": "contract IGasRefunder",
|
949
|
+
"name": "gasRefunder",
|
950
|
+
"type": "address"
|
951
|
+
},
|
952
|
+
{
|
953
|
+
"internalType": "uint256",
|
954
|
+
"name": "prevMessageCount",
|
955
|
+
"type": "uint256"
|
956
|
+
},
|
957
|
+
{
|
958
|
+
"internalType": "uint256",
|
959
|
+
"name": "newMessageCount",
|
960
|
+
"type": "uint256"
|
961
|
+
},
|
962
|
+
{
|
963
|
+
"components": [
|
964
|
+
{
|
965
|
+
"internalType": "bytes32",
|
966
|
+
"name": "beforeDelayedAcc",
|
967
|
+
"type": "bytes32"
|
968
|
+
},
|
969
|
+
{
|
970
|
+
"components": [
|
971
|
+
{
|
972
|
+
"internalType": "uint8",
|
973
|
+
"name": "kind",
|
974
|
+
"type": "uint8"
|
975
|
+
},
|
976
|
+
{
|
977
|
+
"internalType": "address",
|
978
|
+
"name": "sender",
|
979
|
+
"type": "address"
|
980
|
+
},
|
981
|
+
{
|
982
|
+
"internalType": "uint64",
|
983
|
+
"name": "blockNumber",
|
984
|
+
"type": "uint64"
|
985
|
+
},
|
986
|
+
{
|
987
|
+
"internalType": "uint64",
|
988
|
+
"name": "timestamp",
|
989
|
+
"type": "uint64"
|
990
|
+
},
|
991
|
+
{
|
992
|
+
"internalType": "uint256",
|
993
|
+
"name": "inboxSeqNum",
|
994
|
+
"type": "uint256"
|
995
|
+
},
|
996
|
+
{
|
997
|
+
"internalType": "uint256",
|
998
|
+
"name": "baseFeeL1",
|
999
|
+
"type": "uint256"
|
1000
|
+
},
|
1001
|
+
{
|
1002
|
+
"internalType": "bytes32",
|
1003
|
+
"name": "messageDataHash",
|
1004
|
+
"type": "bytes32"
|
1005
|
+
}
|
1006
|
+
],
|
1007
|
+
"internalType": "struct Messages.Message",
|
1008
|
+
"name": "delayedMessage",
|
1009
|
+
"type": "tuple"
|
1010
|
+
}
|
1011
|
+
],
|
1012
|
+
"internalType": "struct DelayProof",
|
1013
|
+
"name": "delayProof",
|
1014
|
+
"type": "tuple"
|
1015
|
+
}
|
1016
|
+
],
|
1017
|
+
"name": "addSequencerL2BatchFromOriginDelayProof",
|
1018
|
+
"outputs": [],
|
1019
|
+
"stateMutability": "nonpayable",
|
1020
|
+
"type": "function"
|
1021
|
+
},
|
1022
|
+
{
|
1023
|
+
"inputs": [],
|
1024
|
+
"name": "batchCount",
|
1025
|
+
"outputs": [
|
1026
|
+
{
|
1027
|
+
"internalType": "uint256",
|
1028
|
+
"name": "",
|
1029
|
+
"type": "uint256"
|
1030
|
+
}
|
1031
|
+
],
|
1032
|
+
"stateMutability": "view",
|
1033
|
+
"type": "function"
|
1034
|
+
},
|
1035
|
+
{
|
1036
|
+
"inputs": [],
|
1037
|
+
"name": "batchPosterManager",
|
1038
|
+
"outputs": [
|
1039
|
+
{
|
1040
|
+
"internalType": "address",
|
1041
|
+
"name": "",
|
1042
|
+
"type": "address"
|
1043
|
+
}
|
1044
|
+
],
|
1045
|
+
"stateMutability": "view",
|
1046
|
+
"type": "function"
|
1047
|
+
},
|
1048
|
+
{
|
1049
|
+
"inputs": [],
|
1050
|
+
"name": "bridge",
|
1051
|
+
"outputs": [
|
1052
|
+
{
|
1053
|
+
"internalType": "contract IBridge",
|
1054
|
+
"name": "",
|
1055
|
+
"type": "address"
|
1056
|
+
}
|
1057
|
+
],
|
1058
|
+
"stateMutability": "view",
|
1059
|
+
"type": "function"
|
1060
|
+
},
|
1061
|
+
{
|
1062
|
+
"inputs": [],
|
1063
|
+
"name": "buffer",
|
1064
|
+
"outputs": [
|
1065
|
+
{
|
1066
|
+
"internalType": "uint64",
|
1067
|
+
"name": "bufferBlocks",
|
1068
|
+
"type": "uint64"
|
1069
|
+
},
|
1070
|
+
{
|
1071
|
+
"internalType": "uint64",
|
1072
|
+
"name": "max",
|
1073
|
+
"type": "uint64"
|
1074
|
+
},
|
1075
|
+
{
|
1076
|
+
"internalType": "uint64",
|
1077
|
+
"name": "threshold",
|
1078
|
+
"type": "uint64"
|
1079
|
+
},
|
1080
|
+
{
|
1081
|
+
"internalType": "uint64",
|
1082
|
+
"name": "prevBlockNumber",
|
1083
|
+
"type": "uint64"
|
1084
|
+
},
|
1085
|
+
{
|
1086
|
+
"internalType": "uint64",
|
1087
|
+
"name": "replenishRateInBasis",
|
1088
|
+
"type": "uint64"
|
1089
|
+
},
|
1090
|
+
{
|
1091
|
+
"internalType": "uint64",
|
1092
|
+
"name": "prevSequencedBlockNumber",
|
1093
|
+
"type": "uint64"
|
1094
|
+
}
|
1095
|
+
],
|
1096
|
+
"stateMutability": "view",
|
1097
|
+
"type": "function"
|
1098
|
+
},
|
1099
|
+
{
|
1100
|
+
"inputs": [
|
1101
|
+
{
|
1102
|
+
"internalType": "bytes32",
|
1103
|
+
"name": "",
|
1104
|
+
"type": "bytes32"
|
1105
|
+
}
|
1106
|
+
],
|
1107
|
+
"name": "dasKeySetInfo",
|
1108
|
+
"outputs": [
|
1109
|
+
{
|
1110
|
+
"internalType": "bool",
|
1111
|
+
"name": "isValidKeyset",
|
1112
|
+
"type": "bool"
|
1113
|
+
},
|
1114
|
+
{
|
1115
|
+
"internalType": "uint64",
|
1116
|
+
"name": "creationBlock",
|
1117
|
+
"type": "uint64"
|
1118
|
+
}
|
1119
|
+
],
|
1120
|
+
"stateMutability": "view",
|
1121
|
+
"type": "function"
|
1122
|
+
},
|
1123
|
+
{
|
1124
|
+
"inputs": [
|
1125
|
+
{
|
1126
|
+
"internalType": "uint256",
|
1127
|
+
"name": "_totalDelayedMessagesRead",
|
1128
|
+
"type": "uint256"
|
1129
|
+
},
|
1130
|
+
{
|
1131
|
+
"internalType": "uint8",
|
1132
|
+
"name": "kind",
|
1133
|
+
"type": "uint8"
|
1134
|
+
},
|
1135
|
+
{
|
1136
|
+
"internalType": "uint64[2]",
|
1137
|
+
"name": "l1BlockAndTime",
|
1138
|
+
"type": "uint64[2]"
|
1139
|
+
},
|
1140
|
+
{
|
1141
|
+
"internalType": "uint256",
|
1142
|
+
"name": "baseFeeL1",
|
1143
|
+
"type": "uint256"
|
1144
|
+
},
|
1145
|
+
{
|
1146
|
+
"internalType": "address",
|
1147
|
+
"name": "sender",
|
1148
|
+
"type": "address"
|
1149
|
+
},
|
1150
|
+
{
|
1151
|
+
"internalType": "bytes32",
|
1152
|
+
"name": "messageDataHash",
|
1153
|
+
"type": "bytes32"
|
1154
|
+
}
|
1155
|
+
],
|
1156
|
+
"name": "forceInclusion",
|
1157
|
+
"outputs": [],
|
1158
|
+
"stateMutability": "nonpayable",
|
1159
|
+
"type": "function"
|
1160
|
+
},
|
1161
|
+
{
|
1162
|
+
"inputs": [
|
1163
|
+
{
|
1164
|
+
"internalType": "uint64",
|
1165
|
+
"name": "blockNumber",
|
1166
|
+
"type": "uint64"
|
1167
|
+
}
|
1168
|
+
],
|
1169
|
+
"name": "forceInclusionDeadline",
|
1170
|
+
"outputs": [
|
1171
|
+
{
|
1172
|
+
"internalType": "uint64",
|
1173
|
+
"name": "",
|
1174
|
+
"type": "uint64"
|
1175
|
+
}
|
1176
|
+
],
|
1177
|
+
"stateMutability": "view",
|
1178
|
+
"type": "function"
|
1179
|
+
},
|
1180
|
+
{
|
1181
|
+
"inputs": [
|
1182
|
+
{
|
1183
|
+
"internalType": "bytes32",
|
1184
|
+
"name": "ksHash",
|
1185
|
+
"type": "bytes32"
|
1186
|
+
}
|
1187
|
+
],
|
1188
|
+
"name": "getKeysetCreationBlock",
|
1189
|
+
"outputs": [
|
1190
|
+
{
|
1191
|
+
"internalType": "uint256",
|
1192
|
+
"name": "",
|
1193
|
+
"type": "uint256"
|
1194
|
+
}
|
1195
|
+
],
|
1196
|
+
"stateMutability": "view",
|
1197
|
+
"type": "function"
|
1198
|
+
},
|
1199
|
+
{
|
1200
|
+
"inputs": [
|
1201
|
+
{
|
1202
|
+
"internalType": "uint256",
|
1203
|
+
"name": "index",
|
1204
|
+
"type": "uint256"
|
1205
|
+
}
|
1206
|
+
],
|
1207
|
+
"name": "inboxAccs",
|
1208
|
+
"outputs": [
|
1209
|
+
{
|
1210
|
+
"internalType": "bytes32",
|
1211
|
+
"name": "",
|
1212
|
+
"type": "bytes32"
|
1213
|
+
}
|
1214
|
+
],
|
1215
|
+
"stateMutability": "view",
|
1216
|
+
"type": "function"
|
1217
|
+
},
|
1218
|
+
{
|
1219
|
+
"inputs": [
|
1220
|
+
{
|
1221
|
+
"internalType": "contract IBridge",
|
1222
|
+
"name": "bridge_",
|
1223
|
+
"type": "address"
|
1224
|
+
},
|
1225
|
+
{
|
1226
|
+
"components": [
|
1227
|
+
{
|
1228
|
+
"internalType": "uint256",
|
1229
|
+
"name": "delayBlocks",
|
1230
|
+
"type": "uint256"
|
1231
|
+
},
|
1232
|
+
{
|
1233
|
+
"internalType": "uint256",
|
1234
|
+
"name": "futureBlocks",
|
1235
|
+
"type": "uint256"
|
1236
|
+
},
|
1237
|
+
{
|
1238
|
+
"internalType": "uint256",
|
1239
|
+
"name": "delaySeconds",
|
1240
|
+
"type": "uint256"
|
1241
|
+
},
|
1242
|
+
{
|
1243
|
+
"internalType": "uint256",
|
1244
|
+
"name": "futureSeconds",
|
1245
|
+
"type": "uint256"
|
1246
|
+
}
|
1247
|
+
],
|
1248
|
+
"internalType": "struct ISequencerInbox.MaxTimeVariation",
|
1249
|
+
"name": "maxTimeVariation_",
|
1250
|
+
"type": "tuple"
|
1251
|
+
},
|
1252
|
+
{
|
1253
|
+
"components": [
|
1254
|
+
{
|
1255
|
+
"internalType": "uint64",
|
1256
|
+
"name": "threshold",
|
1257
|
+
"type": "uint64"
|
1258
|
+
},
|
1259
|
+
{
|
1260
|
+
"internalType": "uint64",
|
1261
|
+
"name": "max",
|
1262
|
+
"type": "uint64"
|
1263
|
+
},
|
1264
|
+
{
|
1265
|
+
"internalType": "uint64",
|
1266
|
+
"name": "replenishRateInBasis",
|
1267
|
+
"type": "uint64"
|
1268
|
+
}
|
1269
|
+
],
|
1270
|
+
"internalType": "struct BufferConfig",
|
1271
|
+
"name": "bufferConfig_",
|
1272
|
+
"type": "tuple"
|
1273
|
+
}
|
1274
|
+
],
|
1275
|
+
"name": "initialize",
|
1276
|
+
"outputs": [],
|
1277
|
+
"stateMutability": "nonpayable",
|
1278
|
+
"type": "function"
|
1279
|
+
},
|
1280
|
+
{
|
1281
|
+
"inputs": [
|
1282
|
+
{
|
1283
|
+
"internalType": "bytes32",
|
1284
|
+
"name": "ksHash",
|
1285
|
+
"type": "bytes32"
|
1286
|
+
}
|
1287
|
+
],
|
1288
|
+
"name": "invalidateKeysetHash",
|
1289
|
+
"outputs": [],
|
1290
|
+
"stateMutability": "nonpayable",
|
1291
|
+
"type": "function"
|
1292
|
+
},
|
1293
|
+
{
|
1294
|
+
"inputs": [
|
1295
|
+
{
|
1296
|
+
"internalType": "address",
|
1297
|
+
"name": "",
|
1298
|
+
"type": "address"
|
1299
|
+
}
|
1300
|
+
],
|
1301
|
+
"name": "isBatchPoster",
|
1302
|
+
"outputs": [
|
1303
|
+
{
|
1304
|
+
"internalType": "bool",
|
1305
|
+
"name": "",
|
1306
|
+
"type": "bool"
|
1307
|
+
}
|
1308
|
+
],
|
1309
|
+
"stateMutability": "view",
|
1310
|
+
"type": "function"
|
1311
|
+
},
|
1312
|
+
{
|
1313
|
+
"inputs": [],
|
1314
|
+
"name": "isDelayBufferable",
|
1315
|
+
"outputs": [
|
1316
|
+
{
|
1317
|
+
"internalType": "bool",
|
1318
|
+
"name": "",
|
1319
|
+
"type": "bool"
|
1320
|
+
}
|
1321
|
+
],
|
1322
|
+
"stateMutability": "view",
|
1323
|
+
"type": "function"
|
1324
|
+
},
|
1325
|
+
{
|
1326
|
+
"inputs": [
|
1327
|
+
{
|
1328
|
+
"internalType": "address",
|
1329
|
+
"name": "",
|
1330
|
+
"type": "address"
|
1331
|
+
}
|
1332
|
+
],
|
1333
|
+
"name": "isSequencer",
|
1334
|
+
"outputs": [
|
1335
|
+
{
|
1336
|
+
"internalType": "bool",
|
1337
|
+
"name": "",
|
1338
|
+
"type": "bool"
|
1339
|
+
}
|
1340
|
+
],
|
1341
|
+
"stateMutability": "view",
|
1342
|
+
"type": "function"
|
1343
|
+
},
|
1344
|
+
{
|
1345
|
+
"inputs": [],
|
1346
|
+
"name": "isUsingFeeToken",
|
1347
|
+
"outputs": [
|
1348
|
+
{
|
1349
|
+
"internalType": "bool",
|
1350
|
+
"name": "",
|
1351
|
+
"type": "bool"
|
1352
|
+
}
|
1353
|
+
],
|
1354
|
+
"stateMutability": "view",
|
1355
|
+
"type": "function"
|
1356
|
+
},
|
1357
|
+
{
|
1358
|
+
"inputs": [
|
1359
|
+
{
|
1360
|
+
"internalType": "bytes32",
|
1361
|
+
"name": "ksHash",
|
1362
|
+
"type": "bytes32"
|
1363
|
+
}
|
1364
|
+
],
|
1365
|
+
"name": "isValidKeysetHash",
|
1366
|
+
"outputs": [
|
1367
|
+
{
|
1368
|
+
"internalType": "bool",
|
1369
|
+
"name": "",
|
1370
|
+
"type": "bool"
|
1371
|
+
}
|
1372
|
+
],
|
1373
|
+
"stateMutability": "view",
|
1374
|
+
"type": "function"
|
1375
|
+
},
|
1376
|
+
{
|
1377
|
+
"inputs": [],
|
1378
|
+
"name": "maxDataSize",
|
1379
|
+
"outputs": [
|
1380
|
+
{
|
1381
|
+
"internalType": "uint256",
|
1382
|
+
"name": "",
|
1383
|
+
"type": "uint256"
|
1384
|
+
}
|
1385
|
+
],
|
1386
|
+
"stateMutability": "view",
|
1387
|
+
"type": "function"
|
1388
|
+
},
|
1389
|
+
{
|
1390
|
+
"inputs": [],
|
1391
|
+
"name": "maxTimeVariation",
|
1392
|
+
"outputs": [
|
1393
|
+
{
|
1394
|
+
"internalType": "uint256",
|
1395
|
+
"name": "",
|
1396
|
+
"type": "uint256"
|
1397
|
+
},
|
1398
|
+
{
|
1399
|
+
"internalType": "uint256",
|
1400
|
+
"name": "",
|
1401
|
+
"type": "uint256"
|
1402
|
+
},
|
1403
|
+
{
|
1404
|
+
"internalType": "uint256",
|
1405
|
+
"name": "",
|
1406
|
+
"type": "uint256"
|
1407
|
+
},
|
1408
|
+
{
|
1409
|
+
"internalType": "uint256",
|
1410
|
+
"name": "",
|
1411
|
+
"type": "uint256"
|
1412
|
+
}
|
1413
|
+
],
|
1414
|
+
"stateMutability": "view",
|
1415
|
+
"type": "function"
|
1416
|
+
},
|
1417
|
+
{
|
1418
|
+
"inputs": [
|
1419
|
+
{
|
1420
|
+
"components": [
|
1421
|
+
{
|
1422
|
+
"internalType": "uint64",
|
1423
|
+
"name": "threshold",
|
1424
|
+
"type": "uint64"
|
1425
|
+
},
|
1426
|
+
{
|
1427
|
+
"internalType": "uint64",
|
1428
|
+
"name": "max",
|
1429
|
+
"type": "uint64"
|
1430
|
+
},
|
1431
|
+
{
|
1432
|
+
"internalType": "uint64",
|
1433
|
+
"name": "replenishRateInBasis",
|
1434
|
+
"type": "uint64"
|
1435
|
+
}
|
1436
|
+
],
|
1437
|
+
"internalType": "struct BufferConfig",
|
1438
|
+
"name": "bufferConfig_",
|
1439
|
+
"type": "tuple"
|
1440
|
+
}
|
1441
|
+
],
|
1442
|
+
"name": "postUpgradeInit",
|
1443
|
+
"outputs": [],
|
1444
|
+
"stateMutability": "nonpayable",
|
1445
|
+
"type": "function"
|
1446
|
+
},
|
1447
|
+
{
|
1448
|
+
"inputs": [],
|
1449
|
+
"name": "reader4844",
|
1450
|
+
"outputs": [
|
1451
|
+
{
|
1452
|
+
"internalType": "contract IReader4844",
|
1453
|
+
"name": "",
|
1454
|
+
"type": "address"
|
1455
|
+
}
|
1456
|
+
],
|
1457
|
+
"stateMutability": "view",
|
1458
|
+
"type": "function"
|
1459
|
+
},
|
1460
|
+
{
|
1461
|
+
"inputs": [],
|
1462
|
+
"name": "removeDelayAfterFork",
|
1463
|
+
"outputs": [],
|
1464
|
+
"stateMutability": "nonpayable",
|
1465
|
+
"type": "function"
|
1466
|
+
},
|
1467
|
+
{
|
1468
|
+
"inputs": [],
|
1469
|
+
"name": "rollup",
|
1470
|
+
"outputs": [
|
1471
|
+
{
|
1472
|
+
"internalType": "contract IOwnable",
|
1473
|
+
"name": "",
|
1474
|
+
"type": "address"
|
1475
|
+
}
|
1476
|
+
],
|
1477
|
+
"stateMutability": "view",
|
1478
|
+
"type": "function"
|
1479
|
+
},
|
1480
|
+
{
|
1481
|
+
"inputs": [
|
1482
|
+
{
|
1483
|
+
"internalType": "address",
|
1484
|
+
"name": "newBatchPosterManager",
|
1485
|
+
"type": "address"
|
1486
|
+
}
|
1487
|
+
],
|
1488
|
+
"name": "setBatchPosterManager",
|
1489
|
+
"outputs": [],
|
1490
|
+
"stateMutability": "nonpayable",
|
1491
|
+
"type": "function"
|
1492
|
+
},
|
1493
|
+
{
|
1494
|
+
"inputs": [
|
1495
|
+
{
|
1496
|
+
"components": [
|
1497
|
+
{
|
1498
|
+
"internalType": "uint64",
|
1499
|
+
"name": "threshold",
|
1500
|
+
"type": "uint64"
|
1501
|
+
},
|
1502
|
+
{
|
1503
|
+
"internalType": "uint64",
|
1504
|
+
"name": "max",
|
1505
|
+
"type": "uint64"
|
1506
|
+
},
|
1507
|
+
{
|
1508
|
+
"internalType": "uint64",
|
1509
|
+
"name": "replenishRateInBasis",
|
1510
|
+
"type": "uint64"
|
1511
|
+
}
|
1512
|
+
],
|
1513
|
+
"internalType": "struct BufferConfig",
|
1514
|
+
"name": "bufferConfig_",
|
1515
|
+
"type": "tuple"
|
1516
|
+
}
|
1517
|
+
],
|
1518
|
+
"name": "setBufferConfig",
|
1519
|
+
"outputs": [],
|
1520
|
+
"stateMutability": "nonpayable",
|
1521
|
+
"type": "function"
|
1522
|
+
},
|
1523
|
+
{
|
1524
|
+
"inputs": [
|
1525
|
+
{
|
1526
|
+
"internalType": "address",
|
1527
|
+
"name": "addr",
|
1528
|
+
"type": "address"
|
1529
|
+
},
|
1530
|
+
{
|
1531
|
+
"internalType": "bool",
|
1532
|
+
"name": "isBatchPoster_",
|
1533
|
+
"type": "bool"
|
1534
|
+
}
|
1535
|
+
],
|
1536
|
+
"name": "setIsBatchPoster",
|
1537
|
+
"outputs": [],
|
1538
|
+
"stateMutability": "nonpayable",
|
1539
|
+
"type": "function"
|
1540
|
+
},
|
1541
|
+
{
|
1542
|
+
"inputs": [
|
1543
|
+
{
|
1544
|
+
"internalType": "address",
|
1545
|
+
"name": "addr",
|
1546
|
+
"type": "address"
|
1547
|
+
},
|
1548
|
+
{
|
1549
|
+
"internalType": "bool",
|
1550
|
+
"name": "isSequencer_",
|
1551
|
+
"type": "bool"
|
1552
|
+
}
|
1553
|
+
],
|
1554
|
+
"name": "setIsSequencer",
|
1555
|
+
"outputs": [],
|
1556
|
+
"stateMutability": "nonpayable",
|
1557
|
+
"type": "function"
|
1558
|
+
},
|
1559
|
+
{
|
1560
|
+
"inputs": [
|
1561
|
+
{
|
1562
|
+
"components": [
|
1563
|
+
{
|
1564
|
+
"internalType": "uint256",
|
1565
|
+
"name": "delayBlocks",
|
1566
|
+
"type": "uint256"
|
1567
|
+
},
|
1568
|
+
{
|
1569
|
+
"internalType": "uint256",
|
1570
|
+
"name": "futureBlocks",
|
1571
|
+
"type": "uint256"
|
1572
|
+
},
|
1573
|
+
{
|
1574
|
+
"internalType": "uint256",
|
1575
|
+
"name": "delaySeconds",
|
1576
|
+
"type": "uint256"
|
1577
|
+
},
|
1578
|
+
{
|
1579
|
+
"internalType": "uint256",
|
1580
|
+
"name": "futureSeconds",
|
1581
|
+
"type": "uint256"
|
1582
|
+
}
|
1583
|
+
],
|
1584
|
+
"internalType": "struct ISequencerInbox.MaxTimeVariation",
|
1585
|
+
"name": "maxTimeVariation_",
|
1586
|
+
"type": "tuple"
|
1587
|
+
}
|
1588
|
+
],
|
1589
|
+
"name": "setMaxTimeVariation",
|
1590
|
+
"outputs": [],
|
1591
|
+
"stateMutability": "nonpayable",
|
1592
|
+
"type": "function"
|
1593
|
+
},
|
1594
|
+
{
|
1595
|
+
"inputs": [
|
1596
|
+
{
|
1597
|
+
"internalType": "bytes",
|
1598
|
+
"name": "keysetBytes",
|
1599
|
+
"type": "bytes"
|
1600
|
+
}
|
1601
|
+
],
|
1602
|
+
"name": "setValidKeyset",
|
1603
|
+
"outputs": [],
|
1604
|
+
"stateMutability": "nonpayable",
|
1605
|
+
"type": "function"
|
1606
|
+
},
|
1607
|
+
{
|
1608
|
+
"inputs": [],
|
1609
|
+
"name": "totalDelayedMessagesRead",
|
1610
|
+
"outputs": [
|
1611
|
+
{
|
1612
|
+
"internalType": "uint256",
|
1613
|
+
"name": "",
|
1614
|
+
"type": "uint256"
|
1615
|
+
}
|
1616
|
+
],
|
1617
|
+
"stateMutability": "view",
|
1618
|
+
"type": "function"
|
1619
|
+
},
|
1620
|
+
{
|
1621
|
+
"inputs": [],
|
1622
|
+
"name": "updateRollupAddress",
|
1623
|
+
"outputs": [],
|
1624
|
+
"stateMutability": "nonpayable",
|
1625
|
+
"type": "function"
|
1626
|
+
}
|
1627
|
+
],
|
1628
|
+
"bytecode": "0x610180604052306080526202000060a05246610100526200002b62000115602090811b62002ea417901c565b1515610120523480156200003e57600080fd5b50604051620053eb380380620053eb8339810160408190526200006191620001c8565b838383838360e081815250506101205115620000a6576001600160a01b03831615620000a0576040516386657a5360e01b815260040160405180910390fd5b620000ef565b6001600160a01b038316620000ef576040516380fc2c0360e01b815260206004820152600a60248201526914995859195c8d0e0d0d60b21b604482015260640160405180910390fd5b6001600160a01b0390921660c052151561014052151561016052506200025b9350505050565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b1790529051600091829182916064916200015591906200022a565b600060405180830381855afa9150503d806000811462000192576040519150601f19603f3d011682016040523d82523d6000602084013e62000197565b606091505b5091509150818015620001ab575080516020145b9250505090565b80518015158114620001c357600080fd5b919050565b60008060008060808587031215620001df57600080fd5b845160208601519094506001600160a01b0381168114620001ff57600080fd5b92506200020f60408601620001b2565b91506200021f60608601620001b2565b905092959194509250565b6000825160005b818110156200024d576020818601810151858301520162000231565b506000920191825250919050565b60805160a05160c05160e05161010051610120516101405161016051615089620003626000396000818161043701528181610b86015281816113f3015281816118e201528181611fb401528181612416015281816129ef01528181612b840152818161309801526132da0152600081816105f401528181610a45015281816134480152613ac20152600081816127d0015281816133e60152613ca8015260008181612271015261373901526000818161070e01528181613f910152613fe601526000818161058f0152818161109b0152611f5d01526000818161127b015281816115af01528181611e52015261216701526000818161089301526122f001526150896000f3fe608060405234801561001057600080fd5b50600436106102f45760003560e01c80637fa3a40e11610191578063d1ce8da8116100e3578063e78cea9211610097578063edaafe2011610071578063edaafe2014610758578063f1981578146107e1578063f60a5091146107f457600080fd5b8063e78cea92146106f6578063e8eb1dc314610709578063ebea461d1461073057600080fd5b8063dd44e6e0116100c8578063dd44e6e014610690578063e0bc9729146106bc578063e5a358c8146106cf57600080fd5b8063d1ce8da81461066a578063d9dd67ab1461067d57600080fd5b806392d9f78211610145578063b31761f81161011f578063b31761f814610631578063cb23bcb514610644578063cc2a1a0c1461065757600080fd5b806392d9f782146105ef57806396cc5c7814610616578063a655d9371461061e57600080fd5b80638d910dde116101765780638d910dde1461058a5780638f111f3c146105c9578063917cf8ac146105dc57600080fd5b80637fa3a40e1461056e578063844208601461057757600080fd5b80633e5aa0821161024a5780636d46e987116101fe5780636f12b0c9116101d85780636f12b0c9146104e4578063715ea34b146104f757806371c3e6fe1461054b57600080fd5b80636d46e9871461049b5780636e620055146104be5780636e7df3e7146104d157600080fd5b806369cacded1161022f57806369cacded146104595780636ae71f121461046c5780636c8904501461047457600080fd5b80633e5aa0821461041f5780634b678a661461043257600080fd5b80631f956632116102ac57806327957a491161028657806327957a49146103dd5780632cbf74e5146103e55780632f3985a71461040c57600080fd5b80631f956632146103a45780631ff64790146103b7578063258f0495146103ca57600080fd5b80631637be48116102dd5780631637be481461035457806316af91a7146103875780631ad87e451461038f57600080fd5b806302c99275146102f957806306f130561461033e575b600080fd5b6103207f200000000000000000000000000000000000000000000000000000000000000081565b6040516001600160f81b031990911681526020015b60405180910390f35b6103466107ff565b604051908152602001610335565b6103776103623660046144b2565b60009081526008602052604090205460ff1690565b6040519015158152602001610335565b610320600081565b6103a261039d3660046145ff565b610889565b005b6103a26103b2366004614660565b610bb9565b6103a26103c5366004614699565b610d24565b6103466103d83660046144b2565b610ef2565b610346602881565b6103207f500000000000000000000000000000000000000000000000000000000000000081565b6103a261041a3660046146b6565b610f5f565b6103a261042d3660046146d2565b611098565b6103777f000000000000000000000000000000000000000000000000000000000000000081565b6103a261046736600461477d565b611381565b6103a26116b7565b6103207f080000000000000000000000000000000000000000000000000000000000000081565b6103776104a9366004614699565b60096020526000908152604090205460ff1681565b6103a26104cc36600461477d565b61188f565b6103a26104df366004614660565b611941565b6103a26104f236600461480b565b611aac565b61052b6105053660046144b2565b60086020526000908152604090205460ff811690610100900467ffffffffffffffff1682565b60408051921515835267ffffffffffffffff909116602083015201610335565b610377610559366004614699565b60036020526000908152604090205460ff1681565b61034660005481565b6103a26105853660046144b2565b611ade565b6105b17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610335565b6103a26105d7366004614876565b611c53565b6103a26105ea3660046148f3565b611f5a565b6103777f000000000000000000000000000000000000000000000000000000000000000081565b6103a261226e565b6103a261062c3660046146b6565b6122e6565b6103a261063f36600461494f565b6124a4565b6002546105b1906001600160a01b031681565b600b546105b1906001600160a01b031681565b6103a26106783660046149b5565b612603565b61034661068b3660046144b2565b612950565b6106a361069e3660046149f7565b6129dd565b60405167ffffffffffffffff9091168152602001610335565b6103a26106ca366004614876565b612a40565b6103207f400000000000000000000000000000000000000000000000000000000000000081565b6001546105b1906001600160a01b031681565b6103467f000000000000000000000000000000000000000000000000000000000000000081565b610738612ac8565b604080519485526020850193909352918301526060820152608001610335565b600c54600d5461079e9167ffffffffffffffff8082169268010000000000000000808404831693600160801b8104841693600160c01b9091048116928082169290041686565b6040805167ffffffffffffffff978816815295871660208701529386169385019390935290841660608401528316608083015290911660a082015260c001610335565b6103a26107ef366004614a23565b612b01565b610320600160ff1b81565b600154604080517e84120c00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b0316916284120c9160048083019260209291908290030181865afa158015610860573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108849190614a8b565b905090565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610946576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6001546001600160a01b031615610989576040517fef34ca5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0383166109c9576040517f1ad0f74300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000836001600160a01b031663e1758bd86040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610a25575060408051601f3d908101601f19168201909252610a2291810190614aa4565b60015b15610a40576001600160a01b03811615610a3e57600191505b505b8015157f0000000000000000000000000000000000000000000000000000000000000000151514610a9d576040517fc3e31f8d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038616908117909155604080517fcb23bcb5000000000000000000000000000000000000000000000000000000008152905163cb23bcb5916004808201926020929091908290030181865afa158015610b1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b409190614aa4565b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055610b84610b7f3685900385018561494f565b612f6a565b7f000000000000000000000000000000000000000000000000000000000000000015610bb357610bb382613096565b50505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c309190614aa4565b6001600160a01b0316336001600160a01b031614158015610c5c5750600b546001600160a01b03163314155b15610c95576040517f660b3b4200000000000000000000000000000000000000000000000000000000815233600482015260240161093d565b6001600160a01b038216600081815260096020908152604091829020805460ff19168515159081179091558251938452908301527feb12a9a53eec138c91b27b4f912a257bd690c18fc8bde744be92a0365eb9b87e910160405180910390a16040516004907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a25050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9b9190614aa4565b6001600160a01b0316336001600160a01b031614610e655760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e209190614aa4565b6040517f23295f0e0000000000000000000000000000000000000000000000000000000081526001600160a01b0392831660048201529116602482015260440161093d565b600b805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f3cd6c184800297a0f2b00926a683cbe76890bb7fd01480ac0a10ed6c8f7f66599060200160405180910390a16040516005907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a250565b600081815260086020908152604080832081518083019092525460ff811615158252610100900467ffffffffffffffff16918101829052908203610f4b5760405162f20c5d60e01b81526004810184905260240161093d565b6020015167ffffffffffffffff1692915050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd69190614aa4565b6001600160a01b0316336001600160a01b0316146110375760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b61104081613096565b60408051825167ffffffffffffffff908116825260208085015182169083015283830151168183015290517faa7a2d8175dee3b637814ad6346005dfcc357165396fb8327f649effe8abcf859181900360600190a150565b827f000000000000000000000000000000000000000000000000000000000000000060005a3360009081526003602052604090205490915060ff166110f057604051632dd9fc9760e01b815260040160405180910390fd5b6110f9876132d6565b1561111757604051630e5da8fb60e01b815260040160405180910390fd5b6111238888878761331e565b6001600160a01b0383161561137757366000602061114283601f614ad7565b61114c9190614aea565b905061020061115c600283614bf0565b6111669190614aea565b611171826006614bff565b61117b9190614ad7565b6111859084614ad7565b925033321461119757600091506112ca565b6001600160a01b038416156112ca57836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561120557506040513d6000823e601f3d908101601f191682016040526112029190810190614c16565b60015b156112ca578051156112c8576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611251573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112759190614a8b565b905048817f000000000000000000000000000000000000000000000000000000000000000084516112a69190614bff565b6112b09190614bff565b6112ba9190614aea565b6112c49086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a6112e59087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af115801561134f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113739190614ccf565b5050505b5050505050505050565b836000805a90503332146113c1576040517ffeb3d07100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360009081526003602052604090205460ff166113f157604051632dd9fc9760e01b815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000061142f57604051631192b39960e31b815260040160405180910390fd5b6114478861144236879003870187614cec565b61347a565b6114578b8b8b8b8a8a6001613587565b6001600160a01b0383161561137357366000602061147683601f614ad7565b6114809190614aea565b9050610200611490600283614bf0565b61149a9190614aea565b6114a5826006614bff565b6114af9190614ad7565b6114b99084614ad7565b92503332146114cb57600091506115fe565b6001600160a01b038416156115fe57836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561153957506040513d6000823e601f3d908101601f191682016040526115369190810190614c16565b60015b156115fe578051156115fc576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611585573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a99190614a8b565b905048817f000000000000000000000000000000000000000000000000000000000000000084516115da9190614bff565b6115e49190614bff565b6115ee9190614aea565b6115f89086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a6116199087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af1158015611683573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116a79190614ccf565b5050505050505050505050505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561170a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172e9190614aa4565b6001600160a01b0316336001600160a01b03161461178f5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b600154604080517fcb23bcb500000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa1580156117f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118169190614aa4565b6002549091506001600160a01b03808316911603611860576040517fd054909f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b836000805a3360009081526003602052604090205490915060ff161580156118c257506002546001600160a01b03163314155b156118e057604051632dd9fc9760e01b815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000061191e57604051631192b39960e31b815260040160405180910390fd5b6119318861144236879003870187614cec565b6114578b8b8b8b8a8a6000613587565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611994573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119b89190614aa4565b6001600160a01b0316336001600160a01b0316141580156119e45750600b546001600160a01b03163314155b15611a1d576040517f660b3b4200000000000000000000000000000000000000000000000000000000815233600482015260240161093d565b6001600160a01b038216600081815260036020908152604091829020805460ff19168515159081179091558251938452908301527f28bcc5626d357efe966b4b0876aa1ee8ab99e26da4f131f6a2623f1800701c21910160405180910390a16040516001907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a25050565b6040517fc73b9d7c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b559190614aa4565b6001600160a01b0316336001600160a01b031614611bb65760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b60008181526008602052604090205460ff16611be75760405162f20c5d60e01b81526004810182905260240161093d565b600081815260086020526040808220805460ff191690555182917f5cb4218b272fd214168ac43e90fb4d05d6c36f0b17ffb4c2dd07c234d744eb2a91a26040516003907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a250565b826000805a9050333214611c93576040517ffeb3d07100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360009081526003602052604090205460ff16611cc357604051632dd9fc9760e01b815260040160405180910390fd5b611ccc876132d6565b15611cea57604051630e5da8fb60e01b815260040160405180910390fd5b611cfa8a8a8a8a89896001613587565b6001600160a01b03831615611f4e573660006020611d1983601f614ad7565b611d239190614aea565b9050610200611d33600283614bf0565b611d3d9190614aea565b611d48826006614bff565b611d529190614ad7565b611d5c9084614ad7565b9250333214611d6e5760009150611ea1565b6001600160a01b03841615611ea157836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015611ddc57506040513d6000823e601f3d908101601f19168201604052611dd99190810190614c16565b60015b15611ea157805115611e9f576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4c9190614a8b565b905048817f00000000000000000000000000000000000000000000000000000000000000008451611e7d9190614bff565b611e879190614bff565b611e919190614aea565b611e9b9086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a611ebc9087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af1158015611f26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f4a9190614ccf565b5050505b50505050505050505050565b837f000000000000000000000000000000000000000000000000000000000000000060005a3360009081526003602052604090205490915060ff16611fb257604051632dd9fc9760e01b815260040160405180910390fd5b7f0000000000000000000000000000000000000000000000000000000000000000611ff057604051631192b39960e31b815260040160405180910390fd5b6120038861144236879003870187614cec565b61200f8989888861331e565b6001600160a01b0383161561226357366000602061202e83601f614ad7565b6120389190614aea565b9050610200612048600283614bf0565b6120529190614aea565b61205d826006614bff565b6120679190614ad7565b6120719084614ad7565b925033321461208357600091506121b6565b6001600160a01b038416156121b657836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156120f157506040513d6000823e601f3d908101601f191682016040526120ee9190810190614c16565b60015b156121b6578051156121b4576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561213d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121619190614a8b565b905048817f000000000000000000000000000000000000000000000000000000000000000084516121929190614bff565b61219c9190614bff565b6121a69190614aea565b6121b09086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a6121d19087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af115801561223b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225f9190614ccf565b5050505b505050505050505050565b467f0000000000000000000000000000000000000000000000000000000000000000036122c7576040517fa301bb0600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7801000000000000000100000000000000010000000000000001600a55565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361239e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c0000000000000000000000000000000000000000606482015260840161093d565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b03821614612414576040517f23295f0e0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038216602482015260440161093d565b7f000000000000000000000000000000000000000000000000000000000000000061245257604051631192b39960e31b815260040160405180910390fd5b600c5467ffffffffffffffff1615612496576040517fef34ca5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61249f83613096565b505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061251b9190614aa4565b6001600160a01b0316336001600160a01b03161461257c5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b61258581612f6a565b60408051825181526020808401519082015282820151818301526060808401519082015290517faa6a58dad31128ff7ecc2b80987ee6e003df80bc50cd8d0b0d1af0e07da6d19d9181900360800190a16040516000907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e908290a250565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612656573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061267a9190614aa4565b6001600160a01b0316336001600160a01b0316146126db5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b600082826040516126ed929190614d9a565b6040519081900381207ffe000000000000000000000000000000000000000000000000000000000000006020830152602182015260410160408051601f1981840301815291905280516020909101209050600160ff1b8118620100008310612781576040517fb3d1f41200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526008602052604090205460ff16156127cd576040517ffa2fddda0000000000000000000000000000000000000000000000000000000081526004810182905260240161093d565b437f00000000000000000000000000000000000000000000000000000000000000001561285a5760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612833573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128579190614a8b565b90505b6040805180820182526001815267ffffffffffffffff8381166020808401918252600087815260089091528490209251835491517fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000009092169015157fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000ff161761010091909216021790555182907fabca9b7986bc22ad0160eb0cb88ae75411eacfba4052af0b457a9335ef655722906129159088908890614daa565b60405180910390a26040516002907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a25050505050565b6001546040517f16bf5579000000000000000000000000000000000000000000000000000000008152600481018390526000916001600160a01b0316906316bf557990602401602060405180830381865afa1580156129b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129d79190614a8b565b92915050565b600a5460009067ffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000015612a2f576000612a20600c856136b2565b9050612a2b81613701565b9150505b612a398184614dd9565b9392505050565b826000805a3360009081526003602052604090205490915060ff16158015612a7357506002546001600160a01b03163314155b15612a9157604051632dd9fc9760e01b815260040160405180910390fd5b612a9a876132d6565b15612ab857604051630e5da8fb60e01b815260040160405180910390fd5b611cfa8a8a8a8a89896000613587565b600080600080600080600080612adc613731565b67ffffffffffffffff9384169b50918316995082169750169450505050505b90919293565b6000548611612b3c576040517f7d73e6fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612b728684612b5060208901896149f7565b612b6060408a0160208b016149f7565b612b6b60018d614cbc565b89886137a8565b600a5490915067ffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000015612be357612bc0612bb860208801886149f7565b600c9061384d565b600c54612bd69067ffffffffffffffff16613701565b67ffffffffffffffff1690505b4381612bf260208901896149f7565b67ffffffffffffffff16612c069190614ad7565b10612c3d576040517fad3515d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006001891115612cc6576001546001600160a01b031663d5719dc2612c6460028c614cbc565b6040518263ffffffff1660e01b8152600401612c8291815260200190565b602060405180830381865afa158015612c9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc39190614a8b565b90505b60408051602080820184905281830186905282518083038401815260609092019092528051910120600180546001600160a01b03169063d5719dc290612d0c908d614cbc565b6040518263ffffffff1660e01b8152600401612d2a91815260200190565b602060405180830381865afa158015612d47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d6b9190614a8b565b14612da2576040517f13947fd700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080612dae8b6138d3565b9150915060008b90506000600160009054906101000a90046001600160a01b03166001600160a01b0316635fca4a166040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e309190614a8b565b9050806000808080612e458988838880613918565b93509350935093508083857f7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7856000548d6002604051612e889493929190614e17565b60405180910390a4505050505050505050505050505050505050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f051038f200000000000000000000000000000000000000000000000000000000179052905160009182918291606491612f109190614eb0565b600060405180830381855afa9150503d8060008114612f4b576040519150601f19603f3d011682016040523d82523d6000602084013e612f50565b606091505b5091509150818015612f63575080516020145b9250505090565b805167ffffffffffffffff1080612f8c5750602081015167ffffffffffffffff105b80612fa25750604081015167ffffffffffffffff105b80612fb85750606081015167ffffffffffffffff105b15612fef576040517f09cfba7500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8051600a80546020840151604085015160609095015167ffffffffffffffff908116600160c01b0277ffffffffffffffffffffffffffffffffffffffffffffffff968216600160801b02969096166fffffffffffffffffffffffffffffffff92821668010000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009094169190951617919091171691909117919091179055565b7f00000000000000000000000000000000000000000000000000000000000000006130d457604051631192b39960e31b815260040160405180910390fd5b6130dd81613b01565b613113576040517fda1c8eb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c5467ffffffffffffffff16158061313f57506020810151600c5467ffffffffffffffff9182169116115b1561316b576020810151600c805467ffffffffffffffff191667ffffffffffffffff9092169190911790555b8051600c5467ffffffffffffffff918216911610156131a8578051600c805467ffffffffffffffff191667ffffffffffffffff9092169190911790555b602081810151600c805484517fffffffffffffffff00000000000000000000000000000000ffffffffffffffff9091166801000000000000000067ffffffffffffffff948516027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff1617600160801b91841691909102179055604080840151600d805467ffffffffffffffff1916919093161790915560005460015482517feca067ad000000000000000000000000000000000000000000000000000000008152925191936001600160a01b039091169263eca067ad92600480830193928290030181865afa15801561329f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132c39190614a8b565b036132d3576132d3600c4361384d565b50565b60007f00000000000000000000000000000000000000000000000000000000000000008015613306575060005482115b80156129d75750613317600c613b69565b1592915050565b600080600061332c86613b9c565b925092509250600080600080613346878b60008c8c613918565b93509350935093508a841415801561336057506000198b14155b156133a1576040517fac7411c900000000000000000000000000000000000000000000000000000000815260048101859052602481018c905260440161093d565b80838c7f7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7856000548b60036040516133dc9493929190614e17565b60405180910390a47f00000000000000000000000000000000000000000000000000000000000000001561343c576040517f86657a5300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b333214801561346957507f0000000000000000000000000000000000000000000000000000000000000000155b156113735761137387854888613ca5565b6000548211156135835761348e600c613ee7565b1561358357600154600080546040517fd5719dc200000000000000000000000000000000000000000000000000000000815291926001600160a01b03169163d5719dc2916134e29160040190815260200190565b602060405180830381865afa1580156134ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135239190614a8b565b90506135388183600001518460200151613f18565b61356e576040517fc334542d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60208201516040015161249f90600c9061384d565b5050565b600080613595888888613f5d565b915091506000806000806135b9868b896135b05760006135b2565b8d5b8c8c613918565b93509350935093508c84141580156135d357506000198d14155b15613614576040517fac7411c900000000000000000000000000000000000000000000000000000000815260048101859052602481018e905260440161093d565b8083857f7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7856000548a8d61364957600161364c565b60005b60405161365c9493929190614e17565b60405180910390a486611f4a57837ffe325ca1efe4c5c1062c981c3ee74b781debe4ea9440306a96d2a55759c66c208d8d60405161369b929190614daa565b60405180910390a250505050505050505050505050565b81546001830154600091612a399167ffffffffffffffff600160c01b8304811692868216928282169268010000000000000000808304821693600160801b81048316939190048216911661416b565b600a5460009067ffffffffffffffff9081169083161061372d57600a5467ffffffffffffffff166129d7565b5090565b6000808080467f00000000000000000000000000000000000000000000000000000000000000001461376e57506001925082915081905080612afb565b5050600a5467ffffffffffffffff808216935068010000000000000000820481169250600160801b8204811691600160c01b900416612afb565b6040516001600160f81b031960f889901b1660208201526bffffffffffffffffffffffff19606088901b1660218201527fffffffffffffffff00000000000000000000000000000000000000000000000060c087811b8216603584015286901b16603d82015260458101849052606581018390526085810182905260009060a5016040516020818303038152906040528051906020012090505b979650505050505050565b61385782826136b2565b825467ffffffffffffffff928316600160c01b0277ffffffffffffffffffffffffffffffff000000000000000090911691831691909117178255600190910180544390921668010000000000000000027fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff909216919091179055565b604080516080810182526000808252602082018190529181018290526060810182905260008061390285614232565b8151602090920191909120969095509350505050565b60008060008060005488101561395a576040517f7d73e6fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160009054906101000a90046001600160a01b03166001600160a01b031663eca067ad6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156139ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139d19190614a8b565b881115613a0a576040517f925f8bd300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517f86598a56000000000000000000000000000000000000000000000000000000008152600481018b9052602481018a905260448101889052606481018790526001600160a01b03909116906386598a56906084016080604051808303816000875af1158015613a83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aa79190614ecc565b60008c9055929650909450925090508615801590613ae357507f0000000000000000000000000000000000000000000000000000000000000000155b15613af557613af58985486000613ca5565b95509550955095915050565b805160009067ffffffffffffffff1615801590613b2b5750602082015167ffffffffffffffff1615155b8015613b475750612710826040015167ffffffffffffffff1611155b80156129d75750506020810151905167ffffffffffffffff9182169116111590565b805460009067ffffffffffffffff600160801b8204811691613b9491600160c01b9091041643614cbc565b111592915050565b604080516080810182526000808252602082018190529181018290526060810182905260408051606081018252600080825260208201819052918101829052600080613be787614232565b9092509050633b9aca0060006003613c026202000084614bff565b613c0c9190614bff565b60405190915084907f500000000000000000000000000000000000000000000000000000000000000090613c44908890602001614f02565b60408051601f1981840301815290829052613c63939291602001614f36565b604051602081830303815290604052805190602001208360004811613c89576000613c93565b613c934884614aea565b97509750975050505050509193909250565b327f000000000000000000000000000000000000000000000000000000000000000015613d4b576000606c6001600160a01b031663c6f7de0e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613d0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d319190614a8b565b9050613d3d4882614aea565b613d479084614ad7565b9250505b67ffffffffffffffff821115613d8d576040517f04d5501200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080514260208201526bffffffffffffffffffffffff19606084901b16918101919091526054810186905260748101859052609481018490527fffffffffffffffff00000000000000000000000000000000000000000000000060c084901b1660b482015260009060bc0160408051808303601f1901815290829052600154815160208301207f7a88b1070000000000000000000000000000000000000000000000000000000084526001600160a01b0386811660048601526024850191909152919350600092911690637a88b107906044016020604051808303816000875af1158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190614a8b565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b83604051613ed69190614f79565b60405180910390a250505050505050565b6000613ef282613b69565b15806129d75750505467ffffffffffffffff680100000000000000008204811691161090565b6000613f5383613f278461430a565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b9093149392505050565b60408051608081018252600080825260208201819052918101829052606081018290526000613f8d856028614ad7565b90507f0000000000000000000000000000000000000000000000000000000000000000811115614012576040517f4634691b000000000000000000000000000000000000000000000000000000008152600481018290527f0000000000000000000000000000000000000000000000000000000000000000602482015260440161093d565b60008061401e86614232565b909250905086156141315761404e8888600081811061403f5761403f614e01565b9050013560f81c60f81b614337565b6140a6578787600081811061406557614065614e01565b6040517f6b3333560000000000000000000000000000000000000000000000000000000081529201356001600160f81b03191660048301525060240161093d565b600160ff1b88886000816140bc576140bc614e01565b6001600160f81b0319920135929092161615801591506140dd575060218710155b156141315760006140f2602160018a8c614fac565b6140fb91614fd6565b60008181526008602052604090205490915060ff1661412f5760405162f20c5d60e01b81526004810182905260240161093d565b505b81888860405160200161414693929190614ff4565b60408051601f1981840301815291905280516020909101209890975095505050505050565b60008088881161417c576000614186565b6141868989614cbc565b905060008987116141985760006141a2565b6141a28a88614cbc565b90506127106141b18584614bff565b6141bb9190614aea565b6141c59089614ad7565b975060008682116141d75760006141e1565b6141e18783614cbc565b9050828111156141ee5750815b8089111561422357614200818a614cbc565b985086891115614223578589116142175788614219565b855b9350505050613842565b50949998505050505050505050565b6040805160808101825260008082526020820181905291810182905260608082018390529161425f6143ca565b905060008160000151826020015183604001518460600151886040516020016142df95949392919060c095861b7fffffffffffffffff000000000000000000000000000000000000000000000000908116825294861b8516600882015292851b8416601084015290841b8316601883015290921b16602082015260280190565b604051602081830303815290604052905060288151146143015761430161501c565b94909350915050565b60006129d7826000015183602001518460400151856060015186608001518760a001518860c001516137a8565b60006001600160f81b03198216158061435d57506001600160f81b03198216600160ff1b145b8061439157506001600160f81b031982167f8800000000000000000000000000000000000000000000000000000000000000145b806129d757506001600160f81b031982167f20000000000000000000000000000000000000000000000000000000000000001492915050565b604080516080810182526000808252602082018190529181018290526060810191909152604080516080810182526000808252602082018190529181018290526060810191909152600080600080614420613731565b93509350935093508167ffffffffffffffff16421115614451576144448242615032565b67ffffffffffffffff1685525b61445b8142614dd9565b67ffffffffffffffff9081166020870152841643111561448f5761447f8443615032565b67ffffffffffffffff1660408601525b6144998343614dd9565b67ffffffffffffffff1660608601525092949350505050565b6000602082840312156144c457600080fd5b5035919050565b6001600160a01b03811681146132d357600080fd5b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715614519576145196144e0565b60405290565b60405160e0810167ffffffffffffffff81118282101715614519576145196144e0565b604051601f8201601f1916810167ffffffffffffffff8111828210171561456b5761456b6144e0565b604052919050565b803567ffffffffffffffff8116811461458b57600080fd5b919050565b6000606082840312156145a257600080fd5b6040516060810181811067ffffffffffffffff821117156145c5576145c56144e0565b6040529050806145d483614573565b81526145e260208401614573565b60208201526145f360408401614573565b60408201525092915050565b600080600083850361010081121561461657600080fd5b8435614621816144cb565b93506080601f198201121561463557600080fd5b506020840191506146498560a08601614590565b90509250925092565b80151581146132d357600080fd5b6000806040838503121561467357600080fd5b823561467e816144cb565b9150602083013561468e81614652565b809150509250929050565b6000602082840312156146ab57600080fd5b8135612a39816144cb565b6000606082840312156146c857600080fd5b612a398383614590565b600080600080600060a086880312156146ea57600080fd5b85359450602086013593506040860135614703816144cb565b94979396509394606081013594506080013592915050565b60008083601f84011261472d57600080fd5b50813567ffffffffffffffff81111561474557600080fd5b60208301915083602082850101111561475d57600080fd5b9250929050565b6000610100828403121561477757600080fd5b50919050565b6000806000806000806000806101c0898b03121561479a57600080fd5b88359750602089013567ffffffffffffffff8111156147b857600080fd5b6147c48b828c0161471b565b9098509650506040890135945060608901356147df816144cb565b93506080890135925060a089013591506147fc8a60c08b01614764565b90509295985092959890939650565b60008060008060006080868803121561482357600080fd5b85359450602086013567ffffffffffffffff81111561484157600080fd5b61484d8882890161471b565b909550935050604086013591506060860135614868816144cb565b809150509295509295909350565b600080600080600080600060c0888a03121561489157600080fd5b87359650602088013567ffffffffffffffff8111156148af57600080fd5b6148bb8a828b0161471b565b9097509550506040880135935060608801356148d6816144cb565b969995985093969295946080840135945060a09093013592915050565b6000806000806000806101a0878903121561490d57600080fd5b86359550602087013594506040870135614926816144cb565b935060608701359250608087013591506149438860a08901614764565b90509295509295509295565b60006080828403121561496157600080fd5b6040516080810181811067ffffffffffffffff82111715614984576149846144e0565b8060405250823581526020830135602082015260408301356040820152606083013560608201528091505092915050565b600080602083850312156149c857600080fd5b823567ffffffffffffffff8111156149df57600080fd5b6149eb8582860161471b565b90969095509350505050565b600060208284031215614a0957600080fd5b612a3982614573565b803560ff8116811461458b57600080fd5b60008060008060008060e08789031215614a3c57600080fd5b86359550614a4c60208801614a12565b94506080870188811115614a5f57600080fd5b60408801945035925060a0870135614a76816144cb565b8092505060c087013590509295509295509295565b600060208284031215614a9d57600080fd5b5051919050565b600060208284031215614ab657600080fd5b8151612a39816144cb565b634e487b7160e01b600052601160045260246000fd5b808201808211156129d7576129d7614ac1565b600082614b0757634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115614b47578160001904821115614b2d57614b2d614ac1565b80851615614b3a57918102915b93841c9390800290614b11565b509250929050565b600082614b5e575060016129d7565b81614b6b575060006129d7565b8160018114614b815760028114614b8b57614ba7565b60019150506129d7565b60ff841115614b9c57614b9c614ac1565b50506001821b6129d7565b5060208310610133831016604e8410600b8410161715614bca575081810a6129d7565b614bd48383614b0c565b8060001904821115614be857614be8614ac1565b029392505050565b6000612a3960ff841683614b4f565b80820281158282048414176129d7576129d7614ac1565b60006020808385031215614c2957600080fd5b825167ffffffffffffffff80821115614c4157600080fd5b818501915085601f830112614c5557600080fd5b815181811115614c6757614c676144e0565b8060051b9150614c78848301614542565b8181529183018401918481019088841115614c9257600080fd5b938501935b83851015614cb057845182529385019390850190614c97565b98975050505050505050565b818103818111156129d7576129d7614ac1565b600060208284031215614ce157600080fd5b8151612a3981614652565b6000818303610100811215614d0057600080fd5b614d086144f6565b8335815260e0601f1983011215614d1e57600080fd5b614d2661451f565b9150614d3460208501614a12565b82526040840135614d44816144cb565b6020830152614d5560608501614573565b6040830152614d6660808501614573565b606083015260a0840135608083015260c084013560a083015260e084013560c0830152816020820152809250505092915050565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b67ffffffffffffffff818116838216019080821115614dfa57614dfa614ac1565b5092915050565b634e487b7160e01b600052603260045260246000fd5b600060e08201905085825284602083015267ffffffffffffffff8085511660408401528060208601511660608401528060408601511660808401528060608601511660a08401525060048310614e7d57634e487b7160e01b600052602160045260246000fd5b8260c083015295945050505050565b60005b83811015614ea7578181015183820152602001614e8f565b50506000910152565b60008251614ec2818460208701614e8c565b9190910192915050565b60008060008060808587031215614ee257600080fd5b505082516020840151604085015160609095015191969095509092509050565b60008183825b6003811015614f27578151835260209283019290910190600101614f08565b50505060608201905092915050565b60008451614f48818460208901614e8c565b6001600160f81b031985169083019081528351614f6c816001840160208801614e8c565b0160010195945050505050565b6020815260008251806020840152614f98816040850160208701614e8c565b601f01601f19169190910160400192915050565b60008085851115614fbc57600080fd5b83861115614fc957600080fd5b5050820193919092039150565b803560208310156129d757600019602084900360031b1b1692915050565b60008451615006818460208901614e8c565b8201838582376000930192835250909392505050565b634e487b7160e01b600052600160045260246000fd5b67ffffffffffffffff828116828216039080821115614dfa57614dfa614ac156fea2646970667358221220c28e6e821fbfe3ca801cc0632161efc2e8d1229b98ec517d709446368191b1cf64736f6c63430008110033",
|
1629
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102f45760003560e01c80637fa3a40e11610191578063d1ce8da8116100e3578063e78cea9211610097578063edaafe2011610071578063edaafe2014610758578063f1981578146107e1578063f60a5091146107f457600080fd5b8063e78cea92146106f6578063e8eb1dc314610709578063ebea461d1461073057600080fd5b8063dd44e6e0116100c8578063dd44e6e014610690578063e0bc9729146106bc578063e5a358c8146106cf57600080fd5b8063d1ce8da81461066a578063d9dd67ab1461067d57600080fd5b806392d9f78211610145578063b31761f81161011f578063b31761f814610631578063cb23bcb514610644578063cc2a1a0c1461065757600080fd5b806392d9f782146105ef57806396cc5c7814610616578063a655d9371461061e57600080fd5b80638d910dde116101765780638d910dde1461058a5780638f111f3c146105c9578063917cf8ac146105dc57600080fd5b80637fa3a40e1461056e578063844208601461057757600080fd5b80633e5aa0821161024a5780636d46e987116101fe5780636f12b0c9116101d85780636f12b0c9146104e4578063715ea34b146104f757806371c3e6fe1461054b57600080fd5b80636d46e9871461049b5780636e620055146104be5780636e7df3e7146104d157600080fd5b806369cacded1161022f57806369cacded146104595780636ae71f121461046c5780636c8904501461047457600080fd5b80633e5aa0821461041f5780634b678a661461043257600080fd5b80631f956632116102ac57806327957a491161028657806327957a49146103dd5780632cbf74e5146103e55780632f3985a71461040c57600080fd5b80631f956632146103a45780631ff64790146103b7578063258f0495146103ca57600080fd5b80631637be48116102dd5780631637be481461035457806316af91a7146103875780631ad87e451461038f57600080fd5b806302c99275146102f957806306f130561461033e575b600080fd5b6103207f200000000000000000000000000000000000000000000000000000000000000081565b6040516001600160f81b031990911681526020015b60405180910390f35b6103466107ff565b604051908152602001610335565b6103776103623660046144b2565b60009081526008602052604090205460ff1690565b6040519015158152602001610335565b610320600081565b6103a261039d3660046145ff565b610889565b005b6103a26103b2366004614660565b610bb9565b6103a26103c5366004614699565b610d24565b6103466103d83660046144b2565b610ef2565b610346602881565b6103207f500000000000000000000000000000000000000000000000000000000000000081565b6103a261041a3660046146b6565b610f5f565b6103a261042d3660046146d2565b611098565b6103777f000000000000000000000000000000000000000000000000000000000000000081565b6103a261046736600461477d565b611381565b6103a26116b7565b6103207f080000000000000000000000000000000000000000000000000000000000000081565b6103776104a9366004614699565b60096020526000908152604090205460ff1681565b6103a26104cc36600461477d565b61188f565b6103a26104df366004614660565b611941565b6103a26104f236600461480b565b611aac565b61052b6105053660046144b2565b60086020526000908152604090205460ff811690610100900467ffffffffffffffff1682565b60408051921515835267ffffffffffffffff909116602083015201610335565b610377610559366004614699565b60036020526000908152604090205460ff1681565b61034660005481565b6103a26105853660046144b2565b611ade565b6105b17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610335565b6103a26105d7366004614876565b611c53565b6103a26105ea3660046148f3565b611f5a565b6103777f000000000000000000000000000000000000000000000000000000000000000081565b6103a261226e565b6103a261062c3660046146b6565b6122e6565b6103a261063f36600461494f565b6124a4565b6002546105b1906001600160a01b031681565b600b546105b1906001600160a01b031681565b6103a26106783660046149b5565b612603565b61034661068b3660046144b2565b612950565b6106a361069e3660046149f7565b6129dd565b60405167ffffffffffffffff9091168152602001610335565b6103a26106ca366004614876565b612a40565b6103207f400000000000000000000000000000000000000000000000000000000000000081565b6001546105b1906001600160a01b031681565b6103467f000000000000000000000000000000000000000000000000000000000000000081565b610738612ac8565b604080519485526020850193909352918301526060820152608001610335565b600c54600d5461079e9167ffffffffffffffff8082169268010000000000000000808404831693600160801b8104841693600160c01b9091048116928082169290041686565b6040805167ffffffffffffffff978816815295871660208701529386169385019390935290841660608401528316608083015290911660a082015260c001610335565b6103a26107ef366004614a23565b612b01565b610320600160ff1b81565b600154604080517e84120c00000000000000000000000000000000000000000000000000000000815290516000926001600160a01b0316916284120c9160048083019260209291908290030181865afa158015610860573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108849190614a8b565b905090565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610946576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6001546001600160a01b031615610989576040517fef34ca5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0383166109c9576040517f1ad0f74300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000836001600160a01b031663e1758bd86040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610a25575060408051601f3d908101601f19168201909252610a2291810190614aa4565b60015b15610a40576001600160a01b03811615610a3e57600191505b505b8015157f0000000000000000000000000000000000000000000000000000000000000000151514610a9d576040517fc3e31f8d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038616908117909155604080517fcb23bcb5000000000000000000000000000000000000000000000000000000008152905163cb23bcb5916004808201926020929091908290030181865afa158015610b1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b409190614aa4565b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055610b84610b7f3685900385018561494f565b612f6a565b7f000000000000000000000000000000000000000000000000000000000000000015610bb357610bb382613096565b50505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c309190614aa4565b6001600160a01b0316336001600160a01b031614158015610c5c5750600b546001600160a01b03163314155b15610c95576040517f660b3b4200000000000000000000000000000000000000000000000000000000815233600482015260240161093d565b6001600160a01b038216600081815260096020908152604091829020805460ff19168515159081179091558251938452908301527feb12a9a53eec138c91b27b4f912a257bd690c18fc8bde744be92a0365eb9b87e910160405180910390a16040516004907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a25050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9b9190614aa4565b6001600160a01b0316336001600160a01b031614610e655760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e209190614aa4565b6040517f23295f0e0000000000000000000000000000000000000000000000000000000081526001600160a01b0392831660048201529116602482015260440161093d565b600b805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f3cd6c184800297a0f2b00926a683cbe76890bb7fd01480ac0a10ed6c8f7f66599060200160405180910390a16040516005907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a250565b600081815260086020908152604080832081518083019092525460ff811615158252610100900467ffffffffffffffff16918101829052908203610f4b5760405162f20c5d60e01b81526004810184905260240161093d565b6020015167ffffffffffffffff1692915050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd69190614aa4565b6001600160a01b0316336001600160a01b0316146110375760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b61104081613096565b60408051825167ffffffffffffffff908116825260208085015182169083015283830151168183015290517faa7a2d8175dee3b637814ad6346005dfcc357165396fb8327f649effe8abcf859181900360600190a150565b827f000000000000000000000000000000000000000000000000000000000000000060005a3360009081526003602052604090205490915060ff166110f057604051632dd9fc9760e01b815260040160405180910390fd5b6110f9876132d6565b1561111757604051630e5da8fb60e01b815260040160405180910390fd5b6111238888878761331e565b6001600160a01b0383161561137757366000602061114283601f614ad7565b61114c9190614aea565b905061020061115c600283614bf0565b6111669190614aea565b611171826006614bff565b61117b9190614ad7565b6111859084614ad7565b925033321461119757600091506112ca565b6001600160a01b038416156112ca57836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561120557506040513d6000823e601f3d908101601f191682016040526112029190810190614c16565b60015b156112ca578051156112c8576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611251573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112759190614a8b565b905048817f000000000000000000000000000000000000000000000000000000000000000084516112a69190614bff565b6112b09190614bff565b6112ba9190614aea565b6112c49086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a6112e59087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af115801561134f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113739190614ccf565b5050505b5050505050505050565b836000805a90503332146113c1576040517ffeb3d07100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360009081526003602052604090205460ff166113f157604051632dd9fc9760e01b815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000061142f57604051631192b39960e31b815260040160405180910390fd5b6114478861144236879003870187614cec565b61347a565b6114578b8b8b8b8a8a6001613587565b6001600160a01b0383161561137357366000602061147683601f614ad7565b6114809190614aea565b9050610200611490600283614bf0565b61149a9190614aea565b6114a5826006614bff565b6114af9190614ad7565b6114b99084614ad7565b92503332146114cb57600091506115fe565b6001600160a01b038416156115fe57836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561153957506040513d6000823e601f3d908101601f191682016040526115369190810190614c16565b60015b156115fe578051156115fc576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611585573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a99190614a8b565b905048817f000000000000000000000000000000000000000000000000000000000000000084516115da9190614bff565b6115e49190614bff565b6115ee9190614aea565b6115f89086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a6116199087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af1158015611683573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116a79190614ccf565b5050505050505050505050505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561170a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172e9190614aa4565b6001600160a01b0316336001600160a01b03161461178f5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b600154604080517fcb23bcb500000000000000000000000000000000000000000000000000000000815290516000926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa1580156117f2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118169190614aa4565b6002549091506001600160a01b03808316911603611860576040517fd054909f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b836000805a3360009081526003602052604090205490915060ff161580156118c257506002546001600160a01b03163314155b156118e057604051632dd9fc9760e01b815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000061191e57604051631192b39960e31b815260040160405180910390fd5b6119318861144236879003870187614cec565b6114578b8b8b8b8a8a6000613587565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611994573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119b89190614aa4565b6001600160a01b0316336001600160a01b0316141580156119e45750600b546001600160a01b03163314155b15611a1d576040517f660b3b4200000000000000000000000000000000000000000000000000000000815233600482015260240161093d565b6001600160a01b038216600081815260036020908152604091829020805460ff19168515159081179091558251938452908301527f28bcc5626d357efe966b4b0876aa1ee8ab99e26da4f131f6a2623f1800701c21910160405180910390a16040516001907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a25050565b6040517fc73b9d7c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b559190614aa4565b6001600160a01b0316336001600160a01b031614611bb65760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b60008181526008602052604090205460ff16611be75760405162f20c5d60e01b81526004810182905260240161093d565b600081815260086020526040808220805460ff191690555182917f5cb4218b272fd214168ac43e90fb4d05d6c36f0b17ffb4c2dd07c234d744eb2a91a26040516003907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a250565b826000805a9050333214611c93576040517ffeb3d07100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360009081526003602052604090205460ff16611cc357604051632dd9fc9760e01b815260040160405180910390fd5b611ccc876132d6565b15611cea57604051630e5da8fb60e01b815260040160405180910390fd5b611cfa8a8a8a8a89896001613587565b6001600160a01b03831615611f4e573660006020611d1983601f614ad7565b611d239190614aea565b9050610200611d33600283614bf0565b611d3d9190614aea565b611d48826006614bff565b611d529190614ad7565b611d5c9084614ad7565b9250333214611d6e5760009150611ea1565b6001600160a01b03841615611ea157836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015611ddc57506040513d6000823e601f3d908101601f19168201604052611dd99190810190614c16565b60015b15611ea157805115611e9f576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4c9190614a8b565b905048817f00000000000000000000000000000000000000000000000000000000000000008451611e7d9190614bff565b611e879190614bff565b611e919190614aea565b611e9b9086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a611ebc9087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af1158015611f26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f4a9190614ccf565b5050505b50505050505050505050565b837f000000000000000000000000000000000000000000000000000000000000000060005a3360009081526003602052604090205490915060ff16611fb257604051632dd9fc9760e01b815260040160405180910390fd5b7f0000000000000000000000000000000000000000000000000000000000000000611ff057604051631192b39960e31b815260040160405180910390fd5b6120038861144236879003870187614cec565b61200f8989888861331e565b6001600160a01b0383161561226357366000602061202e83601f614ad7565b6120389190614aea565b9050610200612048600283614bf0565b6120529190614aea565b61205d826006614bff565b6120679190614ad7565b6120719084614ad7565b925033321461208357600091506121b6565b6001600160a01b038416156121b657836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156120f157506040513d6000823e601f3d908101601f191682016040526120ee9190810190614c16565b60015b156121b6578051156121b4576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561213d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121619190614a8b565b905048817f000000000000000000000000000000000000000000000000000000000000000084516121929190614bff565b61219c9190614bff565b6121a69190614aea565b6121b09086614ad7565b9450505b505b846001600160a01b031663e3db8a49335a6121d19087614cbc565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604481018590526064016020604051808303816000875af115801561223b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225f9190614ccf565b5050505b505050505050505050565b467f0000000000000000000000000000000000000000000000000000000000000000036122c7576040517fa301bb0600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7801000000000000000100000000000000010000000000000001600a55565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361239e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201527f64656c656761746563616c6c0000000000000000000000000000000000000000606482015260840161093d565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b03821614612414576040517f23295f0e0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038216602482015260440161093d565b7f000000000000000000000000000000000000000000000000000000000000000061245257604051631192b39960e31b815260040160405180910390fd5b600c5467ffffffffffffffff1615612496576040517fef34ca5c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61249f83613096565b505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061251b9190614aa4565b6001600160a01b0316336001600160a01b03161461257c5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b61258581612f6a565b60408051825181526020808401519082015282820151818301526060808401519082015290517faa6a58dad31128ff7ecc2b80987ee6e003df80bc50cd8d0b0d1af0e07da6d19d9181900360800190a16040516000907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e908290a250565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612656573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061267a9190614aa4565b6001600160a01b0316336001600160a01b0316146126db5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610dfc573d6000803e3d6000fd5b600082826040516126ed929190614d9a565b6040519081900381207ffe000000000000000000000000000000000000000000000000000000000000006020830152602182015260410160408051601f1981840301815291905280516020909101209050600160ff1b8118620100008310612781576040517fb3d1f41200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008181526008602052604090205460ff16156127cd576040517ffa2fddda0000000000000000000000000000000000000000000000000000000081526004810182905260240161093d565b437f00000000000000000000000000000000000000000000000000000000000000001561285a5760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612833573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128579190614a8b565b90505b6040805180820182526001815267ffffffffffffffff8381166020808401918252600087815260089091528490209251835491517fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000009092169015157fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000ff161761010091909216021790555182907fabca9b7986bc22ad0160eb0cb88ae75411eacfba4052af0b457a9335ef655722906129159088908890614daa565b60405180910390a26040516002907fea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e90600090a25050505050565b6001546040517f16bf5579000000000000000000000000000000000000000000000000000000008152600481018390526000916001600160a01b0316906316bf557990602401602060405180830381865afa1580156129b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129d79190614a8b565b92915050565b600a5460009067ffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000015612a2f576000612a20600c856136b2565b9050612a2b81613701565b9150505b612a398184614dd9565b9392505050565b826000805a3360009081526003602052604090205490915060ff16158015612a7357506002546001600160a01b03163314155b15612a9157604051632dd9fc9760e01b815260040160405180910390fd5b612a9a876132d6565b15612ab857604051630e5da8fb60e01b815260040160405180910390fd5b611cfa8a8a8a8a89896000613587565b600080600080600080600080612adc613731565b67ffffffffffffffff9384169b50918316995082169750169450505050505b90919293565b6000548611612b3c576040517f7d73e6fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612b728684612b5060208901896149f7565b612b6060408a0160208b016149f7565b612b6b60018d614cbc565b89886137a8565b600a5490915067ffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000015612be357612bc0612bb860208801886149f7565b600c9061384d565b600c54612bd69067ffffffffffffffff16613701565b67ffffffffffffffff1690505b4381612bf260208901896149f7565b67ffffffffffffffff16612c069190614ad7565b10612c3d576040517fad3515d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006001891115612cc6576001546001600160a01b031663d5719dc2612c6460028c614cbc565b6040518263ffffffff1660e01b8152600401612c8291815260200190565b602060405180830381865afa158015612c9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cc39190614a8b565b90505b60408051602080820184905281830186905282518083038401815260609092019092528051910120600180546001600160a01b03169063d5719dc290612d0c908d614cbc565b6040518263ffffffff1660e01b8152600401612d2a91815260200190565b602060405180830381865afa158015612d47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d6b9190614a8b565b14612da2576040517f13947fd700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080612dae8b6138d3565b9150915060008b90506000600160009054906101000a90046001600160a01b03166001600160a01b0316635fca4a166040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e309190614a8b565b9050806000808080612e458988838880613918565b93509350935093508083857f7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7856000548d6002604051612e889493929190614e17565b60405180910390a4505050505050505050505050505050505050565b60408051600481526024810182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f051038f200000000000000000000000000000000000000000000000000000000179052905160009182918291606491612f109190614eb0565b600060405180830381855afa9150503d8060008114612f4b576040519150601f19603f3d011682016040523d82523d6000602084013e612f50565b606091505b5091509150818015612f63575080516020145b9250505090565b805167ffffffffffffffff1080612f8c5750602081015167ffffffffffffffff105b80612fa25750604081015167ffffffffffffffff105b80612fb85750606081015167ffffffffffffffff105b15612fef576040517f09cfba7500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8051600a80546020840151604085015160609095015167ffffffffffffffff908116600160c01b0277ffffffffffffffffffffffffffffffffffffffffffffffff968216600160801b02969096166fffffffffffffffffffffffffffffffff92821668010000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009094169190951617919091171691909117919091179055565b7f00000000000000000000000000000000000000000000000000000000000000006130d457604051631192b39960e31b815260040160405180910390fd5b6130dd81613b01565b613113576040517fda1c8eb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c5467ffffffffffffffff16158061313f57506020810151600c5467ffffffffffffffff9182169116115b1561316b576020810151600c805467ffffffffffffffff191667ffffffffffffffff9092169190911790555b8051600c5467ffffffffffffffff918216911610156131a8578051600c805467ffffffffffffffff191667ffffffffffffffff9092169190911790555b602081810151600c805484517fffffffffffffffff00000000000000000000000000000000ffffffffffffffff9091166801000000000000000067ffffffffffffffff948516027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff1617600160801b91841691909102179055604080840151600d805467ffffffffffffffff1916919093161790915560005460015482517feca067ad000000000000000000000000000000000000000000000000000000008152925191936001600160a01b039091169263eca067ad92600480830193928290030181865afa15801561329f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132c39190614a8b565b036132d3576132d3600c4361384d565b50565b60007f00000000000000000000000000000000000000000000000000000000000000008015613306575060005482115b80156129d75750613317600c613b69565b1592915050565b600080600061332c86613b9c565b925092509250600080600080613346878b60008c8c613918565b93509350935093508a841415801561336057506000198b14155b156133a1576040517fac7411c900000000000000000000000000000000000000000000000000000000815260048101859052602481018c905260440161093d565b80838c7f7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7856000548b60036040516133dc9493929190614e17565b60405180910390a47f00000000000000000000000000000000000000000000000000000000000000001561343c576040517f86657a5300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b333214801561346957507f0000000000000000000000000000000000000000000000000000000000000000155b156113735761137387854888613ca5565b6000548211156135835761348e600c613ee7565b1561358357600154600080546040517fd5719dc200000000000000000000000000000000000000000000000000000000815291926001600160a01b03169163d5719dc2916134e29160040190815260200190565b602060405180830381865afa1580156134ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135239190614a8b565b90506135388183600001518460200151613f18565b61356e576040517fc334542d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60208201516040015161249f90600c9061384d565b5050565b600080613595888888613f5d565b915091506000806000806135b9868b896135b05760006135b2565b8d5b8c8c613918565b93509350935093508c84141580156135d357506000198d14155b15613614576040517fac7411c900000000000000000000000000000000000000000000000000000000815260048101859052602481018e905260440161093d565b8083857f7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7856000548a8d61364957600161364c565b60005b60405161365c9493929190614e17565b60405180910390a486611f4a57837ffe325ca1efe4c5c1062c981c3ee74b781debe4ea9440306a96d2a55759c66c208d8d60405161369b929190614daa565b60405180910390a250505050505050505050505050565b81546001830154600091612a399167ffffffffffffffff600160c01b8304811692868216928282169268010000000000000000808304821693600160801b81048316939190048216911661416b565b600a5460009067ffffffffffffffff9081169083161061372d57600a5467ffffffffffffffff166129d7565b5090565b6000808080467f00000000000000000000000000000000000000000000000000000000000000001461376e57506001925082915081905080612afb565b5050600a5467ffffffffffffffff808216935068010000000000000000820481169250600160801b8204811691600160c01b900416612afb565b6040516001600160f81b031960f889901b1660208201526bffffffffffffffffffffffff19606088901b1660218201527fffffffffffffffff00000000000000000000000000000000000000000000000060c087811b8216603584015286901b16603d82015260458101849052606581018390526085810182905260009060a5016040516020818303038152906040528051906020012090505b979650505050505050565b61385782826136b2565b825467ffffffffffffffff928316600160c01b0277ffffffffffffffffffffffffffffffff000000000000000090911691831691909117178255600190910180544390921668010000000000000000027fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff909216919091179055565b604080516080810182526000808252602082018190529181018290526060810182905260008061390285614232565b8151602090920191909120969095509350505050565b60008060008060005488101561395a576040517f7d73e6fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600160009054906101000a90046001600160a01b03166001600160a01b031663eca067ad6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156139ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139d19190614a8b565b881115613a0a576040517f925f8bd300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517f86598a56000000000000000000000000000000000000000000000000000000008152600481018b9052602481018a905260448101889052606481018790526001600160a01b03909116906386598a56906084016080604051808303816000875af1158015613a83573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613aa79190614ecc565b60008c9055929650909450925090508615801590613ae357507f0000000000000000000000000000000000000000000000000000000000000000155b15613af557613af58985486000613ca5565b95509550955095915050565b805160009067ffffffffffffffff1615801590613b2b5750602082015167ffffffffffffffff1615155b8015613b475750612710826040015167ffffffffffffffff1611155b80156129d75750506020810151905167ffffffffffffffff9182169116111590565b805460009067ffffffffffffffff600160801b8204811691613b9491600160c01b9091041643614cbc565b111592915050565b604080516080810182526000808252602082018190529181018290526060810182905260408051606081018252600080825260208201819052918101829052600080613be787614232565b9092509050633b9aca0060006003613c026202000084614bff565b613c0c9190614bff565b60405190915084907f500000000000000000000000000000000000000000000000000000000000000090613c44908890602001614f02565b60408051601f1981840301815290829052613c63939291602001614f36565b604051602081830303815290604052805190602001208360004811613c89576000613c93565b613c934884614aea565b97509750975050505050509193909250565b327f000000000000000000000000000000000000000000000000000000000000000015613d4b576000606c6001600160a01b031663c6f7de0e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613d0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d319190614a8b565b9050613d3d4882614aea565b613d479084614ad7565b9250505b67ffffffffffffffff821115613d8d576040517f04d5501200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080514260208201526bffffffffffffffffffffffff19606084901b16918101919091526054810186905260748101859052609481018490527fffffffffffffffff00000000000000000000000000000000000000000000000060c084901b1660b482015260009060bc0160408051808303601f1901815290829052600154815160208301207f7a88b1070000000000000000000000000000000000000000000000000000000084526001600160a01b0386811660048601526024850191909152919350600092911690637a88b107906044016020604051808303816000875af1158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190614a8b565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b83604051613ed69190614f79565b60405180910390a250505050505050565b6000613ef282613b69565b15806129d75750505467ffffffffffffffff680100000000000000008204811691161090565b6000613f5383613f278461430a565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b9093149392505050565b60408051608081018252600080825260208201819052918101829052606081018290526000613f8d856028614ad7565b90507f0000000000000000000000000000000000000000000000000000000000000000811115614012576040517f4634691b000000000000000000000000000000000000000000000000000000008152600481018290527f0000000000000000000000000000000000000000000000000000000000000000602482015260440161093d565b60008061401e86614232565b909250905086156141315761404e8888600081811061403f5761403f614e01565b9050013560f81c60f81b614337565b6140a6578787600081811061406557614065614e01565b6040517f6b3333560000000000000000000000000000000000000000000000000000000081529201356001600160f81b03191660048301525060240161093d565b600160ff1b88886000816140bc576140bc614e01565b6001600160f81b0319920135929092161615801591506140dd575060218710155b156141315760006140f2602160018a8c614fac565b6140fb91614fd6565b60008181526008602052604090205490915060ff1661412f5760405162f20c5d60e01b81526004810182905260240161093d565b505b81888860405160200161414693929190614ff4565b60408051601f1981840301815291905280516020909101209890975095505050505050565b60008088881161417c576000614186565b6141868989614cbc565b905060008987116141985760006141a2565b6141a28a88614cbc565b90506127106141b18584614bff565b6141bb9190614aea565b6141c59089614ad7565b975060008682116141d75760006141e1565b6141e18783614cbc565b9050828111156141ee5750815b8089111561422357614200818a614cbc565b985086891115614223578589116142175788614219565b855b9350505050613842565b50949998505050505050505050565b6040805160808101825260008082526020820181905291810182905260608082018390529161425f6143ca565b905060008160000151826020015183604001518460600151886040516020016142df95949392919060c095861b7fffffffffffffffff000000000000000000000000000000000000000000000000908116825294861b8516600882015292851b8416601084015290841b8316601883015290921b16602082015260280190565b604051602081830303815290604052905060288151146143015761430161501c565b94909350915050565b60006129d7826000015183602001518460400151856060015186608001518760a001518860c001516137a8565b60006001600160f81b03198216158061435d57506001600160f81b03198216600160ff1b145b8061439157506001600160f81b031982167f8800000000000000000000000000000000000000000000000000000000000000145b806129d757506001600160f81b031982167f20000000000000000000000000000000000000000000000000000000000000001492915050565b604080516080810182526000808252602082018190529181018290526060810191909152604080516080810182526000808252602082018190529181018290526060810191909152600080600080614420613731565b93509350935093508167ffffffffffffffff16421115614451576144448242615032565b67ffffffffffffffff1685525b61445b8142614dd9565b67ffffffffffffffff9081166020870152841643111561448f5761447f8443615032565b67ffffffffffffffff1660408601525b6144998343614dd9565b67ffffffffffffffff1660608601525092949350505050565b6000602082840312156144c457600080fd5b5035919050565b6001600160a01b03811681146132d357600080fd5b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715614519576145196144e0565b60405290565b60405160e0810167ffffffffffffffff81118282101715614519576145196144e0565b604051601f8201601f1916810167ffffffffffffffff8111828210171561456b5761456b6144e0565b604052919050565b803567ffffffffffffffff8116811461458b57600080fd5b919050565b6000606082840312156145a257600080fd5b6040516060810181811067ffffffffffffffff821117156145c5576145c56144e0565b6040529050806145d483614573565b81526145e260208401614573565b60208201526145f360408401614573565b60408201525092915050565b600080600083850361010081121561461657600080fd5b8435614621816144cb565b93506080601f198201121561463557600080fd5b506020840191506146498560a08601614590565b90509250925092565b80151581146132d357600080fd5b6000806040838503121561467357600080fd5b823561467e816144cb565b9150602083013561468e81614652565b809150509250929050565b6000602082840312156146ab57600080fd5b8135612a39816144cb565b6000606082840312156146c857600080fd5b612a398383614590565b600080600080600060a086880312156146ea57600080fd5b85359450602086013593506040860135614703816144cb565b94979396509394606081013594506080013592915050565b60008083601f84011261472d57600080fd5b50813567ffffffffffffffff81111561474557600080fd5b60208301915083602082850101111561475d57600080fd5b9250929050565b6000610100828403121561477757600080fd5b50919050565b6000806000806000806000806101c0898b03121561479a57600080fd5b88359750602089013567ffffffffffffffff8111156147b857600080fd5b6147c48b828c0161471b565b9098509650506040890135945060608901356147df816144cb565b93506080890135925060a089013591506147fc8a60c08b01614764565b90509295985092959890939650565b60008060008060006080868803121561482357600080fd5b85359450602086013567ffffffffffffffff81111561484157600080fd5b61484d8882890161471b565b909550935050604086013591506060860135614868816144cb565b809150509295509295909350565b600080600080600080600060c0888a03121561489157600080fd5b87359650602088013567ffffffffffffffff8111156148af57600080fd5b6148bb8a828b0161471b565b9097509550506040880135935060608801356148d6816144cb565b969995985093969295946080840135945060a09093013592915050565b6000806000806000806101a0878903121561490d57600080fd5b86359550602087013594506040870135614926816144cb565b935060608701359250608087013591506149438860a08901614764565b90509295509295509295565b60006080828403121561496157600080fd5b6040516080810181811067ffffffffffffffff82111715614984576149846144e0565b8060405250823581526020830135602082015260408301356040820152606083013560608201528091505092915050565b600080602083850312156149c857600080fd5b823567ffffffffffffffff8111156149df57600080fd5b6149eb8582860161471b565b90969095509350505050565b600060208284031215614a0957600080fd5b612a3982614573565b803560ff8116811461458b57600080fd5b60008060008060008060e08789031215614a3c57600080fd5b86359550614a4c60208801614a12565b94506080870188811115614a5f57600080fd5b60408801945035925060a0870135614a76816144cb565b8092505060c087013590509295509295509295565b600060208284031215614a9d57600080fd5b5051919050565b600060208284031215614ab657600080fd5b8151612a39816144cb565b634e487b7160e01b600052601160045260246000fd5b808201808211156129d7576129d7614ac1565b600082614b0757634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115614b47578160001904821115614b2d57614b2d614ac1565b80851615614b3a57918102915b93841c9390800290614b11565b509250929050565b600082614b5e575060016129d7565b81614b6b575060006129d7565b8160018114614b815760028114614b8b57614ba7565b60019150506129d7565b60ff841115614b9c57614b9c614ac1565b50506001821b6129d7565b5060208310610133831016604e8410600b8410161715614bca575081810a6129d7565b614bd48383614b0c565b8060001904821115614be857614be8614ac1565b029392505050565b6000612a3960ff841683614b4f565b80820281158282048414176129d7576129d7614ac1565b60006020808385031215614c2957600080fd5b825167ffffffffffffffff80821115614c4157600080fd5b818501915085601f830112614c5557600080fd5b815181811115614c6757614c676144e0565b8060051b9150614c78848301614542565b8181529183018401918481019088841115614c9257600080fd5b938501935b83851015614cb057845182529385019390850190614c97565b98975050505050505050565b818103818111156129d7576129d7614ac1565b600060208284031215614ce157600080fd5b8151612a3981614652565b6000818303610100811215614d0057600080fd5b614d086144f6565b8335815260e0601f1983011215614d1e57600080fd5b614d2661451f565b9150614d3460208501614a12565b82526040840135614d44816144cb565b6020830152614d5560608501614573565b6040830152614d6660808501614573565b606083015260a0840135608083015260c084013560a083015260e084013560c0830152816020820152809250505092915050565b8183823760009101908152919050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b67ffffffffffffffff818116838216019080821115614dfa57614dfa614ac1565b5092915050565b634e487b7160e01b600052603260045260246000fd5b600060e08201905085825284602083015267ffffffffffffffff8085511660408401528060208601511660608401528060408601511660808401528060608601511660a08401525060048310614e7d57634e487b7160e01b600052602160045260246000fd5b8260c083015295945050505050565b60005b83811015614ea7578181015183820152602001614e8f565b50506000910152565b60008251614ec2818460208701614e8c565b9190910192915050565b60008060008060808587031215614ee257600080fd5b505082516020840151604085015160609095015191969095509092509050565b60008183825b6003811015614f27578151835260209283019290910190600101614f08565b50505060608201905092915050565b60008451614f48818460208901614e8c565b6001600160f81b031985169083019081528351614f6c816001840160208801614e8c565b0160010195945050505050565b6020815260008251806020840152614f98816040850160208701614e8c565b601f01601f19169190910160400192915050565b60008085851115614fbc57600080fd5b83861115614fc957600080fd5b5050820193919092039150565b803560208310156129d757600019602084900360031b1b1692915050565b60008451615006818460208901614e8c565b8201838582376000930192835250909392505050565b634e487b7160e01b600052600160045260246000fd5b67ffffffffffffffff828116828216039080821115614dfa57614dfa614ac156fea2646970667358221220c28e6e821fbfe3ca801cc0632161efc2e8d1229b98ec517d709446368191b1cf64736f6c63430008110033",
|
1630
|
+
"linkReferences": {},
|
1631
|
+
"deployedLinkReferences": {}
|
1632
|
+
}
|