[ { "inputs": [ { "internalType": "uint32", "name": "_localDomain", "type": "uint32" }, { "internalType": "uint256", "name": "_processGas", "type": "uint256" }, { "internalType": "uint256", "name": "_reserveGas", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "oldRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32[2]", "name": "newRoot", "type": "bytes32[2]" }, { "indexed": false, "internalType": "bytes", "name": "signature", "type": "bytes" }, { "indexed": false, "internalType": "bytes", "name": "signature2", "type": "bytes" } ], "name": "DoubleUpdate", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "updater", "type": "address" } ], "name": "NewUpdater", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "messageHash", "type": "bytes32" }, { "indexed": true, "internalType": "bool", "name": "success", "type": "bool" }, { "indexed": true, "internalType": "bytes", "name": "returnData", "type": "bytes" } ], "name": "Process", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint32", "name": "homeDomain", "type": "uint32" }, { "indexed": true, "internalType": "bytes32", "name": "oldRoot", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newRoot", "type": "bytes32" }, { "indexed": false, "internalType": "bytes", "name": "signature", "type": "bytes" } ], "name": "Update", "type": "event" }, { "inputs": [], "name": "PROCESS_GAS", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "RESERVE_GAS", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "VERSION", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_root", "type": "bytes32" } ], "name": "acceptableRoot", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "committedRoot", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "name": "confirmAt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_oldRoot", "type": "bytes32" }, { "internalType": "bytes32[2]", "name": "_newRoot", "type": "bytes32[2]" }, { "internalType": "bytes", "name": "_signature", "type": "bytes" }, { "internalType": "bytes", "name": "_signature2", "type": "bytes" } ], "name": "doubleUpdate", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "homeDomainHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "_remoteDomain", "type": "uint32" }, { "internalType": "address", "name": "_updater", "type": "address" }, { "internalType": "bytes32", "name": "_committedRoot", "type": "bytes32" }, { "internalType": "uint256", "name": "_optimisticSeconds", "type": "uint256" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "localDomain", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "name": "messages", "outputs": [ { "internalType": "enum Replica.MessageStatus", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "optimisticSeconds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes", "name": "_message", "type": "bytes" } ], "name": "process", "outputs": [ { "internalType": "bool", "name": "_success", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_leaf", "type": "bytes32" }, { "internalType": "bytes32[32]", "name": "_proof", "type": "bytes32[32]" }, { "internalType": "uint256", "name": "_index", "type": "uint256" } ], "name": "prove", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes", "name": "_message", "type": "bytes" }, { "internalType": "bytes32[32]", "name": "_proof", "type": "bytes32[32]" }, { "internalType": "uint256", "name": "_index", "type": "uint256" } ], "name": "proveAndProcess", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "remoteDomain", "outputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_updater", "type": "address" } ], "name": "setUpdater", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "state", "outputs": [ { "internalType": "enum Common.States", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_oldRoot", "type": "bytes32" }, { "internalType": "bytes32", "name": "_newRoot", "type": "bytes32" }, { "internalType": "bytes", "name": "_signature", "type": "bytes" } ], "name": "update", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "updater", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" } ]