UNPKG

@mantleio/contracts

Version:
353 lines (352 loc) 20.6 kB
{ "_format": "hh-sol-artifact-1", "contractName": "AssertionMap", "sourceName": "contracts/L1/fraud-proof/AssertionMap.sol", "abi": [ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "ChildInboxSizeMismatch", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "rollup", "type": "address" } ], "name": "NotRollup", "type": "error" }, { "inputs": [], "name": "SiblingStateHashExists", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "assertions", "outputs": [ { "internalType": "bytes32", "name": "stateHash", "type": "bytes32" }, { "internalType": "uint256", "name": "inboxSize", "type": "uint256" }, { "internalType": "uint256", "name": "parent", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint256", "name": "proposalTime", "type": "uint256" }, { "internalType": "uint256", "name": "numStakers", "type": "uint256" }, { "internalType": "uint256", "name": "childInboxSize", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" }, { "internalType": "bytes32", "name": "stateHash", "type": "bytes32" }, { "internalType": "uint256", "name": "inboxSize", "type": "uint256" }, { "internalType": "uint256", "name": "parentID", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" } ], "name": "createAssertion", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "deleteAssertion", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "deleteAssertionForBatch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "getDeadline", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "getInboxSize", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "getNumStakers", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "getParentID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "getProposalTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" } ], "name": "getStateHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" }, { "internalType": "address", "name": "stakerAddress", "type": "address" } ], "name": "isStaker", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rollupAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_rollupAddress", "type": "address" } ], "name": "setRollupAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "assertionID", "type": "uint256" }, { "internalType": "address", "name": "stakerAddress", "type": "address" } ], "name": "stakeOnAssertion", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b5061001961001e565b6100de565b600054610100900460ff161561008a5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100dc576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b610c81806100ed6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c806354823e6611610097578063873fd08911610066578063873fd089146102d1578063a832c3ae14610327578063d0087d611461033a578063d8a4e5af1461034d57600080fd5b806354823e66146102415780635ec6a8df146102615780638129fc1c146102a657806382862275146102ae57600080fd5b8063366b2b69116100d3578063366b2b6914610169578063422815841461018c5780634e04886d1461019f578063524232f6146101c257600080fd5b806307663706146100fa5780632b27e93b1461010f57806330b9477014610146575b600080fd5b61010d610108366004610b49565b610360565b005b61013361011d366004610b6b565b6000908152600160208190526040909120015490565b6040519081526020015b60405180910390f35b610133610154366004610b6b565b60009081526001602052604090206002015490565b610133610177366004610b6b565b60009081526001602052604090206005015490565b61010d61019a366004610b84565b6104cf565b6101336101ad366004610b6b565b60009081526001602052604090206004015490565b61020c6101d0366004610b6b565b60016020819052600091825260409091208054918101546002820154600383015460048401546005850154600690950154939492939192909187565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e00161013d565b61013361024f366004610b6b565b60009081526001602052604090205490565b6003546102819073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161013d565b61010d610700565b6101336102bc366004610b6b565b60009081526001602052604090206003015490565b6103176102df366004610bbf565b600091825260026020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b604051901515815260200161013d565b61010d610335366004610bbf565b61088a565b61010d610348366004610b6b565b610978565b61010d61035b366004610b6b565b610a72565b60035473ffffffffffffffffffffffffffffffffffffffff161561040b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f726f6c6c75704164647265737320616c726561647920696e697469616c697a6560448201527f642e00000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8116610488576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f4144445245535300000000000000000000000000000000000000006044820152606401610402565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60035473ffffffffffffffffffffffffffffffffffffffff163314610542576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b6000828152600160209081526040808320600290925290912060068201548061057157600683018690556105da565b8086146105da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4368696c64496e626f7853697a654d69736d61746368000000000000000000006044820152606401610402565b600087815260018301602052604090205460ff1615610655576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f5369626c696e67537461746548617368457869737473000000000000000000006044820152606401610402565b50600086815260019182016020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685179055805160e081018252988952888201978852888101968752606089019586524360808a0190815260a08a0184815260c08b018581529b85529285905292209751885595519187019190915592516002860155505160038401555160048301555160058201559051600690910155565b600054610100900460ff16158080156107205750600054600160ff909116105b8061073a5750303b15801561073a575060005460ff166001145b6107c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610402565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561082457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b801561088757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b60035473ffffffffffffffffffffffffffffffffffffffff1633146108fd576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b60008281526001602081815260408084206002835281852073ffffffffffffffffffffffffffffffffffffffff87168652909252832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016909217909155600581018054919261096e83610beb565b9190505550505050565b60035473ffffffffffffffffffffffffffffffffffffffff1633146109eb576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b600090815260016020818152604080842080546002808301805488855584880189905590889055600384018890556004840188905560058401889055600693840188905587528387209092018690559083528185209085529092019052902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b60035473ffffffffffffffffffffffffffffffffffffffff163314610ae5576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b600090815260016020819052604082208281559081018290556002810182905560038101829055600481018290556005810182905560060155565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b4457600080fd5b919050565b600060208284031215610b5b57600080fd5b610b6482610b20565b9392505050565b600060208284031215610b7d57600080fd5b5035919050565b600080600080600060a08688031215610b9c57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b60008060408385031215610bd257600080fd5b82359150610be260208401610b20565b90509250929050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610c44577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea2646970667358221220acd405bd898eae7c9fd5c61cddb20cf8e53b7bf787c6e27ce2e1027f231aef7964736f6c63430008090033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c806354823e6611610097578063873fd08911610066578063873fd089146102d1578063a832c3ae14610327578063d0087d611461033a578063d8a4e5af1461034d57600080fd5b806354823e66146102415780635ec6a8df146102615780638129fc1c146102a657806382862275146102ae57600080fd5b8063366b2b69116100d3578063366b2b6914610169578063422815841461018c5780634e04886d1461019f578063524232f6146101c257600080fd5b806307663706146100fa5780632b27e93b1461010f57806330b9477014610146575b600080fd5b61010d610108366004610b49565b610360565b005b61013361011d366004610b6b565b6000908152600160208190526040909120015490565b6040519081526020015b60405180910390f35b610133610154366004610b6b565b60009081526001602052604090206002015490565b610133610177366004610b6b565b60009081526001602052604090206005015490565b61010d61019a366004610b84565b6104cf565b6101336101ad366004610b6b565b60009081526001602052604090206004015490565b61020c6101d0366004610b6b565b60016020819052600091825260409091208054918101546002820154600383015460048401546005850154600690950154939492939192909187565b604080519788526020880196909652948601939093526060850191909152608084015260a083015260c082015260e00161013d565b61013361024f366004610b6b565b60009081526001602052604090205490565b6003546102819073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161013d565b61010d610700565b6101336102bc366004610b6b565b60009081526001602052604090206003015490565b6103176102df366004610bbf565b600091825260026020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b604051901515815260200161013d565b61010d610335366004610bbf565b61088a565b61010d610348366004610b6b565b610978565b61010d61035b366004610b6b565b610a72565b60035473ffffffffffffffffffffffffffffffffffffffff161561040b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602260248201527f726f6c6c75704164647265737320616c726561647920696e697469616c697a6560448201527f642e00000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8116610488576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5a45524f5f4144445245535300000000000000000000000000000000000000006044820152606401610402565b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60035473ffffffffffffffffffffffffffffffffffffffff163314610542576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b6000828152600160209081526040808320600290925290912060068201548061057157600683018690556105da565b8086146105da576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4368696c64496e626f7853697a654d69736d61746368000000000000000000006044820152606401610402565b600087815260018301602052604090205460ff1615610655576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f5369626c696e67537461746548617368457869737473000000000000000000006044820152606401610402565b50600086815260019182016020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685179055805160e081018252988952888201978852888101968752606089019586524360808a0190815260a08a0184815260c08b018581529b85529285905292209751885595519187019190915592516002860155505160038401555160048301555160058201559051600690910155565b600054610100900460ff16158080156107205750600054600160ff909116105b8061073a5750303b15801561073a575060005460ff166001145b6107c6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610402565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561082457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b801561088757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b60035473ffffffffffffffffffffffffffffffffffffffff1633146108fd576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b60008281526001602081815260408084206002835281852073ffffffffffffffffffffffffffffffffffffffff87168652909252832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016909217909155600581018054919261096e83610beb565b9190505550505050565b60035473ffffffffffffffffffffffffffffffffffffffff1633146109eb576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b600090815260016020818152604080842080546002808301805488855584880189905590889055600384018890556004840188905560058401889055600693840188905587528387209092018690559083528185209085529092019052902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b60035473ffffffffffffffffffffffffffffffffffffffff163314610ae5576003546040517f3933c6fc00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff9091166024820152604401610402565b600090815260016020819052604082208281559081018290556002810182905560038101829055600481018290556005810182905560060155565b803573ffffffffffffffffffffffffffffffffffffffff81168114610b4457600080fd5b919050565b600060208284031215610b5b57600080fd5b610b6482610b20565b9392505050565b600060208284031215610b7d57600080fd5b5035919050565b600080600080600060a08688031215610b9c57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b60008060408385031215610bd257600080fd5b82359150610be260208401610b20565b90509250929050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610c44577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b506001019056fea2646970667358221220acd405bd898eae7c9fd5c61cddb20cf8e53b7bf787c6e27ce2e1027f231aef7964736f6c63430008090033", "linkReferences": {}, "deployedLinkReferences": {} }