UNPKG

@zero-tech/zkevm-contracts

Version:
1,968 lines 157 kB
{ "_format": "hh-sol-artifact-1", "contractName": "PolygonRollupManagerMockInternalTest", "sourceName": "contracts/v2/mocks/PolygonRollupManagerMockInternalTest.sol", "abi": [ { "inputs": [ { "internalType": "contract IPolygonZkEVMGlobalExitRootV2", "name": "_globalExitRootManager", "type": "address" }, { "internalType": "contract IERC20Upgradeable", "name": "_pol", "type": "address" }, { "internalType": "contract IPolygonZkEVMBridge", "name": "_bridgeAddress", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AccessControlOnlyCanRenounceRolesForSelf", "type": "error" }, { "inputs": [], "name": "AddressDoNotHaveRequiredRole", "type": "error" }, { "inputs": [], "name": "AllzkEVMSequencedBatchesMustBeVerified", "type": "error" }, { "inputs": [], "name": "BatchFeeOutOfRange", "type": "error" }, { "inputs": [], "name": "ChainIDAlreadyExist", "type": "error" }, { "inputs": [], "name": "ExceedMaxVerifyBatches", "type": "error" }, { "inputs": [], "name": "FinalNumBatchBelowLastVerifiedBatch", "type": "error" }, { "inputs": [], "name": "FinalNumBatchDoesNotMatchPendingState", "type": "error" }, { "inputs": [], "name": "FinalPendingStateNumInvalid", "type": "error" }, { "inputs": [], "name": "HaltTimeoutNotExpired", "type": "error" }, { "inputs": [], "name": "InitBatchMustMatchCurrentForkID", "type": "error" }, { "inputs": [], "name": "InitNumBatchAboveLastVerifiedBatch", "type": "error" }, { "inputs": [], "name": "InitNumBatchDoesNotMatchPendingState", "type": "error" }, { "inputs": [], "name": "InvalidProof", "type": "error" }, { "inputs": [], "name": "InvalidRangeBatchTimeTarget", "type": "error" }, { "inputs": [], "name": "InvalidRangeMultiplierBatchFee", "type": "error" }, { "inputs": [], "name": "MustSequenceSomeBatch", "type": "error" }, { "inputs": [], "name": "NewAccInputHashDoesNotExist", "type": "error" }, { "inputs": [], "name": "NewPendingStateTimeoutMustBeLower", "type": "error" }, { "inputs": [], "name": "NewStateRootNotInsidePrime", "type": "error" }, { "inputs": [], "name": "NewTrustedAggregatorTimeoutMustBeLower", "type": "error" }, { "inputs": [], "name": "OldAccInputHashDoesNotExist", "type": "error" }, { "inputs": [], "name": "OldStateRootDoesNotExist", "type": "error" }, { "inputs": [], "name": "OnlyEmergencyState", "type": "error" }, { "inputs": [], "name": "OnlyNotEmergencyState", "type": "error" }, { "inputs": [], "name": "PendingStateDoesNotExist", "type": "error" }, { "inputs": [], "name": "PendingStateInvalid", "type": "error" }, { "inputs": [], "name": "PendingStateNotConsolidable", "type": "error" }, { "inputs": [], "name": "RollupAddressAlreadyExist", "type": "error" }, { "inputs": [], "name": "RollupMustExist", "type": "error" }, { "inputs": [], "name": "RollupTypeDoesNotExist", "type": "error" }, { "inputs": [], "name": "RollupTypeObsolete", "type": "error" }, { "inputs": [], "name": "SenderMustBeRollup", "type": "error" }, { "inputs": [], "name": "StoredRootMustBeDifferentThanNewRoot", "type": "error" }, { "inputs": [], "name": "TrustedAggregatorTimeoutNotExpired", "type": "error" }, { "inputs": [], "name": "UpdateNotCompatible", "type": "error" }, { "inputs": [], "name": "UpdateToSameRollupTypeID", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "forkID", "type": "uint64" }, { "indexed": false, "internalType": "address", "name": "rollupAddress", "type": "address" }, { "indexed": false, "internalType": "uint64", "name": "chainID", "type": "uint64" }, { "indexed": false, "internalType": "uint8", "name": "rollupCompatibilityID", "type": "uint8" }, { "indexed": false, "internalType": "uint64", "name": "lastVerifiedBatchBeforeUpgrade", "type": "uint64" } ], "name": "AddExistingRollup", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupTypeID", "type": "uint32" }, { "indexed": false, "internalType": "address", "name": "consensusImplementation", "type": "address" }, { "indexed": false, "internalType": "address", "name": "verifier", "type": "address" }, { "indexed": false, "internalType": "uint64", "name": "forkID", "type": "uint64" }, { "indexed": false, "internalType": "uint8", "name": "rollupCompatibilityID", "type": "uint8" }, { "indexed": false, "internalType": "bytes32", "name": "genesis", "type": "bytes32" }, { "indexed": false, "internalType": "string", "name": "description", "type": "string" } ], "name": "AddNewRollupType", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "numBatch", "type": "uint64" }, { "indexed": false, "internalType": "bytes32", "name": "stateRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "exitRoot", "type": "bytes32" }, { "indexed": false, "internalType": "uint64", "name": "pendingStateNum", "type": "uint64" } ], "name": "ConsolidatePendingState", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint32", "name": "rollupTypeID", "type": "uint32" }, { "indexed": false, "internalType": "address", "name": "rollupAddress", "type": "address" }, { "indexed": false, "internalType": "uint64", "name": "chainID", "type": "uint64" }, { "indexed": false, "internalType": "address", "name": "gasTokenAddress", "type": "address" } ], "name": "CreateNewRollup", "type": "event" }, { "anonymous": false, "inputs": [], "name": "EmergencyStateActivated", "type": "event" }, { "anonymous": false, "inputs": [], "name": "EmergencyStateDeactivated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupTypeID", "type": "uint32" } ], "name": "ObsoleteRollupType", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "lastBatchSequenced", "type": "uint64" } ], "name": "OnSequenceBatches", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "numBatch", "type": "uint64" }, { "indexed": false, "internalType": "bytes32", "name": "stateRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "exitRoot", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "aggregator", "type": "address" } ], "name": "OverridePendingState", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "storedStateRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "provedStateRoot", "type": "bytes32" } ], "name": "ProveNonDeterministicPendingState", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" } ], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "newBatchFee", "type": "uint256" } ], "name": "SetBatchFee", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint16", "name": "newMultiplierBatchFee", "type": "uint16" } ], "name": "SetMultiplierBatchFee", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint64", "name": "newPendingStateTimeout", "type": "uint64" } ], "name": "SetPendingStateTimeout", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "newTrustedAggregator", "type": "address" } ], "name": "SetTrustedAggregator", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint64", "name": "newTrustedAggregatorTimeout", "type": "uint64" } ], "name": "SetTrustedAggregatorTimeout", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint64", "name": "newVerifyBatchTimeTarget", "type": "uint64" } ], "name": "SetVerifyBatchTimeTarget", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint32", "name": "newRollupTypeID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "lastVerifiedBatchBeforeUpgrade", "type": "uint64" } ], "name": "UpdateRollup", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "numBatch", "type": "uint64" }, { "indexed": false, "internalType": "bytes32", "name": "stateRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "exitRoot", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "aggregator", "type": "address" } ], "name": "VerifyBatches", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "indexed": false, "internalType": "uint64", "name": "numBatch", "type": "uint64" }, { "indexed": false, "internalType": "bytes32", "name": "stateRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "exitRoot", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "aggregator", "type": "address" } ], "name": "VerifyBatchesTrustedAggregator", "type": "event" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "activateEmergencyState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract IPolygonRollupBase", "name": "rollupAddress", "type": "address" }, { "internalType": "contract IVerifierRollup", "name": "verifier", "type": "address" }, { "internalType": "uint64", "name": "forkID", "type": "uint64" }, { "internalType": "uint64", "name": "chainID", "type": "uint64" }, { "internalType": "bytes32", "name": "genesis", "type": "bytes32" }, { "internalType": "uint8", "name": "rollupCompatibilityID", "type": "uint8" } ], "name": "addExistingRollup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "consensusImplementation", "type": "address" }, { "internalType": "contract IVerifierRollup", "name": "verifier", "type": "address" }, { "internalType": "uint64", "name": "forkID", "type": "uint64" }, { "internalType": "uint8", "name": "rollupCompatibilityID", "type": "uint8" }, { "internalType": "bytes32", "name": "genesis", "type": "bytes32" }, { "internalType": "string", "name": "description", "type": "string" } ], "name": "addNewRollupType", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "bridgeAddress", "outputs": [ { "internalType": "contract IPolygonZkEVMBridge", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "calculateRewardPerBatch", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "chainID", "type": "uint64" } ], "name": "chainIDToRollupID", "outputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "pendingStateNum", "type": "uint64" } ], "name": "consolidatePendingState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupTypeID", "type": "uint32" }, { "internalType": "uint64", "name": "chainID", "type": "uint64" }, { "internalType": "address", "name": "admin", "type": "address" }, { "internalType": "address", "name": "sequencer", "type": "address" }, { "internalType": "address", "name": "gasTokenAddress", "type": "address" }, { "internalType": "string", "name": "sequencerURL", "type": "string" }, { "internalType": "string", "name": "networkName", "type": "string" } ], "name": "createNewRollup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "deactivateEmergencyState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getBatchFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getForcedBatchFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "initNumBatch", "type": "uint64" }, { "internalType": "uint64", "name": "finalNewBatch", "type": "uint64" }, { "internalType": "bytes32", "name": "newLocalExitRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "oldStateRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newStateRoot", "type": "bytes32" } ], "name": "getInputSnarkBytes", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" } ], "name": "getLastVerifiedBatch", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" } ], "name": "getRoleAdmin", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "batchNum", "type": "uint64" } ], "name": "getRollupBatchNumToStateRoot", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRollupExitRoot", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "batchNum", "type": "uint64" } ], "name": "getRollupPendingStateTransitions", "outputs": [ { "components": [ { "internalType": "uint64", "name": "timestamp", "type": "uint64" }, { "internalType": "uint64", "name": "lastVerifiedBatch", "type": "uint64" }, { "internalType": "bytes32", "name": "exitRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "stateRoot", "type": "bytes32" } ], "internalType": "struct LegacyZKEVMStateVariables.PendingState", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "batchNum", "type": "uint64" } ], "name": "getRollupSequencedBatches", "outputs": [ { "components": [ { "internalType": "bytes32", "name": "accInputHash", "type": "bytes32" }, { "internalType": "uint64", "name": "sequencedTimestamp", "type": "uint64" }, { "internalType": "uint64", "name": "previousLastBatchSequenced", "type": "uint64" } ], "internalType": "struct LegacyZKEVMStateVariables.SequencedBatchData", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "globalExitRootManager", "outputs": [ { "internalType": "contract IPolygonZkEVMGlobalExitRootV2", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "hasRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "trustedAggregator", "type": "address" }, { "internalType": "uint64", "name": "_pendingStateTimeout", "type": "uint64" }, { "internalType": "uint64", "name": "_trustedAggregatorTimeout", "type": "uint64" }, { "internalType": "address", "name": "admin", "type": "address" }, { "internalType": "address", "name": "timelock", "type": "address" }, { "internalType": "address", "name": "emergencyCouncil", "type": "address" }, { "internalType": "contract PolygonZkEVMExistentEtrog", "name": "polygonZkEVM", "type": "address" }, { "internalType": "contract IVerifierRollup", "name": "zkEVMVerifier", "type": "address" }, { "internalType": "uint64", "name": "zkEVMForkID", "type": "uint64" }, { "internalType": "uint64", "name": "zkEVMChainID", "type": "uint64" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "isEmergencyState", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "pendingStateNum", "type": "uint64" } ], "name": "isPendingStateConsolidable", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lastAggregationTimestamp", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lastDeactivatedEmergencyStateTimestamp", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "multiplierBatchFee", "outputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupTypeID", "type": "uint32" } ], "name": "obsoleteRollupType", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "newSequencedBatches", "type": "uint64" }, { "internalType": "bytes32", "name": "newAccInputHash", "type": "bytes32" } ], "name": "onSequenceBatches", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "initPendingStateNum", "type": "uint64" }, { "internalType": "uint64", "name": "finalPendingStateNum", "type": "uint64" }, { "internalType": "uint64", "name": "initNumBatch", "type": "uint64" }, { "internalType": "uint64", "name": "finalNewBatch", "type": "uint64" }, { "internalType": "bytes32", "name": "newLocalExitRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newStateRoot", "type": "bytes32" }, { "internalType": "bytes32[24]", "name": "proof", "type": "bytes32[24]" } ], "name": "overridePendingState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "pendingStateTimeout", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pol", "outputs": [ { "internalType": "contract IERC20Upgradeable", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "initPendingStateNum", "type": "uint64" }, { "internalType": "uint64", "name": "finalPendingStateNum", "type": "uint64" }, { "internalType": "uint64", "name": "initNumBatch", "type": "uint64" }, { "internalType": "uint64", "name": "finalNewBatch", "type": "uint64" }, { "internalType": "bytes32", "name": "newLocalExitRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newStateRoot", "type": "bytes32" }, { "internalType": "bytes32[24]", "name": "proof", "type": "bytes32[24]" } ], "name": "proveNonDeterministicPendingState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "rollupAddress", "type": "address" } ], "name": "rollupAddressToID", "outputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rollupCount", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" } ], "name": "rollupIDToRollupData", "outputs": [ { "internalType": "contract IPolygonRollupBase", "name": "rollupContract", "type": "address" }, { "internalType": "uint64", "name": "chainID", "type": "uint64" }, { "internalType": "contract IVerifierRollup", "name": "verifier", "type": "address" }, { "internalType": "uint64", "name": "forkID", "type": "uint64" }, { "internalType": "bytes32", "name": "lastLocalExitRoot", "type": "bytes32" }, { "internalType": "uint64", "name": "lastBatchSequenced", "type": "uint64" }, { "internalType": "uint64", "name": "lastVerifiedBatch", "type": "uint64" }, { "internalType": "uint64", "name": "lastPendingState", "type": "uint64" }, { "internalType": "uint64", "name": "lastPendingStateConsolidated", "type": "uint64" }, { "internalType": "uint64", "name": "lastVerifiedBatchBeforeUpgrade", "type": "uint64" }, { "internalType": "uint64", "name": "rollupTypeID", "type": "uint64" }, { "internalType": "uint8", "name": "rollupCompatibilityID", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rollupTypeCount", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupTypeID", "type": "uint32" } ], "name": "rollupTypeMap", "outputs": [ { "internalType": "address", "name": "consensusImplementation", "type": "address" }, { "internalType": "contract IVerifierRollup", "name": "verifier", "type": "address" }, { "internalType": "uint64", "name": "forkID", "type": "uint64" }, { "internalType": "uint8", "name": "rollupCompatibilityID", "type": "uint8" }, { "internalType": "bool", "name": "obsolete", "type": "bool" }, { "internalType": "bytes32", "name": "genesis", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newBatchFee", "type": "uint256" } ], "name": "setBatchFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "newMultiplierBatchFee", "type": "uint16" } ], "name": "setMultiplierBatchFee", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "newPendingStateTimeout", "type": "uint64" } ], "name": "setPendingStateTimeout", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "newTrustedAggregatorTimeout", "type": "uint64" } ], "name": "setTrustedAggregatorTimeout", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint64", "name": "newVerifyBatchTimeTarget", "type": "uint64" } ], "name": "setVerifyBatchTimeTarget", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "totalSequencedBatches", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalVerifiedBatches", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "trustedAggregatorTimeout", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract ITransparentUpgradeableProxy", "name": "rollupContract", "type": "address" }, { "internalType": "uint32", "name": "newRollupTypeID", "type": "uint32" }, { "internalType": "bytes", "name": "upgradeData", "type": "bytes" } ], "name": "updateRollup", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "verifyBatchTimeTarget", "outputs": [ { "internalType": "uint64", "name": "", "type": "uint64" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "pendingStateNum", "type": "uint64" }, { "internalType": "uint64", "name": "initNumBatch", "type": "uint64" }, { "internalType": "uint64", "name": "finalNewBatch", "type": "uint64" }, { "internalType": "bytes32", "name": "newLocalExitRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newStateRoot", "type": "bytes32" }, { "internalType": "address", "name": "beneficiary", "type": "address" }, { "internalType": "bytes32[24]", "name": "proof", "type": "bytes32[24]" } ], "name": "verifyBatches", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "rollupID", "type": "uint32" }, { "internalType": "uint64", "name": "pendingStateNum", "type": "uint64" }, { "internalType": "uint64", "name": "initNumBatch", "type": "uint64" }, { "internalType": "uint64", "name": "finalNewBatch", "type": "uint64" }, { "internalType": "bytes32", "name": "newLocalExitRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "newStateRoot", "type": "bytes32" }, { "internalType": "address", "name": "beneficiary", "type": "address" }, { "internalType": "bytes32[24]", "name": "proof", "type": "bytes32[24]" } ], "name": "verifyBatchesTrustedAggregator", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x60e060405234801562000010575f80fd5b5060405162006fae38038062006fae83398101604081905262000033916200013c565b6001600160a01b0380841660805280831660c052811660a0528282826200005962000065565b5050505050506200018d565b5f54610100900460ff1615620000d15760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116101562000122575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6001600160a01b038116811462000139575f80fd5b50565b5f805f606084860312156200014f575f80fd5b83516200015c8162000124565b60208501519093506200016f8162000124565b6040850151909250620001828162000124565b809150509250925092565b60805160a05160c051616dbe620001f05f395f8181610b8a0152818161273d015261444d01525f818161090f015281816135c5015261481e01525f8181610add01528181611358015281816115780152818161242b01526146f80152616dbe5ff3fe608060405234801562000010575f80fd5b50600436106200038c575f3560e01c8063841b24d711620001e3578063c1acbc341162000113578063dbc1697611620000ab578063e46761c41162000083578063e46761c41462000b84578063f34eb8eb1462000bac578063f4e926751462000bc3578063f9c4c2ae1462000bd4575f80fd5b8063dbc169761462000b42578063dde0ff771462000b4c578063e0bfd3d21462000b6d575f80fd5b8063d02103ca11620000eb578063d02103ca1462000ad7578063d5073f6f1462000aff578063d547741f1462000b16578063d939b3151462000b2d575f80fd5b8063c1acbc341462000a6f578063c4c928c21462000a98578063ceee281d1462000aaf575f80fd5b80639c9f3dfe1162000187578063a2967d99116200015f578063a2967d9914620008ff578063a3c573eb1462000909578063afd23cbe1462000957578063b99d0ad7146200098e575f80fd5b80639c9f3dfe14620008c9578063a066215c14620008e0578063a217fddf14620008f7575f80fd5b806391d1485411620001bb57806391d14854146200086057806399f5634e14620008a85780639a908e7314620008b2575f80fd5b8063841b24d7146200080157806387c20c0114620008325780638bd4f0711462000849575f80fd5b80632528016911620002bf57806355a71ee011620002635780637222020f116200023b5780637222020f1462000785578063727885e9146200079c5780637975fcfe14620007b35780637fb6e76a14620007d9575f80fd5b806355a71ee0146200062957806360469169146200066d57806365c0504d1462000677575f80fd5b806336568abe116200029757806336568abe14620005f2578063394218e91462000609578063477fa2701462000620575f80fd5b806325280169146200050b5780632f2ff15d14620005c657806330c27dde14620005dd575f80fd5b80631489ed1011620003335780631796a1ae116200030b5780631796a1ae146200048f5780631816b7e514620004b65780632072f6c514620004cd578063248a9ca314620004d7575f80fd5b80631489ed10146200045357806315064c96146200046a5780631608859c1462000478575f80fd5b80630a0d9fbe11620003675780630a0d9fbe146200040457806311f6b287146200042557806312b86e19146200043c575f80fd5b80630645af091462000390578063066ec01214620003a9578063080b311114620003dc575b5f80fd5b620003a7620003a136600462005780565b62000d3e565b005b608454620003be9067ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020015b60405180910390f35b620003f3620003ed36600462005869565b62001224565b6040519015158152602001620003d3565b608554620003be9068010000000000000000900467ffffffffffffffff1681565b620003be620004363660046200589f565b6200124d565b620003a76200044d366004620058cd565b6200126c565b620003a7620004643660046200595f565b6200148c565b606f54620003f39060ff1681565b620003a76200048936600462005869565b6200166b565b607e54620004a09063ffffffff1681565b60405163ffffffff9091168152602001620003d3565b620003a7620004c7366004620059e4565b62001747565b620003a762001844565b620004fc620004e836600462005a0e565b5f9081526034602052604090206001015490565b604051908152602001620003d3565b620005916200051c36600462005869565b60408051606080820183525f808352602080840182905292840181905263ffffffff9590951685526081825282852067ffffffffffffffff9485168652600301825293829020825194850183528054855260010154808416918501919091526801000000000000000090049091169082015290565b604080518251815260208084015167ffffffffffffffff908116918301919091529282015190921690820152606001620003d3565b620003a7620005d736600462005a26565b62001958565b608754620003be9067ffffffffffffffff1681565b620003a76200060336600462005a26565b62001980565b620003a76200061a36600462005a57565b620019e0565b608654620004fc565b620004fc6200063a36600462005869565b63ffffffff82165f90815260816020908152604080832067ffffffffffffffff8516845260020190915290205492915050565b620004fc62001afb565b6200072d620006883660046200589f565b607f6020525f908152604090208054600182015460029092015473ffffffffffffffffffffffffffffffffffffffff918216929182169167ffffffffffffffff740100000000000000000000000000000000000000008204169160ff7c010000000000000000000000000000000000000000000000000000000083048116927d0100000000000000000000000000000000000000000000000000000000009004169086565b6040805173ffffffffffffffffffffffffffffffffffffffff978816815296909516602087015267ffffffffffffffff9093169385019390935260ff166060840152901515608083015260a082015260c001620003d3565b620003a7620007963660046200589f565b62001b12565b620003a7620007ad36600462005b4f565b62001c8d565b620007ca620007c436600462005c16565b620021f6565b604051620003d3919062005ce7565b620004a0620007ea36600462005a57565b60836020525f908152604090205463ffffffff1681565b608454620003be907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1681565b620003a7620008433660046200595f565b62002228565b620003a76200085a366004620058cd565b62002625565b620003f36200087136600462005a26565b5f91825260346020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b620004fc620026f6565b620003be620008c336600462005cfb565b62002804565b620003a7620008da36600462005a57565b62002a54565b620003a7620008f136600462005a57565b62002b3d565b620004fc5f81565b620004fc62002c27565b620009317f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001620003d3565b6085546200097a90700100000000000000000000000000000000900461ffff1681565b60405161ffff9091168152602001620003d3565b62000a296200099f36600462005869565b60408051608080820183525f8083526020808401829052838501829052606093840182905263ffffffff9690961681526081865283812067ffffffffffffffff958616825260040186528390208351918201845280548086168352680100000000000000009004909416948101949094526001830154918401919091526002909101549082015290565b604051620003d391905f60808201905067ffffffffffffffff80845116835280602085015116602084015250604083015160408301526060830151606083015292915050565b608454620003be907001000000000000000000000