@zero-tech/zkevm-contracts
Version:
Core contracts for the Polygon Hermez zkEVM
180 lines (179 loc) • 8.06 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "PolygonZkEVMGlobalExitRootMock",
"sourceName": "contracts/mocks/PolygonZkEVMGlobalExitRootMock.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "_rollupAddress",
"type": "address"
},
{
"internalType": "address",
"name": "_bridgeAddress",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "OnlyAllowedContracts",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "mainnetExitRoot",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "bytes32",
"name": "rollupExitRoot",
"type": "bytes32"
}
],
"name": "UpdateGlobalExitRoot",
"type": "event"
},
{
"inputs": [],
"name": "bridgeAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getLastGlobalExitRoot",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"name": "globalExitRootMap",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "lastMainnetExitRoot",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "lastRollupExitRoot",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "rollupAddress",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "globalExitRoot",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "timestamp",
"type": "uint256"
}
],
"name": "setGlobalExitRoot",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "timestamp",
"type": "uint256"
}
],
"name": "setLastGlobalExitRoot",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "newRoot",
"type": "bytes32"
}
],
"name": "updateExitRoot",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60c060405234801561001057600080fd5b5060405161049538038061049583398101604081905261002f91610062565b6001600160a01b0391821660a05216608052610095565b80516001600160a01b038116811461005d57600080fd5b919050565b6000806040838503121561007557600080fd5b61007e83610046565b915061008c60208401610046565b90509250929050565b60805160a0516103cd6100c860003960008181610142015261023701526000818161018e01526101ee01526103cd6000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c806333d6247d116100765780635bcef6731161005b5780635bcef6731461011d5780635ec6a8df1461013d578063a3c573eb1461018957600080fd5b806333d6247d146101025780633ed691ef1461011557600080fd5b806301fd9044146100a8578063051a9e28146100c4578063257b3632146100d9578063319cf735146100f9575b600080fd5b6100b160005481565b6040519081526020015b60405180910390f35b6100d76100d236600461035c565b6101b0565b005b6100b16100e736600461035c565b60026020526000908152604090205481565b6100b160015481565b6100d761011036600461035c565b6101d1565b6100b1610320565b6100d761012b366004610375565b60009182526002602052604090912055565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bb565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b80600260006101bd610320565b815260208101919091526040016000205550565b60005460015473ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610220575060018290558161029c565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016330361026a57600083905582915061029c565b6040517fb49365dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080516020808201849052818301859052825180830384018152606090920190925280519101206000906000818152600260205260408120549192500361031a5760008181526002602052604080822042905551849184917f61014378f82a0d809aefaf87a8ac9505b89c321808287a6e7810f29304c1fce39190a35b50505050565b6000610357600154600054604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b905090565b60006020828403121561036e57600080fd5b5035919050565b6000806040838503121561038857600080fd5b5050803592602090910135915056fea2646970667358221220eeb4ec189dc407e366db39253f2dd748a5e379bc3232254e15b86d12d0001bc064736f6c63430008140033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a35760003560e01c806333d6247d116100765780635bcef6731161005b5780635bcef6731461011d5780635ec6a8df1461013d578063a3c573eb1461018957600080fd5b806333d6247d146101025780633ed691ef1461011557600080fd5b806301fd9044146100a8578063051a9e28146100c4578063257b3632146100d9578063319cf735146100f9575b600080fd5b6100b160005481565b6040519081526020015b60405180910390f35b6100d76100d236600461035c565b6101b0565b005b6100b16100e736600461035c565b60026020526000908152604090205481565b6100b160015481565b6100d761011036600461035c565b6101d1565b6100b1610320565b6100d761012b366004610375565b60009182526002602052604090912055565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bb565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b80600260006101bd610320565b815260208101919091526040016000205550565b60005460015473ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000163303610220575060018290558161029c565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016330361026a57600083905582915061029c565b6040517fb49365dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080516020808201849052818301859052825180830384018152606090920190925280519101206000906000818152600260205260408120549192500361031a5760008181526002602052604080822042905551849184917f61014378f82a0d809aefaf87a8ac9505b89c321808287a6e7810f29304c1fce39190a35b50505050565b6000610357600154600054604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b905090565b60006020828403121561036e57600080fd5b5035919050565b6000806040838503121561038857600080fd5b5050803592602090910135915056fea2646970667358221220eeb4ec189dc407e366db39253f2dd748a5e379bc3232254e15b86d12d0001bc064736f6c63430008140033",
"linkReferences": {},
"deployedLinkReferences": {}
}