@zero-tech/zkevm-contracts
Version:
Core contracts for the Polygon Hermez zkEVM
1,968 lines • 159 kB
JSON
{
"_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": "0x60e06040523480156200001157600080fd5b506040516200713a3803806200713a833981016040819052620000349162000141565b6001600160a01b0380841660805280831660c052811660a0528282826200005a62000066565b50505050505062000195565b600054610100900460ff1615620000d35760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116101562000126576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6001600160a01b03811681146200013e57600080fd5b50565b6000806000606084860312156200015757600080fd5b8351620001648162000128565b6020850151909350620001778162000128565b60408501519092506200018a8162000128565b809150509250925092565b60805160a05160c051616f3d620001fd60003960008181610ba60152818161279f01526144fc0152600081816109280152818161364901526148d9015260008181610af90152818161137f015281816115a60152818161248401526147ad0152616f3d6000f3fe60806040523480156200001157600080fd5b50600436106200039d5760003560e01c8063841b24d711620001ed578063c1acbc341162000119578063dbc1697611620000af578063e46761c41162000086578063e46761c41462000ba0578063f34eb8eb1462000bc8578063f4e926751462000bdf578063f9c4c2ae1462000bf057600080fd5b8063dbc169761462000b5e578063dde0ff771462000b68578063e0bfd3d21462000b8957600080fd5b8063d02103ca11620000f0578063d02103ca1462000af3578063d5073f6f1462000b1b578063d547741f1462000b32578063d939b3151462000b4957600080fd5b8063c1acbc341462000a8a578063c4c928c21462000ab3578063ceee281d1462000aca57600080fd5b80639c9f3dfe116200018f578063a2967d991162000166578063a2967d991462000918578063a3c573eb1462000922578063afd23cbe1462000970578063b99d0ad714620009a757600080fd5b80639c9f3dfe14620008e1578063a066215c14620008f8578063a217fddf146200090f57600080fd5b806391d1485411620001c457806391d14854146200087757806399f5634e14620008c05780639a908e7314620008ca57600080fd5b8063841b24d7146200081857806387c20c0114620008495780638bd4f071146200086057600080fd5b80632528016911620002cd57806355a71ee0116200026f5780637222020f11620002465780637222020f146200079b578063727885e914620007b25780637975fcfe14620007c95780637fb6e76a14620007ef57600080fd5b806355a71ee0146200063d57806360469169146200068257806365c0504d146200068c57600080fd5b806336568abe11620002a457806336568abe1462000606578063394218e9146200061d578063477fa270146200063457600080fd5b806325280169146200051e5780632f2ff15d14620005da57806330c27dde14620005f157600080fd5b80631489ed1011620003435780631796a1ae116200031a5780631796a1ae14620004a15780631816b7e514620004c85780632072f6c514620004df578063248a9ca314620004e957600080fd5b80631489ed10146200046557806315064c96146200047c5780631608859c146200048a57600080fd5b80630a0d9fbe11620003785780630a0d9fbe146200041657806311f6b287146200043757806312b86e19146200044e57600080fd5b80630645af0914620003a2578063066ec01214620003bb578063080b311114620003ee575b600080fd5b620003b9620003b336600462005868565b62000d5b565b005b608454620003d09067ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020015b60405180910390f35b62000405620003ff36600462005958565b62001247565b6040519015158152602001620003e5565b608554620003d09068010000000000000000900467ffffffffffffffff1681565b620003d06200044836600462005990565b62001271565b620003b96200045f366004620059c1565b62001291565b620003b96200047636600462005a58565b620014b8565b606f54620004059060ff1681565b620003b96200049b36600462005958565b6200169e565b607e54620004b29063ffffffff1681565b60405163ffffffff9091168152602001620003e5565b620003b9620004d936600462005ae2565b6200177b565b620003b962001878565b6200050f620004fa36600462005b0f565b60009081526034602052604090206001015490565b604051908152602001620003e5565b620005a56200052f36600462005958565b60408051606080820183526000808352602080840182905292840181905263ffffffff9590951685526081825282852067ffffffffffffffff9485168652600301825293829020825194850183528054855260010154808416918501919091526801000000000000000090049091169082015290565b604080518251815260208084015167ffffffffffffffff908116918301919091529282015190921690820152606001620003e5565b620003b9620005eb36600462005b29565b6200198d565b608754620003d09067ffffffffffffffff1681565b620003b96200061736600462005b29565b620019b6565b620003b96200062e36600462005b5c565b62001a16565b6086546200050f565b6200050f6200064e36600462005958565b63ffffffff8216600090815260816020908152604080832067ffffffffffffffff8516845260020190915290205492915050565b6200050f62001b31565b620007436200069d36600462005990565b607f6020526000908152604090208054600182015460029092015473ffffffffffffffffffffffffffffffffffffffff918216929182169167ffffffffffffffff740100000000000000000000000000000000000000008204169160ff7c010000000000000000000000000000000000000000000000000000000083048116927d0100000000000000000000000000000000000000000000000000000000009004169086565b6040805173ffffffffffffffffffffffffffffffffffffffff978816815296909516602087015267ffffffffffffffff9093169385019390935260ff166060840152901515608083015260a082015260c001620003e5565b620003b9620007ac36600462005990565b62001b49565b620003b9620007c336600462005c5c565b62001cc6565b620007e0620007da36600462005d2a565b6200224b565b604051620003e5919062005e02565b620004b26200080036600462005b5c565b60836020526000908152604090205463ffffffff1681565b608454620003d0907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1681565b620003b96200085a36600462005a58565b6200227e565b620003b962000871366004620059c1565b62002684565b620004056200088836600462005b29565b600091825260346020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b6200050f62002757565b620003d0620008db36600462005e17565b6200286b565b620003b9620008f236600462005b5c565b62002ac1565b620003b96200090936600462005b5c565b62002baa565b6200050f600081565b6200050f62002c94565b6200094a7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001620003e5565b6085546200099390700100000000000000000000000000000000900461ffff1681565b60405161ffff9091168152602001620003e5565b62000a43620009b836600462005958565b604080516080808201835260008083526020808401829052838501829052606093840182905263ffffffff9690961681526081865283812067ffffffffffffffff958616825260040186528390208351918201845280548086168352680100000000000000009004909416948101949094526001830154918401919091526002909101549082015290565b604051620003e59190600060808201905067ffffffffffffffff808451168352806020850151166020840152506040830151604