diff --git a/hardhat.config.ts b/hardhat.config.ts index 51fbb34c..a7811945 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -23,7 +23,7 @@ const solidity = { }, }, }, - ], + ] // overrides: { // 'src/rollup/RollupUserLogic.sol': { // version: '0.8.9', @@ -214,6 +214,6 @@ module.exports = { target: 'ethers-v5', }, contractSizer: { - strict: true, - }, + strict: true + } } diff --git a/rollupCreatorContracts.json b/rollupCreatorContracts.json deleted file mode 100644 index 9b6284a3..00000000 --- a/rollupCreatorContracts.json +++ /dev/null @@ -1,43146 +0,0 @@ -{ - "ethSequencerInbox": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "_maxDataSize", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "reader4844_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_isUsingFeeToken", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "type": "error", - "name": "AlreadyInit", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "AlreadyValidDASKeyset", - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "BadMaxTimeVariation", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "BadPostUpgradeInit", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "BadSequencerNumber", - "inputs": [ - { - "name": "stored", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "received", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "DataBlobsNotSupported", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "DataTooLarge", - "inputs": [ - { - "name": "dataLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "maxDataLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "DelayedBackwards", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "DelayedTooFar", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "Deprecated", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "ForceIncludeBlockTooSoon", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "ForceIncludeTimeTooSoon", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "HadZeroInit", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "IncorrectMessagePreimage", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "InitParamZero", - "inputs": [ - { - "name": "name", - "type": "string", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "string", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "InvalidHeaderFlag", - "inputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "MissingDataHashes", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "NativeTokenMismatch", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "NoSuchKeyset", - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "NotBatchPoster", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "NotBatchPosterManager", - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "NotForked", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "NotOrigin", - "inputs": [], - "_isFragment": true - }, - { - "type": "error", - "name": "NotOwner", - "inputs": [ - { - "name": "sender", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "type": "error", - "name": "RollupNotChanged", - "inputs": [], - "_isFragment": true - }, - { - "name": "InboxMessageDelivered", - "anonymous": false, - "inputs": [ - { - "name": "messageNum", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "InboxMessageDeliveredFromOrigin", - "anonymous": false, - "inputs": [ - { - "name": "messageNum", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "InvalidateKeyset", - "anonymous": false, - "inputs": [ - { - "name": "keysetHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "OwnerFunctionCalled", - "anonymous": false, - "inputs": [ - { - "name": "id", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "SequencerBatchData", - "anonymous": false, - "inputs": [ - { - "name": "batchSequenceNumber", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "SequencerBatchDelivered", - "anonymous": false, - "inputs": [ - { - "name": "batchSequenceNumber", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "beforeAcc", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "afterAcc", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "delayedAcc", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "timeBounds", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "minTimestamp", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxTimestamp", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "minBlockNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxBlockNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "dataLocation", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "SetValidKeyset", - "anonymous": false, - "inputs": [ - { - "name": "keysetHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "keysetBytes", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "BROTLI_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "DAS_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "DATA_AUTHENTICATED_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "DATA_BLOB_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "EIGENDA_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "HEADER_LENGTH", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "TREE_DAS_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ZERO_HEAVY_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "addSequencerL2Batch", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "addSequencerL2BatchFromBlobs", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "addSequencerL2BatchFromEigenDA", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "cert", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "blobVerificationProof", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchId", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "blobIndex", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "batchMetadata", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "blobHeadersRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "quorumNumbers", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "signedStakeForQuorums", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "signatoryRecordHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmationBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inclusionProof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "quorumIndices", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "blobHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "commitment", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "X", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "Y", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "dataLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "quorumBlobParams", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "addSequencerL2BatchFromOrigin", - "constant": true, - "inputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "addSequencerL2BatchFromOrigin", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "batchCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "batchPosterManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "dasKeySetInfo", - "constant": true, - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "isValidKeyset", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - }, - { - "name": "creationBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "forceInclusion", - "constant": false, - "inputs": [ - { - "name": "_totalDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "kind", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "l1BlockAndTime", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "baseFeeL1", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "sender", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "messageDataHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getKeysetCreationBlock", - "constant": true, - "inputs": [ - { - "name": "ksHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "inboxAccs", - "constant": true, - "inputs": [ - { - "name": "index", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "bridge_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxTimeVariation_", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "invalidateKeysetHash", - "constant": false, - "inputs": [ - { - "name": "ksHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isBatchPoster", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isSequencer", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isUsingFeeToken", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isValidKeysetHash", - "constant": true, - "inputs": [ - { - "name": "ksHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "maxDataSize", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "maxTimeVariation", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "postUpgradeInit", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "reader4844", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "removeDelayAfterFork", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollup", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setBatchPosterManager", - "constant": false, - "inputs": [ - { - "name": "newBatchPosterManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setEigenDARollupManager", - "constant": false, - "inputs": [ - { - "name": "newRollupManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setIsBatchPoster", - "constant": false, - "inputs": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "isBatchPoster_", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setIsSequencer", - "constant": false, - "inputs": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "isSequencer_", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setMaxTimeVariation", - "constant": false, - "inputs": [ - { - "name": "maxTimeVariation_", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setRollupAddress", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setValidKeyset", - "constant": false, - "inputs": [ - { - "name": "keysetBytes", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "totalDelayedMessagesRead", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "updateRollupAddress", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "BROTLI_MESSAGE_HEADER_FLAG()": { - "type": "function", - "name": "BROTLI_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "DAS_MESSAGE_HEADER_FLAG()": { - "type": "function", - "name": "DAS_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "DATA_AUTHENTICATED_FLAG()": { - "type": "function", - "name": "DATA_AUTHENTICATED_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "DATA_BLOB_HEADER_FLAG()": { - "type": "function", - "name": "DATA_BLOB_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "EIGENDA_MESSAGE_HEADER_FLAG()": { - "type": "function", - "name": "EIGENDA_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "HEADER_LENGTH()": { - "type": "function", - "name": "HEADER_LENGTH", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "TREE_DAS_MESSAGE_HEADER_FLAG()": { - "type": "function", - "name": "TREE_DAS_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ZERO_HEAVY_MESSAGE_HEADER_FLAG()": { - "type": "function", - "name": "ZERO_HEAVY_MESSAGE_HEADER_FLAG", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "addSequencerL2Batch(uint256,bytes,uint256,address,uint256,uint256)": { - "type": "function", - "name": "addSequencerL2Batch", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "addSequencerL2BatchFromBlobs(uint256,uint256,address,uint256,uint256)": { - "type": "function", - "name": "addSequencerL2BatchFromBlobs", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "addSequencerL2BatchFromEigenDA(uint256,((uint32,uint32,((bytes32,bytes,bytes,uint32),bytes32,uint32),bytes,bytes),((uint256,uint256),uint32,(uint8,uint8,uint8,uint32)[])),address,uint256,uint256,uint256)": { - "type": "function", - "name": "addSequencerL2BatchFromEigenDA", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "cert", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "blobVerificationProof", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchId", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "blobIndex", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "batchMetadata", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "blobHeadersRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "quorumNumbers", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "signedStakeForQuorums", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "signatoryRecordHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmationBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inclusionProof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "quorumIndices", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "blobHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "commitment", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "X", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "Y", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "dataLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "quorumBlobParams", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "addSequencerL2BatchFromOrigin(uint256,bytes,uint256,address)": { - "type": "function", - "name": "addSequencerL2BatchFromOrigin", - "constant": true, - "inputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "addSequencerL2BatchFromOrigin(uint256,bytes,uint256,address,uint256,uint256)": { - "type": "function", - "name": "addSequencerL2BatchFromOrigin", - "constant": false, - "inputs": [ - { - "name": "sequenceNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "gasRefunder", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "prevMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "newMessageCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "batchCount()": { - "type": "function", - "name": "batchCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "batchPosterManager()": { - "type": "function", - "name": "batchPosterManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "bridge()": { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "dasKeySetInfo(bytes32)": { - "type": "function", - "name": "dasKeySetInfo", - "constant": true, - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "isValidKeyset", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - }, - { - "name": "creationBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "forceInclusion(uint256,uint8,uint64[2],uint256,address,bytes32)": { - "type": "function", - "name": "forceInclusion", - "constant": false, - "inputs": [ - { - "name": "_totalDelayedMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "kind", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "l1BlockAndTime", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "baseFeeL1", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "sender", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "messageDataHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getKeysetCreationBlock(bytes32)": { - "type": "function", - "name": "getKeysetCreationBlock", - "constant": true, - "inputs": [ - { - "name": "ksHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "inboxAccs(uint256)": { - "type": "function", - "name": "inboxAccs", - "constant": true, - "inputs": [ - { - "name": "index", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "initialize(address,(uint256,uint256,uint256,uint256))": { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "bridge_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxTimeVariation_", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "invalidateKeysetHash(bytes32)": { - "type": "function", - "name": "invalidateKeysetHash", - "constant": false, - "inputs": [ - { - "name": "ksHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isBatchPoster(address)": { - "type": "function", - "name": "isBatchPoster", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isSequencer(address)": { - "type": "function", - "name": "isSequencer", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isUsingFeeToken()": { - "type": "function", - "name": "isUsingFeeToken", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isValidKeysetHash(bytes32)": { - "type": "function", - "name": "isValidKeysetHash", - "constant": true, - "inputs": [ - { - "name": "ksHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "maxDataSize()": { - "type": "function", - "name": "maxDataSize", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "maxTimeVariation()": { - "type": "function", - "name": "maxTimeVariation", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "postUpgradeInit()": { - "type": "function", - "name": "postUpgradeInit", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "reader4844()": { - "type": "function", - "name": "reader4844", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "removeDelayAfterFork()": { - "type": "function", - "name": "removeDelayAfterFork", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollup()": { - "type": "function", - "name": "rollup", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupManager()": { - "type": "function", - "name": "rollupManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setBatchPosterManager(address)": { - "type": "function", - "name": "setBatchPosterManager", - "constant": false, - "inputs": [ - { - "name": "newBatchPosterManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setEigenDARollupManager(address)": { - "type": "function", - "name": "setEigenDARollupManager", - "constant": false, - "inputs": [ - { - "name": "newRollupManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setIsBatchPoster(address,bool)": { - "type": "function", - "name": "setIsBatchPoster", - "constant": false, - "inputs": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "isBatchPoster_", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setIsSequencer(address,bool)": { - "type": "function", - "name": "setIsSequencer", - "constant": false, - "inputs": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "isSequencer_", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setMaxTimeVariation((uint256,uint256,uint256,uint256))": { - "type": "function", - "name": "setMaxTimeVariation", - "constant": false, - "inputs": [ - { - "name": "maxTimeVariation_", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setRollupAddress()": { - "type": "function", - "name": "setRollupAddress", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setValidKeyset(bytes)": { - "type": "function", - "name": "setValidKeyset", - "constant": false, - "inputs": [ - { - "name": "keysetBytes", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "totalDelayedMessagesRead()": { - "type": "function", - "name": "totalDelayedMessagesRead", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "updateRollupAddress()": { - "type": "function", - "name": "updateRollupAddress", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": { - "AlreadyInit()": { - "type": "error", - "name": "AlreadyInit", - "inputs": [], - "_isFragment": true - }, - "AlreadyValidDASKeyset(bytes32)": { - "type": "error", - "name": "AlreadyValidDASKeyset", - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "_isFragment": true - }, - "BadMaxTimeVariation()": { - "type": "error", - "name": "BadMaxTimeVariation", - "inputs": [], - "_isFragment": true - }, - "BadPostUpgradeInit()": { - "type": "error", - "name": "BadPostUpgradeInit", - "inputs": [], - "_isFragment": true - }, - "BadSequencerNumber(uint256,uint256)": { - "type": "error", - "name": "BadSequencerNumber", - "inputs": [ - { - "name": "stored", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "received", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "_isFragment": true - }, - "DataBlobsNotSupported()": { - "type": "error", - "name": "DataBlobsNotSupported", - "inputs": [], - "_isFragment": true - }, - "DataTooLarge(uint256,uint256)": { - "type": "error", - "name": "DataTooLarge", - "inputs": [ - { - "name": "dataLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "maxDataLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "_isFragment": true - }, - "DelayedBackwards()": { - "type": "error", - "name": "DelayedBackwards", - "inputs": [], - "_isFragment": true - }, - "DelayedTooFar()": { - "type": "error", - "name": "DelayedTooFar", - "inputs": [], - "_isFragment": true - }, - "Deprecated()": { - "type": "error", - "name": "Deprecated", - "inputs": [], - "_isFragment": true - }, - "ForceIncludeBlockTooSoon()": { - "type": "error", - "name": "ForceIncludeBlockTooSoon", - "inputs": [], - "_isFragment": true - }, - "ForceIncludeTimeTooSoon()": { - "type": "error", - "name": "ForceIncludeTimeTooSoon", - "inputs": [], - "_isFragment": true - }, - "HadZeroInit()": { - "type": "error", - "name": "HadZeroInit", - "inputs": [], - "_isFragment": true - }, - "IncorrectMessagePreimage()": { - "type": "error", - "name": "IncorrectMessagePreimage", - "inputs": [], - "_isFragment": true - }, - "InitParamZero(string)": { - "type": "error", - "name": "InitParamZero", - "inputs": [ - { - "name": "name", - "type": "string", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "string", - "_isParamType": true - } - ], - "_isFragment": true - }, - "InvalidHeaderFlag(bytes1)": { - "type": "error", - "name": "InvalidHeaderFlag", - "inputs": [ - { - "name": null, - "type": "bytes1", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes1", - "_isParamType": true - } - ], - "_isFragment": true - }, - "MissingDataHashes()": { - "type": "error", - "name": "MissingDataHashes", - "inputs": [], - "_isFragment": true - }, - "NativeTokenMismatch()": { - "type": "error", - "name": "NativeTokenMismatch", - "inputs": [], - "_isFragment": true - }, - "NoSuchKeyset(bytes32)": { - "type": "error", - "name": "NoSuchKeyset", - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "_isFragment": true - }, - "NotBatchPoster()": { - "type": "error", - "name": "NotBatchPoster", - "inputs": [], - "_isFragment": true - }, - "NotBatchPosterManager(address)": { - "type": "error", - "name": "NotBatchPosterManager", - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "_isFragment": true - }, - "NotForked()": { - "type": "error", - "name": "NotForked", - "inputs": [], - "_isFragment": true - }, - "NotOrigin()": { - "type": "error", - "name": "NotOrigin", - "inputs": [], - "_isFragment": true - }, - "NotOwner(address,address)": { - "type": "error", - "name": "NotOwner", - "inputs": [ - { - "name": "sender", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "_isFragment": true - }, - "RollupNotChanged()": { - "type": "error", - "name": "RollupNotChanged", - "inputs": [], - "_isFragment": true - } - }, - "events": { - "InboxMessageDelivered(uint256,bytes)": { - "name": "InboxMessageDelivered", - "anonymous": false, - "inputs": [ - { - "name": "messageNum", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "InboxMessageDeliveredFromOrigin(uint256)": { - "name": "InboxMessageDeliveredFromOrigin", - "anonymous": false, - "inputs": [ - { - "name": "messageNum", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "InvalidateKeyset(bytes32)": { - "name": "InvalidateKeyset", - "anonymous": false, - "inputs": [ - { - "name": "keysetHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "OwnerFunctionCalled(uint256)": { - "name": "OwnerFunctionCalled", - "anonymous": false, - "inputs": [ - { - "name": "id", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "SequencerBatchData(uint256,bytes)": { - "name": "SequencerBatchData", - "anonymous": false, - "inputs": [ - { - "name": "batchSequenceNumber", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "SequencerBatchDelivered(uint256,bytes32,bytes32,bytes32,uint256,(uint64,uint64,uint64,uint64),uint8)": { - "name": "SequencerBatchDelivered", - "anonymous": false, - "inputs": [ - { - "name": "batchSequenceNumber", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "beforeAcc", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "afterAcc", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "delayedAcc", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "afterDelayedMessagesRead", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "timeBounds", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "minTimestamp", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxTimestamp", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "minBlockNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxBlockNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "dataLocation", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "SetValidKeyset(bytes32,bytes)": { - "name": "SetValidKeyset", - "anonymous": false, - "inputs": [ - { - "name": "keysetHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "keysetBytes", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "_maxDataSize", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "reader4844_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_isUsingFeeToken", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x0940Ec189dC92fED8CeACAF67EDA942Fb7cABAe6", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 186, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x396faf" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x610160604052306080526202000060a05246610100526200002b62000103602090811b6200280617901c565b1515610120523480156200003e57600080fd5b506040516200455e3803806200455e8339810160408190526200006191620001a0565b60e083905261012051156200009f576001600160a01b0382161562000099576040516386657a5360e01b815260040160405180910390fd5b620000e8565b6001600160a01b038216620000e8576040516380fc2c0360e01b815260206004820152600a60248201526914995859195c8d0e0d0d60b21b604482015260640160405180910390fd5b6001600160a01b0390911660c0521515610140525062000236565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b179052905160009182918291606491620001439190620001f8565b600060405180830381855afa9150503d806000811462000180576040519150601f19603f3d011682016040523d82523d6000602084013e62000185565b606091505b509150915081801562000199575080516020145b9250505090565b600080600060608486031215620001b657600080fd5b835160208501519093506001600160a01b0381168114620001d657600080fd5b60408501519092508015158114620001ed57600080fd5b809150509250925092565b6000825160005b818110156200021b5760208186018101518583015201620001ff565b818111156200022b576000828501525b509190910192915050565b60805160a05160c05160e05161010051610120516101405161426b620002f3600039600081816104bb01528181610791015281816110cc0152612dcc01526000818161108301528181611f610152612e0e015260008181611c6301526131ea0152600081816105950152818161303e015261307a01526000818161048101528181610f8e01528181612a9a0152612b5d015260008181610eb00152818161126401526119b60152600081816106790152611a9d015261426b6000f3fe608060405234801561001057600080fd5b506004361061025e5760003560e01c80637fa3a40e11610146578063cc2a1a0c116100c3578063e5a358c811610087578063e5a358c814610572578063e78cea921461057d578063e8eb1dc314610590578063ebea461d146105b7578063f1981578146105df578063f60a5091146105f257600080fd5b8063cc2a1a0c1461051e578063d1ce8da814610531578063d9dd67ab14610544578063e0bc972914610557578063e28818a01461056a57600080fd5b806395fcea781161010a57806395fcea78146104dd57806396cc5c78146104e5578063a683eed8146104ed578063b31761f8146104f8578063cb23bcb51461050b57600080fd5b80637fa3a40e1461046057806384420860146104695780638d910dde1461047c5780638f111f3c146104a357806392d9f782146104b657600080fd5b8063283d8225116101df5780636c890450116101a35780636c890450146103975780636d46e987146103a25780636e7df3e7146103c55780636f12b0c9146103d8578063715ea34b146103eb57806371c3e6fe1461043d57600080fd5b8063283d82251461033e5780632cbf74e5146103515780633e5aa0821461035c57806349b7b8021461036f5780636ae71f121461038f57600080fd5b80631f956632116102265780631f956632146102ea5780631ff64790146102fd578063258f04951461031057806327957a491461032357806327f32e061461032b57600080fd5b806302c992751461026357806306f13056146102845780631637be481461029a57806316af91a7146102cd5780631f7a92b2146102d5575b600080fd5b61026e600160fd1b81565b60405161027b9190613453565b60405180910390f35b61028c6105fd565b60405190815260200161027b565b6102bd6102a8366004613468565b60009081526008602052604090205460ff1690565b604051901515815260200161027b565b61026e600081565b6102e86102e3366004613499565b61066e565b005b6102e86102f83660046134e8565b610889565b6102e861030b366004613521565b61098a565b61028c61031e366004613468565b610aea565b61028c602881565b6102e8610339366004613521565b610b53565b6102e861034c366004613545565b610c63565b61026e600560fc1b81565b6102e861036a3660046135be565b610f8b565b600954610382906001600160a01b031681565b60405161027b9190613607565b6102e861133e565b61026e600160fb1b81565b6102bd6103b0366004613521565b600a6020526000908152604090205460ff1681565b6102e86103d33660046134e8565b6114d8565b6102e86103e636600461365c565b6115d9565b61041e6103f9366004613468565b60086020526000908152604090205460ff81169061010090046001600160401b031682565b6040805192151583526001600160401b0390911660208301520161027b565b6102bd61044b366004613521565b60036020526000908152604090205460ff1681565b61028c60005481565b6102e8610477366004613468565b6115f2565b6103827f000000000000000000000000000000000000000000000000000000000000000081565b6102e86104b13660046136c6565b611755565b6102bd7f000000000000000000000000000000000000000000000000000000000000000081565b6102e8611a92565b6102e8611c60565b61026e60ed60f81b81565b6102e8610506366004613788565b611cc0565b600254610382906001600160a01b031681565b600c54610382906001600160a01b031681565b6102e861053f3660046137ed565b611dbd565b61028c610552366004613468565b6120a2565b6102e86105653660046136c6565b612116565b6102e861226c565b61026e600160fe1b81565b600154610382906001600160a01b031681565b61028c7f000000000000000000000000000000000000000000000000000000000000000081565b6105bf61241c565b60408051948552602085019390935291830152606082015260800161027b565b6102e86105ed366004613844565b612454565b61026e600160ff1b81565b600154604080516221048360e21b815290516000926001600160a01b0316916284120c9160048083019260209291908290030181865afa158015610645573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066991906138ac565b905090565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156106c05760405162461bcd60e51b81526004016106b7906138c5565b60405180910390fd5b6001546001600160a01b0316156106ea57604051633bcd329760e21b815260040160405180910390fd5b6001600160a01b03821661071157604051631ad0f74360e01b815260040160405180910390fd5b6000826001600160a01b031663e1758bd86040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561076d575060408051601f3d908101601f1916820190925261076a91810190613911565b60015b6107765761078c565b6001600160a01b0381161561078a57600191505b505b8015157f00000000000000000000000000000000000000000000000000000000000000001515146107d05760405163c3e31f8d60e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0385169081179091556040805163cb23bcb560e01b8152905163cb23bcb5916004808201926020929091908290030181865afa158015610829573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084d9190613911565b600280546001600160a01b0319166001600160a01b039290921691909117905561088461087f36849003840184613788565b61289e565b505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109009190613911565b6001600160a01b0316336001600160a01b03161415801561092c5750600c546001600160a01b03163314155b1561094c57336040516333059da160e11b81526004016106b79190613607565b6001600160a01b0382166000908152600a6020526040808220805460ff19168415151790555160049160008051602061421683398151915291a25050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a019190613911565b6001600160a01b0316336001600160a01b031614610ab25760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a869190613911565b604051631194af8760e11b81526001600160a01b039283166004820152911660248201526044016106b7565b600c80546001600160a01b0319166001600160a01b03831617905560405160059060008051602061421683398151915290600090a250565b600081815260086020908152604080832081518083019092525460ff81161515825261010090046001600160401b031691810182905290610b405760405162f20c5d60e01b8152600481018490526024016106b7565b602001516001600160401b031692915050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ba6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bca9190613911565b6001600160a01b0316336001600160a01b031614610c2b5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b600980546001600160a01b0319166001600160a01b03831617905560405160079060008051602061421683398151915290600090a250565b836000805a3360009081526003602052604090205490915060ff16610c9b57604051632dd9fc9760e01b815260040160405180910390fd5b6009546001600160a01b031663c18e7738610cb960208b018b61392e565b610cc38b8061394e565b6040518363ffffffff1660e01b8152600401610ce0929190613c43565b60006040518083038186803b158015610cf857600080fd5b505afa158015610d0c573d6000803e3d6000fd5b50505050600080610d1d8a89612975565b91509150600060405180608001604052808d81526020018a8152602001898152602001888152509050610d518184846129ea565b5050506001600160a01b03831615610f80573660006020610d7383601f613c7e565b610d7d9190613c96565b9050610200610d8d600283613d9c565b610d979190613c96565b610da2826006613dab565b610dac9190613c7e565b610db69084613c7e565b9250333214610dc85760009150610eff565b6001600160a01b03841615610eff57836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa925050508015610e3657506040513d6000823e601f3d908101601f19168201604052610e339190810190613dca565b60015b610e3f57610eff565b805115610efd576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e86573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eaa91906138ac565b905048817f00000000000000000000000000000000000000000000000000000000000000008451610edb9190613dab565b610ee59190613dab565b610eef9190613c96565b610ef99086613c7e565b9450505b505b846001600160a01b031663e3db8a49335a610f1a9087613e6f565b856040518463ffffffff1660e01b8152600401610f3993929190613e86565b6020604051808303816000875af1158015610f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7c9190613ea7565b5050505b505050505050505050565b827f000000000000000000000000000000000000000000000000000000000000000060005a3360009081526003602052604090205490915060ff16610fe357604051632dd9fc9760e01b815260040160405180910390fd5b6000806000610ff18a612a8b565b92509250925060008060008061100b878f60008f8f612c6d565b929650909450925090508e80851480159061102857506000198114155b156110505760405163ac7411c960e01b815260048101869052602481018290526044016106b7565b8184826000805160206141f6833981519152866000548c60036040516110799493929190613ec4565b60405180910390a47f0000000000000000000000000000000000000000000000000000000000000000156110c0576040516386657a5360e01b815260040160405180910390fd5b33321480156110ed57507f0000000000000000000000000000000000000000000000000000000000000000155b156110fe576110fe88864889612e0b565b505050506001600160a01b0387161593506113349250505057366000602061112783601f613c7e565b6111319190613c96565b9050610200611141600283613d9c565b61114b9190613c96565b611156826006613dab565b6111609190613c7e565b61116a9084613c7e565b925033321461117c57600091506112b3565b6001600160a01b038416156112b357836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156111ea57506040513d6000823e601f3d908101601f191682016040526111e79190810190613dca565b60015b6111f3576112b3565b8051156112b1576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561123a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061125e91906138ac565b905048817f0000000000000000000000000000000000000000000000000000000000000000845161128f9190613dab565b6112999190613dab565b6112a39190613c96565b6112ad9086613c7e565b9450505b505b846001600160a01b031663e3db8a49335a6112ce9087613e6f565b856040518463ffffffff1660e01b81526004016112ed93929190613e86565b6020604051808303816000875af115801561130c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113309190613ea7565b5050505b5050505050505050565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611391573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b59190613911565b6001600160a01b0316336001600160a01b0316146114165760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b6001546040805163cb23bcb560e01b815290516000926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa158015611460573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114849190613911565b6002549091506001600160a01b03808316911614156114b65760405163d054909f60e01b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154f9190613911565b6001600160a01b0316336001600160a01b03161415801561157b5750600c546001600160a01b03163314155b1561159b57336040516333059da160e11b81526004016106b79190613607565b6001600160a01b038216600090815260036020526040808220805460ff19168415151790555160019160008051602061421683398151915291a25050565b6040516331cee75f60e21b815260040160405180910390fd5b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611645573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116699190613911565b6001600160a01b0316336001600160a01b0316146116ca5760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b60008181526008602052604090205460ff166116fb5760405162f20c5d60e01b8152600481018290526024016106b7565b600081815260086020526040808220805460ff191690555182917f5cb4218b272fd214168ac43e90fb4d05d6c36f0b17ffb4c2dd07c234d744eb2a91a260405160039060008051602061421683398151915290600090a250565b826000805a905033321461177c5760405163feb3d07160e01b815260040160405180910390fd5b3360009081526003602052604090205460ff166117ac57604051632dd9fc9760e01b815260040160405180910390fd5b6000806117ba8b8b8b613023565b90925090508b81838c8c8b8b60008080806117d889888a8989612c6d565b93509350935093508a84141580156117f257506000198b14155b1561181a5760405163ac7411c960e01b815260048101859052602481018c90526044016106b7565b8083856000805160206141f6833981519152856000548f60006040516118439493929190613ec4565b60405180910390a4505050506001600160a01b038c16159850611a8697505050505050505057366000602061187983601f613c7e565b6118839190613c96565b9050610200611893600283613d9c565b61189d9190613c96565b6118a8826006613dab565b6118b29190613c7e565b6118bc9084613c7e565b92503332146118ce5760009150611a05565b6001600160a01b03841615611a0557836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561193c57506040513d6000823e601f3d908101601f191682016040526119399190810190613dca565b60015b61194557611a05565b805115611a03576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561198c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119b091906138ac565b905048817f000000000000000000000000000000000000000000000000000000000000000084516119e19190613dab565b6119eb9190613dab565b6119f59190613c96565b6119ff9086613c7e565b9450505b505b846001600160a01b031663e3db8a49335a611a209087613e6f565b856040518463ffffffff1660e01b8152600401611a3f93929190613e86565b6020604051808303816000875af1158015611a5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a829190613ea7565b5050505b50505050505050505050565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415611adb5760405162461bcd60e51b81526004016106b7906138c5565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b03821614611b3857604051631194af8760e11b81523360048201526001600160a01b03821660248201526044016106b7565b600454158015611b485750600554155b8015611b545750600654155b8015611b605750600754155b15611b7e57604051633bcd329760e21b815260040160405180910390fd5b6004546001600160401b031080611b9d57506005546001600160401b03105b80611bb057506006546001600160401b03105b80611bc357506007546001600160401b03105b15611be15760405163d0afb66160e01b815260040160405180910390fd5b505060048054600b80546005805460068054600780546001600160401b03908116600160c01b026001600160c01b03938216600160801b02939093166001600160801b03958216600160401b026001600160801b0319909816919099161795909517929092169590951717909255600093849055908390559082905555565b467f00000000000000000000000000000000000000000000000000000000000000001415611ca157604051635180dd8360e11b815260040160405180910390fd5b7801000000000000000100000000000000010000000000000001600b55565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d379190613911565b6001600160a01b0316336001600160a01b031614611d985760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b611da18161289e565b604051600090600080516020614216833981519152908290a250565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e349190613911565b6001600160a01b0316336001600160a01b031614611e955760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b60008282604051611ea7929190613f38565b604051908190038120607f60f91b6020830152602182015260410160408051601f1981840301815291905280516020909101209050600160ff1b8118620100008310611f2b5760405162461bcd60e51b81526020600482015260136024820152726b657973657420697320746f6f206c6172676560681b60448201526064016106b7565b60008181526008602052604090205460ff1615611f5e57604051637d17eeed60e11b8152600481018290526024016106b7565b437f000000000000000000000000000000000000000000000000000000000000000015611feb5760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fe891906138ac565b90505b604080518082018252600181526001600160401b0383811660208084019182526000878152600890915284902092518354915168ffffffffffffffffff1990921690151568ffffffffffffffff0019161761010091909216021790555182907fabca9b7986bc22ad0160eb0cb88ae75411eacfba4052af0b457a9335ef655722906120799088908890613f48565b60405180910390a260405160029060008051602061421683398151915290600090a25050505050565b6001546040516316bf557960e01b8152600481018390526000916001600160a01b0316906316bf557990602401602060405180830381865afa1580156120ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061211091906138ac565b92915050565b826000805a3360009081526003602052604090205490915060ff1615801561214957506002546001600160a01b03163314155b1561216757604051632dd9fc9760e01b815260040160405180910390fd5b6000806121758b8b8b613023565b909250905060008c82848c8b8b8680806121928787838888612c6d565b929c5090945092509050888a148015906121ae57506000198914155b156121d65760405163ac7411c960e01b8152600481018b9052602481018a90526044016106b7565b80838b6000805160206141f6833981519152856000548d60016040516121ff9493929190613ec4565b60405180910390a4505050505050505050807ffe325ca1efe4c5c1062c981c3ee74b781debe4ea9440306a96d2a55759c66c208d8d604051612242929190613f48565b60405180910390a25050506001600160a01b03831615611a8657366000602061187983601f613c7e565b600260009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122e39190613911565b6001600160a01b0316336001600160a01b0316146123445760025460408051638da5cb5b60e01b8152905133926001600160a01b031691638da5cb5b9160048083019260209291908290030181865afa158015610a62573d6000803e3d6000fd5b6001546040805163cb23bcb560e01b815290516000926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa15801561238e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123b29190613911565b6002549091506001600160a01b03808316911614156123e45760405163d054909f60e01b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b03831617905560405160069060008051602061421683398151915290600090a250565b6000806000806000806000806124306131e2565b6001600160401b039384169b50918316995082169750169450505050505b90919293565b600054861161247657604051633eb9f37d60e11b815260040160405180910390fd5b6000612526868461248a6020890189613f7a565b61249a60408a0160208b01613f7a565b6124a560018d613e6f565b6040805160f89690961b6001600160f81b03191660208088019190915260609590951b6001600160601b031916602187015260c093841b6001600160c01b031990811660358801529290931b909116603d85015260458401526065830188905260858084018790528151808503909101815260a59093019052815191012090565b600b5490915043906001600160401b03166125446020880188613f7a565b61254e9190613fa3565b6001600160401b0316106125755760405163ad3515d960e01b815260040160405180910390fd5b600b544290600160801b90046001600160401b031661259a6040880160208901613f7a565b6125a49190613fa3565b6001600160401b0316106125cb5760405163c76d17e560e01b815260040160405180910390fd5b60006001881115612654576001546001600160a01b031663d5719dc26125f260028b613e6f565b6040518263ffffffff1660e01b815260040161261091815260200190565b602060405180830381865afa15801561262d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265191906138ac565b90505b60408051602080820184905281830185905282518083038401815260609092019092528051910120600180546001600160a01b03169063d5719dc29061269a908c613e6f565b6040518263ffffffff1660e01b81526004016126b891815260200190565b602060405180830381865afa1580156126d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126f991906138ac565b14612717576040516313947fd760e01b815260040160405180910390fd5b6000806127238a613253565b9150915060008a90506000600160009054906101000a90046001600160a01b03166001600160a01b0316635fca4a166040518163ffffffff1660e01b8152600401602060405180830381865afa158015612781573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127a591906138ac565b90508060008080806127ba8988838880612c6d565b93509350935093508083856000805160206141f6833981519152856000548d60026040516127eb9493929190613ec4565b60405180910390a45050505050505050505050505050505050565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b1790529051600091829182916064916128449190613ffe565b600060405180830381855afa9150503d806000811461287f576040519150601f19603f3d011682016040523d82523d6000602084013e612884565b606091505b5091509150818015612897575080516020145b9250505090565b80516001600160401b0310806128be575060208101516001600160401b03105b806128d3575060408101516001600160401b03105b806128e8575060608101516001600160401b03105b15612906576040516309cfba7560e01b815260040160405180910390fd5b8051600b8054602084015160408501516060909501516001600160401b03908116600160c01b026001600160c01b03968216600160801b02969096166001600160801b03928216600160401b026001600160801b03199094169190951617919091171691909117919091179055565b600061297f61342c565b60008061298b8561327f565b915091508160ed60f81b876040516020016129a69190614010565b60408051601f19818403018152908290526129c5939291602001614065565b60405160208183030381529060405280519060200120819350935050505b9250929050565b600080600080612a0a86886020015160008a604001518b60600151612c6d565b8a5193975091955093509150808514801590612a2857506000198114155b15612a505760405163ac7411c960e01b815260048101869052602481018290526044016106b7565b8184866000805160206141f6833981519152866000548b6004604051612a799493929190613ec4565b60405180910390a45050505050505050565b6000612a9561342c565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa158015612af6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612b1e9190810190613dca565b9050805160001415612b4357604051631e693f5b60e11b815260040160405180910390fd5b600080612b4f8761327f565b9150915060008351620200007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bdd91906138ac565b612be79190613dab565b612bf19190613dab565b6040519091508390600560fc1b90612c0d9087906020016140a8565b60408051601f1981840301815290829052612c2c939291602001614065565b604051602081830303815290604052805190602001208260004811612c52576000612c5c565b612c5c4884613c96565b965096509650505050509193909250565b600080600080600054881015612c9657604051633eb9f37d60e11b815260040160405180910390fd5b600160009054906101000a90046001600160a01b03166001600160a01b031663eca067ad6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ce9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d0d91906138ac565b881115612d2d5760405163925f8bd360e01b815260040160405180910390fd5b60015460405163432cc52b60e11b8152600481018b9052602481018a905260448101889052606481018790526001600160a01b03909116906386598a56906084016080604051808303816000875af1158015612d8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612db191906140de565b60008c9055929650909450925090508615801590612ded57507f0000000000000000000000000000000000000000000000000000000000000000155b15612dff57612dff8985486000612e0b565b95509550955095915050565b327f000000000000000000000000000000000000000000000000000000000000000015612eb1576000606c6001600160a01b031663c6f7de0e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e9791906138ac565b9050612ea34882613c96565b612ead9084613c7e565b9250505b6001600160401b03821115612eff5760405162461bcd60e51b8152602060048201526014602482015273115615149057d1d054d7d393d517d55253950d8d60621b60448201526064016106b7565b604080514260208201526001600160601b0319606084901b16918101919091526054810186905260748101859052609481018490526001600160c01b031960c084901b1660b482015260009060bc0160408051808303601f190181529082905260015481516020830120637a88b10760e01b84526001600160a01b0386811660048601526024850191909152919350600092911690637a88b107906044016020604051808303816000875af1158015612fbc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fe091906138ac565b9050807fff64905f73a67fb594e0f940a8075a860db489ad991e032f48c81123eb52d60b836040516130129190614114565b60405180910390a250505050505050565b600061302d61342c565b600061303a856028613c7e565b90507f00000000000000000000000000000000000000000000000000000000000000008111156130a657604051634634691b60e01b8152600481018290527f000000000000000000000000000000000000000000000000000000000000000060248201526044016106b7565b6000806130b28661327f565b909250905086156131a8576130e2888860008181106130d3576130d3613f64565b9050013560f81c60f81b613326565b61311d57878760008181106130f9576130f9613f64565b9050013560f81c60f81b60405163359999ab60e11b81526004016106b79190613453565b600160ff1b888860008161313357613133613f64565b6001600160f81b031992013592909216161580159150613154575060218710155b156131a8576000613169602160018a8c614147565b61317291614171565b60008181526008602052604090205490915060ff166131a65760405162f20c5d60e01b8152600481018290526024016106b7565b505b8188886040516020016131bd9392919061418f565b60408051601f1981840301815291905280516020909101209890975095505050505050565b6000808080467f00000000000000000000000000000000000000000000000000000000000000001461321f5750600192508291508190508061244e565b5050600b546001600160401b038082169350600160401b820481169250600160801b8204811691600160c01b90041661244e565b600061325d61342c565b6000806132698561327f565b8151602090920191909120969095509350505050565b606061328961342c565b6000613293613381565b905060008160000151826020015183604001518460600151886040516020016132fb95949392919060c095861b6001600160c01b0319908116825294861b8516600882015292851b8416601084015290841b8316601883015290921b16602082015260280190565b6040516020818303038152906040529050602881511461331d5761331d6141b7565b94909350915050565b60006001600160f81b03198216158061334c57506001600160f81b03198216600160ff1b145b8061336457506001600160f81b03198216601160fb1b145b8061211057506001600160f81b03198216600160fd1b1492915050565b61338961342c565b61339161342c565b60008060008061339f6131e2565b9350935093509350816001600160401b03164211156133ce576133c282426141cd565b6001600160401b031685525b6133d88142613fa3565b6001600160401b039081166020870152841643111561340a576133fb84436141cd565b6001600160401b031660408601525b6134148343613fa3565b6001600160401b031660608601525092949350505050565b60408051608081018252600080825260208201819052918101829052606081019190915290565b6001600160f81b031991909116815260200190565b60006020828403121561347a57600080fd5b5035919050565b6001600160a01b038116811461349657600080fd5b50565b60008082840360a08112156134ad57600080fd5b83356134b881613481565b92506080601f19820112156134cc57600080fd5b506020830190509250929050565b801515811461349657600080fd5b600080604083850312156134fb57600080fd5b823561350681613481565b91506020830135613516816134da565b809150509250929050565b60006020828403121561353357600080fd5b813561353e81613481565b9392505050565b60008060008060008060c0878903121561355e57600080fd5b8635955060208701356001600160401b0381111561357b57600080fd5b87016040818a03121561358d57600080fd5b9450604087013561359d81613481565b959894975094956060810135955060808101359460a0909101359350915050565b600080600080600060a086880312156135d657600080fd5b853594506020860135935060408601356135ef81613481565b94979396509394606081013594506080013592915050565b6001600160a01b0391909116815260200190565b60008083601f84011261362d57600080fd5b5081356001600160401b0381111561364457600080fd5b6020830191508360208285010111156129e357600080fd5b60008060008060006080868803121561367457600080fd5b8535945060208601356001600160401b0381111561369157600080fd5b61369d8882890161361b565b9095509350506040860135915060608601356136b881613481565b809150509295509295909350565b600080600080600080600060c0888a0312156136e157600080fd5b8735965060208801356001600160401b038111156136fe57600080fd5b61370a8a828b0161361b565b90975095505060408801359350606088013561372581613481565b969995985093969295946080840135945060a09093013592915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561378057613780613742565b604052919050565b60006080828403121561379a57600080fd5b604051608081018181106001600160401b03821117156137bc576137bc613742565b8060405250823581526020830135602082015260408301356040820152606083013560608201528091505092915050565b6000806020838503121561380057600080fd5b82356001600160401b0381111561381657600080fd5b6138228582860161361b565b90969095509350505050565b803560ff8116811461383f57600080fd5b919050565b60008060008060008060e0878903121561385d57600080fd5b8635955061386d6020880161382e565b9450608087018881111561388057600080fd5b60408801945035925060a087013561389781613481565b8092505060c087013590509295509295509295565b6000602082840312156138be57600080fd5b5051919050565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b60006020828403121561392357600080fd5b815161353e81613481565b60008235607e1983360301811261394457600080fd5b9190910192915050565b60008235609e1983360301811261394457600080fd5b803563ffffffff8116811461383f57600080fd5b8183526000602080850194508260005b858110156139ee5760ff8061399c8461382e565b168852806139ab85850161382e565b16848901526040816139be82860161382e565b169089015250606063ffffffff6139d6848301613964565b16908801526080968701969190910190600101613988565b509495945050505050565b803582526020810135602083015263ffffffff613a1860408301613964565b16604083015260006060820135601e19833603018112613a3757600080fd5b820180356001600160401b03811115613a4f57600080fd5b8060071b3603841315613a6157600080fd5b60806060860152613a79608086018260208501613978565b95945050505050565b60008235607e19833603018112613a9857600080fd5b90910192915050565b6000808335601e19843603018112613ab857600080fd5b83016020810192503590506001600160401b03811115613ad757600080fd5b8036038313156129e357600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b600063ffffffff80613b2084613964565b16845280613b3060208501613964565b1660208501526040830135605e19843603018112613b4d57600080fd5b60a060408601528301613b608180613a82565b606060a08701528035610100870152613b7c6020820182613aa1565b6080610120890152613b9361018089018284613ae6565b915050613ba36040830183613aa1565b88830360ff19016101408a0152613bbb838284613ae6565b9250505083613bcc60608401613964565b16610160880152602083013560c088015283613bea60408501613964565b1660e0880152613bfd6060870187613aa1565b945092508681036060880152613c14818585613ae6565b9350505050613c266080840184613aa1565b8583036080870152613c39838284613ae6565b9695505050505050565b604081526000613c5660408301856139f9565b8281036020840152613a798185613b0f565b634e487b7160e01b600052601160045260246000fd5b60008219821115613c9157613c91613c68565b500190565b600082613cb357634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115613cf3578160001904821115613cd957613cd9613c68565b80851615613ce657918102915b93841c9390800290613cbd565b509250929050565b600082613d0a57506001612110565b81613d1757506000612110565b8160018114613d2d5760028114613d3757613d53565b6001915050612110565b60ff841115613d4857613d48613c68565b50506001821b612110565b5060208310610133831016604e8410600b8410161715613d76575081810a612110565b613d808383613cb8565b8060001904821115613d9457613d94613c68565b029392505050565b600061353e60ff841683613cfb565b6000816000190483118215151615613dc557613dc5613c68565b500290565b60006020808385031215613ddd57600080fd5b82516001600160401b0380821115613df457600080fd5b818501915085601f830112613e0857600080fd5b815181811115613e1a57613e1a613742565b8060051b9150613e2b848301613758565b8181529183018401918481019088841115613e4557600080fd5b938501935b83851015613e6357845182529385019390850190613e4a565b98975050505050505050565b600082821015613e8157613e81613c68565b500390565b6001600160a01b039390931683526020830191909152604082015260600190565b600060208284031215613eb957600080fd5b815161353e816134da565b600060e0820190508582528460208301526001600160401b038085511660408401528060208601511660608401528060408601511660808401528060608601511660a08401525060058310613f2957634e487b7160e01b600052602160045260246000fd5b8260c083015295945050505050565b8183823760009101908152919050565b602081526000613f5c602083018486613ae6565b949350505050565b634e487b7160e01b600052603260045260246000fd5b600060208284031215613f8c57600080fd5b81356001600160401b038116811461353e57600080fd5b60006001600160401b03808316818516808303821115613fc557613fc5613c68565b01949350505050565b60005b83811015613fe9578181015183820152602001613fd1565b83811115613ff8576000848401525b50505050565b60008251613944818460208701613fce565b6020815260008235609e1984360301811261402a57600080fd5b6040602084015261404060608401858301613b0f565b905061404f6020850185613a82565b838203601f19016040850152613a7982826139f9565b60008451614077818460208901613fce565b6001600160f81b03198516908301908152835161409b816001840160208801613fce565b0160010195945050505050565b815160009082906020808601845b838110156140d2578151855293820193908201906001016140b6565b50929695505050505050565b600080600080608085870312156140f457600080fd5b505082516020840151604085015160609095015191969095509092509050565b6020815260008251806020840152614133816040850160208701613fce565b601f01601f19169190910160400192915050565b6000808585111561415757600080fd5b8386111561416457600080fd5b5050820193919092039150565b8035602083101561211057600019602084900360031b1b1692915050565b600084516141a1818460208901613fce565b8201838582376000930192835250909392505050565b634e487b7160e01b600052600160045260246000fd5b60006001600160401b03838116908316818110156141ed576141ed613c68565b03939250505056fe7394f4a19a13c7b92b5bb71033245305946ef78452f7b4986ac1390b5df4ebd7ea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456ea2646970667358221220e66c3856f53f35dc495be3147dbdb6c9ff060ea2370d14f54c5c43fc2efe036264736f6c634300080c0033000000000000000000000000000000000000000000000000000000000001cccc000000000000000000000000a6051d926c7c6b3c9b72a86a7457428709153da00000000000000000000000000000000000000000000000000000000000000000", - "accessList": [], - "hash": "0x3161575a78f6dc686a497c166a356701e827ec39859a2b72d82d1acd3fe08d4a", - "v": 1, - "r": "0xbfcb0a9b35f4480db0b7ea58bb3135d358f9bd6c7a08a1b9672d8b957f0bb257", - "s": "0x711d8ff9e785aa7cb84395723814c606519f4526eeb860c2e18cfa21c611dc9c", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "bridgeCreator": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "_ethBasedTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "_erc20BasedTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "name": "ERC20TemplatesUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - }, - { - "name": "OwnershipTransferred", - "anonymous": false, - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "TemplatesUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "createBridge", - "constant": false, - "inputs": [ - { - "name": "adminProxy", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "nativeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxTimeVariation", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "erc20BasedTemplates", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ethBasedTemplates", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "renounceOwnership", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "transferOwnership", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "updateERC20Templates", - "constant": false, - "inputs": [ - { - "name": "_newTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "updateTemplates", - "constant": false, - "inputs": [ - { - "name": "_newTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "createBridge(address,address,address,(uint256,uint256,uint256,uint256))": { - "type": "function", - "name": "createBridge", - "constant": false, - "inputs": [ - { - "name": "adminProxy", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "nativeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxTimeVariation", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "erc20BasedTemplates()": { - "type": "function", - "name": "erc20BasedTemplates", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ethBasedTemplates()": { - "type": "function", - "name": "ethBasedTemplates", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "owner()": { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "renounceOwnership()": { - "type": "function", - "name": "renounceOwnership", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "transferOwnership(address)": { - "type": "function", - "name": "transferOwnership", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "updateERC20Templates((address,address,address,address,address))": { - "type": "function", - "name": "updateERC20Templates", - "constant": false, - "inputs": [ - { - "name": "_newTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "updateTemplates((address,address,address,address,address))": { - "type": "function", - "name": "updateTemplates", - "constant": false, - "inputs": [ - { - "name": "_newTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": { - "ERC20TemplatesUpdated()": { - "name": "ERC20TemplatesUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - }, - "OwnershipTransferred(address,address)": { - "name": "OwnershipTransferred", - "anonymous": false, - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "TemplatesUpdated()": { - "name": "TemplatesUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "_ethBasedTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "_erc20BasedTemplates", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x18f37c9029967A6b6D7cC6960f348d2a4f0F2c73", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 195, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x1a226b" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60806040523480156200001157600080fd5b5060405162001ba538038062001ba5833981016040819052620000349162000241565b6200003f3362000116565b8151600180546001600160a01b03199081166001600160a01b03938416179091556020808501516002805484169185169190911790556040808601516003805485169186169190911790556060808701516004805486169187169190911790556080968701516005805486169187169190911790558551600680548616918716919091179055918501516007805485169186169190911790558401516008805484169185169190911790558301516009805483169184169190911790559190920151600a805490921692169190911790556200027c565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200017c57600080fd5b50565b80516200018c8162000166565b919050565b600060a08284031215620001a457600080fd5b60405160a081016001600160401b0381118282101715620001d557634e487b7160e01b600052604160045260246000fd5b80604052508091508251620001ea8162000166565b81526020830151620001fc8162000166565b60208201526200020f604084016200017f565b604082015262000222606084016200017f565b606082015262000235608084016200017f565b60808201525092915050565b60008061014083850312156200025657600080fd5b62000262848462000191565b9150620002738460a0850162000191565b90509250929050565b611919806200028c6000396000f3fe60806040523480156200001157600080fd5b5060043610620000825760003560e01c806311f0222714620000875780631bb7c6cc14620000f3578063715018a6146200010c57806376768ab914620001165780638da5cb5b1462000143578063b4a5cc34146200015e578063d94d6e0a14620001c5578063f2fde38b14620001dc575b600080fd5b600154600254600354600454600554620000b4946001600160a01b03908116948116938116928116911685565b604080516001600160a01b03968716815294861660208601529285169284019290925283166060830152909116608082015260a0015b60405180910390f35b6200010a62000104366004620008a9565b620001f3565b005b6200010a6200023a565b600654600754600854600954600a54620000b4946001600160a01b03908116948116938116928116911685565b6000546001600160a01b0316604051620000ea9190620008c2565b620001756200016f366004620008ec565b62000252565b604051620000ea919081516001600160a01b039081168252602080840151821690830152604080840151821690830152606080840151821690830152608092830151169181019190915260a00190565b6200010a620001d6366004620008a9565b62000539565b6200010a620001ed36600462000958565b62000580565b620001fd62000603565b8060066200020c82826200099f565b50506040517fa47434bb6d1ddd5521e8980ded6a783513e159f80437d78715b10e6e8b6bba5e90600090a150565b6200024462000603565b6200025060006200065f565b565b6200025c6200086d565b600062000283866001600160a01b038616156200027b576006620006af565b6001620006af565b90506001600160a01b038416620002ff57805160405163189acdbd60e31b81526001600160a01b039091169063c4d66de890620002c5908890600401620008c2565b600060405180830381600087803b158015620002e057600080fd5b505af1158015620002f5573d6000803e3d6000fd5b5050505062000368565b805160405163485cc95560e01b81526001600160a01b03878116600483015286811660248301529091169063485cc95590604401600060405180830381600087803b1580156200034e57600080fd5b505af115801562000363573d6000803e3d6000fd5b505050505b602081810151825160408051630fbd495960e11b81526001600160a01b039283166004820152873560248201529387013560448501528601356064840152606086013560848401521690631f7a92b29060a401600060405180830381600087803b158015620003d657600080fd5b505af1158015620003eb573d6000803e3d6000fd5b5050505060408181015182516020840151925163485cc95560e01b81526001600160a01b0391821660048201529281166024840152169063485cc95590604401600060405180830381600087803b1580156200044657600080fd5b505af11580156200045b573d6000803e3d6000fd5b505050506060810151815160405163189acdbd60e31b81526001600160a01b039092169163c4d66de8916200049391600401620008c2565b600060405180830381600087803b158015620004ae57600080fd5b505af1158015620004c3573d6000803e3d6000fd5b505050506080810151815160405163189acdbd60e31b81526001600160a01b039092169163c4d66de891620004fb91600401620008c2565b600060405180830381600087803b1580156200051657600080fd5b505af11580156200052b573d6000803e3d6000fd5b509298975050505050505050565b6200054362000603565b8060016200055282826200099f565b50506040517fc9d3947d22fa124aaec4c7e8c919f79016e2d7b48eee10568375d98b86460d1b90600090a150565b6200058a62000603565b6001600160a01b038116620005f55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b62000600816200065f565b50565b6000546001600160a01b03163314620002505760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620005ec565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b620006b96200086d565b620006c36200086d565b82546040516001600160a01b03909116908590620006e1906200089b565b620006ee92919062000a3d565b604051809103906000f0801580156200070b573d6000803e3d6000fd5b506001600160a01b0390811682526001840154604051911690859062000731906200089b565b6200073e92919062000a3d565b604051809103906000f0801580156200075b573d6000803e3d6000fd5b506001600160a01b0390811660208301526002840154604051911690859062000784906200089b565b6200079192919062000a3d565b604051809103906000f080158015620007ae573d6000803e3d6000fd5b506001600160a01b03908116604080840191909152600385015490519116908590620007da906200089b565b620007e792919062000a3d565b604051809103906000f08015801562000804573d6000803e3d6000fd5b506001600160a01b039081166060830152600484015460405191169085906200082d906200089b565b6200083a92919062000a3d565b604051809103906000f08015801562000857573d6000803e3d6000fd5b506001600160a01b031660808201529392505050565b6040805160a08101825260008082526020820181905291810182905260608101829052608081019190915290565b610e7d8062000a6783390190565b600060a08284031215620008bc57600080fd5b50919050565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200060057600080fd5b60008060008084860360e08112156200090457600080fd5b85356200091181620008d6565b945060208601356200092381620008d6565b935060408601356200093581620008d6565b92506080605f19820112156200094a57600080fd5b509295919450926060019150565b6000602082840312156200096b57600080fd5b81356200097881620008d6565b9392505050565b80546001600160a01b0319166001600160a01b0392909216919091179055565b8135620009ac81620008d6565b620009b881836200097f565b506020820135620009c981620008d6565b620009d881600184016200097f565b506040820135620009e981620008d6565b620009f881600284016200097f565b50606082013562000a0981620008d6565b62000a1881600384016200097f565b50608082013562000a2981620008d6565b62000a3881600484016200097f565b505050565b6001600160a01b039283168152911660208201526060604082018190526000908201526080019056fe608060405260405162000e7d38038062000e7d833981016040819052620000269162000490565b828162000036828260006200004d565b50620000449050826200008a565b505050620005c3565b6200005883620000e5565b600082511180620000665750805b1562000085576200008383836200012760201b620002601760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000b562000156565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e2816200018f565b50565b620000f08162000244565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200014f838360405180606001604052806027815260200162000e5660279139620002f8565b9392505050565b60006200018060008051602062000e3683398151915260001b620003de60201b620002081760201c565b546001600160a01b0316919050565b6001600160a01b038116620001fa5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022360008051602062000e3683398151915260001b620003de60201b620002081760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6200025a81620003e160201b6200028c1760201c565b620002be5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f1565b80620002237f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b620003de60201b620002081760201c565b60606001600160a01b0384163b620003625760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401620001f1565b600080856001600160a01b0316856040516200037f919062000570565b600060405180830381855af49150503d8060008114620003bc576040519150601f19603f3d011682016040523d82523d6000602084013e620003c1565b606091505b509092509050620003d4828286620003f0565b9695505050505050565b90565b6001600160a01b03163b151590565b60608315620004015750816200014f565b825115620004125782518084602001fd5b8160405162461bcd60e51b8152600401620001f191906200058e565b80516001600160a01b03811681146200044657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200047e57818101518382015260200162000464565b83811115620000835750506000910152565b600080600060608486031215620004a657600080fd5b620004b1846200042e565b9250620004c1602085016200042e565b60408501519092506001600160401b0380821115620004df57600080fd5b818601915086601f830112620004f457600080fd5b8151818111156200050957620005096200044b565b604051601f8201601f19908116603f011681019083821181831017156200053457620005346200044b565b816040528281528960208487010111156200054e57600080fd5b6200056183602083016020880162000461565b80955050505050509250925092565b600082516200058481846020870162000461565b9190910192915050565b6020815260008251806020840152620005af81604085016020870162000461565b601f01601f19169190910160400192915050565b61086380620005d36000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106ed565b610118565b61005b610093366004610708565b61015f565b3480156100a457600080fd5b506100ad6101d0565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106ed565b61020b565b3480156100f557600080fd5b506100ad610235565b61010661029b565b61011661011161033a565b610344565b565b610120610368565b6001600160a01b0316336001600160a01b03161415610157576101548160405180602001604052806000815250600061039b565b50565b6101546100fe565b610167610368565b6001600160a01b0316336001600160a01b031614156101c8576101c38383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061039b915050565b505050565b6101c36100fe565b60006101da610368565b6001600160a01b0316336001600160a01b03161415610200576101fb61033a565b905090565b6102086100fe565b90565b610213610368565b6001600160a01b0316336001600160a01b0316141561015757610154816103c6565b600061023f610368565b6001600160a01b0316336001600160a01b03161415610200576101fb610368565b606061028583836040518060600160405280602781526020016108076027913961041a565b9392505050565b6001600160a01b03163b151590565b6102a3610368565b6001600160a01b0316336001600160a01b031614156101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101fb6104f5565b3660008037600080366000845af43d6000803e808015610363573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6103a48361051d565b6000825111806103b15750805b156101c3576103c08383610260565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103ef610368565b604080516001600160a01b03928316815291841660208301520160405180910390a16101548161055d565b60606104258461028c565b6104805760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610331565b600080856001600160a01b03168560405161049b91906107b7565b600060405180830381855af49150503d80600081146104d6576040519150601f19603f3d011682016040523d82523d6000602084013e6104db565b606091505b50915091506104eb828286610606565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61038c565b6105268161063f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105c25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610331565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60608315610615575081610285565b8251156106255782518084602001fd5b8160405162461bcd60e51b815260040161033191906107d3565b6106488161028c565b6106aa5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610331565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6105e5565b80356001600160a01b03811681146106e857600080fd5b919050565b6000602082840312156106ff57600080fd5b610285826106d1565b60008060006040848603121561071d57600080fd5b610726846106d1565b9250602084013567ffffffffffffffff8082111561074357600080fd5b818601915086601f83011261075757600080fd5b81358181111561076657600080fd5b87602082850101111561077857600080fd5b6020830194508093505050509250925092565b60005b838110156107a657818101518382015260200161078e565b838111156103c05750506000910152565b600082516107c981846020870161078b565b9190910192915050565b60208152600082518060208401526107f281604085016020870161078b565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220b443311d3bfcd8adf6febdfd2ccac26e84b8453cf5949581b52011aeeb08010564736f6c634300080c0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220bc5311313d32d7e9b0defd88b0ae0e5740ebda46e69953830b306adbce807c4c64736f6c634300080c00330000000000000000000000001e6cde2f753a12022ed657336ff8aac23cb25b6e0000000000000000000000000940ec189dc92fed8ceacaf67eda942fb7cabae6000000000000000000000000dbf7cf46a1764debf86560f1449f2aec51a19c4c000000000000000000000000c823d55644db5064795ce80139139ae914d40bd4000000000000000000000000449df3033c45106875b5071701a95426c226a12c00000000000000000000000061c0f4b7483178eb7bb61872c3c24b7036dcacab0000000000000000000000006a9646ef01d6ab959b883fb0306f0a11ab361d4e0000000000000000000000008be3a262ec70de342d6a673ff5334bad2fd230fb000000000000000000000000a2ccf08e548d7e33979bc1f61adfb7b34944a6f10000000000000000000000003498116d23252df4a3c9ac91d81e934e035dab70", - "accessList": [], - "hash": "0x51c56ad41dc538cae451219f42482e90b6d01b35938b252b6a80f57a9cf9aebb", - "v": 0, - "r": "0xbbf3b125536d0e02c12dbbe428b43b97bf466e6249de61c3de979010d0eb25e1", - "s": "0x0d9b5daf6f3d7ed221758d7c06a5fe92fd75cedebe376bc587c91954710e1479", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "prover0": { - "interface": { - "fragments": [ - { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "executeOneStep((uint256,address),(uint8,(((uint8,uint256)[]),bytes32),(bytes32,bytes32),(((uint8,uint256)[]),bytes32),(((uint8,uint256),bytes32,uint32,uint32)[],bytes32),(bytes32,bytes32),bytes32,uint32,uint32,uint32,bytes32,bytes32),(bytes32,(uint64,uint64,bytes32),bytes32,bytes32,bytes32,uint32),(uint16,uint256),bytes)": { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0xBe10da73Ead5e971D10FA40A4BA20a5aB3D82ccF", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 196, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x265190" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b50612c11806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80633604366f14610030575b600080fd5b61004361003e36600461209a565b61005a565b6040516100519291906122ae565b60405180910390f35b610062611f0b565b61006a611fec565b610073876127d6565b915061008436879003870187612912565b9050600061009560208701876129b4565b905061204461ffff82166100ac57506102eb6102cd565b61ffff8216600114156100c257506102f66102cd565b61ffff8216600f14156100d857506102fd6102cd565b61ffff8216601014156100ee57506103246102cd565b61ffff8216618009141561010557506103c06102cd565b61ffff821661800b141561011c575061043e6102cd565b61ffff821661800c141561013357506104ce6102cd565b61ffff821661800a141561014a57506106116102cd565b61ffff82166011141561016057506107026102cd565b61ffff821661800314156101775750610ae06102cd565b61ffff8216618004141561018e5750610b206102cd565b61ffff8216602014156101a45750610b7e6102cd565b61ffff8216602114156101ba5750610bc06102cd565b61ffff8216602314156101d05750610c056102cd565b61ffff8216602414156101e65750610c2d6102cd565b61ffff821661800214156101fd5750610c5d6102cd565b61ffff8216601a14156102135750610cfa6102cd565b61ffff8216601b14156102295750610d076102cd565b604161ffff8316108015906102435750604461ffff831611155b156102515750610d766102cd565b61ffff8216618005148061026a575061ffff8216618006145b156102785750610e6a6102cd565b61ffff8216618008141561028f5750610f3d6102cd565b60405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f4f50434f444560901b60448201526064015b60405180910390fd5b6102de84848989898663ffffffff16565b5050965096945050505050565b505060029092525050565b5050505050565b600061030c8660800151610f4c565b805190915061031c908790610fec565b505050505050565b61033b61033086611065565b6020870151906110e2565b600061034a86608001516110ee565b905061036761035c826040015161113a565b6020880151906110e2565b61037761035c826060015161113a565b602084013563ffffffff811681146103a15760405162461bcd60e51b81526004016102c4906129d8565b63ffffffff166101008701525050600061012090940193909352505050565b6103cc61033086611065565b6103dc6103308660e0015161113a565b6103ec6103308560a0015161113a565b6020808401359081901c604082901c156104185760405162461bcd60e51b81526004016102c4906129ff565b63ffffffff90811660e08801521661010086015250506000610120909301929092525050565b61044a61033086611065565b600061045986608001516110ee565b905061046b61035c826040015161113a565b61047b61035c826060015161113a565b6020808501359081901c604082901c156104a75760405162461bcd60e51b81526004016102c4906129ff565b63ffffffff90811660e0890152166101008701525050600061012090940193909352505050565b60008360200135905060006104ee6104e9886020015161116d565b61118c565b90506104f8611fec565b604080516020810190915260608152600061051487878361121d565b90935090506105248787836112e1565b6101608c015191935091506105448363ffffffff8088169087906113bb16565b1461059c5760405162461bcd60e51b815260206004820152602260248201527f43524f53535f4d4f44554c455f494e5445524e414c5f4d4f44554c45535f524f60448201526113d560f21b60648201526084016102c4565b6105b36105a88b611065565b60208c0151906110e2565b6105c36105a88b60e0015161113a565b6105d36105a88a60a0015161113a565b63ffffffff841660e08b015260a08301516105ee9086612a4c565b63ffffffff166101008b0152505060006101209098019790975250505050505050565b61061d61033086611065565b61062d6103308660e0015161113a565b61063d6103308560a0015161113a565b600061064c86608001516110ee565b9050806060015163ffffffff166000141561066b5750600285526102f6565b602084013563ffffffff811681146106c55760405162461bcd60e51b815260206004820152601d60248201527f4241445f43414c4c45525f494e5445524e414c5f43414c4c5f4441544100000060448201526064016102c4565b604082015163ffffffff1660e088015260608201516106e5908290612a4c565b63ffffffff16610100880152505060006101208601525050505050565b6000806107156104e9886020015161116d565b90506000806000808060006107366040518060200160405280606081525090565b6107418b8b87611406565b955093506107508b8b8761146d565b90965094506107608b8b87611489565b9550925061076f8b8b87611406565b9550915061077e8b8b8761146d565b909750945061078e8b8b876112e1565b6040516d21b0b6361034b73234b932b1ba1d60911b60208201526001600160c01b031960c088901b16602e8201526036810189905290965090915060009060560160408051601f19818403018152919052805160209182012091508d013581146108335760405162461bcd60e51b81526020600482015260166024820152754241445f43414c4c5f494e4449524543545f4441544160501b60448201526064016102c4565b610849826001600160401b03871686868c6114bf565b90508d6040015181146108905760405162461bcd60e51b815260206004820152600f60248201526e10905117d51050931154d7d493d3d5608a1b60448201526064016102c4565b826001600160401b03168963ffffffff16106108ba57505060028d52506102f69650505050505050565b505050505060006108db604080518082019091526000808252602082015290565b6040805160208101909152606081526108f58a8a8661146d565b945092506109048a8a86611561565b945091506109138a8a866112e1565b9450905060006109308263ffffffff808b16908790879061165d16565b90508681146109755760405162461bcd60e51b815260206004820152601160248201527010905117d153115351539514d7d493d3d5607a1b60448201526064016102c4565b8584146109a5578d60025b908160038111156109935761099361217f565b815250505050505050505050506102f6565b6004835160068111156109ba576109ba61217f565b14156109c8578d6002610980565b6005835160068111156109dd576109dd61217f565b1415610a3c576020830151985063ffffffff89168914610a375760405162461bcd60e51b81526020600482015260156024820152744241445f46554e435f5245465f434f4e54454e545360581b60448201526064016102c4565b610a74565b60405162461bcd60e51b815260206004820152600d60248201526c4241445f454c454d5f5459504560981b60448201526064016102c4565b5050505050505050610a8861035c87611065565b6000610a9787608001516110ee565b9050610ab4610aa9826040015161113a565b6020890151906110e2565b610ac4610aa9826060015161113a565b5063ffffffff1661010086015260006101208601525050505050565b602083013563ffffffff81168114610b0a5760405162461bcd60e51b81526004016102c4906129d8565b63ffffffff166101209095019490945250505050565b6000610b326104e9876020015161116d565b905063ffffffff81161561031c57602084013563ffffffff81168114610b6a5760405162461bcd60e51b81526004016102c4906129d8565b63ffffffff16610120870152505050505050565b6000610b8d86608001516110ee565b90506000610ba58260200151866020013586866116f9565b6020880151909150610bb790826110e2565b50505050505050565b6000610bcf866020015161116d565b90506000610be087608001516110ee565b9050610bf781602001518660200135848787611791565b602090910152505050505050565b6000610c1b8560000151856020013585856116f9565b602087015190915061031c90826110e2565b6000610c3c866020015161116d565b9050610c5385600001518560200135838686611791565b9094525050505050565b6000610c6c866020015161116d565b90506000610c7d876020015161116d565b90506000610c8e886020015161116d565b905060006040518060800160405280838152602001886020013560001b8152602001610cb98561118c565b63ffffffff168152602001610ccd8661118c565b63ffffffff168152509050610cef818a6080015161182b90919063ffffffff16565b505050505050505050565b61031c856020015161116d565b6000610d196104e9876020015161116d565b90506000610d2a876020015161116d565b90506000610d3b886020015161116d565b905063ffffffff831615610d5d576020880151610d5890826110e2565b610d6c565b6020880151610d6c90836110e2565b5050505050505050565b6000610d8560208501856129b4565b9050600061ffff821660411415610d9e57506000610e21565b61ffff821660421415610db357506001610e21565b61ffff821660431415610dc857506002610e21565b61ffff821660441415610ddd57506003610e21565b60405162461bcd60e51b8152602060048201526019602482015278434f4e53545f505553485f494e56414c49445f4f50434f444560381b60448201526064016102c4565b610bb76040518060400160405280836006811115610e4157610e4161217f565b815260200187602001356001600160401b031681525088602001516110e290919063ffffffff16565b6040805180820190915260008082526020820152618005610e8e60208601866129b4565b61ffff161415610ebc57610ea5866020015161116d565b6060870151909150610eb790826110e2565b61031c565b618006610ecc60208601866129b4565b61ffff161415610ef557610ee3866060015161116d565b6020870151909150610eb790826110e2565b60405162461bcd60e51b815260206004820152601c60248201527f4d4f56455f494e5445524e414c5f494e56414c49445f4f50434f44450000000060448201526064016102c4565b6000610c1b8660200151611912565b610f5461204e565b815151600114610f765760405162461bcd60e51b81526004016102c490612a74565b81518051600090610f8957610f89612a9f565b6020026020010151905060006001600160401b03811115610fac57610fac612426565b604051908082528060200260200182016040528015610fe557816020015b610fd261204e565b815260200190600190039081610fca5790505b5090915290565b6004815160068111156110015761100161217f565b1415611025578160025b9081600381111561101e5761101e61217f565b9052505050565b60068151600681111561103a5761103a61217f565b146110475781600261100b565b611055828260200151611940565b6110615781600261100b565b5050565b60408051808201909152600080825260208201526110dc8261012001518361010001518460e001516040805180820190915260008082526020820152506040805180820182526006815263ffffffff94909416602093841b67ffffffff00000000161791901b63ffffffff60401b16179082015290565b92915050565b81516110619082611982565b6110f661204e565b8151516001146111185760405162461bcd60e51b81526004016102c490612a74565b8151805160009061112b5761112b612a9f565b60200260200101519050919050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b604080518082019091526000808252602082015281516110dc90611a4b565b602081015160009081835160068111156111a8576111a861217f565b146111df5760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b60448201526064016102c4565b64010000000081106110dc5760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016102c4565b611225611fec565b604080516060810182526000808252602082018190529181018290528391906000806000806112558b8b8961146d565b975095506112648b8b89611b54565b975094506112738b8b8961146d565b975093506112828b8b8961146d565b975092506112918b8b8961146d565b975091506112a08b8b89611bcf565b6040805160c081018252988952602089019790975295870194909452506060850191909152608084015263ffffffff1660a083015290969095509350505050565b6040805160208101909152606081528160006112fe868684611489565b92509050600060ff82166001600160401b0381111561131f5761131f612426565b604051908082528060200260200182016040528015611348578160200160208202803683370190505b50905060005b8260ff168160ff16101561139f5761136788888661146d565b838360ff168151811061137c5761137c612a9f565b60200260200101819650828152505050808061139790612ab5565b91505061134e565b5060405180602001604052808281525093505050935093915050565b60006113fc84846113cb85611c2a565b6040518060400160405280601381526020017226b7b23ab6329036b2b935b632903a3932b29d60691b815250611cc3565b90505b9392505050565b600081815b6008811015611464576008836001600160401b0316901b925085858381811061143657611436612a9f565b919091013560f81c9390931792508161144e81612ad5565b925050808061145c90612ad5565b91505061140b565b50935093915050565b6000818161147c868684611dcd565b9097909650945050505050565b60008184848281811061149e5761149e612a9f565b919091013560f81c92508190506114b481612ad5565b915050935093915050565b604051652a30b136329d60d11b60208201526001600160f81b031960f885901b1660268201526001600160c01b031960c084901b166027820152602f81018290526000908190604f01604051602081830303815290604052805190602001209050611556878783604051806040016040528060128152602001712a30b136329036b2b935b632903a3932b29d60711b815250611cc3565b979650505050505050565b604080518082019091526000808252602082015281600085858381811061158a5761158a612a9f565b919091013560f81c91508290506115a081612ad5565b9250506115ab600690565b60068111156115bc576115bc61217f565b60ff168160ff1611156116025760405162461bcd60e51b815260206004820152600e60248201526d4241445f56414c55455f5459504560901b60448201526064016102c4565b600061160f878785611dcd565b809450819250505060405180604001604052808360ff1660068111156116375761163761217f565b60068111156116485761164861217f565b81526020018281525093505050935093915050565b6000808361166a84611e22565b6040516d2a30b136329032b632b6b2b73a1d60911b6020820152602e810192909252604e820152606e016040516020818303038152906040528051906020012090506116ed8686836040518060400160405280601a81526020017f5461626c6520656c656d656e74206d65726b6c6520747265653a000000000000815250611cc3565b9150505b949350505050565b60408051808201909152600080825260208201526000611729604080518082019091526000808252602082015290565b604080516020810190915260608152611743868685611561565b935091506117528686856112e1565b935090506000611763828985611e3f565b90508881146117845760405162461bcd60e51b81526004016102c490612af0565b5090979650505050505050565b60006117ad604080518082019091526000808252602082015290565b60006117c56040518060200160405280606081525090565b6117d0868684611561565b90935091506117e08686846112e1565b9250905060006117f1828a86611e3f565b90508981146118125760405162461bcd60e51b81526004016102c490612af0565b61181d828a8a611e3f565b9a9950505050505050505050565b81515160009061183c906001612b1b565b6001600160401b0381111561185357611853612426565b60405190808252806020026020018201604052801561188c57816020015b61187961204e565b8152602001906001900390816118715790505b50905060005b8351518110156118e85783518051829081106118b0576118b0612a9f565b60200260200101518282815181106118ca576118ca612a9f565b602002602001018190525080806118e090612ad5565b915050611892565b5081818460000151518151811061190157611901612a9f565b602090810291909101015290915250565b6040805180820190915260008082526020820152815151516113ff611938600183612b33565b845190611e7f565b6000606082901c15611954575060006110dc565b5063ffffffff818116610120840152602082901c811661010084015260409190911c1660e090910152600190565b815151600090611993906001612b1b565b6001600160401b038111156119aa576119aa612426565b6040519080825280602002602001820160405280156119ef57816020015b60408051808201909152600080825260208201528152602001906001900390816119c85790505b50905060005b8351518110156118e8578351805182908110611a1357611a13612a9f565b6020026020010151828281518110611a2d57611a2d612a9f565b60200260200101819052508080611a4390612ad5565b9150506119f5565b604080518082019091526000808252602082015281518051611a6f90600190612b33565b81518110611a7f57611a7f612a9f565b6020026020010151905060006001836000015151611a9d9190612b33565b6001600160401b03811115611ab457611ab4612426565b604051908082528060200260200182016040528015611af957816020015b6040805180820190915260008082526020820152815260200190600190039081611ad25790505b50905060005b8151811015610fe5578351805182908110611b1c57611b1c612a9f565b6020026020010151828281518110611b3657611b36612a9f565b60200260200101819052508080611b4c90612ad5565b915050611aff565b60408051606081018252600080825260208201819052918101919091528160008080611b81888886611406565b94509250611b90888886611406565b94509150611b9f88888661146d565b604080516060810182526001600160401b0396871681529490951660208501529383015250969095509350505050565b600081815b60048110156114645760088363ffffffff16901b9250858583818110611bfc57611bfc612a9f565b919091013560f81c93909317925081611c1481612ad5565b9250508080611c2290612ad5565b915050611bd4565b60008160000151611c3e8360200151611eb7565b6040808501516060860151608087015160a08801519351611ca6969594906020016626b7b23ab6329d60c91b81526007810196909652602786019490945260478501929092526067840152608783015260e01b6001600160e01b03191660a782015260ab0190565b604051602081830303815290604052805190602001209050919050565b8160005b855151811015611d8c5760018516611d2857828287600001518381518110611cf157611cf1612a9f565b6020026020010151604051602001611d0b93929190612b4a565b604051602081830303815290604052805190602001209150611d73565b8286600001518281518110611d3f57611d3f612a9f565b602002602001015183604051602001611d5a93929190612b4a565b6040516020818303038152906040528051906020012091505b60019490941c9380611d8481612ad5565b915050611cc7565b5083156116f15760405162461bcd60e51b815260206004820152600f60248201526e141493d3d197d513d3d7d4d213d495608a1b60448201526064016102c4565b600081815b602081101561146457600883901b9250858583818110611df457611df4612a9f565b919091013560f81c93909317925081611e0c81612ad5565b9250508080611e1a90612ad5565b915050611dd2565b600081600001518260200151604051602001611ca6929190612b90565b60006113fc8484611e4f85611e22565b604051806040016040528060128152602001712b30b63ab29036b2b935b632903a3932b29d60711b815250611cc3565b60408051808201909152600080825260208201528251805183908110611ea757611ea7612a9f565b6020026020010151905092915050565b805160208083015160408085015190516626b2b6b7b93c9d60c91b938101939093526001600160c01b031960c094851b811660278501529190931b16602f8201526037810191909152600090605701611ca6565b6040805161018081019091528060008152602001611f4060408051606080820183529181019182529081526000602082015290565b8152604080518082018252600080825260208083019190915283015201611f7e60408051606080820183529181019182529081526000602082015290565b8152602001611fa3604051806040016040528060608152602001600080191681525090565b815260408051808201825260008082526020808301829052840191909152908201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6040805160c081019091526000815260208101612022604080516060810182526000808252602082018190529181019190915290565b8152600060208201819052604082018190526060820181905260809091015290565b61204c612bc5565b565b6040805160c08101825260006080820181815260a08301829052825260208201819052918101829052606081019190915290565b60006040828403121561209457600080fd5b50919050565b6000806000806000808688036101c0808212156120b657600080fd5b6120c08a8a612082565b975060408901356001600160401b03808211156120dc57600080fd5b818b01915082828d0312156120f057600080fd5b819850610100605f198501121561210657600080fd5b60608b01975061211a8c6101608d01612082565b96506101a08b013593508084111561213157600080fd5b838b0193508b601f85011261214557600080fd5b833592508083111561215657600080fd5b505089602082840101111561216a57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b600481106121a5576121a561217f565b9052565b8051600781106121bb576121bb61217f565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015612218576122048286516121a9565b9382019360019390930192908501906121f1565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b828110156122975784516122638582516121a9565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a09093019260010161224e565b509687015197909601969096525093949350505050565b60006101208083526122c38184018651612195565b60208501516101c061014081818701526122e16102e08701846121c8565b925060408801516101606123018189018380518252602090810151910152565b60608a0151915061011f1980898703016101a08a015261232186846121c8565b955060808b015192508089870301858a01525061233e858361222c565b60a08b015180516101e08b015260208101516102008b0152909550935060c08a015161022089015260e08a015163ffffffff81166102408a015293506101008a015163ffffffff81166102608a015293509489015163ffffffff811661028089015294918901516102a0880152508701516102c08601525091506113ff905060208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a0830152608081015160c083015263ffffffff60a08201511660e08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b038111828210171561245e5761245e612426565b60405290565b604051602081016001600160401b038111828210171561245e5761245e612426565b604051608081016001600160401b038111828210171561245e5761245e612426565b60405161018081016001600160401b038111828210171561245e5761245e612426565b60405160c081016001600160401b038111828210171561245e5761245e612426565b604051606081016001600160401b038111828210171561245e5761245e612426565b604051601f8201601f191681016001600160401b038111828210171561253757612537612426565b604052919050565b80356004811061254e57600080fd5b919050565b60006001600160401b0382111561256c5761256c612426565b5060051b60200190565b60006040828403121561258857600080fd5b61259061243c565b90508135600781106125a157600080fd5b808252506020820135602082015292915050565b600060408083850312156125c857600080fd5b6125d061243c565b915082356001600160401b03808211156125e957600080fd5b818501915060208083880312156125ff57600080fd5b612607612464565b83358381111561261657600080fd5b80850194505087601f85011261262b57600080fd5b8335925061264061263b84612553565b61250f565b83815260069390931b8401820192828101908985111561265f57600080fd5b948301945b84861015612685576126768a87612576565b82529486019490830190612664565b8252508552948501359484019490945250909392505050565b6000604082840312156126b057600080fd5b6126b861243c565b9050813581526020820135602082015292915050565b803563ffffffff8116811461254e57600080fd5b600060408083850312156126f557600080fd5b6126fd61243c565b915082356001600160401b0381111561271557600080fd5b8301601f8101851361272657600080fd5b8035602061273661263b83612553565b82815260a0928302840182019282820191908985111561275557600080fd5b948301945b848610156127be5780868b0312156127725760008081fd5b61277a612486565b6127848b88612576565b81528787013585820152606061279b8189016126ce565b898301526127ab608089016126ce565b908201528352948501949183019161275a565b50808752505080860135818601525050505092915050565b60006101c082360312156127e957600080fd5b6127f16124a8565b6127fa8361253f565b815260208301356001600160401b038082111561281657600080fd5b612822368387016125b5565b6020840152612834366040870161269e565b6040840152608085013591508082111561284d57600080fd5b612859368387016125b5565b606084015260a085013591508082111561287257600080fd5b5061287f368286016126e2565b6080830152506128923660c0850161269e565b60a08201526101008084013560c08301526101206128b18186016126ce565b60e08401526101406128c48187016126ce565b8385015261016092506128d88387016126ce565b91840191909152610180850135908301526101a090930135928101929092525090565b80356001600160401b038116811461254e57600080fd5b600081830361010081121561292657600080fd5b61292e6124cb565b833581526060601f198301121561294457600080fd5b61294c6124ed565b915061295a602085016128fb565b8252612968604085016128fb565b6020830152606084013560408301528160208201526080840135604082015260a0840135606082015260c084013560808201526129a760e085016126ce565b60a0820152949350505050565b6000602082840312156129c657600080fd5b813561ffff811681146113ff57600080fd5b6020808252600d908201526c4241445f43414c4c5f4441544160981b604082015260600190565b6020808252601a908201527f4241445f43524f53535f4d4f44554c455f43414c4c5f44415441000000000000604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600063ffffffff808316818516808303821115612a6b57612a6b612a36565b01949350505050565b6020808252601190820152700848288beae929c889eaebe988a9c8ea89607b1b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060ff821660ff811415612acc57612acc612a36565b60010192915050565b6000600019821415612ae957612ae9612a36565b5060010190565b60208082526011908201527015d493d391d7d3515492d31157d493d3d5607a1b604082015260600190565b60008219821115612b2e57612b2e612a36565b500190565b600082821015612b4557612b45612a36565b500390565b6000845160005b81811015612b6b5760208188018101518583015201612b51565b81811115612b7a576000828501525b5091909101928352506020820152604001919050565b652b30b63ab29d60d11b8152600060078410612bae57612bae61217f565b5060f89290921b6006830152600782015260270190565b634e487b7160e01b600052605160045260246000fdfea26469706673582212208ce563f497be1e8433200c61cbeaf514492787b96761911281a51d764c7db88364736f6c634300080c0033", - "accessList": [], - "hash": "0xc8efe5792161372b2cff241763fbffe20a35d885197667bbf608b1da1ec19cc7", - "v": 1, - "r": "0x16d9cfa42803c95bb66d470f5e58fbf2a397b9604cdf0fbea62d1cba80aae0e1", - "s": "0x540fe4e5e03a24d077fab043abe93925c442e5ee2f598b13c06f193a57e082f5", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "proverMem": { - "interface": { - "fragments": [ - { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "executeOneStep((uint256,address),(uint8,(((uint8,uint256)[]),bytes32),(bytes32,bytes32),(((uint8,uint256)[]),bytes32),(((uint8,uint256),bytes32,uint32,uint32)[],bytes32),(bytes32,bytes32),bytes32,uint32,uint32,uint32,bytes32,bytes32),(bytes32,(uint64,uint64,bytes32),bytes32,bytes32,bytes32,uint32),(uint16,uint256),bytes)": { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x9bb0410Fb60e3D9F90362048CE9EF4F2b101CC67", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 197, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x1ba37e" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b50611f84806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80633604366f14610030575b600080fd5b61004361003e366004611444565b61005a565b604051610051929190611658565b60405180910390f35b610062611341565b6040805160c081018252600080825282516060808201855282825260208083018490528286018490528401919091529282018190529181018290526080810182905260a08101919091526100b587611b80565b91506100c636879003870187611cbc565b905060006100d76020870187611d5e565b9050611422602861ffff8316108015906100f65750603561ffff831611155b1561010457506101bb61019d565b603661ffff83161080159061011e5750603e61ffff831611155b1561012c575061062661019d565b61ffff8216603f141561014257506109d061019d565b61ffff8216604014156101585750610a0861019d565b60405162461bcd60e51b8152602060048201526015602482015274494e56414c49445f4d454d4f52595f4f50434f444560581b60448201526064015b60405180910390fd5b6101ae84848989898663ffffffff16565b5050965096945050505050565b6000808060286101ce6020880188611d5e565b61ffff1614156101e7575060009150600490508161043c565b60296101f66020880188611d5e565b61ffff16141561021057506001915060089050600061043c565b602a61021f6020880188611d5e565b61ffff16141561023957506002915060049050600061043c565b602b6102486020880188611d5e565b61ffff16141561026257506003915060089050600061043c565b602c6102716020880188611d5e565b61ffff16141561028a575060009150600190508061043c565b602d6102996020880188611d5e565b61ffff1614156102b2575060009150600190508161043c565b602e6102c16020880188611d5e565b61ffff1614156102db57506000915060029050600161043c565b602f6102ea6020880188611d5e565b61ffff161415610303575060009150600290508161043c565b60306103126020880188611d5e565b61ffff16141561032a5750600191508190508061043c565b60316103396020880188611d5e565b61ffff161415610352575060019150819050600061043c565b60326103616020880188611d5e565b61ffff16141561037a575060019150600290508161043c565b60336103896020880188611d5e565b61ffff1614156103a357506001915060029050600061043c565b60346103b26020880188611d5e565b61ffff1614156103cb575060019150600490508161043c565b60356103da6020880188611d5e565b61ffff1614156103f457506001915060049050600061043c565b60405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d454d4f52595f4c4f41445f4f50434f44450000000000006044820152606401610194565b600061045361044e8a60200151610ab7565b610adc565b6104679063ffffffff166020890135611d98565b602089015190915060009081906104829084878b8b86610b6d565b5091509150811561049d575050600289525061061f92505050565b8084156105dc578560011480156104c5575060008760068111156104c3576104c3611529565b145b156104db578060000b63ffffffff1690506105dc565b8560011480156104fc575060018760068111156104fa576104fa611529565b145b156105095760000b6105dc565b85600214801561052a5750600087600681111561052857610528611529565b145b15610540578060010b63ffffffff1690506105dc565b8560021480156105615750600187600681111561055f5761055f611529565b145b1561056e5760010b6105dc565b85600414801561058f5750600187600681111561058d5761058d611529565b145b1561059c5760030b6105dc565b60405162461bcd60e51b815260206004820152601560248201527410905117d491505117d096551154d7d4d251d39151605a1b6044820152606401610194565b61061760405180604001604052808960068111156105fc576105fc611529565b81526001600160401b0384166020918201528e015190610c45565b505050505050505b5050505050565b6000808060366106396020880188611d5e565b61ffff16141561064f57506004915060006107be565b603761065e6020880188611d5e565b61ffff16141561067457506008915060016107be565b60386106836020880188611d5e565b61ffff16141561069957506004915060026107be565b60396106a86020880188611d5e565b61ffff1614156106be57506008915060036107be565b603a6106cd6020880188611d5e565b61ffff1614156106e357506001915060006107be565b603b6106f26020880188611d5e565b61ffff16141561070857506002915060006107be565b603c6107176020880188611d5e565b61ffff16141561072c575060019150816107be565b603d61073b6020880188611d5e565b61ffff16141561075157506002915060016107be565b603e6107606020880188611d5e565b61ffff16141561077657506004915060016107be565b60405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f4d454d4f52595f53544f52455f4f50434f444500000000006044820152606401610194565b60006107cd8960200151610ab7565b90508160068111156107e1576107e1611529565b815160068111156107f4576107f4611529565b146108325760405162461bcd60e51b815260206004820152600e60248201526d4241445f53544f52455f5459504560901b6044820152606401610194565b806020015192506008846001600160401b0316101561087d576001610858856008611db0565b6001600160401b031660016001600160401b0316901b6108789190611ddf565b831692505b5050600061089161044e8960200151610ab7565b6108a59063ffffffff166020880135611d98565b90508660200151600001516001600160401b0316836001600160401b0316826108ce9190611d98565b11156108e0575050600286525061061f565b604080516020810190915260608152600090600019906000805b876001600160401b03168110156109ad5760006109178288611d98565b90506000610926602083611e1d565b905085811461096b57600019861461094d57610943858786610c55565b60208f0151604001525b61095e8e60200151828e8e8b610cd6565b9098509196509094509250845b6000610978602084611e31565b905061098585828c610d70565b945060088a6001600160401b0316901c995050505080806109a590611e45565b9150506108fa565b506109b9828483610c55565b60208c015160400152505050505050505050505050565b6020840151516000906109e7906201000090611e60565b9050610a006109f582610df5565b602088015190610c45565b505050505050565b602084015151600090610a1f906201000090611e60565b90506000610a3361044e8860200151610ab7565b90506000610a4a63ffffffff808416908516611d98565b90508660200151602001516001600160401b03168111610a9f57610a716201000082611e86565b60208801516001600160401b039091169052610a9a610a8f84610df5565b60208a015190610c45565b610aad565b610aad610a8f600019610df5565b5050505050505050565b60408051808201909152600080825260208201528151610ad690610e28565b92915050565b60208101516000908183516006811115610af857610af8611529565b14610b2f5760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b6044820152606401610194565b6401000000008110610ad65760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b6044820152606401610194565b8551600090819081906001600160401b0316610b89888a611d98565b1115610b9e5750600191506000905082610c39565b600019600080805b8a811015610c2c576000610bba828e611d98565b90506000610bc9602083611e1d565b9050858114610be957610bdf8f828e8e8e610cd6565b509a509095509350845b6000610bf6602084611e31565b9050610c03846008611e86565b610c0d8783610f38565b60ff16901b851794505050508080610c2490611e45565b915050610ba6565b5060009550935085925050505b96509650969350505050565b8151610c519082610fb2565b5050565b6040516b26b2b6b7b93c903632b0b31d60a11b6020820152602c81018290526000908190604c01604051602081830303815290604052805190602001209050610ccb8585836040518060400160405280601381526020017226b2b6b7b93c9036b2b935b632903a3932b29d60691b8152506110a5565b9150505b9392505050565b600080610cef6040518060200160405280606081525090565b839150610cfd8686846111b7565b9093509150610d0d8686846111d3565b925090506000610d1e828986610c55565b905088604001518114610d645760405162461bcd60e51b815260206004820152600e60248201526d15d493d391d7d3515357d493d3d560921b6044820152606401610194565b50955095509592505050565b600060208310610dba5760405162461bcd60e51b81526020600482015260156024820152740848288bea68aa8be988a828cbe84b2a88abe9288b605b1b6044820152606401610194565b600083610dc960016020611ea5565b610dd39190611ea5565b610dde906008611e86565b60ff848116821b911b198616179150509392505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b604080518082019091526000808252602082015281518051610e4c90600190611ea5565b81518110610e5c57610e5c611ebc565b6020026020010151905060006001836000015151610e7a9190611ea5565b6001600160401b03811115610e9157610e916117d0565b604051908082528060200260200182016040528015610ed657816020015b6040805180820190915260008082526020820152815260200190600190039081610eaf5790505b50905060005b8151811015610f31578351805182908110610ef957610ef9611ebc565b6020026020010151828281518110610f1357610f13611ebc565b60200260200101819052508080610f2990611e45565b915050610edc565b5090915290565b600060208210610f835760405162461bcd60e51b81526020600482015260166024820152750848288bea0aa9898be988a828cbe84b2a88abe9288b60531b6044820152606401610194565b600082610f9260016020611ea5565b610f9c9190611ea5565b610fa7906008611e86565b9390931c9392505050565b815151600090610fc3906001611d98565b6001600160401b03811115610fda57610fda6117d0565b60405190808252806020026020018201604052801561101f57816020015b6040805180820190915260008082526020820152815260200190600190039081610ff85790505b50905060005b83515181101561107b57835180518290811061104357611043611ebc565b602002602001015182828151811061105d5761105d611ebc565b6020026020010181905250808061107390611e45565b915050611025565b5081818460000151518151811061109457611094611ebc565b602090810291909101015290915250565b8160005b85515181101561116e576001851661110a578282876000015183815181106110d3576110d3611ebc565b60200260200101516040516020016110ed93929190611ed2565b604051602081830303815290604052805190602001209150611155565b828660000151828151811061112157611121611ebc565b60200260200101518360405160200161113c93929190611ed2565b6040516020818303038152906040528051906020012091505b60019490941c938061116681611e45565b9150506110a9565b5083156111af5760405162461bcd60e51b815260206004820152600f60248201526e141493d3d197d513d3d7d4d213d495608a1b6044820152606401610194565b949350505050565b600081816111c68686846112ad565b9097909650945050505050565b6040805160208101909152606081528160006111f086868461130b565b92509050600060ff82166001600160401b03811115611211576112116117d0565b60405190808252806020026020018201604052801561123a578160200160208202803683370190505b50905060005b8260ff168160ff161015611291576112598888866111b7565b838360ff168151811061126e5761126e611ebc565b60200260200101819650828152505050808061128990611f18565b915050611240565b5060405180602001604052808281525093505050935093915050565b600081815b602081101561130257600883901b92508585838181106112d4576112d4611ebc565b919091013560f81c939093179250816112ec81611e45565b92505080806112fa90611e45565b9150506112b2565b50935093915050565b60008184848281811061132057611320611ebc565b919091013560f81c925081905061133681611e45565b915050935093915050565b604080516101808101909152806000815260200161137660408051606080820183529181019182529081526000602082015290565b81526040805180820182526000808252602080830191909152830152016113b460408051606080820183529181019182529081526000602082015290565b81526020016113d9604051806040016040528060608152602001600080191681525090565b815260408051808201825260008082526020808301829052840191909152908201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b61142a611f38565b565b60006040828403121561143e57600080fd5b50919050565b6000806000806000808688036101c08082121561146057600080fd5b61146a8a8a61142c565b975060408901356001600160401b038082111561148657600080fd5b818b01915082828d03121561149a57600080fd5b819850610100605f19850112156114b057600080fd5b60608b0197506114c48c6101608d0161142c565b96506101a08b01359350808411156114db57600080fd5b838b0193508b601f8501126114ef57600080fd5b833592508083111561150057600080fd5b505089602082840101111561151457600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b6004811061154f5761154f611529565b9052565b80516007811061156557611565611529565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b808410156115c2576115ae828651611553565b93820193600193909301929085019061159b565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b8281101561164157845161160d858251611553565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a0909301926001016115f8565b509687015197909601969096525093949350505050565b600061012080835261166d818401865161153f565b60208501516101c0610140818187015261168b6102e0870184611572565b925060408801516101606116ab8189018380518252602090810151910152565b60608a0151915061011f1980898703016101a08a01526116cb8684611572565b955060808b015192508089870301858a0152506116e885836115d6565b60a08b015180516101e08b015260208101516102008b0152909550935060c08a015161022089015260e08a015163ffffffff81166102408a015293506101008a015163ffffffff81166102608a015293509489015163ffffffff811661028089015294918901516102a0880152508701516102c0860152509150610ccf905060208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a0830152608081015160c083015263ffffffff60a08201511660e08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611808576118086117d0565b60405290565b604051602081016001600160401b0381118282101715611808576118086117d0565b604051608081016001600160401b0381118282101715611808576118086117d0565b60405161018081016001600160401b0381118282101715611808576118086117d0565b60405160c081016001600160401b0381118282101715611808576118086117d0565b604051606081016001600160401b0381118282101715611808576118086117d0565b604051601f8201601f191681016001600160401b03811182821017156118e1576118e16117d0565b604052919050565b8035600481106118f857600080fd5b919050565b60006001600160401b03821115611916576119166117d0565b5060051b60200190565b60006040828403121561193257600080fd5b61193a6117e6565b905081356007811061194b57600080fd5b808252506020820135602082015292915050565b6000604080838503121561197257600080fd5b61197a6117e6565b915082356001600160401b038082111561199357600080fd5b818501915060208083880312156119a957600080fd5b6119b161180e565b8335838111156119c057600080fd5b80850194505087601f8501126119d557600080fd5b833592506119ea6119e5846118fd565b6118b9565b83815260069390931b84018201928281019089851115611a0957600080fd5b948301945b84861015611a2f57611a208a87611920565b82529486019490830190611a0e565b8252508552948501359484019490945250909392505050565b600060408284031215611a5a57600080fd5b611a626117e6565b9050813581526020820135602082015292915050565b803563ffffffff811681146118f857600080fd5b60006040808385031215611a9f57600080fd5b611aa76117e6565b915082356001600160401b03811115611abf57600080fd5b8301601f81018513611ad057600080fd5b80356020611ae06119e5836118fd565b82815260a09283028401820192828201919089851115611aff57600080fd5b948301945b84861015611b685780868b031215611b1c5760008081fd5b611b24611830565b611b2e8b88611920565b815287870135858201526060611b45818901611a78565b89830152611b5560808901611a78565b9082015283529485019491830191611b04565b50808752505080860135818601525050505092915050565b60006101c08236031215611b9357600080fd5b611b9b611852565b611ba4836118e9565b815260208301356001600160401b0380821115611bc057600080fd5b611bcc3683870161195f565b6020840152611bde3660408701611a48565b60408401526080850135915080821115611bf757600080fd5b611c033683870161195f565b606084015260a0850135915080821115611c1c57600080fd5b50611c2936828601611a8c565b608083015250611c3c3660c08501611a48565b60a08201526101008084013560c0830152610120611c5b818601611a78565b60e0840152610140611c6e818701611a78565b838501526101609250611c82838701611a78565b91840191909152610180850135908301526101a090930135928101929092525090565b80356001600160401b03811681146118f857600080fd5b6000818303610100811215611cd057600080fd5b611cd8611875565b833581526060601f1983011215611cee57600080fd5b611cf6611897565b9150611d0460208501611ca5565b8252611d1260408501611ca5565b6020830152606084013560408301528160208201526080840135604082015260a0840135606082015260c08401356080820152611d5160e08501611a78565b60a0820152949350505050565b600060208284031215611d7057600080fd5b813561ffff81168114610ccf57600080fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611dab57611dab611d82565b500190565b60006001600160401b0380831681851681830481118215151615611dd657611dd6611d82565b02949350505050565b60006001600160401b0383811690831681811015611dff57611dff611d82565b039392505050565b634e487b7160e01b600052601260045260246000fd5b600082611e2c57611e2c611e07565b500490565b600082611e4057611e40611e07565b500690565b6000600019821415611e5957611e59611d82565b5060010190565b60006001600160401b0380841680611e7a57611e7a611e07565b92169190910492915050565b6000816000190483118215151615611ea057611ea0611d82565b500290565b600082821015611eb757611eb7611d82565b500390565b634e487b7160e01b600052603260045260246000fd5b6000845160005b81811015611ef35760208188018101518583015201611ed9565b81811115611f02576000828501525b5091909101928352506020820152604001919050565b600060ff821660ff811415611f2f57611f2f611d82565b60010192915050565b634e487b7160e01b600052605160045260246000fdfea26469706673582212205bd95f7a707cc00d357e97bba91db11d0a4106a13ad1ed9d874413212c7c2d4064736f6c634300080c0033", - "accessList": [], - "hash": "0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951", - "v": 0, - "r": "0x20396449fb0e5733de7760fb888da543521ef13390a8e06d63a19d242b5247f7", - "s": "0x563a48729258c96e1c80654c7ec40074216d7b5ac5d35123b87b34f2469a8a8d", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "proverMath": { - "interface": { - "fragments": [ - { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "executeOneStep((uint256,address),(uint8,(((uint8,uint256)[]),bytes32),(bytes32,bytes32),(((uint8,uint256)[]),bytes32),(((uint8,uint256),bytes32,uint32,uint32)[],bytes32),(bytes32,bytes32),bytes32,uint32,uint32,uint32,bytes32,bytes32),(bytes32,(uint64,uint64,bytes32),bytes32,bytes32,bytes32,uint32),(uint16,uint256),bytes)": { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0xfD2443E63B5D45Ce42ee652caea8d8857351F5d9", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 198, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x1fcebb" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b50612469806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80633604366f14610030575b600080fd5b61004361003e3660046118ed565b61005a565b604051610051929190611b01565b60405180910390f35b6100626117ea565b6040805160c081018252600080825282516060808201855282825260208083018490528286018490528401919091529282018190529181018290526080810182905260a08101919091526100b587612024565b91506100c636879003870187612160565b905060006100d76020870187612202565b90506118cb61ffff8216604514806100f3575061ffff82166050145b1561010157506103106102f2565b604661ffff831610801590610129575061011d6009604661223c565b61ffff168261ffff1611155b1561013757506104296102f2565b606761ffff83161080159061015f57506101536002606761223c565b61ffff168261ffff1611155b1561016d575061050c6102f2565b606a61ffff8316108015906101875750607861ffff831611155b1561019557506105746102f2565b605161ffff8316108015906101bd57506101b16009605161223c565b61ffff168261ffff1611155b156101cb57506107616102f2565b607961ffff8316108015906101f357506101e76002607961223c565b61ffff168261ffff1611155b1561020157506107c66102f2565b607c61ffff83161080159061021b5750608a61ffff831611155b1561022957506108196102f2565b61ffff821660a7141561023f57506109d46102f2565b61ffff821660ac1480610256575061ffff821660ad145b1561026457506109f56102f2565b60c061ffff83161080159061027e575060c461ffff831611155b1561028c5750610a496102f2565b60bc61ffff8316108015906102a6575060bf61ffff831611155b156102b45750610c5e6102f2565b60405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f4f50434f444560901b60448201526064015b60405180910390fd5b61030384848989898663ffffffff16565b5050965096945050505050565b600061031f8660200151610de9565b905060456103306020860186612202565b61ffff1614156103715760008151600681111561034f5761034f6119d2565b1461036c5760405162461bcd60e51b81526004016102e990612262565b6103ee565b60506103806020860186612202565b61ffff1614156103bc5760018151600681111561039f5761039f6119d2565b1461036c5760405162461bcd60e51b81526004016102e990612283565b60405162461bcd60e51b81526020600482015260076024820152662120a22fa2a8ad60c91b60448201526064016102e9565b600081602001516000141561040557506001610409565b5060005b61042061041582610e0e565b602089015190610e41565b50505050505050565b600061044061043b8760200151610de9565b610e51565b9050600061045461043b8860200151610de9565b9050600060466104676020880188612202565b61047191906122a4565b905060008061ffff83166002148061048d575061ffff83166004145b8061049c575061ffff83166006145b806104ab575061ffff83166008145b156104cb576104b984610ec8565b91506104c485610ec8565b90506104d9565b505063ffffffff8083169084165b60006104e6838386610ef4565b90506104ff6104f48261109d565b60208d015190610e41565b5050505050505050505050565b600061051e61043b8760200151610de9565b9050600060676105316020870187612202565b61053b91906122a4565b905060006105518363ffffffff168360206110d0565b905061056a61055f82610e0e565b60208a015190610e41565b5050505050505050565b600061058661043b8760200151610de9565b9050600061059a61043b8860200151610de9565b9050600080606a6105ae6020890189612202565b6105b891906122a4565b90508061ffff16600314156106365763ffffffff841615806105f057508260030b637fffffff191480156105f057508360030b600019145b15610619578860025b9081600381111561060c5761060c6119d2565b815250505050505061075a565b8360030b8360030b8161062e5761062e6122c7565b05915061073e565b8061ffff16600514156106735763ffffffff8416610656578860026105f9565b8360030b8360030b8161066b5761066b6122c7565b07915061073e565b8061ffff16600a14156106935763ffffffff8316601f85161b915061073e565b8061ffff16600c14156106b35763ffffffff8316601f85161c915061073e565b8061ffff16600b14156106d157600383900b601f85161d915061073e565b8061ffff16600d14156106ef576106e88385611294565b915061073e565b8061ffff16600e1415610706576106e883856112d6565b6000806107208563ffffffff168763ffffffff1685611318565b91509150801561073a575050600289525061075a92505050565b5091505b61075561074a83610e0e565b60208b015190610e41565b505050505b5050505050565b60006107786107738760200151610de9565b61149e565b9050600061078c6107738860200151610de9565b90506000605161079f6020880188612202565b6107a991906122a4565b905060006107b8838584610ef4565b905061075561074a8261109d565b60006107d86107738760200151610de9565b9050600060796107eb6020870187612202565b6107f591906122a4565b90506000610805838360406110d0565b63ffffffff16905061056a61055f82611515565b600061082b6107738760200151610de9565b9050600061083f6107738860200151610de9565b9050600080607c6108536020890189612202565b61085d91906122a4565b90508061ffff16600314156108c6576001600160401b038416158061089c57508260070b677fffffffffffffff1914801561089c57508360070b600019145b156108a9578860026105f9565b8360070b8360070b816108be576108be6122c7565b0591506109c8565b8061ffff1660051415610906576001600160401b0384166108e9578860026105f9565b8360070b8360070b816108fe576108fe6122c7565b0791506109c8565b8061ffff16600a1415610929576001600160401b038316603f85161b91506109c8565b8061ffff16600c141561094c576001600160401b038316603f85161c91506109c8565b8061ffff16600b141561096a57600783900b603f85161d91506109c8565b8061ffff16600d141561098857610981838561154b565b91506109c8565b8061ffff16600e141561099f576109818385611599565b60006109ac848684611318565b909350905080156109c6575050600288525061075a915050565b505b61075561074a83611515565b60006109e66107738760200151610de9565b90508061042061041582610e0e565b6000610a0761043b8760200151610de9565b9050600060ac610a1a6020870187612202565b61ffff161415610a3457610a2d82610ec8565b9050610a3d565b5063ffffffff81165b61042061041582611515565b60008060c0610a5b6020870187612202565b61ffff161415610a715750600090506008610b48565b60c1610a806020870187612202565b61ffff161415610a965750600090506010610b48565b60c2610aa56020870187612202565b61ffff161415610abb5750600190506008610b48565b60c3610aca6020870187612202565b61ffff161415610ae05750600190506010610b48565b60c4610aef6020870187612202565b61ffff161415610b055750600190506020610b48565b60405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f455854454e445f53414d455f5459504560401b60448201526064016102e9565b600080836006811115610b5d57610b5d6119d2565b1415610b6e575063ffffffff610b78565b506001600160401b035b6000610b878960200151610de9565b9050836006811115610b9b57610b9b6119d2565b81516006811115610bae57610bae6119d2565b14610bf75760405162461bcd60e51b81526020600482015260196024820152784241445f455854454e445f53414d455f545950455f5459504560381b60448201526064016102e9565b6000610c0a600160ff861681901b6122dd565b602083018051821690529050610c216001856122f4565b60ff166001901b826020015116600014610c4357602082018051821985161790525b60208a0151610c529083610e41565b50505050505050505050565b60008060bc610c706020870187612202565b61ffff161415610c865750600090506002610d33565b60bd610c956020870187612202565b61ffff161415610cab5750600190506003610d33565b60be610cba6020870187612202565b61ffff161415610cd05750600290506000610d33565b60bf610cdf6020870187612202565b61ffff161415610cf55750600390506001610d33565b60405162461bcd60e51b81526020600482015260136024820152721253959053125117d491525395115494149155606a1b60448201526064016102e9565b6000610d428860200151610de9565b9050816006811115610d5657610d566119d2565b81516006811115610d6957610d696119d2565b14610db15760405162461bcd60e51b8152602060048201526018602482015277494e56414c49445f5245494e544552505245545f5459504560401b60448201526064016102e9565b80836006811115610dc457610dc46119d2565b90816006811115610dd757610dd76119d2565b905250602088015161056a9082610e41565b60408051808201909152600080825260208201528151610e08906115e7565b92915050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b8151610e4d90826116f7565b5050565b60208101516000908183516006811115610e6d57610e6d6119d2565b14610e8a5760405162461bcd60e51b81526004016102e990612262565b6401000000008110610e085760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016102e9565b60006380000000821615610eea575063ffffffff1667ffffffff000000001790565b5063ffffffff1690565b600061ffff8216610f1b57826001600160401b0316846001600160401b0316149050611096565b61ffff821660011415610f4557826001600160401b0316846001600160401b031614159050611096565b61ffff821660021415610f62578260070b8460070b129050611096565b61ffff821660031415610f8b57826001600160401b0316846001600160401b0316109050611096565b61ffff821660041415610fa8578260070b8460070b139050611096565b61ffff821660051415610fd157826001600160401b0316846001600160401b0316119050611096565b61ffff821660061415610fef578260070b8460070b13159050611096565b61ffff82166007141561101957826001600160401b0316846001600160401b031611159050611096565b61ffff821660081415611037578260070b8460070b12159050611096565b61ffff82166009141561106157826001600160401b0316846001600160401b031610159050611096565b60405162461bcd60e51b815260206004820152600a6024820152690424144204952454c4f560b41b60448201526064016102e9565b9392505050565b604080518082019091526000808252602082015281156110c157610e086001610e0e565b610e086000610e0e565b919050565b60008161ffff16602014806110e957508161ffff166040145b6111305760405162461bcd60e51b8152602060048201526018602482015277057524f4e4720555345204f462067656e65726963556e4f760441b60448201526064016102e9565b61ffff83166111a15761ffff82165b60008163ffffffff16118015611174575061115b600182612317565b63ffffffff166001901b856001600160401b0316166000145b1561118b57611184600182612317565b905061113f565b6111998161ffff8516612317565b915050611096565b61ffff8316600114156111fa5760005b8261ffff168163ffffffff161080156111dc5750600163ffffffff82161b85166001600160401b0316155b156111f3576111ec600182612334565b90506111b1565b9050611096565b61ffff831660021415611260576000805b8361ffff168263ffffffff16101561125757600163ffffffff83161b86166001600160401b03161561124557611242600182612334565b90505b8161124f81612353565b92505061120b565b91506110969050565b60405162461bcd60e51b815260206004820152600960248201526804241442049556e4f760bc1b60448201526064016102e9565b60006112a1602083612377565b91506112ae826020612317565b63ffffffff168363ffffffff16901c8263ffffffff168463ffffffff16901b17905092915050565b60006112e3602083612377565b91506112f0826020612317565b63ffffffff168363ffffffff16901b8263ffffffff168463ffffffff16901c17905092915050565b60008061ffff83166113305750508282016000611496565b8261ffff16600114156113495750508183036000611496565b8261ffff16600214156113625750508282026000611496565b8261ffff16600414156113b6576001600160401b0384166113895750600090506001611496565b836001600160401b0316856001600160401b0316816113aa576113aa6122c7565b04600091509150611496565b8261ffff166006141561140a576001600160401b0384166113dd5750600090506001611496565b836001600160401b0316856001600160401b0316816113fe576113fe6122c7565b06600091509150611496565b8261ffff16600714156114235750508282166000611496565b8261ffff166008141561143c5750508282176000611496565b8261ffff16600914156114555750508282186000611496565b60405162461bcd60e51b81526020600482015260166024820152750494e56414c49445f47454e455249435f42494e5f4f560541b60448201526064016102e9565b935093915050565b60208101516000906001835160068111156114bb576114bb6119d2565b146114d85760405162461bcd60e51b81526004016102e990612283565b600160401b8110610e085760405162461bcd60e51b815260206004820152600760248201526610905117d24d8d60ca1b60448201526064016102e9565b60408051808201909152600080825260208201525060408051808201909152600181526001600160401b03909116602082015290565b600061155860408361239a565b91506115658260406123b4565b6001600160401b0316836001600160401b0316901c826001600160401b0316846001600160401b0316901b17905092915050565b60006115a660408361239a565b91506115b38260406123b4565b6001600160401b0316836001600160401b0316901b826001600160401b0316846001600160401b0316901c17905092915050565b60408051808201909152600080825260208201528151805161160b906001906122dd565b8151811061161b5761161b6123d4565b602002602001015190506000600183600001515161163991906122dd565b6001600160401b0381111561165057611650611c79565b60405190808252806020026020018201604052801561169557816020015b604080518082019091526000808252602082015281526020019060019003908161166e5790505b50905060005b81518110156116f05783518051829081106116b8576116b86123d4565b60200260200101518282815181106116d2576116d26123d4565b602002602001018190525080806116e8906123ea565b91505061169b565b5090915290565b815151600090611708906001612405565b6001600160401b0381111561171f5761171f611c79565b60405190808252806020026020018201604052801561176457816020015b604080518082019091526000808252602082015281526020019060019003908161173d5790505b50905060005b8351518110156117c0578351805182908110611788576117886123d4565b60200260200101518282815181106117a2576117a26123d4565b602002602001018190525080806117b8906123ea565b91505061176a565b508181846000015151815181106117d9576117d96123d4565b602090810291909101015290915250565b604080516101808101909152806000815260200161181f60408051606080820183529181019182529081526000602082015290565b815260408051808201825260008082526020808301919091528301520161185d60408051606080820183529181019182529081526000602082015290565b8152602001611882604051806040016040528060608152602001600080191681525090565b815260408051808201825260008082526020808301829052840191909152908201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6118d361241d565b565b6000604082840312156118e757600080fd5b50919050565b6000806000806000808688036101c08082121561190957600080fd5b6119138a8a6118d5565b975060408901356001600160401b038082111561192f57600080fd5b818b01915082828d03121561194357600080fd5b819850610100605f198501121561195957600080fd5b60608b01975061196d8c6101608d016118d5565b96506101a08b013593508084111561198457600080fd5b838b0193508b601f85011261199857600080fd5b83359250808311156119a957600080fd5b50508960208284010111156119bd57600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b600481106119f8576119f86119d2565b9052565b805160078110611a0e57611a0e6119d2565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015611a6b57611a578286516119fc565b938201936001939093019290850190611a44565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b82811015611aea578451611ab68582516119fc565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a090930192600101611aa1565b509687015197909601969096525093949350505050565b6000610120808352611b1681840186516119e8565b60208501516101c06101408181870152611b346102e0870184611a1b565b92506040880151610160611b548189018380518252602090810151910152565b60608a0151915061011f1980898703016101a08a0152611b748684611a1b565b955060808b015192508089870301858a015250611b918583611a7f565b60a08b015180516101e08b015260208101516102008b0152909550935060c08a015161022089015260e08a015163ffffffff81166102408a015293506101008a015163ffffffff81166102608a015293509489015163ffffffff811661028089015294918901516102a0880152508701516102c0860152509150611096905060208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a0830152608081015160c083015263ffffffff60a08201511660e08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715611cb157611cb1611c79565b60405290565b604051602081016001600160401b0381118282101715611cb157611cb1611c79565b604051608081016001600160401b0381118282101715611cb157611cb1611c79565b60405161018081016001600160401b0381118282101715611cb157611cb1611c79565b60405160c081016001600160401b0381118282101715611cb157611cb1611c79565b604051606081016001600160401b0381118282101715611cb157611cb1611c79565b604051601f8201601f191681016001600160401b0381118282101715611d8a57611d8a611c79565b604052919050565b8035600481106110cb57600080fd5b60006001600160401b03821115611dba57611dba611c79565b5060051b60200190565b600060408284031215611dd657600080fd5b611dde611c8f565b9050813560078110611def57600080fd5b808252506020820135602082015292915050565b60006040808385031215611e1657600080fd5b611e1e611c8f565b915082356001600160401b0380821115611e3757600080fd5b81850191506020808388031215611e4d57600080fd5b611e55611cb7565b833583811115611e6457600080fd5b80850194505087601f850112611e7957600080fd5b83359250611e8e611e8984611da1565b611d62565b83815260069390931b84018201928281019089851115611ead57600080fd5b948301945b84861015611ed357611ec48a87611dc4565b82529486019490830190611eb2565b8252508552948501359484019490945250909392505050565b600060408284031215611efe57600080fd5b611f06611c8f565b9050813581526020820135602082015292915050565b803563ffffffff811681146110cb57600080fd5b60006040808385031215611f4357600080fd5b611f4b611c8f565b915082356001600160401b03811115611f6357600080fd5b8301601f81018513611f7457600080fd5b80356020611f84611e8983611da1565b82815260a09283028401820192828201919089851115611fa357600080fd5b948301945b8486101561200c5780868b031215611fc05760008081fd5b611fc8611cd9565b611fd28b88611dc4565b815287870135858201526060611fe9818901611f1c565b89830152611ff960808901611f1c565b9082015283529485019491830191611fa8565b50808752505080860135818601525050505092915050565b60006101c0823603121561203757600080fd5b61203f611cfb565b61204883611d92565b815260208301356001600160401b038082111561206457600080fd5b61207036838701611e03565b60208401526120823660408701611eec565b6040840152608085013591508082111561209b57600080fd5b6120a736838701611e03565b606084015260a08501359150808211156120c057600080fd5b506120cd36828601611f30565b6080830152506120e03660c08501611eec565b60a08201526101008084013560c08301526101206120ff818601611f1c565b60e0840152610140612112818701611f1c565b838501526101609250612126838701611f1c565b91840191909152610180850135908301526101a090930135928101929092525090565b80356001600160401b03811681146110cb57600080fd5b600081830361010081121561217457600080fd5b61217c611d1e565b833581526060601f198301121561219257600080fd5b61219a611d40565b91506121a860208501612149565b82526121b660408501612149565b6020830152606084013560408301528160208201526080840135604082015260a0840135606082015260c084013560808201526121f560e08501611f1c565b60a0820152949350505050565b60006020828403121561221457600080fd5b813561ffff8116811461109657600080fd5b634e487b7160e01b600052601160045260246000fd5b600061ffff80831681851680830382111561225957612259612226565b01949350505050565b6020808252600790820152662727aa2fa4999960c91b604082015260600190565b6020808252600790820152661393d517d24d8d60ca1b604082015260600190565b600061ffff838116908316818110156122bf576122bf612226565b039392505050565b634e487b7160e01b600052601260045260246000fd5b6000828210156122ef576122ef612226565b500390565b600060ff821660ff84168082101561230e5761230e612226565b90039392505050565b600063ffffffff838116908316818110156122bf576122bf612226565b600063ffffffff80831681851680830382111561225957612259612226565b600063ffffffff8083168181141561236d5761236d612226565b6001019392505050565b600063ffffffff8084168061238e5761238e6122c7565b92169190910692915050565b60006001600160401b038084168061238e5761238e6122c7565b60006001600160401b03838116908316818110156122bf576122bf612226565b634e487b7160e01b600052603260045260246000fd5b60006000198214156123fe576123fe612226565b5060010190565b6000821982111561241857612418612226565b500190565b634e487b7160e01b600052605160045260246000fdfea264697066735822122083ecdb38448b43c9afb2c9d35fadcfe2a24977f5a506edf2bae33928cc7dbb8d64736f6c634300080c0033", - "accessList": [], - "hash": "0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76", - "v": 0, - "r": "0x328a8b95e3d151f5c5ed2a37700d28ce0fc226a46b540e37debef6d91e50cd42", - "s": "0x776c32826c680c75d3fe37d8acf8cd8b934b9696afd194c4961f81d25aa68394", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "proverHostIo": { - "interface": { - "fragments": [ - { - "type": "function", - "name": "VerifyKzgProofWithG1Equivalence", - "constant": true, - "inputs": [ - { - "name": "commitment", - "type": "uint256[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "y", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "proof", - "type": "uint256[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "z", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "alpha_minus_z_g2", - "type": "uint256[4]", - "indexed": null, - "components": null, - "arrayLength": 4, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": "execCtx", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "VerifyKzgProofWithG1Equivalence(uint256[2],uint256,uint256[2],uint256,uint256[4])": { - "type": "function", - "name": "VerifyKzgProofWithG1Equivalence", - "constant": true, - "inputs": [ - { - "name": "commitment", - "type": "uint256[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "y", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "proof", - "type": "uint256[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "z", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "alpha_minus_z_g2", - "type": "uint256[4]", - "indexed": null, - "components": null, - "arrayLength": 4, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "executeOneStep((uint256,address),(uint8,(((uint8,uint256)[]),bytes32),(bytes32,bytes32),(((uint8,uint256)[]),bytes32),(((uint8,uint256),bytes32,uint32,uint32)[],bytes32),(bytes32,bytes32),bytes32,uint32,uint32,uint32,bytes32,bytes32),(bytes32,(uint64,uint64,bytes32),bytes32,bytes32,bytes32,uint32),(uint16,uint256),bytes)": { - "type": "function", - "name": "executeOneStep", - "constant": true, - "inputs": [ - { - "name": "execCtx", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "startMod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inst", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "opcode", - "type": "uint16", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint16", - "_isParamType": true - }, - { - "name": "argumentData", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "mach", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "valueStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "valueMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "internalStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inner", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "proved", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "returnPc", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "valueType", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "contents", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "localsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "callerModule", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "callerModuleInternals", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "frameMultiStack", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "inactiveStackHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "remainingHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionIdx", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "functionPc", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "recoveryPc", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "modulesRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "mod", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "moduleMemory", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "size", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxSize", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "merkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "tablesMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "functionsMerkleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "extraHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "internalsOffset", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0xa85ABD9bc08063d6aaFa7b5AAEFA9E2DF91e53fE", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 199, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x413a09" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60c06040527f0bfc87ecbdcdc23ef5481bb179aaada7f42c22d2dfd52b4655a18c2879c54eea60808190527f1cbb5fca42814f560026c7d8854b946e6fa2d25bb2c6430981ca27a974d7d38560a081905260009190915560015534801561006557600080fd5b50614adf806100756000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80633604366f1461003b578063da998a0e14610065575b600080fd5b61004e610049366004613bd2565b610088565b60405161005c929190613de6565b60405180910390f35b6100786100733660046140e6565b61020e565b604051901515815260200161005c565b6100906139c1565b610098613aa2565b6100a187614412565b91506100b23687900387018761454e565b905060006100c360208701876145f0565b9050613afa61801061ffff8316108015906100e4575061801361ffff831611155b156100f257506103d06101ef565b61ffff8216618020141561010957506105186101ef565b61ffff8216618021141561012057506111b86101ef565b61ffff8216618022141561013757506114dd6101ef565b61ffff8216618023141561014e57506114e96101ef565b61ffff82166180241415610165575061160f6101ef565b61ffff8216618030141561017c57506116b76101ef565b61ffff8216618031141561019357506116fe6101ef565b61ffff821661803214156101aa57506117556101ef565b60405162461bcd60e51b8152602060048201526015602482015274494e56414c49445f4d454d4f52595f4f50434f444560581b60448201526064015b60405180910390fd5b6102018a85858a8a8a8763ffffffff16565b5050965096945050505050565b60008061022a61022561021f6117c9565b886117f2565b611889565b9050600061027960405180604001604052808a60006002811061024f5761024f614614565b602002015181526020018a60016002811061026c5761026c614614565b6020020151905283611924565b9050600061028b61022561021f6117c9565b6040805180820190915260008054825260015460208301529192506102b09083611924565b905060006102c0888b8d8a6119b8565b905060006102ce83836117f2565b905060006102e36102dd6117c9565b846117f2565b9050600061032560405180604001604052808e60006002811061030857610308614614565b602002015181526020018e60016002811061026c5761026c614614565b905060006103338885611924565b604080516080810182528d51918101918252919250600091908190606082018f60016020020151815250815260200160405180604001604052808f60026004811061038057610380614614565b602002015181526020018f60036004811061039d5761039d614614565b60200201519052905290506103bb826103b4611a53565b8584611b13565b9a505050505050505050505095945050505050565b60006103df60208501856145f0565b90506103e9613b04565b60006103f6858583611d80565b60c08a0151919350915061040983611e5b565b146104495760405162461bcd60e51b815260206004820152601060248201526f4241445f474c4f42414c5f535441544560801b60448201526064016101e6565b61ffff83166180101480610462575061ffff8316618011145b156104845761047f8888848961047a8987818d61462a565b611edc565b6104fc565b61ffff8316618012141561049c5761047f8883612061565b61ffff831661801314156104b45761047f888361210f565b60405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f474c4f42414c53544154455f4f50434f444500000000000060448201526064016101e6565b61050582611e5b565b60c0909801979097525050505050505050565b600061052f61052a8760200151612185565b6121aa565b63ffffffff169050600061054961052a8860200151612185565b63ffffffff16905061055c60208361466a565b1515806105825750602080870151516001600160401b031690610580908390614694565b115b80610596575061059360208261466a565b15155b156105bd578660025b908160038111156105b2576105b2613cb7565b8152505050506111b0565b60006105ca6020836146ac565b90506000806105e56040518060200160405280606081525090565b60208a01516105f790858a8a8761223b565b90945090925090506060600089898681811061061557610615614614565b919091013560f81c915085905061062b816146c0565b95505060208b01356107065760ff81166106ee5736600061064e8b88818f61462a565b915091508582826040516106639291906146db565b6040518091039020146106885760405162461bcd60e51b81526004016101e6906146eb565b60006106958b6020614694565b9050818111156106a25750805b6106ae818c848661462a565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092975061113495505050505050565b60405162461bcd60e51b81526004016101e690614711565b8a60200135600114156107b75760ff8116156107345760405162461bcd60e51b81526004016101e690614711565b3660006107438b88818f61462a565b91509150856002838360405161075a9291906146db565b602060405180830381855afa158015610777573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061079a9190614741565b146106885760405162461bcd60e51b81526004016101e6906146eb565b8a6020013560021415610aed5760ff8116156107e55760405162461bcd60e51b81526004016101e690614711565b3660006107f48b88818f61462a565b90925090508561080860206000848661462a565b6108119161475a565b146108555760405162461bcd60e51b8152602060048201526014602482015273096b48ebea0a49e9e8cbeaea49e9c8ebe9082a6960631b60448201526064016101e6565b600080600080600a6001600160a01b031686866040516108769291906146db565b600060405180830381855afa9150503d80600081146108b1576040519150601f19603f3d011682016040523d82523d6000602084013e6108b6565b606091505b5091509150816108fc5760405162461bcd60e51b815260206004820152601160248201527024a72b20a624a22fa5ad23afa82927a7a360791b60448201526064016101e6565b60008151116109465760405162461bcd60e51b81526020600482015260166024820152754b5a475f505245434f4d50494c455f4d495353494e4760501b60448201526064016101e6565b8080602001905181019061095a9190614778565b9094509250507f73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001821490506109c75760405162461bcd60e51b8152602060048201526013602482015272554e4b4e4f574e5f424c535f4d4f44554c555360681b60448201526064016101e6565b6109d282602061479c565b8c1015610ae4576000806109e760208f6146ac565b905060015b84811015610a1657600192831b928281161415610a0a576001831792505b600191821c911b6109ec565b506000610a28856401000000006146ac565b9050610a34838261479c565b90506000610a637f16a2a19edfe81f20d09b681922c813b4b63683508c2280b93829971f439f0d2b83876122d5565b905080610a74604060208a8c61462a565b610a7d9161475a565b14610a9a5760405162461bcd60e51b81526004016101e6906147bb565b610aa860606040898b61462a565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929c50505050505050505b50505050611134565b8a60200135600314156110f45760ff811615610b4b5760405162461bcd60e51b815260206004820152601e60248201527f554e4b4e4f574e5f454947454e44415f505245494d4147455f50524f4f46000060448201526064016101e6565b366000610b5a8b88818f61462a565b60408051808201909152919350915060009080610b7c61010060e0868861462a565b610b859161475a565b8152602001610b9a610120610100868861462a565b610ba39161475a565b9052604080516080808201909252919250600091908190610bc7906060878961462a565b610bd09161475a565b8152602001610be360a06080878961462a565b610bec9161475a565b8152602001610bff60c060a0878961462a565b610c089161475a565b8152602001610c1b60e060c0878961462a565b610c249161475a565b90526040805180820190915290915060009080610c47610140610120888a61462a565b610c509161475a565b8152602001610c65610160610140888a61462a565b610c6e9161475a565b905290506000610c8260406020878961462a565b610c8b9161475a565b90506000610c9d60606040888a61462a565b610ca69161475a565b90506000610cba610180610160898b61462a565b610cc39161475a565b63ffffffff16905080600080516020614a6a833981519152876000602002015110610d305760405162461bcd60e51b815260206004820152601a60248201527f434f4d4d49545f585f4c41524745525f5448414e5f4649454c4400000000000060448201526064016101e6565b6020870151600080516020614a6a83398151915211610d915760405162461bcd60e51b815260206004820152601a60248201527f434f4d4d49545f595f4c41524745525f5448414e5f4649454c4400000000000060448201526064016101e6565b8451600080516020614a6a83398151915211610deb5760405162461bcd60e51b8152602060048201526019602482015278141493d3d197d617d3105491d15497d512105397d192515311603a1b60448201526064016101e6565b6020850151600080516020614a6a83398151915211610e485760405162461bcd60e51b8152602060048201526019602482015278141493d3d197d657d3105491d15497d512105397d192515311603a1b60448201526064016101e6565b600080516020614a8a8339815191528410610e9b5760405162461bcd60e51b81526020600482015260136024820152721697d3105491d15497d512105397d192515311606a1b60448201526064016101e6565b600080516020614a8a8339815191528310610eee5760405162461bcd60e51b81526020600482015260136024820152721657d3105491d15497d512105397d192515311606a1b60448201526064016101e6565b8c610efe61012060e08b8d61462a565b83604051602001610f11939291906147e6565b6040516020818303038152906040528051906020012014610f745760405162461bcd60e51b815260206004820152601a60248201527f424e3235345f4b5a475f50524f4f465f57524f4e475f4841534800000000000060448201526064016101e6565b610f81878487878a61020e565b610fc75760405162461bcd60e51b815260206004820152601760248201527624a72b20a624a22fa127191a9a2fa5ad23afa82927a7a360491b60448201526064016101e6565b50505050505050600082826101609061018092610fe69392919061462a565b610fef9161475a565b9050808b10156110ec57600061100660208d6146ac565b905060006110188363100000006146ac565b61102390602061479c565b905061102f828261479c565b9050600061106c7f2a3c09f0a58a7e8500e0a7eb8ef62abc402d111e41112ed49bd61b6e725b19f083600080516020614a8a8339815191526122d5565b90508061107d60406020888a61462a565b6110869161475a565b146110a35760405162461bcd60e51b81526004016101e6906147bb565b6110b160606040878961462a565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929a505050505050505b505050611134565b60405162461bcd60e51b8152602060048201526015602482015274554e4b4e4f574e5f505245494d4147455f5459504560581b60448201526064016101e6565b60005b825181101561117857611164858285848151811061115757611157614614565b016020015160f81c612409565b945080611170816146c0565b915050611137565b5061118483878661248e565b60208d01516040015281516111a79061119c9061250d565b60208f015190612540565b50505050505050505b505050505050565b60006111ca61052a8760200151612185565b63ffffffff16905060006111e461052a8860200151612185565b63ffffffff16905060006112036111fe8960200151612185565b612550565b6001600160401b031690506020860135158015611221575088358110155b15611249578760035b9081600381111561123d5761123d613cb7565b815250505050506111b0565b602080880151516001600160401b031690611265908490614694565b118061127a575061127760208361466a565b15155b156112875787600261122a565b60006112946020846146ac565b90506000806112af6040518060200160405280606081525090565b60208b01516112c190858b8b8761223b565b90945090925090508888848181106112db576112db614614565b909101356001600160f81b03191615905061132e5760405162461bcd60e51b81526020600482015260136024820152722aa725a727aba72fa4a72127ac2fa82927a7a360691b60448201526064016101e6565b82611338816146c0565b935050613afa6000808c602001351415611356576125e19150611396565b60018c60200135141561136d576128b39150611396565b8d60025b9081600381111561138457611384613cb7565b815250505050505050505050506111b0565b6113b68f888d8d899080926113ad9392919061462a565b8663ffffffff16565b9050806113c5578d6002611371565b50508288101561140b5760405162461bcd60e51b81526020600482015260116024820152702120a22fa6a2a9a9a0a3a2afa82927a7a360791b60448201526064016101e6565b6000611417848a614807565b905060005b60208163ffffffff1610801561144057508161143e63ffffffff83168b614694565b105b15611499576114858463ffffffff83168d8d8261145d8f8c614694565b6114679190614694565b81811061147657611476614614565b919091013560f81c9050612409565b9350806114918161481e565b91505061141c565b6114a483878661248e565b60208e0151604001526114cc6114b98261250d565b8f6020015161254090919063ffffffff16565b505050505050505050505050505050565b50506001909252505050565b60006040518060400160405280601381526020017226b7b23ab6329036b2b935b632903a3932b29d60691b815250905060008661016001519050600061153561052a8960200151612185565b63ffffffff169050611554818860200151612b3790919063ffffffff16565b6115605787600261122a565b6000806115806115716020856146ac565b60208b0151908989600061223b565b50915091506000806115948c848b8b612b6c565b925050915060006115b08360016115ab9190614694565b612d4c565b905080156115db576115d0876115c7856001614694565b8760008c612d6c565b6101608e01526115f9565b6115f26115e9846001614694565b8390878b612e16565b6101608e01525b6111a761119c61160a856001614694565b61250d565b60408051808201909152601381527226b7b23ab6329036b2b935b632903a3932b29d60691b602082015260008061164888828787612b6c565b5091509150600061165883612d4c565b90508015611697578151805161167090600190614807565b8151811061168057611680614614565b6020026020010151896101600181815250506116ab565b6116a48284600087612e16565b6101608a01525b50505050505050505050565b610140850151600019146116e4578460025b908160038111156116dc576116dc613cb7565b9052506111b0565b6116f18560a00151612f20565b6111b08560400151612f20565b61014085015160001914611714578460026116c9565b60a085015151600019141561172b578460026116c9565b61173a85604001518383612f63565b60a08501516111b090611750836040818761462a565b612f63565b60a085015151600019141561176c578460026116c9565b602083013561179a57610140850151600019141561178c578460026116c9565b6000196101408601526117c0565b610140850151600019146117b0578460026116c9565b6117be856020850135613051565b505b6111b0856130c4565b604080518082018252600080825260209182015281518083019092526001825260029082015290565b604080518082019091526000808252602082015261180e613b29565b835181526020808501519082015260408082018490526000908360608460076107d05a03fa905080801561184157611843565bfe5b50806118815760405162461bcd60e51b815260206004820152600d60248201526c1958cb5b5d5b0b59985a5b1959609a1b60448201526064016101e6565b505092915050565b604080518082019091526000808252602082015281511580156118ae57506020820151155b156118cc575050604080518082019091526000808252602082015290565b604051806040016040528083600001518152602001600080516020614a6a83398151915284602001516118ff919061466a565b61191790600080516020614a6a833981519152614807565b905292915050565b919050565b6040805180820190915260008082526020820152611940613b47565b835181526020808501518183015283516040808401919091529084015160608301526000908360808460066107d05a03fa90508080156118415750806118815760405162461bcd60e51b815260206004820152600d60248201526c1958cb5859190b59985a5b1959609a1b60448201526064016101e6565b815160208084015183518483015160408087015160608089015183519788018d90529287018b9052860196909652608085019390935260a084019190915260c083015260e082019290925261010081019190915260009081906101200160408051601f1981840301815291905280516020909101209050611a47600080516020614a8a8339815191528261466a565b9150505b949350505050565b611a5b613b04565b50604080516080810182527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c28183019081527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6060830152815281518083019092527f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec82527f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d60208381019190915281019190915290565b604080518082018252858152602080820185905282518084019093528583528201839052600091611b42613b65565b60005b6002811015611d07576000611b5b82600661479c565b9050848260028110611b6f57611b6f614614565b60200201515183611b81836000614694565b600c8110611b9157611b91614614565b6020020152848260028110611ba857611ba8614614565b60200201516020015183826001611bbf9190614694565b600c8110611bcf57611bcf614614565b6020020152838260028110611be657611be6614614565b6020020151515183611bf9836002614694565b600c8110611c0957611c09614614565b6020020152838260028110611c2057611c20614614565b6020020151516001602002015183611c39836003614694565b600c8110611c4957611c49614614565b6020020152838260028110611c6057611c60614614565b602002015160200151600060028110611c7b57611c7b614614565b602002015183611c8c836004614694565b600c8110611c9c57611c9c614614565b6020020152838260028110611cb357611cb3614614565b602002015160200151600160028110611cce57611cce614614565b602002015183611cdf836005614694565b600c8110611cef57611cef614614565b60200201525080611cff816146c0565b915050611b45565b50611d10613b84565b60006020826101808560086107d05a03fa9050808015611841575080611d705760405162461bcd60e51b81526020600482015260156024820152741c185a5c9a5b99cb5bdc18dbd9194b59985a5b1959605a1b60448201526064016101e6565b5051151598975050505050505050565b611d88613b04565b81611d91613ba2565b611d99613ba2565b60005b600260ff82161015611de457611db3888886613148565b848360ff1660028110611dc857611dc8614614565b6020020191909152935080611ddc81614842565b915050611d9c565b5060005b600260ff82161015611e3e57611dff888886613164565b838360ff1660028110611e1457611e14614614565b6001600160401b039093166020939093020191909152935080611e3681614842565b915050611de8565b506040805180820190915291825260208201529590945092505050565b80518051602091820151828401518051908401516040516c23b637b130b61039ba30ba329d60991b95810195909552602d850193909352604d8401919091526001600160c01b031960c091821b8116606d85015291901b166075820152600090607d015b604051602081830303815290604052805190602001209050919050565b6000611eee61052a8860200151612185565b63ffffffff1690506000611f0861052a8960200151612185565b9050600263ffffffff821610611f205787600261059f565b6020870151611f2f9083612b37565b611f3b5787600261059f565b6000611f486020846146ac565b9050600080611f636040518060200160405280606081525090565b60208b0151611f7590858a8a8761223b565b9094509092509050618010611f8d60208b018b6145f0565b61ffff161415611fd257611fc4848b600001518763ffffffff1660028110611fb757611fb7614614565b602002015183919061248e565b60208c015160400152612053565b618011611fe260208b018b6145f0565b61ffff161415612011578951829063ffffffff87166002811061200757612007614614565b6020020152612053565b60405162461bcd60e51b81526020600482015260176024820152764241445f474c4f42414c5f53544154455f4f50434f444560481b60448201526064016101e6565b505050505050505050505050565b600061207361052a8460200151612185565b9050600263ffffffff8216106120a2578260025b9081600381111561209a5761209a613cb7565b905250505050565b61210a6120ff83602001518363ffffffff16600281106120c4576120c4614614565b602002015160408051808201909152600080825260208201525060408051808201909152600181526001600160401b03909116602082015290565b602085015190612540565b505050565b60006121216111fe8460200151612185565b9050600061213561052a8560200151612185565b9050600263ffffffff82161061214f575050600290915250565b8183602001518263ffffffff166002811061216c5761216c614614565b6001600160401b03909216602092909202015250505050565b604080518082019091526000808252602082015281516121a4906131cb565b92915050565b602081015160009081835160068111156121c6576121c6613cb7565b146121fd5760405162461bcd60e51b81526020600482015260076024820152662727aa2fa4999960c91b60448201526064016101e6565b64010000000081106121a45760405162461bcd60e51b81526020600482015260076024820152662120a22fa4999960c91b60448201526064016101e6565b6000806122546040518060200160405280606081525090565b839150612262868684613148565b90935091506122728686846132db565b92509050600061228382898661248e565b9050886040015181146122c95760405162461bcd60e51b815260206004820152600e60248201526d15d493d391d7d3515357d493d3d560921b60448201526064016101e6565b50955095509592505050565b60408051602080820181905281830181905260608201526080810185905260a0810184905260c08082018490528251808303909101815260e0909101918290526000918290819060059061232a908590614892565b600060405180830381855afa9150503d8060008114612365576040519150601f19603f3d011682016040523d82523d6000602084013e61236a565b606091505b5091509150816123ac5760405162461bcd60e51b815260206004820152600d60248201526c1353d111561417d19052531151609a1b60448201526064016101e6565b80516020146123f35760405162461bcd60e51b815260206004820152601360248201527209a9e888ab0a0beaea49e9c8ebe988a9c8ea89606b1b60448201526064016101e6565b6123fc816148ae565b93505050505b9392505050565b6000602083106124535760405162461bcd60e51b81526020600482015260156024820152740848288bea68aa8be988a828cbe84b2a88abe9288b605b1b60448201526064016101e6565b60008361246260016020614807565b61246c9190614807565b61247790600861479c565b60ff848116821b911b198616179150509392505050565b6040516b26b2b6b7b93c903632b0b31d60a11b6020820152602c81018290526000908190604c016040516020818303038152906040528051906020012090506125048585836040518060400160405280601381526020017226b2b6b7b93c9036b2b935b632903a3932b29d60691b815250612e16565b95945050505050565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b815161254c90826133b5565b5050565b602081015160009060018351600681111561256d5761256d613cb7565b146125a45760405162461bcd60e51b81526020600482015260076024820152661393d517d24d8d60ca1b60448201526064016101e6565b600160401b81106121a45760405162461bcd60e51b815260206004820152600760248201526610905117d24d8d60ca1b60448201526064016101e6565b600060288210156126295760405162461bcd60e51b81526020600482015260126024820152712120a22fa9a2a8a4a72127ac2fa82927a7a360711b60448201526064016101e6565b600061263784846020613164565b50809150506000848460405161264e9291906146db565b60405190819003902090506000806001600160401b038816156126ff5761267b60408a0160208b016148d2565b6001600160a01b03166316bf557961269460018b6148fb565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865afa1580156126d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126fc9190614741565b91505b6001600160401b038416156127a25761271e60408a0160208b016148d2565b6001600160a01b031663d5719dc26127376001876148fb565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865afa15801561277b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061279f9190614741565b90505b6040805160208101849052908101849052606081018290526000906080016040516020818303038152906040528051906020012090508960200160208101906127eb91906148d2565b6040516316bf557960e01b81526001600160401b038b1660048201526001600160a01b0391909116906316bf557990602401602060405180830381865afa15801561283a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061285e9190614741565b81146128a35760405162461bcd60e51b81526020600482015260146024820152734241445f534551494e424f585f4d45535341474560601b60448201526064016101e6565b5060019998505050505050505050565b600060718210156128fa5760405162461bcd60e51b81526020600482015260116024820152702120a22fa222a620aca2a22fa82927a7a360791b60448201526064016101e6565b60006001600160401b0385161561299f5761291b60408701602088016148d2565b6001600160a01b031663d5719dc26129346001886148fb565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865afa158015612978573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061299c9190614741565b90505b60006129ae846071818861462a565b6040516129bc9291906146db565b604051809103902090506000858560008181106129db576129db614614565b9050013560f81c60f81b905060006129f5878760016134a8565b50905060008282612a0a607160218b8d61462a565b87604051602001612a1f959493929190614923565b60408051601f19818403018152828252805160209182012083820189905283830181905282518085038401815260609094019092528251920191909120909150612a6f60408c0160208d016148d2565b604051636ab8cee160e11b81526001600160401b038c1660048201526001600160a01b03919091169063d5719dc290602401602060405180830381865afa158015612abe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ae29190614741565b8114612b265760405162461bcd60e51b81526020600482015260136024820152724241445f44454c415945445f4d45535341474560681b60448201526064016101e6565b5060019a9950505050505050505050565b81516000906001600160401b0316612b50836020614694565b111580156124025750612b6460208361466a565b159392505050565b6000612b846040518060200160405280606081525090565b60408051602081019091526060815260408051808201909152601381527226b7b23ab6329036b2b935b632903a3932b29d60691b6020820152610160880151612bcb613aa2565b6000612bd889898c6134fd565b9a509150612be789898c6135c1565b9a509050612bf689898c6132db565b9a5063ffffffff8083169850909650600090612c189088908a90869061361c16565b9050838114612c5f5760405162461bcd60e51b81526020600482015260136024820152722ba927a723afa927a7aa2fa327a92fa622a0a360691b60448201526064016101e6565b5050506000612c748660016115ab9190614694565b90508015612ccd57612c87866001614694565b8551516001901b14612cc85760405162461bcd60e51b815260206004820152600a6024820152692ba927a723afa622a0a360b11b60448201526064016101e6565b612d3f565b612cd888888b6132db565b995093506000612cf6612cec886001614694565b8690600087612e16565b9050828114612d3d5760405162461bcd60e51b815260206004820152601360248201527257524f4e475f524f4f545f464f525f5a45524f60681b60448201526064016101e6565b505b5050509450945094915050565b600081158015906121a45750612d63600183614807565b82161592915050565b600083855b6001811115612dde57838286604051602001612d8f93929190614962565b604051602081830303815290604052805190602001209150838586604051602001612dbc93929190614962565b60408051601f198184030181529190528051602090910120945060011c612d71565b838883604051602001612df393929190614962565b604051602081830303815290604052805190602001209250505095945050505050565b8160005b855151811015612edf5760018516612e7b57828287600001518381518110612e4457612e44614614565b6020026020010151604051602001612e5e93929190614962565b604051602081830303815290604052805190602001209150612ec6565b8286600001518281518110612e9257612e92614614565b602002602001015183604051602001612ead93929190614962565b6040516020818303038152906040528051906020012091505b60019490941c9380612ed7816146c0565b915050612e1a565b508315611a4b5760405162461bcd60e51b815260206004820152600f60248201526e141493d3d197d513d3d7d4d213d495608a1b60448201526064016101e6565b805160001914612f5d578051602080830151604051612f40939201614989565b60408051601f198184030181529190528051602091820120908201525b60009052565b60008080612f72858585613148565b93509150612f81858585613148565b93509050600019821415612fd4578015612fad5760405162461bcd60e51b81526004016101e6906149ab565b602086015115612fcf5760405162461bcd60e51b81526004016101e6906149ab565b613044565b85602001518282604051602001612fec929190614989565b60405160208183030381529060405280519060200120146130445760405162461bcd60e51b8152602060048201526012602482015271057524f4e475f434f5448524541445f504f560741b60448201526064016101e6565b6020860152909352505050565b6101408201516000906000191461306a575060006121a4565b600060408460e0015163ffffffff16901b9050602084610100015163ffffffff16901b811790506001838561012001516130a491906149d9565b6130ae9190614a01565b63ffffffff161761014084015250600192915050565b60408101515160a0820151516000198114806130e1575060001982145b156130ee57826002612087565b6130fb836080015161365d565b60a084015152602083015161310f906136f6565b604084015152608083015161312a9082602082015260609052565b50602091820151808301919091526040805192830190526060825252565b600081816131578686846134a8565b9097909650945050505050565b600081815b60088110156131c2576008836001600160401b0316901b925085858381811061319457613194614614565b919091013560f81c939093179250816131ac816146c0565b92505080806131ba906146c0565b915050613169565b50935093915050565b6040805180820190915260008082526020820152815180516131ef90600190614807565b815181106131ff576131ff614614565b602002602001015190506000600183600001515161321d9190614807565b6001600160401b0381111561323457613234613f5e565b60405190808252806020026020018201604052801561327957816020015b60408051808201909152600080825260208201528152602001906001900390816132525790505b50905060005b81518110156132d457835180518290811061329c5761329c614614565b60200260200101518282815181106132b6576132b6614614565b602002602001018190525080806132cc906146c0565b91505061327f565b5090915290565b6040805160208101909152606081528160006132f886868461377b565b92509050600060ff82166001600160401b0381111561331957613319613f5e565b604051908082528060200260200182016040528015613342578160200160208202803683370190505b50905060005b8260ff168160ff16101561339957613361888886613148565b838360ff168151811061337657613376614614565b60200260200101819650828152505050808061339190614842565b915050613348565b5060405180602001604052808281525093505050935093915050565b8151516000906133c6906001614694565b6001600160401b038111156133dd576133dd613f5e565b60405190808252806020026020018201604052801561342257816020015b60408051808201909152600080825260208201528152602001906001900390816133fb5790505b50905060005b83515181101561347e57835180518290811061344657613446614614565b602002602001015182828151811061346057613460614614565b60200260200101819052508080613476906146c0565b915050613428565b5081818460000151518151811061349757613497614614565b602090810291909101015290915250565b600081815b60208110156131c257600883901b92508585838181106134cf576134cf614614565b919091013560f81c939093179250816134e7816146c0565b92505080806134f5906146c0565b9150506134ad565b613505613aa2565b604080516060810182526000808252602082018190529181018290528391906000806000806135358b8b89613148565b975095506135448b8b896137b1565b975094506135538b8b89613148565b975093506135628b8b89613148565b975092506135718b8b89613148565b975091506135808b8b896135c1565b6040805160c081018252988952602089019790975295870194909452506060850191909152608084015263ffffffff1660a083015290969095509350505050565b600081815b60048110156131c25760088363ffffffff16901b92508585838181106135ee576135ee614614565b919091013560f81c93909317925081613606816146c0565b9250508080613614906146c0565b9150506135c6565b6000611a4b848461362c8561382c565b6040518060400160405280601381526020017226b7b23ab6329036b2b935b632903a3932b29d60691b815250612e16565b602081015160005b8251518110156136f0576136958360000151828151811061368857613688614614565b60200260200101516138a8565b6040517129ba30b1b590333930b6b29039ba30b1b59d60711b602082015260328101919091526052810183905260720160405160208183030381529060405280519060200120915080806136e8906146c0565b915050613665565b50919050565b60208101518151515160005b8181101561377457835161371f9061371a9083613918565b613950565b6040516b2b30b63ab29039ba30b1b59d60a11b6020820152602c810191909152604c8101849052606c01604051602081830303815290604052805190602001209250808061376c906146c0565b915050613702565b5050919050565b60008184848281811061379057613790614614565b919091013560f81c92508190506137a6816146c0565b915050935093915050565b604080516060810182526000808252602082018190529181019190915281600080806137de888886613164565b945092506137ed888886613164565b945091506137fc888886613148565b604080516060810182526001600160401b0396871681529490951660208501529383015250969095509350505050565b60008160000151613840836020015161396d565b6040808501516060860151608087015160a08801519351611ebf969594906020016626b7b23ab6329d60c91b81526007810196909652602786019490945260478501929092526067840152608783015260e01b6001600160e01b03191660a782015260ab0190565b60006138b78260000151613950565b602080840151604080860151606087015191516b29ba30b1b590333930b6b29d60a11b94810194909452602c840194909452604c8301919091526001600160e01b031960e093841b8116606c840152921b9091166070820152607401611ebf565b6040805180820190915260008082526020820152825180518390811061394057613940614614565b6020026020010151905092915050565b600081600001518260200151604051602001611ebf929190614a1e565b805160208083015160408085015190516626b2b6b7b93c9d60c91b938101939093526001600160c01b031960c094851b811660278501529190931b16602f8201526037810191909152600090605701611ebf565b60408051610180810190915280600081526020016139f660408051606080820183529181019182529081526000602082015290565b8152604080518082018252600080825260208083019190915283015201613a3460408051606080820183529181019182529081526000602082015290565b8152602001613a59604051806040016040528060608152602001600080191681525090565b815260408051808201825260008082526020808301829052840191909152908201819052606082018190526080820181905260a0820181905260c0820181905260e09091015290565b6040805160c081019091526000815260208101613ad8604080516060810182526000808252602082018190529181019190915290565b8152600060208201819052604082018190526060820181905260809091015290565b613b02614a53565b565b6040518060400160405280613b17613ba2565b8152602001613b24613ba2565b905290565b60405180606001604052806003906020820280368337509192915050565b60405180608001604052806004906020820280368337509192915050565b604051806101800160405280600c906020820280368337509192915050565b60405180602001604052806001906020820280368337509192915050565b60405180604001604052806002906020820280368337509192915050565b6000604082840312156136f057600080fd5b6000806000806000808688036101c080821215613bee57600080fd5b613bf88a8a613bc0565b975060408901356001600160401b0380821115613c1457600080fd5b818b01915082828d031215613c2857600080fd5b819850610100605f1985011215613c3e57600080fd5b60608b019750613c528c6101608d01613bc0565b96506101a08b0135935080841115613c6957600080fd5b838b0193508b601f850112613c7d57600080fd5b8335925080831115613c8e57600080fd5b5050896020828401011115613ca257600080fd5b60208201935080925050509295509295509295565b634e487b7160e01b600052602160045260246000fd5b60048110613cdd57613cdd613cb7565b9052565b805160078110613cf357613cf3613cb7565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b80841015613d5057613d3c828651613ce1565b938201936001939093019290850190613d29565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b82811015613dcf578451613d9b858251613ce1565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a090930192600101613d86565b509687015197909601969096525093949350505050565b6000610120808352613dfb8184018651613ccd565b60208501516101c06101408181870152613e196102e0870184613d00565b92506040880151610160613e398189018380518252602090810151910152565b60608a0151915061011f1980898703016101a08a0152613e598684613d00565b955060808b015192508089870301858a015250613e768583613d64565b60a08b015180516101e08b015260208101516102008b0152909550935060c08a015161022089015260e08a015163ffffffff81166102408a015293506101008a015163ffffffff81166102608a015293509489015163ffffffff811661028089015294918901516102a0880152508701516102c0860152509150612402905060208301848051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a0830152608081015160c083015263ffffffff60a08201511660e08301525050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715613f9657613f96613f5e565b60405290565b604051602081016001600160401b0381118282101715613f9657613f96613f5e565b604051608081016001600160401b0381118282101715613f9657613f96613f5e565b60405161018081016001600160401b0381118282101715613f9657613f96613f5e565b60405160c081016001600160401b0381118282101715613f9657613f96613f5e565b604051606081016001600160401b0381118282101715613f9657613f96613f5e565b604051601f8201601f191681016001600160401b038111828210171561406f5761406f613f5e565b604052919050565b600082601f83011261408857600080fd5b604051604081018181106001600160401b03821117156140aa576140aa613f5e565b80604052508060408401858111156140c157600080fd5b845b818110156140db5780358352602092830192016140c3565b509195945050505050565b600080600080600061014080878903121561410057600080fd5b61410a8888614077565b9550604087013594506141208860608901614077565b935060a087013592508760df88011261413857600080fd5b614140613fbe565b90870190808983111561415257600080fd5b60c089015b8381101561416f578035835260209283019201614157565b508093505050509295509295909350565b80356004811061191f57600080fd5b60006001600160401b038211156141a8576141a8613f5e565b5060051b60200190565b6000604082840312156141c457600080fd5b6141cc613f74565b90508135600781106141dd57600080fd5b808252506020820135602082015292915050565b6000604080838503121561420457600080fd5b61420c613f74565b915082356001600160401b038082111561422557600080fd5b8185019150602080838803121561423b57600080fd5b614243613f9c565b83358381111561425257600080fd5b80850194505087601f85011261426757600080fd5b8335925061427c6142778461418f565b614047565b83815260069390931b8401820192828101908985111561429b57600080fd5b948301945b848610156142c1576142b28a876141b2565b825294860194908301906142a0565b8252508552948501359484019490945250909392505050565b6000604082840312156142ec57600080fd5b6142f4613f74565b9050813581526020820135602082015292915050565b803563ffffffff8116811461191f57600080fd5b6000604080838503121561433157600080fd5b614339613f74565b915082356001600160401b0381111561435157600080fd5b8301601f8101851361436257600080fd5b803560206143726142778361418f565b82815260a0928302840182019282820191908985111561439157600080fd5b948301945b848610156143fa5780868b0312156143ae5760008081fd5b6143b6613fbe565b6143c08b886141b2565b8152878701358582015260606143d781890161430a565b898301526143e76080890161430a565b9082015283529485019491830191614396565b50808752505080860135818601525050505092915050565b60006101c0823603121561442557600080fd5b61442d613fe0565b61443683614180565b815260208301356001600160401b038082111561445257600080fd5b61445e368387016141f1565b602084015261447036604087016142da565b6040840152608085013591508082111561448957600080fd5b614495368387016141f1565b606084015260a08501359150808211156144ae57600080fd5b506144bb3682860161431e565b6080830152506144ce3660c085016142da565b60a08201526101008084013560c08301526101206144ed81860161430a565b60e084015261014061450081870161430a565b83850152610160925061451483870161430a565b91840191909152610180850135908301526101a090930135928101929092525090565b80356001600160401b038116811461191f57600080fd5b600081830361010081121561456257600080fd5b61456a614003565b833581526060601f198301121561458057600080fd5b614588614025565b915061459660208501614537565b82526145a460408501614537565b6020830152606084013560408301528160208201526080840135604082015260a0840135606082015260c084013560808201526145e360e0850161430a565b60a0820152949350505050565b60006020828403121561460257600080fd5b813561ffff8116811461240257600080fd5b634e487b7160e01b600052603260045260246000fd5b6000808585111561463a57600080fd5b8386111561464757600080fd5b5050820193919092039150565b634e487b7160e01b600052601260045260246000fd5b60008261467957614679614654565b500690565b634e487b7160e01b600052601160045260246000fd5b600082198211156146a7576146a761467e565b500190565b6000826146bb576146bb614654565b500490565b60006000198214156146d4576146d461467e565b5060010190565b8183823760009101908152919050565b6020808252600c908201526b4241445f505245494d41474560a01b604082015260600190565b6020808252601690820152752aa725a727aba72fa82922a4a6a0a3a2afa82927a7a360511b604082015260600190565b60006020828403121561475357600080fd5b5051919050565b803560208310156121a457600019602084900360031b1b1692915050565b6000806040838503121561478b57600080fd5b505080516020909101519092909150565b60008160001904831182151516156147b6576147b661467e565b500290565b60208082526011908201527025ad23afa82927a7a32faba927a723afad60791b604082015260600190565b8284823760e09190911b6001600160e01b0319169101908152600401919050565b6000828210156148195761481961467e565b500390565b600063ffffffff808316818114156148385761483861467e565b6001019392505050565b600060ff821660ff8114156148595761485961467e565b60010192915050565b60005b8381101561487d578181015183820152602001614865565b8381111561488c576000848401525b50505050565b600082516148a4818460208701614862565b9190910192915050565b805160208083015191908110156136f05760001960209190910360031b1b16919050565b6000602082840312156148e457600080fd5b81356001600160a01b038116811461240257600080fd5b60006001600160401b038381169083168181101561491b5761491b61467e565b039392505050565b6001600160f81b031986168152606085901b6bffffffffffffffffffffffff191660018201528284601583013760159201918201526035019392505050565b60008451614974818460208901614862565b91909101928352506020820152604001919050565b6831b7ba343932b0b21d60b91b81526009810192909252602982015260490190565b60208082526014908201527357524f4e475f434f5448524541445f454d50545960601b604082015260600190565b600063ffffffff8083168185168083038211156149f8576149f861467e565b01949350505050565b600063ffffffff8381169083168181101561491b5761491b61467e565b652b30b63ab29d60d11b8152600060078410614a3c57614a3c613cb7565b5060f89290921b6006830152600782015260270190565b634e487b7160e01b600052605160045260246000fdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4730644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001a2646970667358221220306096594aea80ec9dc8042a25eeb842f0eccea3aaa005d0c0e25b564a86ab2464736f6c634300080c0033", - "accessList": [], - "hash": "0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09", - "v": 1, - "r": "0x447e9858e8f67379f5f2f4716922b5fae9f01d0bdc3364b2bdc6bc09604e28c2", - "s": "0x719ce4d0882c019d7dec15ef75f0c90178ddb1718929c79ae12c97f798face47", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "osp": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "prover0_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "proverMem_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "proverMath_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "proverHostIo_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "type": "function", - "name": "getEndMachineHash", - "constant": true, - "inputs": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getStartMachineHash", - "constant": true, - "inputs": [ - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "proveOneStep", - "constant": true, - "inputs": [ - { - "name": "execCtx", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStep", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "beforeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "afterHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "prover0", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "proverHostIo", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "proverMath", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "proverMem", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "getEndMachineHash(uint8,bytes32)": { - "type": "function", - "name": "getEndMachineHash", - "constant": true, - "inputs": [ - { - "name": "status", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getStartMachineHash(bytes32,bytes32)": { - "type": "function", - "name": "getStartMachineHash", - "constant": true, - "inputs": [ - { - "name": "globalStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "pure", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "proveOneStep((uint256,address),uint256,bytes32,bytes)": { - "type": "function", - "name": "proveOneStep", - "constant": true, - "inputs": [ - { - "name": "execCtx", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "maxInboxMessagesRead", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStep", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "beforeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "afterHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "prover0()": { - "type": "function", - "name": "prover0", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "proverHostIo()": { - "type": "function", - "name": "proverHostIo", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "proverMath()": { - "type": "function", - "name": "proverMath", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "proverMem()": { - "type": "function", - "name": "proverMem", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "prover0_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "proverMem_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "proverMath_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "proverHostIo_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0xD8AC8CE9845aef7A5FBc7E56C0b6714b1fFEe3c7", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 200, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x29759c" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60806040523480156200001157600080fd5b5060405162002f2038038062002f208339810160408190526200003491620000a5565b600080546001600160a01b039586166001600160a01b031991821617909155600180549486169482169490941790935560028054928516928416929092179091556003805491909316911617905562000102565b80516001600160a01b0381168114620000a057600080fd5b919050565b60008060008060808587031215620000bc57600080fd5b620000c78562000088565b9350620000d76020860162000088565b9250620000e76040860162000088565b9150620000f76060860162000088565b905092959194509250565b612e0e80620001126000396000f3fe608060405234801561001057600080fd5b506004361061006d5760003560e01c806304997be4146100725780631f128bc01461009857806330a5509f146100c35780635d3adcfb146100d65780635f52fd7c146100e957806366e5d9c3146100fc578063d8558b871461010f575b600080fd5b6100856100803660046121b9565b610122565b6040519081526020015b60405180910390f35b6001546100ab906001600160a01b031681565b6040516001600160a01b03909116815260200161008f565b6000546100ab906001600160a01b031681565b6100856100e43660046121db565b6102c8565b6003546100ab906001600160a01b031681565b6002546100ab906001600160a01b031681565b61008561011d366004612286565b61094b565b60408051600380825260808201909252600091829190816020015b604080518082019091526000808252602082015281526020019060019003908161013d57505060408051808201825260008082526020918201819052825180840190935260048352908201529091508160008151811061019f5761019f6122c8565b60200260200101819052506101b46000610a4c565b816001815181106101c7576101c76122c8565b60200260200101819052506101dc6000610a4c565b816002815181106101ef576101ef6122c8565b6020908102919091018101919091526040805180830182528381528151808301909252808252600092820192909252610226612058565b604080518082018252606080825260006020808401829052845180860186528082018390526000198082528651610180810188528481529283018990529582018190529281018690526080810184905260a0810183905260c081018c905260e081018290526101008101829052610120810191909152610140810193909352610160830189905290916102b881610a7f565b9750505050505050505b92915050565b60006102d2612076565b6102da61212d565b6040805160208101909152606081526040805180820190915260008082526020820152600061030a888883610cbd565b90955090508861031986610a7f565b146103615760405162461bcd60e51b815260206004820152601360248201527209a828690929c8abe848a8c9ea48abe9082a69606b1b60448201526064015b60405180910390fd5b600085516003811115610376576103766122de565b146103905761038485610a7f565b95505050505050610942565b650800000000006103a28b600161230a565b14156103b5576002855261038485610a7f565b6103c0888883610f19565b90945090506103d0888883610fdd565b80925081945050508461016001516103fd8660e0015163ffffffff1686866110b79092919063ffffffff16565b146104395760405162461bcd60e51b815260206004820152600c60248201526b1353d115531154d7d493d3d560a21b6044820152606401610358565b60606104516040518060200160405280606081525090565b60408051602081019091526060815261046b8b8b86611102565b9450925061047a8b8b86610fdd565b945091506104898b8b86610fdd565b809550819250505060006104bf60408a61012001516104a89190612338565b63ffffffff1685856112019092919063ffffffff16565b905060006104e38a610100015163ffffffff1683856112479092919063ffffffff16565b90508860600151811461052d5760405162461bcd60e51b815260206004820152601260248201527110905117d1955390d51253d394d7d493d3d560721b6044820152606401610358565b8460408b6101200151610540919061235b565b63ffffffff1681518110610556576105566122c8565b6020026020010151965050505050508787829080926105779392919061237e565b975097505060008460e0015163ffffffff1690506001856101200181815161059f91906123a8565b63ffffffff1690525081516000602861ffff8316108015906105c65750603561ffff831611155b806105e65750603661ffff8316108015906105e65750603e61ffff831611155b806105f5575061ffff8216603f145b80610604575061ffff82166040145b1561061b57506001546001600160a01b0316610832565b61ffff821660451480610632575061ffff82166050145b806106605750604661ffff8316108015906106605750610654600960466123d0565b61ffff168261ffff1611155b8061068e5750606761ffff83161080159061068e5750610682600260676123d0565b61ffff168261ffff1611155b806106ae5750606a61ffff8316108015906106ae5750607861ffff831611155b806106dc5750605161ffff8316108015906106dc57506106d0600960516123d0565b61ffff168261ffff1611155b8061070a5750607961ffff83161080159061070a57506106fe600260796123d0565b61ffff168261ffff1611155b8061072a5750607c61ffff83161080159061072a5750608a61ffff831611155b80610739575061ffff821660a7145b80610756575061ffff821660ac1480610756575061ffff821660ad145b80610776575060c061ffff831610801590610776575060c461ffff831611155b80610796575060bc61ffff831610801590610796575060bf61ffff831611155b156107ad57506002546001600160a01b0316610832565b61801061ffff8316108015906107c9575061801361ffff831611155b806107eb575061802061ffff8316108015906107eb575061802461ffff831611155b8061080d575061803061ffff83161080159061080d575061803261ffff831611155b1561082457506003546001600160a01b0316610832565b506000546001600160a01b03165b806001600160a01b0316633604366f8e8989888f8f6040518763ffffffff1660e01b81526004016108689695949392919061252f565b600060405180830381865afa158015610885573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108ad9190810190612b58565b9097509550600061ffff831661802314806108cd575061ffff8316618024145b15905080156108e8576108e18685896110b7565b6101608901525b6002885160038111156108fd576108fd6122de565b148015610911575061014088015160001914155b1561092e5761091f886112bc565b61092888611340565b50600088525b61093788610a7f565b985050505050505050505b95945050505050565b60006001836003811115610961576109616122de565b141561099557816040516020016109789190612cb2565b6040516020818303038152906040528051906020012090506102c2565b60028360038111156109a9576109a96122de565b14156109d3576040516f26b0b1b434b7329032b93937b932b21d60811b6020820152603001610978565b60038360038111156109e7576109e76122de565b1415610a11576040516f26b0b1b434b732903a37b7903330b91d60811b6020820152603001610978565b60405162461bcd60e51b815260206004820152601060248201526f4241445f424c4f434b5f53544154555360801b6044820152606401610358565b604080518082019091526000808252602082015250604080518082019091526000815263ffffffff909116602082015290565b60008082516003811115610a9557610a956122de565b1415610bb3576000610ac4610aad8460200151611370565b6101408501516040860151919060001914156113f5565b90506000610aef610ad885608001516114e8565b61014086015160a0870151919060001914156113f5565b9050600082610b018660600151611370565b60c087015160e0808901516101008a01516101208b01516101408c01516101608d01516040516f26b0b1b434b73290393ab73734b7339d60811b602082015260308101999099526050890197909752607088018a905260908801959095526001600160e01b031992841b831660b088015290831b821660b487015290911b1660b884015260bc83015260dc82015260fc0160408051601f19818403018152919052805160209091012095945050505050565b600182516003811115610bc857610bc86122de565b1415610c00578160c00151604051602001610be39190612cb2565b604051602081830303815290604052805190602001209050919050565b600282516003811115610c1557610c156122de565b1415610c3f576040516f26b0b1b434b7329032b93937b932b21d60811b6020820152603001610be3565b600382516003811115610c5457610c546122de565b1415610c7e576040516f26b0b1b434b732903a37b7903330b91d60811b6020820152603001610be3565b60405162461bcd60e51b815260206004820152600f60248201526e4241445f4d4143485f53544154555360881b6044820152606401610358565b919050565b610cc5612076565b81600080610cd4878785611581565b9350905060ff8116610ce95760009150610d66565b8060ff1660011415610cfe5760019150610d66565b8060ff1660021415610d135760029150610d66565b8060ff1660031415610d285760039150610d66565b60405162461bcd60e51b8152602060048201526013602482015272554e4b4e4f574e5f4d4143485f53544154555360681b6044820152606401610358565b50610d6f612058565b610d77612058565b60408051808201909152600080825260208201526040805180820190915260608152600060208201526040805180820190915260008082526020820152610dbf8b8b896115b7565b97509450610dce8b8b896116b6565b97509250610ddd8b8b896115b7565b97509350610dec8b8b8961170c565b97509150610dfb8b8b896116b6565b8098508192505050604051806101800160405280876003811115610e2157610e216122de565b8152602081019690965260408601939093526060850193909352608084015260a0830191909152600060c0830181905260e08301819052610100830181905261012083018190526101408301819052610160909201919091529250610e899050858583611834565b60c08401919091529050610e9e858583611850565b63ffffffff90911660e08401529050610eb8858583611850565b63ffffffff9091166101008401529050610ed3858583611850565b63ffffffff9091166101208401529050610eee858583611834565b6101408401919091529050610f04858583611834565b61016084019190915291959194509092505050565b610f2161212d565b60408051606081018252600080825260208201819052918101829052839190600080600080610f518b8b89611834565b97509550610f608b8b896118b4565b97509450610f6f8b8b89611834565b97509350610f7e8b8b89611834565b97509250610f8d8b8b89611834565b97509150610f9c8b8b89611850565b6040805160c081018252988952602089019790975295870194909452506060850191909152608084015263ffffffff1660a083015290969095509350505050565b604080516020810190915260608152816000610ffa868684611581565b92509050600060ff82166001600160401b0381111561101b5761101b6122b2565b604051908082528060200260200182016040528015611044578160200160208202803683370190505b50905060005b8260ff168160ff16101561109b57611063888886611834565b838360ff1681518110611078576110786122c8565b60200260200101819650828152505050808061109390612cd7565b91505061104a565b5060405180602001604052808281525093505050935093915050565b60006110f884846110c78561192f565b6040518060400160405280601381526020017226b7b23ab6329036b2b935b632903a3932b29d60691b8152506119ab565b90505b9392505050565b6060816000611112868684611581565b9250905060ff81166001600160401b03811115611131576111316122b2565b60405190808252806020026020018201604052801561117657816020015b604080518082019091526000808252602082015281526020019060019003908161114f5790505b50925060005b8160ff168110156111f757600080611195898987611abd565b955091506111a4898987611b16565b809650819250505060405180604001604052808361ffff168152602001828152508684815181106111d7576111d76122c8565b6020026020010181905250505080806111ef90612cf7565b91505061117c565b5050935093915050565b60006110f8848461121185611b6b565b6040518060400160405280601881526020017724b739ba393ab1ba34b7b71036b2b935b632903a3932b29d60411b8152506119ab565b60405168233ab731ba34b7b71d60b91b602082015260298101829052600090819060490160405160208183030381529060405280519060200120905061094285858360405180604001604052806015815260200174233ab731ba34b7b71036b2b935b632903a3932b29d60591b8152506119ab565b60408101515160a0820151516000198114806112d9575060001982145b156112e657505060029052565b6112f383608001516114e8565b60a084015152602083015161130790611370565b60408401515260808301516113229082602082015260609052565b50602091820151808301919091526040805192830190526060825252565b60006113548283610140015160001c611d0a565b61136057506000919050565b5060001961014090910152600190565b60208101518151515160005b818110156113ee578351611399906113949083611d4c565b611d84565b6040516b2b30b63ab29039ba30b1b59d60a11b6020820152602c810191909152604c8101849052606c0160405160208183030381529060405280519060200120925080806113e690612cf7565b91505061137c565b5050919050565b60006000198314156114455760405162461bcd60e51b81526020600482015260196024820152784d554c5449535441434b5f4e4f535441434b5f41435449564560381b6044820152606401610358565b81156114ce57835160001914156114985760405162461bcd60e51b815260206004820152601760248201527626aaa62a24a9aa20a1a5afa727a9aa20a1a5afa6a0a4a760491b6044820152606401610358565b83516020808601516040516114b1939287929101612d12565b6040516020818303038152906040528051906020012090506110fb565b83516020808601516040516114b193879390929101612d12565b602081015160005b82515181101561157b5761152083600001518281518110611513576115136122c8565b6020026020010151611da1565b6040517129ba30b1b590333930b6b29039ba30b1b59d60711b6020820152603281019190915260528101839052607201604051602081830303815290604052805190602001209150808061157390612cf7565b9150506114f0565b50919050565b600081848482818110611596576115966122c8565b919091013560f81c92508190506115ac81612cf7565b915050935093915050565b6115bf612058565b8160006115cd868684611834565b9250905060006115de878785611b16565b935090506000816001600160401b038111156115fc576115fc6122b2565b60405190808252806020026020018201604052801561164157816020015b604080518082019091526000808252602082015281526020019060019003908161161a5790505b50905060005b815181101561168f5761165b898987611e11565b83838151811061166d5761166d6122c8565b602002602001018197508290525050808061168790612cf7565b915050611647565b50604080516060810182529081019182529081526020810192909252509590945092505050565b60408051808201909152600080825260208201528160006116d8868684611834565b9250905060006116e9878785611834565b604080518082019091529384526020840191909152919791965090945050505050565b60408051808201909152606081526000602082015281600061172f868684611834565b925090506060868684818110611747576117476122c8565b909101356001600160f81b0319161590506117cf578261176681612cf7565b604080516001808252818301909252919550909150816020015b611788612185565b8152602001906001900390816117805790505090506117a8878785611f0d565b826000815181106117bb576117bb6122c8565b602002602001018195508290525050611813565b826117d981612cf7565b6040805160008082526020820190925291955090915061180f565b6117fc612185565b8152602001906001900390816117f45790505b5090505b60405180604001604052808281526020018381525093505050935093915050565b60008181611843868684611b16565b9097909650945050505050565b600081815b60048110156118ab5760088363ffffffff16901b925085858381811061187d5761187d6122c8565b919091013560f81c9390931792508161189581612cf7565b92505080806118a390612cf7565b915050611855565b50935093915050565b604080516060810182526000808252602082018190529181019190915281600080806118e1888886611fa6565b945092506118f0888886611fa6565b945091506118ff888886611834565b604080516060810182526001600160401b0396871681529490951660208501529383015250969095509350505050565b600081600001516119438360200151612004565b6040808501516060860151608087015160a08801519351610be3969594906020016626b7b23ab6329d60c91b81526007810196909652602786019490945260478501929092526067840152608783015260e01b6001600160e01b03191660a782015260ab0190565b8160005b855151811015611a745760018516611a10578282876000015183815181106119d9576119d96122c8565b60200260200101516040516020016119f393929190612d3e565b604051602081830303815290604052805190602001209150611a5b565b8286600001518281518110611a2757611a276122c8565b602002602001015183604051602001611a4293929190612d3e565b6040516020818303038152906040528051906020012091505b60019490941c9380611a6c81612cf7565b9150506119af565b508315611ab55760405162461bcd60e51b815260206004820152600f60248201526e141493d3d197d513d3d7d4d213d495608a1b6044820152606401610358565b949350505050565b600081815b60028110156118ab5760088361ffff16901b9250858583818110611ae857611ae86122c8565b919091013560f81c93909317925081611b0081612cf7565b9250508080611b0e90612cf7565b915050611ac2565b600081815b60208110156118ab57600883901b9250858583818110611b3d57611b3d6122c8565b919091013560f81c93909317925081611b5581612cf7565b9250508080611b6390612cf7565b915050611b1b565b60008082516022611b7c9190612d84565b611b8790600e61230a565b6001600160401b03811115611b9e57611b9e6122b2565b6040519080825280601f01601f191660200182016040528015611bc8576020820181803683370190505b5090506c24b739ba393ab1ba34b7b7399d60991b60208201526000600d9050835160f81b828281518110611bfe57611bfe6122c8565b60200101906001600160f81b031916908160001a90535080611c1f81612cf7565b91505060005b8451811015611cfa576000858281518110611c4257611c426122c8565b602002602001015190506008816000015161ffff16901c60f81b848481518110611c6e57611c6e6122c8565b60200101906001600160f81b031916908160001a905350805160f81b84611c9685600161230a565b81518110611ca657611ca66122c8565b60200101906001600160f81b031916908160001a905350611cc860028461230a565b6020808301518683018201819052919450611ce3908561230a565b935050508080611cf290612cf7565b915050611c25565b5050805160209091012092915050565b6000606082901c15611d1e575060006102c2565b5063ffffffff818116610120840152602082901c811661010084015260409190911c1660e090910152600190565b60408051808201909152600080825260208201528251805183908110611d7457611d746122c8565b6020026020010151905092915050565b600081600001518260200151604051602001610be3929190612da3565b6000611db08260000151611d84565b602080840151604080860151606087015191516b29ba30b1b590333930b6b29d60a11b94810194909452602c840194909452604c8301919091526001600160e01b031960e093841b8116606c840152921b9091166070820152607401610be3565b6040805180820190915260008082526020820152816000858583818110611e3a57611e3a6122c8565b919091013560f81c9150829050611e5081612cf7565b925050611e5b600690565b6006811115611e6c57611e6c6122de565b60ff168160ff161115611eb25760405162461bcd60e51b815260206004820152600e60248201526d4241445f56414c55455f5459504560901b6044820152606401610358565b6000611ebf878785611b16565b809450819250505060405180604001604052808360ff166006811115611ee757611ee76122de565b6006811115611ef857611ef86122de565b81526020018281525093505050935093915050565b611f15612185565b81611f30604080518082019091526000808252602082015290565b6000806000611f40898987611e11565b95509350611f4f898987611834565b95509250611f5e898987611850565b95509150611f6d898987611850565b60408051608081018252968752602087019590955263ffffffff9384169486019490945290911660608401525090969095509350505050565b600081815b60088110156118ab576008836001600160401b0316901b9250858583818110611fd657611fd66122c8565b919091013560f81c93909317925081611fee81612cf7565b9250508080611ffc90612cf7565b915050611fab565b805160208083015160408085015190516626b2b6b7b93c9d60c91b938101939093526001600160c01b031960c094851b811660278501529190931b16602f8201526037810191909152600090605701610be3565b60408051606080820183529181019182529081526000602082015290565b6040805161018081019091528060008152602001612092612058565b81526020016120b1604080518082019091526000808252602082015290565b81526020016120be612058565b81526020016120de60408051808201909152606081526000602082015290565b81526020016120fd604080518082019091526000808252602082015290565b815260006020820181905260408201819052606082018190526080820181905260a0820181905260c09091015290565b6040805160c081019091526000815260208101612163604080516060810182526000808252602082018190529181019190915290565b8152600060208201819052604082018190526060820181905260809091015290565b6040805160c08101825260006080820181815260a08301829052825260208201819052918101829052606081019190915290565b600080604083850312156121cc57600080fd5b50508035926020909101359150565b600080600080600085870360a08112156121f457600080fd5b604081121561220257600080fd5b50859450604086013593506060860135925060808601356001600160401b038082111561222e57600080fd5b818801915088601f83011261224257600080fd5b81358181111561225157600080fd5b89602082850101111561226357600080fd5b9699959850939650602001949392505050565b6004811061228357600080fd5b50565b6000806040838503121561229957600080fd5b82356122a481612276565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000821982111561231d5761231d6122f4565b500190565b634e487b7160e01b600052601260045260246000fd5b600063ffffffff8084168061234f5761234f612322565b92169190910492915050565b600063ffffffff8084168061237257612372612322565b92169190910692915050565b6000808585111561238e57600080fd5b8386111561239b57600080fd5b5050820193919092039150565b600063ffffffff8083168185168083038211156123c7576123c76122f4565b01949350505050565b600061ffff8083168185168083038211156123c7576123c76122f4565b600481106123fd576123fd6122de565b9052565b805160078110612413576124136122de565b8252602090810151910152565b805160408084529051602084830181905281516060860181905260009392820191849160808801905b808410156124705761245c828651612401565b938201936001939093019290850190612449565b509581015196019590955250919392505050565b8051604080845281518482018190526000926060916020918201918388019190865b828110156124ef5784516124bb858251612401565b80830151858901528781015163ffffffff90811688870152908701511660808501529381019360a0909301926001016124a6565b509687015197909601969096525093949350505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8635815260006101c060208901356001600160a01b03811680821461255357600080fd5b806020860152505080604084015261256e81840189516123ed565b6020880151816101e0850152612588610380850182612420565b91505060408801516125a861020085018280518252602090810151910152565b5060608801516101bf1980858403016102408601526125c78383612420565b925060808a015191508085840301610260860152506125e68282612484565b91505060a088015161260661028085018280518252602090810151910152565b5060c08801516102c084015260e088015163ffffffff81166102e08501525061010088015163ffffffff81166103008501525061012088015163ffffffff811661032085015250610140880151610340840152610160808901516103608501526126d260608501898051825260208101516001600160401b0380825116602085015280602083015116604085015250604081015160608401525060408101516080830152606081015160a0830152608081015160c083015263ffffffff60a08201511660e08301525050565b6126ec81850188805161ffff168252602090810151910152565b508281036101a0840152612701818587612506565b9998505050505050505050565b604080519081016001600160401b0381118282101715612730576127306122b2565b60405290565b604051602081016001600160401b0381118282101715612730576127306122b2565b604051608081016001600160401b0381118282101715612730576127306122b2565b60405160c081016001600160401b0381118282101715612730576127306122b2565b604051606081016001600160401b0381118282101715612730576127306122b2565b60405161018081016001600160401b0381118282101715612730576127306122b2565b604051601f8201601f191681016001600160401b0381118282101715612809576128096122b2565b604052919050565b8051610cb881612276565b60006001600160401b03821115612835576128356122b2565b5060051b60200190565b60006040828403121561285157600080fd5b61285961270e565b905081516007811061286a57600080fd5b808252506020820151602082015292915050565b6000604080838503121561289157600080fd5b61289961270e565b915082516001600160401b03808211156128b257600080fd5b818501915060208083880312156128c857600080fd5b6128d0612736565b8351838111156128df57600080fd5b80850194505087601f8501126128f457600080fd5b835192506129096129048461281c565b6127e1565b83815260069390931b8401820192828101908985111561292857600080fd5b948301945b8486101561294e5761293f8a8761283f565b8252948601949083019061292d565b8252508552948501519484019490945250909392505050565b60006040828403121561297957600080fd5b61298161270e565b9050815181526020820151602082015292915050565b805163ffffffff81168114610cb857600080fd5b600060408083850312156129be57600080fd5b6129c661270e565b915082516001600160401b038111156129de57600080fd5b8301601f810185136129ef57600080fd5b805160206129ff6129048361281c565b82815260a09283028401820192828201919089851115612a1e57600080fd5b948301945b84861015612a875780868b031215612a3b5760008081fd5b612a43612758565b612a4d8b8861283f565b815287870151858201526060612a64818901612997565b89830152612a7460808901612997565b9082015283529485019491830191612a23565b50808752505080860151818601525050505092915050565b80516001600160401b0381168114610cb857600080fd5b6000818303610100811215612aca57600080fd5b612ad261277a565b8351815291506060601f1982011215612aea57600080fd5b50612af361279c565b612aff60208401612a9f565b8152612b0d60408401612a9f565b602082015260608301516040820152806020830152506080820151604082015260a0820151606082015260c08201516080820152612b4d60e08301612997565b60a082015292915050565b600080610120808486031215612b6d57600080fd5b83516001600160401b0380821115612b8457600080fd5b908501906101c08288031215612b9957600080fd5b612ba16127be565b612baa83612811565b8152602083015182811115612bbe57600080fd5b612bca8982860161287e565b602083015250612bdd8860408501612967565b6040820152608083015182811115612bf457600080fd5b612c008982860161287e565b60608301525060a083015182811115612c1857600080fd5b612c24898286016129ab565b608083015250612c378860c08501612967565b60a082015261010091508183015160c0820152612c55848401612997565b60e0820152610140612c68818501612997565b838301526101609250612c7c838501612997565b8583015261018084015181830152506101a08301518282015280955050505050612ca98460208501612ab6565b90509250929050565b7026b0b1b434b732903334b734b9b432b21d60791b8152601181019190915260310190565b600060ff821660ff811415612cee57612cee6122f4565b60010192915050565b6000600019821415612d0b57612d0b6122f4565b5060010190565b6a36bab63a34b9ba30b1b59d60a91b8152600b810193909352602b830191909152604b820152606b0190565b6000845160005b81811015612d5f5760208188018101518583015201612d45565b81811115612d6e576000828501525b5091909101928352506020820152604001919050565b6000816000190483118215151615612d9e57612d9e6122f4565b500290565b652b30b63ab29d60d11b8152600060078410612dc157612dc16122de565b5060f89290921b600683015260078201526027019056fea2646970667358221220b6ece65f1134ff1c46b101cf4cbde0aa61212730879112acb552c447b0aedd1a64736f6c634300080c0033000000000000000000000000be10da73ead5e971d10fa40a4ba20a5ab3d82ccf0000000000000000000000009bb0410fb60e3d9f90362048ce9ef4f2b101cc67000000000000000000000000fd2443e63b5d45ce42ee652caea8d8857351f5d9000000000000000000000000a85abd9bc08063d6aafa7b5aaefa9e2df91e53fe", - "accessList": [], - "hash": "0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f", - "v": 0, - "r": "0x360127cc4398cb57617cee32bc0e67d50fd291277066653a2f0834803a64000d", - "s": "0x624a619f4da613d7223eeef806a011e645cdc49e9b9ce16cb5279dd0d11f0186", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "challengeManager": { - "interface": { - "fragments": [ - { - "type": "error", - "name": "NotOwner", - "inputs": [ - { - "name": "sender", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "_isFragment": true - }, - { - "name": "Bisected", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "challengeRoot", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengedSegmentStart", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "challengedSegmentLength", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "chainHashes", - "type": "bytes32[]", - "indexed": false, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "ChallengeEnded", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "kind", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "ExecutionChallengeBegun", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockSteps", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "InitiatedChallenge", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "startState", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "endState", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "OneStepProofCompleted", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "bisectExecution", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "selection", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "oldSegmentsStart", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegmentsLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "challengePosition", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "newSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "challengeExecution", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "selection", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "oldSegmentsStart", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegmentsLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "challengePosition", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatuses", - "type": "uint8[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "globalStateHashes", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "numSteps", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "challengeInfo", - "constant": true, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "current", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "next", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "lastMoveTimestamp", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "maxInboxMessages", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "mode", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "challenges", - "constant": true, - "inputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "current", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "next", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "lastMoveTimestamp", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "maxInboxMessages", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "mode", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "clearChallenge", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "createChallenge", - "constant": false, - "inputs": [ - { - "name": "wasmModuleRoot_", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "startAndEndMachineStatuses_", - "type": "uint8[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "startAndEndGlobalStates_", - "type": "tuple[2]", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "asserter_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challenger_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "asserterTimeLeft_", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "challengerTimeLeft_", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "currentResponder", - "constant": true, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getOsp", - "constant": true, - "inputs": [ - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "resultReceiver_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "bridge_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "osp_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isTimedOut", - "constant": true, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "oneStepProveExecution", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "selection", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "oldSegmentsStart", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegmentsLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "challengePosition", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "osp", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ospCond", - "constant": true, - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "postUpgradeInit", - "constant": false, - "inputs": [ - { - "name": "osp_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "condRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "condOsp", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "resultReceiver", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "sequencerInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "timeout", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "totalChallengesCreated", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "bisectExecution(uint64,(uint256,uint256,bytes32[],uint256),bytes32[])": { - "type": "function", - "name": "bisectExecution", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "selection", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "oldSegmentsStart", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegmentsLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "challengePosition", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "newSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "bridge()": { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "challengeExecution(uint64,(uint256,uint256,bytes32[],uint256),uint8[2],bytes32[2],uint256)": { - "type": "function", - "name": "challengeExecution", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "selection", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "oldSegmentsStart", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegmentsLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "challengePosition", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatuses", - "type": "uint8[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "globalStateHashes", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "numSteps", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "challengeInfo(uint64)": { - "type": "function", - "name": "challengeInfo", - "constant": true, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "current", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "next", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "lastMoveTimestamp", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "maxInboxMessages", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "mode", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "challenges(uint256)": { - "type": "function", - "name": "challenges", - "constant": true, - "inputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "current", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "next", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "addr", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "timeLeft", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "lastMoveTimestamp", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeStateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "maxInboxMessages", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "mode", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "clearChallenge(uint64)": { - "type": "function", - "name": "clearChallenge", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "createChallenge(bytes32,uint8[2],(bytes32[2],uint64[2])[2],uint64,address,address,uint256,uint256)": { - "type": "function", - "name": "createChallenge", - "constant": false, - "inputs": [ - { - "name": "wasmModuleRoot_", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "startAndEndMachineStatuses_", - "type": "uint8[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "startAndEndGlobalStates_", - "type": "tuple[2]", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "asserter_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challenger_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "asserterTimeLeft_", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "challengerTimeLeft_", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "currentResponder(uint64)": { - "type": "function", - "name": "currentResponder", - "constant": true, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getOsp(bytes32)": { - "type": "function", - "name": "getOsp", - "constant": true, - "inputs": [ - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "initialize(address,address,address,address)": { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "resultReceiver_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "bridge_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "osp_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isTimedOut(uint64)": { - "type": "function", - "name": "isTimedOut", - "constant": true, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "oneStepProveExecution(uint64,(uint256,uint256,bytes32[],uint256),bytes)": { - "type": "function", - "name": "oneStepProveExecution", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "selection", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "oldSegmentsStart", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegmentsLength", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "oldSegments", - "type": "bytes32[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "challengePosition", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "proof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "osp()": { - "type": "function", - "name": "osp", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ospCond(bytes32)": { - "type": "function", - "name": "ospCond", - "constant": true, - "inputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "postUpgradeInit(address,bytes32,address)": { - "type": "function", - "name": "postUpgradeInit", - "constant": false, - "inputs": [ - { - "name": "osp_", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "condRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "condOsp", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "resultReceiver()": { - "type": "function", - "name": "resultReceiver", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "sequencerInbox()": { - "type": "function", - "name": "sequencerInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "timeout(uint64)": { - "type": "function", - "name": "timeout", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "totalChallengesCreated()": { - "type": "function", - "name": "totalChallengesCreated", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": { - "NotOwner(address,address)": { - "type": "error", - "name": "NotOwner", - "inputs": [ - { - "name": "sender", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "_isFragment": true - } - }, - "events": { - "Bisected(uint64,bytes32,uint256,uint256,bytes32[])": { - "name": "Bisected", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "challengeRoot", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengedSegmentStart", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "challengedSegmentLength", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "chainHashes", - "type": "bytes32[]", - "indexed": false, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "ChallengeEnded(uint64,uint8)": { - "name": "ChallengeEnded", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "kind", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "ExecutionChallengeBegun(uint64,uint256)": { - "name": "ExecutionChallengeBegun", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockSteps", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "InitiatedChallenge(uint64,(bytes32[2],uint64[2]),(bytes32[2],uint64[2]))": { - "name": "InitiatedChallenge", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "startState", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "endState", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "OneStepProofCompleted(uint64)": { - "name": "OneStepProofCompleted", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0xDbF15B72F5f5076B985225f36AAf40EFC105D7c0", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 201, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x26af9c" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60a06040523060805234801561001457600080fd5b50608051612c7e6100376000396000818161082501526114260152612c7e6000f3fe608060405234801561001057600080fd5b50600436106101115760003560e01c80638f1d3776116100ad578063e78cea9211610071578063e78cea921461031a578063ee35f3271461032d578063f26a62c614610340578063f8c8765e14610353578063fb7be0a11461036657600080fd5b80638f1d3776146102055780639ede42b9146102a8578063a521b032146102cb578063d248d124146102de578063dc74bf8b146102f157600080fd5b806314eab5e7146101165780631b45c86a1461014657806323a9ef231461015b5780633504f1d7146101865780633690b011146101995780635038934d146101ac57806356e9df97146101bf5780635ef489e6146101d25780637fd07a9c146101e5575b600080fd5b610129610124366004612214565b610379565b6040516001600160401b0390911681526020015b60405180910390f35b6101596101543660046122a7565b6106f0565b005b61016e6101693660046122a7565b6107c0565b6040516001600160a01b03909116815260200161013d565b60025461016e906001600160a01b031681565b61016e6101a73660046122c2565b6107e4565b6101596101ba3660046122db565b61081a565b6101596101cd3660046122a7565b610900565b600054610129906001600160401b031681565b6101f86101f33660046122a7565b610a6e565b60405161013d919061235f565b6102956102133660046122c2565b6001602081815260009283526040928390208351808501855281546001600160a01b0390811682529382015481840152845180860190955260028201549093168452600381015491840191909152600481015460058201546006830154600790930154939493919290916001600160401b03811690600160401b900460ff1687565b60405161013d97969594939291906123d1565b6102bb6102b63660046122a7565b610b47565b604051901515815260200161013d565b6101596102d9366004612434565b610b68565b6101596102ec3660046124d8565b610fde565b61016e6102ff3660046122c2565b6006602052600090815260409020546001600160a01b031681565b60045461016e906001600160a01b031681565b60035461016e906001600160a01b031681565b60055461016e906001600160a01b031681565b61015961036136600461256a565b61141b565b6101596103743660046125c6565b611547565b6002546000906001600160a01b031633146103ce5760405162461bcd60e51b815260206004820152601060248201526f13d3931657d493d313155417d0d2105360821b60448201526064015b60405180910390fd5b6040805160028082526060820183526000926020830190803683370190505090506104936103ff60208b018b61266a565b61048e8a60005b6080020180360381019061041a9190612729565b8051805160209182015192820151805190830151604080516c23b637b130b61039ba30ba329d60991b81870152602d810194909452604d8401959095526001600160c01b031960c092831b8116606d850152911b1660758201528251808203605d018152607d909101909252815191012090565b611c97565b816000815181106104a6576104a6612654565b60209081029190910101526104d58960016020020160208101906104ca919061266a565b61048e8a6001610406565b816001815181106104e8576104e8612654565b6020908102919091010152600080548190819061050d906001600160401b03166127d7565b91906101000a8154816001600160401b0302191690836001600160401b031602179055905060006001600160401b0316816001600160401b03161415610555576105556127fe565b6001600160401b0381166000908152600160205260408120600581018d90559061058f61058a368d90038d0160808e01612729565b611dbb565b905060026105a360408e0160208f0161266a565b60038111156105b4576105b4612335565b14806105e2575060006105d76105d2368e90038e0160808f01612729565b611dd0565b6001600160401b0316115b156105f557806105f1816127d7565b9150505b6007820180546040805180820182526001600160a01b038d811680835260209283018d90526002880180546001600160a01b03199081169092179055600388018d905583518085018552918e16808352919092018b90528654909116178555600185018990554260048601556001600160401b0384811668ffffffffffffffffff1990931692909217600160401b179092559051908416907f76604fe17af46c9b5f53ffe99ff23e0f655dab91886b07ac1fc0254319f7145a906106bf908e90608082019061285e565b60405180910390a26106dd8360008c6001600160401b031687611ddf565b5090925050505b98975050505050505050565b60006001600160401b038216600090815260016020526040902060070154600160401b900460ff16600281111561072957610729612335565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b815250906107695760405162461bcd60e51b81526004016103c5919061287a565b5061077381610b47565b6107b25760405162461bcd60e51b815260206004820152601060248201526f54494d454f55545f444541444c494e4560801b60448201526064016103c5565b6107bd816000611e75565b50565b6001600160401b03166000908152600160205260409020546001600160a01b031690565b6000818152600660205260408120546001600160a01b0316806108145750506005546001600160a01b0316919050565b92915050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156108635760405162461bcd60e51b81526004016103c5906128cf565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61038054336001600160a01b038216146108c057604051631194af8760e11b81523360048201526001600160a01b03821660248201526044016103c5565b505060009182526006602052604090912080546001600160a01b039283166001600160a01b03199182161790915560058054939092169216919091179055565b6002546001600160a01b0316331461094d5760405162461bcd60e51b815260206004820152601060248201526f2727aa2fa922a9afa922a1a2a4ab22a960811b60448201526064016103c5565b60006001600160401b038216600090815260016020526040902060070154600160401b900460ff16600281111561098657610986612335565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b815250906109c65760405162461bcd60e51b81526004016103c5919061287a565b506001600160401b038116600081815260016020819052604080832080546001600160a01b031990811682559281018490556002810180549093169092556003808301849055600483018490556005830184905560068301939093556007909101805468ffffffffffffffffff19169055517ffdaece6c274a4b56af16761f83fd6b1062823192630ea08e019fdf9b2d747f4091610a639161292b565b60405180910390a250565b610a7661216a565b6001600160401b0382811660009081526001602081815260409283902083516101208101855281546001600160a01b0390811660e0830190815294830154610100830152938152845180860186526002808401549095168152600383015481850152928101929092526004810154938201939093526005830154606082015260068301546080820152600783015493841660a08201529260c0840191600160401b90910460ff1690811115610b2d57610b2d612335565b6002811115610b3e57610b3e612335565b90525092915050565b6001600160401b038116600090815260016020526040812061081490611fa3565b6001600160401b038416600090815260016020526040812085918591610b8d846107c0565b6001600160a01b0316336001600160a01b031614610bbd5760405162461bcd60e51b81526004016103c59061293e565b610bc684610b47565b15610be35760405162461bcd60e51b81526004016103c590612963565b6000826002811115610bf757610bf7612335565b1415610c655760006007820154600160401b900460ff166002811115610c1f57610c1f612335565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b81525090610c5f5760405162461bcd60e51b81526004016103c5919061287a565b50610d24565b6001826002811115610c7957610c79612335565b1415610cc35760016007820154600160401b900460ff166002811115610ca157610ca1612335565b14610cbe5760405162461bcd60e51b81526004016103c59061298a565b610d24565b6002826002811115610cd757610cd7612335565b1415610d1c5760026007820154600160401b900460ff166002811115610cff57610cff612335565b14610cbe5760405162461bcd60e51b81526004016103c5906129b2565b610d246127fe565b610d7283356020850135610d3b60408701876129de565b80806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250611fbb92505050565b816006015414610d945760405162461bcd60e51b81526004016103c590612a2e565b6002610da360408501856129de565b90501080610dce57506001610dbb60408501856129de565b610dc6929150612a51565b836060013510155b15610deb5760405162461bcd60e51b81526004016103c590612a68565b600080610df789611ff2565b9150915060018111610e375760405162461bcd60e51b81526020600482015260096024820152681513d3d7d4d213d49560ba1b60448201526064016103c5565b806028811115610e45575060285b610e50816001612a93565b8814610e8d5760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f44454752454560a01b60448201526064016103c5565b50610ed78989896000818110610ea557610ea5612654565b602002919091013590508a8a610ebc600182612a51565b818110610ecb57610ecb612654565b90506020020135612083565b610f168a83838b8b80806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250611ddf92505050565b50600090505b6007820154600160401b900460ff166002811115610f3c57610f3c612335565b1415610f485750610fd5565b6040805180820190915281546001600160a01b03168152600182015460208201526004820154610f789042612a51565b81602001818151610f899190612a51565b90525060028201805483546001600160a01b038083166001600160a01b031992831617865560038601805460018801558551929093169116179091556020909101519055426004909101555b50505050505050565b6001600160401b038416600090815260016020526040902084908490600290611006846107c0565b6001600160a01b0316336001600160a01b0316146110365760405162461bcd60e51b81526004016103c59061293e565b61103f84610b47565b1561105c5760405162461bcd60e51b81526004016103c590612963565b600082600281111561107057611070612335565b14156110de5760006007820154600160401b900460ff16600281111561109857611098612335565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b815250906110d85760405162461bcd60e51b81526004016103c5919061287a565b5061119d565b60018260028111156110f2576110f2612335565b141561113c5760016007820154600160401b900460ff16600281111561111a5761111a612335565b146111375760405162461bcd60e51b81526004016103c59061298a565b61119d565b600282600281111561115057611150612335565b14156111955760026007820154600160401b900460ff16600281111561117857611178612335565b146111375760405162461bcd60e51b81526004016103c5906129b2565b61119d6127fe565b6111b483356020850135610d3b60408701876129de565b8160060154146111d65760405162461bcd60e51b81526004016103c590612a2e565b60026111e560408501856129de565b90501080611210575060016111fd60408501856129de565b611208929150612a51565b836060013510155b1561122d5760405162461bcd60e51b81526004016103c590612a68565b6001600160401b038816600090815260016020526040812090806112508a611ff2565b9092509050600181146112755760405162461bcd60e51b81526004016103c590612aab565b50600061128583600501546107e4565b60408051808201825260078601546001600160401b031681526004546001600160a01b0390811660208301529290921691635d3adcfb9185906112ca908f018f6129de565b8f606001358181106112de576112de612654565b905060200201358d8d6040518663ffffffff1660e01b8152600401611307959493929190612acd565b602060405180830381865afa158015611324573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113489190612b24565b905061135760408b018b6129de565b61136660608d01356001612a93565b81811061137557611375612654565b905060200201358114156113ba5760405162461bcd60e51b815260206004820152600c60248201526b14d0535157d3d4d417d1539160a21b60448201526064016103c5565b6040516001600160401b038c16907fc2cc42e04ff8c36de71c6a2937ea9f161dd0dd9e175f00caa26e5200643c781e90600090a261140f8b6001600160401b0316600090815260016020526040812060060155565b5060009150610f1c9050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156114645760405162461bcd60e51b81526004016103c5906128cf565b6002546001600160a01b0316156114ac5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b60448201526064016103c5565b6001600160a01b0384166114f75760405162461bcd60e51b81526020600482015260126024820152712727afa922a9aaa62a2fa922a1a2a4ab22a960711b60448201526064016103c5565b600280546001600160a01b039586166001600160a01b0319918216179091556003805494861694821694909417909355600480549285169284169290921790915560058054919093169116179055565b6001600160401b03851660009081526001602081905260409091208691869161156f846107c0565b6001600160a01b0316336001600160a01b03161461159f5760405162461bcd60e51b81526004016103c59061293e565b6115a884610b47565b156115c55760405162461bcd60e51b81526004016103c590612963565b60008260028111156115d9576115d9612335565b14156116475760006007820154600160401b900460ff16600281111561160157611601612335565b1415604051806040016040528060078152602001661393d7d0d2105360ca1b815250906116415760405162461bcd60e51b81526004016103c5919061287a565b50611706565b600182600281111561165b5761165b612335565b14156116a55760016007820154600160401b900460ff16600281111561168357611683612335565b146116a05760405162461bcd60e51b81526004016103c59061298a565b611706565b60028260028111156116b9576116b9612335565b14156116fe5760026007820154600160401b900460ff1660028111156116e1576116e1612335565b146116a05760405162461bcd60e51b81526004016103c5906129b2565b6117066127fe565b61171d83356020850135610d3b60408701876129de565b81600601541461173f5760405162461bcd60e51b81526004016103c590612a2e565b600261174e60408501856129de565b905010806117795750600161176660408501856129de565b611771929150612a51565b836060013510155b156117965760405162461bcd60e51b81526004016103c590612a68565b60018510156117dd5760405162461bcd60e51b815260206004820152601360248201527210d2105313115391d157d513d3d7d4d213d495606a1b60448201526064016103c5565b650800000000008511156118285760405162461bcd60e51b81526020600482015260126024820152714348414c4c454e47455f544f4f5f4c4f4e4760701b60448201526064016103c5565b61186a8861184a61183c60208b018b61266a565b8960005b6020020135611c97565b61186561185d60408c0160208d0161266a565b8a6001611840565b612083565b6001600160401b0389166000908152600160205260408120908061188d8b611ff2565b91509150806001146118b15760405162461bcd60e51b81526004016103c590612aab565b60016118c060208c018c61266a565b60038111156118d1576118d1612335565b1461198b576118e660408b0160208c0161266a565b60038111156118f7576118f7612335565b61190460208c018c61266a565b600381111561191557611915612335565b1480156119265750883560208a0135145b6119625760405162461bcd60e51b815260206004820152600d60248201526c48414c5445445f4348414e474560981b60448201526064016103c5565b6119838c6001600160401b0316600090815260016020526040812060060155565b505050611bd2565b600261199d60408c0160208d0161266a565b60038111156119ae576119ae612335565b14156119f757883560208a0135146119f75760405162461bcd60e51b815260206004820152600c60248201526b4552524f525f4348414e474560a01b60448201526064016103c5565b6040805160028082526060820183526000926020830190803683370190505090506000611a2785600501546107e4565b60058601546040516301265ef960e21b81528d35600482015260248101919091529091506001600160a01b038216906304997be490604401602060405180830381865afa158015611a7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611aa09190612b24565b82600081518110611ab357611ab3612654565b60209081029190910101526001600160a01b03811663d8558b878d6001602002016020810190611ae3919061266a565b8d600160200201356040518363ffffffff1660e01b8152600401611b08929190612b3d565b602060405180830381865afa158015611b25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b499190612b24565b82600181518110611b5c57611b5c612654565b602090810291909101015260078501805460ff60401b1916600160411b179055611b898e60008c85611ddf565b8d6001600160401b03167f24e032e170243bbea97e140174b22dc7e54fb85925afbf52c70e001cd6af16db85604051611bc491815260200190565b60405180910390a250505050505b60006007820154600160401b900460ff166002811115611bf457611bf4612335565b1415611c005750611c8d565b6040805180820190915281546001600160a01b03168152600182015460208201526004820154611c309042612a51565b81602001818151611c419190612a51565b90525060028201805483546001600160a01b038083166001600160a01b031992831617865560038601805460018801558551929093169116179091556020909101519055426004909101555b5050505050505050565b60006001836003811115611cad57611cad612335565b1415611cf3576040516b213637b1b59039ba30ba329d60a11b6020820152602c8101839052604c015b604051602081830303815290604052805190602001209050610814565b6002836003811115611d0757611d07612335565b1415611d3d5760405174213637b1b59039ba30ba32961032b93937b932b21d60591b602082015260358101839052605501611cd6565b6003836003811115611d5157611d51612335565b1415611d805760405174213637b1b59039ba30ba3296103a37b7903330b91d60591b6020820152603501611cd6565b60405162461bcd60e51b815260206004820152601060248201526f4241445f424c4f434b5f53544154555360801b60448201526064016103c5565b6020810151600090815b602002015192915050565b60208101516000906001611dc5565b6001821015611df057611df06127fe565b600281511015611e0257611e026127fe565b6000611e0f848484611fbb565b6001600160401b038616600081815260016020526040908190206006018390555191925082917f86b34e9455464834eca718f62d4481437603bb929d8a78ccde5d1bc79fa06d6890611e6690889088908890612b54565b60405180910390a35050505050565b6001600160401b03821660008181526001602081905260408083206002808201805483546001600160a01b0319808216865596850188905595811690915560038301869055600480840187905560058401879055600684019690965560078301805468ffffffffffffffffff1916905590549251630357aa4960e01b8152948501959095526001600160a01b03948516602485018190529285166044850181905290949293909290911690630357aa4990606401600060405180830381600087803b158015611f4357600080fd5b505af1158015611f57573d6000803e3d6000fd5b50505050846001600160401b03167ffdaece6c274a4b56af16761f83fd6b1062823192630ea08e019fdf9b2d747f4085604051611f94919061292b565b60405180910390a25050505050565b6001810154600090611fb483612158565b1192915050565b6000838383604051602001611fd293929190612ba9565b6040516020818303038152906040528051906020012090505b9392505050565b60008080600161200560408601866129de565b612010929150612a51565b9050612020816020860135612c01565b9150612030606085013583612c15565b61203b908535612a93565b9250600261204c60408601866129de565b612057929150612a51565b8460600135141561207d57612070816020860135612c34565b61207a9083612a93565b91505b50915091565b8161209160408501856129de565b85606001358181106120a5576120a5612654565b90506020020135146120e75760405162461bcd60e51b815260206004820152600b60248201526a15d493d391d7d4d510549560aa1b60448201526064016103c5565b806120f560408501856129de565b61210460608701356001612a93565b81811061211357612113612654565b9050602002013514156121535760405162461bcd60e51b815260206004820152600860248201526714d0535157d1539160c21b60448201526064016103c5565b505050565b60008160040154426108149190612a51565b604080516101208101909152600060e08201818152610100830191909152819081526020016121a9604080518082019091526000808252602082015290565b815260006020820181905260408201819052606082018190526080820181905260a09091015290565b806040810183101561081457600080fd5b80356001600160401b03811681146121fa57600080fd5b919050565b6001600160a01b03811681146107bd57600080fd5b600080600080600080600080610200898b03121561223157600080fd5b883597506122428a60208b016121d2565b965061016089018a81111561225657600080fd5b60608a019650612265816121e3565b955050610180890135612277816121ff565b93506101a0890135612288816121ff565b979a96995094979396929592945050506101c0820135916101e0013590565b6000602082840312156122b957600080fd5b611feb826121e3565b6000602082840312156122d457600080fd5b5035919050565b6000806000606084860312156122f057600080fd5b83356122fb816121ff565b9250602084013591506040840135612312816121ff565b809150509250925092565b80516001600160a01b03168252602090810151910152565b634e487b7160e01b600052602160045260246000fd5b6003811061235b5761235b612335565b9052565b60006101208201905061237382845161231d565b6020830151612385604084018261231d565b5060408301516080830152606083015160a0830152608083015160c08301526001600160401b0360a08401511660e083015260c08301516123ca61010084018261234b565b5092915050565b61012081016123e0828a61231d565b6123ed604083018961231d565b8660808301528560a08301528460c08301526001600160401b03841660e08301526106e461010083018461234b565b60006080828403121561242e57600080fd5b50919050565b6000806000806060858703121561244a57600080fd5b612453856121e3565b935060208501356001600160401b038082111561246f57600080fd5b61247b8883890161241c565b9450604087013591508082111561249157600080fd5b818701915087601f8301126124a557600080fd5b8135818111156124b457600080fd5b8860208260051b85010111156124c957600080fd5b95989497505060200194505050565b600080600080606085870312156124ee57600080fd5b6124f7856121e3565b935060208501356001600160401b038082111561251357600080fd5b61251f8883890161241c565b9450604087013591508082111561253557600080fd5b818701915087601f83011261254957600080fd5b81358181111561255857600080fd5b8860208285010111156124c957600080fd5b6000806000806080858703121561258057600080fd5b843561258b816121ff565b9350602085013561259b816121ff565b925060408501356125ab816121ff565b915060608501356125bb816121ff565b939692955090935050565b600080600080600060e086880312156125de57600080fd5b6125e7866121e3565b945060208601356001600160401b0381111561260257600080fd5b61260e8882890161241c565b94505061261e87604088016121d2565b925061262d87608088016121d2565b9497939650919460c0013592915050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561267c57600080fd5b813560048110611feb57600080fd5b604080519081016001600160401b03811182821017156126ad576126ad61263e565b60405290565b600082601f8301126126c457600080fd5b604051604081018181106001600160401b03821117156126e6576126e661263e565b80604052508060408401858111156126fd57600080fd5b845b8181101561271e57612710816121e3565b8352602092830192016126ff565b509195945050505050565b60006080828403121561273b57600080fd5b604051604081018181106001600160401b038211171561275d5761275d61263e565b604052601f8301841361276f57600080fd5b61277761268b565b80604085018681111561278957600080fd5b855b818110156127a357803584526020938401930161278b565b508184526127b187826126b3565b6020850152509195945050505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160401b03808316818114156127f4576127f46127c1565b6001019392505050565b634e487b7160e01b600052600160045260246000fd5b604081833760006040838101828152908301915b6002811015612857576001600160401b03612842846121e3565b16825260209283019290910190600101612828565b5050505050565b610100810161286d8285612814565b611feb6080830184612814565b600060208083528351808285015260005b818110156128a75785810183015185820160400152820161288b565b818111156128b9576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b600481106107bd576107bd612335565b602081016129388361291b565b91905290565b6020808252600b908201526a21a420a62fa9a2a72222a960a91b604082015260600190565b6020808252600d908201526c4348414c5f444541444c494e4560981b604082015260600190565b6020808252600e908201526d4348414c5f4e4f545f424c4f434b60901b604082015260600190565b60208082526012908201527121a420a62fa727aa2fa2ac22a1aaaa24a7a760711b604082015260600190565b6000808335601e198436030181126129f557600080fd5b8301803591506001600160401b03821115612a0f57600080fd5b6020019150600581901b3603821315612a2757600080fd5b9250929050565b6020808252600990820152684249535f535441544560b81b604082015260600190565b600082821015612a6357612a636127c1565b500390565b6020808252601190820152704241445f4348414c4c454e47455f504f5360781b604082015260600190565b60008219821115612aa657612aa66127c1565b500190565b602080825260089082015267544f4f5f4c4f4e4760c01b604082015260600190565b8551815260018060a01b03602087015116602082015284604082015283606082015260a060808201528160a0820152818360c0830137600081830160c090810191909152601f909201601f19160101949350505050565b600060208284031215612b3657600080fd5b5051919050565b60408101612b4a8461291b565b9281526020015290565b6000606082018583526020858185015260606040850152818551808452608086019150828701935060005b81811015612b9b57845183529383019391830191600101612b7f565b509098975050505050505050565b83815260006020848184015260408301845182860160005b82811015612bdd57815184529284019290840190600101612bc1565b509198975050505050505050565b634e487b7160e01b600052601260045260246000fd5b600082612c1057612c10612beb565b500490565b6000816000190483118215151615612c2f57612c2f6127c1565b500290565b600082612c4357612c43612beb565b50069056fea26469706673582212202bb98625083509765916edd21ced4cb76ddbe44c6626f27e9bfc4a2b775f6f4564736f6c634300080c0033", - "accessList": [], - "hash": "0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956", - "v": 0, - "r": "0x3476325d61aaeb1e87770c4b48bb878640533798a47b2501ed9e0247baf79173", - "s": "0x51f0d280959e18d338e1c80cab7c3c6f3e9190accc526fc391d7c604e2ef556c", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "rollupAdmin": { - "interface": { - "fragments": [ - { - "name": "AdminChanged", - "anonymous": false, - "inputs": [ - { - "name": "previousAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "BeaconUpgraded", - "anonymous": false, - "inputs": [ - { - "name": "beacon", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Initialized", - "anonymous": false, - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "NodeConfirmed", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "NodeCreated", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "parentNodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "executionHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "assertion", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterInboxBatchAcc", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "inboxMaxCount", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "NodeRejected", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "OwnerFunctionCalled", - "anonymous": false, - "inputs": [ - { - "name": "id", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Paused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RollupChallengeStarted", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "asserter", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challenger", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengedNode", - "type": "uint64", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RollupInitialized", - "anonymous": false, - "inputs": [ - { - "name": "machineHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Unpaused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Upgraded", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UpgradedSecondary", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UserStakeUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UserWithdrawableFundsUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "_stakerMap", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "amountStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "baseStake", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "chainId", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "challengeManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "confirmPeriodBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "createNitroMigrationGenesis", - "constant": false, - "inputs": [ - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "currentChallenge", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "extraChallengeTimeBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "firstUnresolvedNode", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "forceConfirmNode", - "constant": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "forceCreateNode", - "constant": false, - "inputs": [ - { - "name": "prevNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "prevNodeInboxMaxCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "expectedNodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "forceRefundStaker", - "constant": false, - "inputs": [ - { - "name": "staker", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "forceResolveChallenge", - "constant": false, - "inputs": [ - { - "name": "stakerA", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "stakerB", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getNode", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "stateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmData", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "deadlineBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "noChildConfirmedBeforeBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "childStakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "firstChildBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestChildNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "createdAtBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getNodeCreationBlockForLogLookup", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getStaker", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getStakerAddress", - "constant": true, - "inputs": [ - { - "name": "stakerNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "inbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "config", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "confirmPeriodBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "extraChallengeTimeBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "baseStake", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "loserStakeEscrow", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "chainConfig", - "type": "string", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "string", - "_isParamType": true - }, - { - "name": "genesisBlockNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "sequencerInboxMaxTimeVariation", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "connectedContracts", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengeManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupAdminLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupUserLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorUtils", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorWalletCreator", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isStakedOnLatestConfirmed", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isValidator", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isZombie", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "lastStakeBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestConfirmed", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestNodeCreated", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestStakedNode", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "loserStakeEscrow", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "minimumAssertionPeriod", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "nodeHasStaker", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "outbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "pause", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "paused", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "proxiableUUID", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "removeOldOutbox", - "constant": false, - "inputs": [ - { - "name": "_outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "resume", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupDeploymentBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupEventInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "sequencerInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setBaseStake", - "constant": false, - "inputs": [ - { - "name": "newBaseStake", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setConfirmPeriodBlocks", - "constant": false, - "inputs": [ - { - "name": "newConfirmPeriod", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setDelayedInbox", - "constant": false, - "inputs": [ - { - "name": "_inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_enabled", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setExtraChallengeTimeBlocks", - "constant": false, - "inputs": [ - { - "name": "newExtraTimeBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setInbox", - "constant": false, - "inputs": [ - { - "name": "newInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setLoserStakeEscrow", - "constant": false, - "inputs": [ - { - "name": "newLoserStakerEscrow", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setMinimumAssertionPeriod", - "constant": false, - "inputs": [ - { - "name": "newPeriod", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setOutbox", - "constant": false, - "inputs": [ - { - "name": "_outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setOwner", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setSequencerInbox", - "constant": false, - "inputs": [ - { - "name": "_sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setStakeToken", - "constant": false, - "inputs": [ - { - "name": "newStakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setValidator", - "constant": false, - "inputs": [ - { - "name": "_validator", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "_val", - "type": "bool[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setValidatorWhitelistDisabled", - "constant": false, - "inputs": [ - { - "name": "_validatorWhitelistDisabled", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setWasmModuleRoot", - "constant": false, - "inputs": [ - { - "name": "newWasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakeToken", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakerCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "totalWithdrawableFunds", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "upgradeBeacon", - "constant": false, - "inputs": [ - { - "name": "beacon", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "upgradeSecondaryTo", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "upgradeSecondaryToAndCall", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "upgradeTo", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "upgradeToAndCall", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorUtils", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorWalletCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorWhitelistDisabled", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "wasmModuleRoot", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "withdrawableFunds", - "constant": true, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "zombieAddress", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "zombieCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "zombieLatestStakedNode", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "_stakerMap(address)": { - "type": "function", - "name": "_stakerMap", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "amountStaked(address)": { - "type": "function", - "name": "amountStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "baseStake()": { - "type": "function", - "name": "baseStake", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "bridge()": { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "chainId()": { - "type": "function", - "name": "chainId", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "challengeManager()": { - "type": "function", - "name": "challengeManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "confirmPeriodBlocks()": { - "type": "function", - "name": "confirmPeriodBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "createNitroMigrationGenesis((((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64))": { - "type": "function", - "name": "createNitroMigrationGenesis", - "constant": false, - "inputs": [ - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "currentChallenge(address)": { - "type": "function", - "name": "currentChallenge", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "extraChallengeTimeBlocks()": { - "type": "function", - "name": "extraChallengeTimeBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "firstUnresolvedNode()": { - "type": "function", - "name": "firstUnresolvedNode", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "forceConfirmNode(uint64,bytes32,bytes32)": { - "type": "function", - "name": "forceConfirmNode", - "constant": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "forceCreateNode(uint64,uint256,(((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32)": { - "type": "function", - "name": "forceCreateNode", - "constant": false, - "inputs": [ - { - "name": "prevNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "prevNodeInboxMaxCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "expectedNodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "forceRefundStaker(address[])": { - "type": "function", - "name": "forceRefundStaker", - "constant": false, - "inputs": [ - { - "name": "staker", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "forceResolveChallenge(address[],address[])": { - "type": "function", - "name": "forceResolveChallenge", - "constant": false, - "inputs": [ - { - "name": "stakerA", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "stakerB", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getNode(uint64)": { - "type": "function", - "name": "getNode", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "stateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmData", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "deadlineBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "noChildConfirmedBeforeBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "childStakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "firstChildBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestChildNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "createdAtBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getNodeCreationBlockForLogLookup(uint64)": { - "type": "function", - "name": "getNodeCreationBlockForLogLookup", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getStaker(address)": { - "type": "function", - "name": "getStaker", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getStakerAddress(uint64)": { - "type": "function", - "name": "getStakerAddress", - "constant": true, - "inputs": [ - { - "name": "stakerNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "inbox()": { - "type": "function", - "name": "inbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "initialize((uint64,uint64,address,uint256,bytes32,address,address,uint256,string,uint64,(uint256,uint256,uint256,uint256)),(address,address,address,address,address,address,address,address,address,address))": { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "config", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "confirmPeriodBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "extraChallengeTimeBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "baseStake", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "loserStakeEscrow", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "chainConfig", - "type": "string", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "string", - "_isParamType": true - }, - { - "name": "genesisBlockNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "sequencerInboxMaxTimeVariation", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "connectedContracts", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bridge", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengeManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupAdminLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupUserLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorUtils", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorWalletCreator", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isStaked(address)": { - "type": "function", - "name": "isStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isStakedOnLatestConfirmed(address)": { - "type": "function", - "name": "isStakedOnLatestConfirmed", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isValidator(address)": { - "type": "function", - "name": "isValidator", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isZombie(address)": { - "type": "function", - "name": "isZombie", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "lastStakeBlock()": { - "type": "function", - "name": "lastStakeBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestConfirmed()": { - "type": "function", - "name": "latestConfirmed", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestNodeCreated()": { - "type": "function", - "name": "latestNodeCreated", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestStakedNode(address)": { - "type": "function", - "name": "latestStakedNode", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "loserStakeEscrow()": { - "type": "function", - "name": "loserStakeEscrow", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "minimumAssertionPeriod()": { - "type": "function", - "name": "minimumAssertionPeriod", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "nodeHasStaker(uint64,address)": { - "type": "function", - "name": "nodeHasStaker", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "outbox()": { - "type": "function", - "name": "outbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "pause()": { - "type": "function", - "name": "pause", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "paused()": { - "type": "function", - "name": "paused", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "proxiableUUID()": { - "type": "function", - "name": "proxiableUUID", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "removeOldOutbox(address)": { - "type": "function", - "name": "removeOldOutbox", - "constant": false, - "inputs": [ - { - "name": "_outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "resume()": { - "type": "function", - "name": "resume", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupDeploymentBlock()": { - "type": "function", - "name": "rollupDeploymentBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupEventInbox()": { - "type": "function", - "name": "rollupEventInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "sequencerInbox()": { - "type": "function", - "name": "sequencerInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setBaseStake(uint256)": { - "type": "function", - "name": "setBaseStake", - "constant": false, - "inputs": [ - { - "name": "newBaseStake", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setConfirmPeriodBlocks(uint64)": { - "type": "function", - "name": "setConfirmPeriodBlocks", - "constant": false, - "inputs": [ - { - "name": "newConfirmPeriod", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setDelayedInbox(address,bool)": { - "type": "function", - "name": "setDelayedInbox", - "constant": false, - "inputs": [ - { - "name": "_inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_enabled", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setExtraChallengeTimeBlocks(uint64)": { - "type": "function", - "name": "setExtraChallengeTimeBlocks", - "constant": false, - "inputs": [ - { - "name": "newExtraTimeBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setInbox(address)": { - "type": "function", - "name": "setInbox", - "constant": false, - "inputs": [ - { - "name": "newInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setLoserStakeEscrow(address)": { - "type": "function", - "name": "setLoserStakeEscrow", - "constant": false, - "inputs": [ - { - "name": "newLoserStakerEscrow", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setMinimumAssertionPeriod(uint256)": { - "type": "function", - "name": "setMinimumAssertionPeriod", - "constant": false, - "inputs": [ - { - "name": "newPeriod", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setOutbox(address)": { - "type": "function", - "name": "setOutbox", - "constant": false, - "inputs": [ - { - "name": "_outbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setOwner(address)": { - "type": "function", - "name": "setOwner", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setSequencerInbox(address)": { - "type": "function", - "name": "setSequencerInbox", - "constant": false, - "inputs": [ - { - "name": "_sequencerInbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setStakeToken(address)": { - "type": "function", - "name": "setStakeToken", - "constant": false, - "inputs": [ - { - "name": "newStakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setValidator(address[],bool[])": { - "type": "function", - "name": "setValidator", - "constant": false, - "inputs": [ - { - "name": "_validator", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "_val", - "type": "bool[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setValidatorWhitelistDisabled(bool)": { - "type": "function", - "name": "setValidatorWhitelistDisabled", - "constant": false, - "inputs": [ - { - "name": "_validatorWhitelistDisabled", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setWasmModuleRoot(bytes32)": { - "type": "function", - "name": "setWasmModuleRoot", - "constant": false, - "inputs": [ - { - "name": "newWasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakeToken()": { - "type": "function", - "name": "stakeToken", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakerCount()": { - "type": "function", - "name": "stakerCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "totalWithdrawableFunds()": { - "type": "function", - "name": "totalWithdrawableFunds", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "upgradeBeacon(address,address)": { - "type": "function", - "name": "upgradeBeacon", - "constant": false, - "inputs": [ - { - "name": "beacon", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "upgradeSecondaryTo(address)": { - "type": "function", - "name": "upgradeSecondaryTo", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "upgradeSecondaryToAndCall(address,bytes)": { - "type": "function", - "name": "upgradeSecondaryToAndCall", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "upgradeTo(address)": { - "type": "function", - "name": "upgradeTo", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "upgradeToAndCall(address,bytes)": { - "type": "function", - "name": "upgradeToAndCall", - "constant": false, - "inputs": [ - { - "name": "newImplementation", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorUtils()": { - "type": "function", - "name": "validatorUtils", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorWalletCreator()": { - "type": "function", - "name": "validatorWalletCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorWhitelistDisabled()": { - "type": "function", - "name": "validatorWhitelistDisabled", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "wasmModuleRoot()": { - "type": "function", - "name": "wasmModuleRoot", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "withdrawableFunds(address)": { - "type": "function", - "name": "withdrawableFunds", - "constant": true, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "zombieAddress(uint256)": { - "type": "function", - "name": "zombieAddress", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "zombieCount()": { - "type": "function", - "name": "zombieCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "zombieLatestStakedNode(uint256)": { - "type": "function", - "name": "zombieLatestStakedNode", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": { - "AdminChanged(address,address)": { - "name": "AdminChanged", - "anonymous": false, - "inputs": [ - { - "name": "previousAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "BeaconUpgraded(address)": { - "name": "BeaconUpgraded", - "anonymous": false, - "inputs": [ - { - "name": "beacon", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Initialized(uint8)": { - "name": "Initialized", - "anonymous": false, - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "NodeConfirmed(uint64,bytes32,bytes32)": { - "name": "NodeConfirmed", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "NodeCreated(uint64,bytes32,bytes32,bytes32,(((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32,bytes32,uint256)": { - "name": "NodeCreated", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "parentNodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "executionHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "assertion", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterInboxBatchAcc", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "inboxMaxCount", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "NodeRejected(uint64)": { - "name": "NodeRejected", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "OwnerFunctionCalled(uint256)": { - "name": "OwnerFunctionCalled", - "anonymous": false, - "inputs": [ - { - "name": "id", - "type": "uint256", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Paused(address)": { - "name": "Paused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RollupChallengeStarted(uint64,address,address,uint64)": { - "name": "RollupChallengeStarted", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "asserter", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challenger", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengedNode", - "type": "uint64", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RollupInitialized(bytes32,uint256)": { - "name": "RollupInitialized", - "anonymous": false, - "inputs": [ - { - "name": "machineHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Unpaused(address)": { - "name": "Unpaused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Upgraded(address)": { - "name": "Upgraded", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UpgradedSecondary(address)": { - "name": "UpgradedSecondary", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UserStakeUpdated(address,uint256,uint256)": { - "name": "UserStakeUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UserWithdrawableFundsUpdated(address,uint256,uint256)": { - "name": "UserWithdrawableFundsUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x89856De7A83B6c1C2f5D753EdC8F6982758f93A3", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 202, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x4d68e9" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60c0604052620000196200003660201b62002c471760201c565b15156080523060a0523480156200002f57600080fd5b5062000111565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b179052905160009182918291606491620000769190620000d3565b600060405180830381855afa9150503d8060008114620000b3576040519150601f19603f3d011682016040523d82523d6000602084013e620000b8565b606091505b5091509150818015620000cc575080516020145b9250505090565b6000825160005b81811015620000f65760208186018101518583015201620000da565b8181111562000106576000828501525b509190910192915050565b60805160a0516159f46200018b60003960008181611044015281816110840152818161112a0152818161116a015281816119bd015281816119fd01528181611b8601528181611bc601528181611cb80152818161254c015261258c015260008181612a58015281816131a3015261446701526159f46000f3fe6080604052600436106103905760003560e01c80637ba9534a116101de578063ce11e6ab11610103578063ef40a6701161009b578063ef40a67014610d08578063f065de3f14610d3e578063f33e1fac14610d5e578063f38c937914610d7e578063f63a434a14610d9e578063facd743b14610dbe578063fb0e722b14610dee578063fc8ffa0314610e0e578063ff204f3b14610e2e57600080fd5b8063ce11e6ab14610b79578063ce66d05c14610b99578063d01e660214610bb9578063d735e21d14610bd9578063dcd030aa14610bfe578063dff6978714610c1e578063e78cea9214610c33578063e8bd492214610c53578063ee35f32714610ce857600080fd5b8063948d658811610176578063948d6588146109815780639846129a146109a15780639a8a0592146109b4578063a23c44b1146109ca578063a2b4f1d814610ad9578063a3ffb77214610af9578063aa38a6e714610b19578063aa65af4814610b39578063bc45e0ae14610b5957600080fd5b80637ba9534a1461086f5780637c75c298146108845780638456cb59146108a4578063848bf918146108b95780638640ce5f146108d957806389384960146108fe5780638ee1a1261461091e57806391c657e81461093457806392c8134c1461095457600080fd5b806347fb24c5116102c45780636177fd181161025c5780636177fd181461071d57806363721d6b1461076057806365f7f80d1461077557806369fd251c146107935780636ddd3744146107dc57806371ef232c146107fc57806376e7e23b14610812578063771b2f97146108285780637b83a3fe1461084f57600080fd5b806347fb24c51461061d5780634f1ef2861461063d5780634f61f8501461065057806351ed6a301461067057806352d1902d1461069057806353b60c4a146106a5578063567ca41b146106c55780635c975abb146106e55780636136fe2e146106fd57600080fd5b80631b1689e9116103375780631b1689e9146104ac57806328ff127a146104d05780632e7acfa6146104f05780632f30cabd146105285780632f7968e81461055e5780633659cfe61461057e5780633e96576e1461059e57806345e38b64146105e7578063470dce4e146105fd57600080fd5b8063014cc92c14610395578063023a96fe146103cb5780630397d458146103eb578063046f7da21461040d57806306ae5851146104225780630d40a0fd1461044257806312ab3d3b1461046257806313af40351461048c575b600080fd5b3480156103a157600080fd5b50606f546103b5906001600160a01b031681565b6040516103c29190614d3b565b60405180910390f35b3480156103d757600080fd5b50606e546103b5906001600160a01b031681565b3480156103f757600080fd5b5061040b610406366004614d64565b610e4e565b005b34801561041957600080fd5b5061040b610ff3565b34801561042e57600080fd5b5061040b61043d366004614d81565b611017565b34801561044e57600080fd5b5061040b61045d366004614d64565b611039565b34801561046e57600080fd5b50607e5461047c9060ff1681565b60405190151581526020016103c2565b34801561049857600080fd5b5061040b6104a7366004614d64565b6110f9565b3480156104b857600080fd5b506104c2607d5481565b6040519081526020016103c2565b3480156104dc57600080fd5b5061040b6104eb366004614d9a565b61111f565b3480156104fc57600080fd5b50606554610510906001600160401b031681565b6040516001600160401b0390911681526020016103c2565b34801561053457600080fd5b506104c2610543366004614d64565b6001600160a01b03166000908152607b602052604090205490565b34801561056a57600080fd5b5061040b610579366004614e12565b611980565b34801561058a57600080fd5b5061040b610599366004614d64565b6119b2565b3480156105aa57600080fd5b506105106105b9366004614d64565b6001600160a01b0316600090815260796020526040902060010154600160401b90046001600160401b031690565b3480156105f357600080fd5b506104c260735481565b34801561060957600080fd5b5061040b610618366004614e5e565b611a6f565b34801561062957600080fd5b5061040b610638366004614eb3565b611af9565b61040b61064b366004614f5a565b611b7b565b34801561065c57600080fd5b5061040b61066b366004614d64565b611c2c565b34801561067c57600080fd5b506072546103b5906001600160a01b031681565b34801561069c57600080fd5b506104c2611cab565b3480156106b157600080fd5b5061040b6106c0366004614d64565b611d59565b3480156106d157600080fd5b5061040b6106e0366004614d64565b611d91565b3480156106f157600080fd5b5060335460ff1661047c565b34801561070957600080fd5b5061040b610718366004615001565b611e5e565b34801561072957600080fd5b5061047c610738366004614d64565b6001600160a01b0316600090815260796020526040902060010154600160c01b900460ff1690565b34801561076c57600080fd5b50607a546104c2565b34801561078157600080fd5b506075546001600160401b0316610510565b34801561079f57600080fd5b506105106107ae366004614d64565b6001600160a01b0316600090815260796020526040902060010154600160801b90046001600160401b031690565b3480156107e857600080fd5b506103b56107f7366004615001565b611ea0565b34801561080857600080fd5b506104c2607c5481565b34801561081e57600080fd5b506104c260675481565b34801561083457600080fd5b5060655461051090600160401b90046001600160401b031681565b34801561085b57600080fd5b5061040b61086a36600461501c565b611ed9565b34801561087b57600080fd5b506105106121c2565b34801561089057600080fd5b5061040b61089f366004615084565b6121d8565b3480156108b057600080fd5b5061040b612332565b3480156108c557600080fd5b5061040b6108d43660046150c5565b612356565b3480156108e557600080fd5b50607554600160c01b90046001600160401b0316610510565b34801561090a57600080fd5b5061040b610919366004614d81565b6123d2565b34801561092a57600080fd5b506104c260685481565b34801561094057600080fd5b5061047c61094f366004614d64565b6123f4565b34801561096057600080fd5b5061097461096f366004615001565b612458565b6040516103c291906150f3565b34801561098d57600080fd5b5061040b61099c366004614d81565b61251f565b61040b6109af366004614f5a565b612541565b3480156109c057600080fd5b506104c260665481565b3480156109d657600080fd5b50610a846109e5366004614d64565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152506001600160a01b0316600090815260796020908152604091829020825160a081018452815481526001909101546001600160401b0380821693830193909352600160401b8104831693820193909352600160801b83049091166060820152600160c01b90910460ff161515608082015290565b6040516103c29190600060a0820190508251825260208301516001600160401b038082166020850152806040860151166040850152806060860151166060850152505060808301511515608083015292915050565b348015610ae557600080fd5b5061040b610af43660046151ef565b6125ee565b348015610b0557600080fd5b5061040b610b1436600461520c565b612619565b348015610b2557600080fd5b50606d546103b5906001600160a01b031681565b348015610b4557600080fd5b5061047c610b54366004615277565b61270d565b348015610b6557600080fd5b506070546103b5906001600160a01b031681565b348015610b8557600080fd5b50606b546103b5906001600160a01b031681565b348015610ba557600080fd5b5061040b610bb4366004615001565b612744565b348015610bc557600080fd5b506103b5610bd4366004614d81565b6127cf565b348015610be557600080fd5b50607554600160401b90046001600160401b0316610510565b348015610c0a57600080fd5b5061047c610c19366004614d64565b6127e4565b348015610c2a57600080fd5b50607854610510565b348015610c3f57600080fd5b50606a546103b5906001600160a01b031681565b348015610c5f57600080fd5b50610cb0610c6e366004614d64565b607960205260009081526040902080546001909101546001600160401b0380821691600160401b8104821691600160801b82041690600160c01b900460ff1685565b604080519586526001600160401b0394851660208701529284169285019290925290911660608301521515608082015260a0016103c2565b348015610cf457600080fd5b50606c546103b5906001600160a01b031681565b348015610d1457600080fd5b506104c2610d23366004614d64565b6001600160a01b031660009081526079602052604090205490565b348015610d4a57600080fd5b506071546103b5906001600160a01b031681565b348015610d6a57600080fd5b50610510610d79366004614d81565b612827565b348015610d8a57600080fd5b5061040b610d9936600461520c565b61285e565b348015610daa57600080fd5b506104c2610db9366004615001565b612a54565b348015610dca57600080fd5b5061047c610dd9366004614d64565b60746020526000908152604090205460ff1681565b348015610dfa57600080fd5b506069546103b5906001600160a01b031681565b348015610e1a57600080fd5b5061040b610e29366004614d64565b612b1d565b348015610e3a57600080fd5b5061040b610e49366004614d64565b612baf565b610e56612cdf565b6000806001600160a01b0316826001600160a01b0316141590506000306001600160a01b031663cd205fda6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed49190615293565b905081151581151514610f265760405162461bcd60e51b81526020600482015260156024820152741393d7d554d15497d313d1d250d7d4d5541413d495605a1b60448201526064015b60405180910390fd5b6078546001600160401b031615610f735760405162461bcd60e51b81526020600482015260116024820152704e4f5f4143544956455f5354414b45525360781b6044820152606401610f1d565b607c5415610fb95760405162461bcd60e51b81526020600482015260136024820152724e4f5f50454e44494e475f574954484452415760681b6044820152606401610f1d565b607280546001600160a01b0319166001600160a01b038516179055604051600d9060008051602061597883398151915290600090a2505050565b610ffb612d2a565b60405160049060008051602061597883398151915290600090a2565b6067819055604051600c9060008051602061597883398151915290600090a250565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156110825760405162461bcd60e51b8152600401610f1d906152b0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166110b4612d76565b6001600160a01b0316146110da5760405162461bcd60e51b8152600401610f1d906152fc565b604080516000808252602082019092526110f691839190612d97565b50565b61110281612f28565b60405160079060008051602061597883398151915290600090a250565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156111685760405162461bcd60e51b8152600401610f1d906152b0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661119a612d76565b6001600160a01b0316146111c05760405162461bcd60e51b8152600401610f1d906152fc565b600054610100900460ff16158080156111e05750600054600160ff909116105b806111fa5750303b1580156111fa575060005460ff166001145b61125d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610f1d565b6000805460ff191660011790558015611280576000805461ff0019166101001790555b43607d556112916020830183614d64565b606a80546001600160a01b0319166001600160a01b03929092169190911790556112c16040830160208401614d64565b606c80546001600160a01b0319166001600160a01b03929092169190911790556112ee6020830183614d64565b6001600160a01b03166347fb24c561130c6060850160408601614d64565b60016040518363ffffffff1660e01b815260040161132b929190615348565b600060405180830381600087803b15801561134557600080fd5b505af1158015611359573d6000803e3d6000fd5b5061136b925050506020830183614d64565b6001600160a01b0316634f61f8506113896040850160208601614d64565b6040518263ffffffff1660e01b81526004016113a59190614d3b565b600060405180830381600087803b1580156113bf57600080fd5b505af11580156113d3573d6000803e3d6000fd5b506113e8925050506060830160408401614d64565b606980546001600160a01b0319166001600160a01b03929092169190911790556114186080830160608401614d64565b606b80546001600160a01b0319166001600160a01b03929092169190911790556114456020830183614d64565b6001600160a01b031663cee3d7286114636080850160608601614d64565b60016040518363ffffffff1660e01b8152600401611482929190615348565b600060405180830381600087803b15801561149c57600080fd5b505af11580156114b0573d6000803e3d6000fd5b506114c59250505060a0830160808401614d64565b606d80546001600160a01b0319166001600160a01b03929092169190911790556114f26020830183614d64565b6001600160a01b03166347fb24c561151060a0850160808601614d64565b60016040518363ffffffff1660e01b815260040161152f929190615348565b600060405180830381600087803b15801561154957600080fd5b505af115801561155d573d6000803e3d6000fd5b506115729250505060a0830160808401614d64565b6001600160a01b031663cf8d56d660e0850135611593610100870187615363565b6040518463ffffffff1660e01b81526004016115b1939291906153a9565b600060405180830381600087803b1580156115cb57600080fd5b505af11580156115df573d6000803e3d6000fd5b506115f4925050506040830160208401614d64565b60405163e0bc972960e01b815260006004820181905260c0602483015260c4820181905260016044830181905260648301829052608483019190915260a48201526001600160a01b03919091169063e0bc97299060e401600060405180830381600087803b15801561166557600080fd5b505af1158015611679573d6000803e3d6000fd5b506116909250505061012083016101008401614d64565b606f80546001600160a01b0319166001600160a01b03929092169190911790556116c261014083016101208401614d64565b607080546001600160a01b0319166001600160a01b03929092169190911790556116f260c0830160a08401614d64565b606e80546001600160a01b0319166001600160a01b0392909216919091179055600061171c612f7c565b905061172781612fcf565b6117346020850185615001565b6065805467ffffffffffffffff19166001600160401b03929092169190911790556117656040850160208601615001565b606580546001600160401b0392909216600160401b0267ffffffffffffffff60401b1990921691909117905560e084013560665560608401356067556080840135606855604b6073556117b6613258565b6001600160a01b03166117cf60e0860160c08701614d64565b6001600160a01b0316141561181d5760405162461bcd60e51b815260206004820152601460248201527324a72b20a624a22fa2a9a1a927abafa0a226a4a760611b6044820152606401610f1d565b61182d60c0850160a08601614d64565b6001600160a01b031661184660e0860160c08701614d64565b6001600160a01b031614156118945760405162461bcd60e51b815260206004820152601460248201527324a72b20a624a22fa2a9a1a927abafa7aba722a960611b6044820152606401610f1d565b6118a460e0850160c08601614d64565b607180546001600160a01b0319166001600160a01b03929092169190911790556118d46060850160408601614d64565b607280546001600160a01b0319166001600160a01b0392909216919091179055604080516080860135815260e086013560208201527ffc1b83c11d99d08a938e0b82a0bd45f822f71ff5abf23f999c93c4533d752464910160405180910390a150801561197b576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b611988612cdf565b611993838383613280565b60405160189060008051602061597883398151915290600090a2505050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156119fb5760405162461bcd60e51b8152600401610f1d906152b0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a2d612d76565b6001600160a01b031614611a535760405162461bcd60e51b8152600401610f1d906152fc565b604080516000808252602082019092526110f6918391906133da565b611a77612cdf565b6075546001600160401b03858116911614611acc5760405162461bcd60e51b815260206004820152601560248201527413d3931657d310551154d517d0d3d3919254935151605a1b6044820152606401610f1d565b611ad882858584613545565b5060405160179060008051602061597883398151915290600090a250505050565b606a546040516347fb24c560e01b81526001600160a01b03909116906347fb24c590611b2b9085908590600401615348565b600060405180830381600087803b158015611b4557600080fd5b505af1158015611b59573d6000803e3d6000fd5b5050604051600292506000805160206159788339815191529150600090a25050565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415611bc45760405162461bcd60e51b8152600401610f1d906152b0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611bf6612d76565b6001600160a01b031614611c1c5760405162461bcd60e51b8152600401610f1d906152fc565b611c28828260016133da565b5050565b606a546040516304f61f8560e41b81526001600160a01b0390911690634f61f85090611c5c908490600401614d3b565b600060405180830381600087803b158015611c7657600080fd5b505af1158015611c8a573d6000803e3d6000fd5b5050604051601b92506000805160206159788339815191529150600090a250565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611d465760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610f1d565b5060008051602061595883398151915290565b606980546001600160a01b0319166001600160a01b038316179055604051601c9060008051602061597883398151915290600090a250565b606b546001600160a01b0382811691161415611ddc5760405162461bcd60e51b815260206004820152600a602482015269086aaa4be9eaaa8849eb60b31b6044820152606401610f1d565b606a546040516319dc7ae560e31b81526001600160a01b039091169063cee3d72890611e0f908490600090600401615348565b600060405180830381600087803b158015611e2957600080fd5b505af1158015611e3d573d6000803e3d6000fd5b5050604051600192506000805160206159788339815191529150600090a250565b6065805467ffffffffffffffff60401b1916600160401b6001600160401b03841602179055604051600a9060008051602061597883398151915290600090a250565b60006078826001600160401b031681548110611ebe57611ebe6153df565b6000918252602090912001546001600160a01b031692915050565b611ee1612cdf565b60006001611eed6121c2565b6001600160401b031615611f3d5760405162461bcd60e51b81526020600482015260176024820152761393d397d1d1539154d254d7d393d11154d7d1561254d5604a1b6044820152606401610f1d565b611f4683613b3b565b611f855760405162461bcd60e51b815260206004820152601060248201526f4e4f545f454d5054595f4245464f524560801b6044820152606401610f1d565b6001611f9760a085016080860161541a565b6003811115611fa857611fa86153f5565b14611ff55760405162461bcd60e51b815260206004820152601b60248201527f4245464f52455f4d414348494e455f4e4f545f46494e495348454400000000006044820152606401610f1d565b60c0830135821461203c5760405162461bcd60e51b81526020600482015260116024820152701393d517d6915493d7d4d153911493d3d5607a1b6044820152606401610f1d565b6001600160401b038116612057610100850160e08601615001565b6001600160401b0316146120a05760405162461bcd60e51b815260206004820152601060248201526f494e424f585f4e4f545f41545f4f4e4560801b6044820152606401610f1d565b6120b261012084016101008501615001565b6001600160401b0316156121085760405162461bcd60e51b815260206004820152601c60248201527f504f534954494f4e5f494e5f4d4553534147455f4e4f545f5a45524f000000006044820152606401610f1d565b600161211c6101408501610120860161541a565b600381111561212d5761212d6153f5565b1461217a5760405162461bcd60e51b815260206004820152601a60248201527f41465445525f4d414348494e455f4e4f545f46494e49534845440000000000006044820152606401610f1d565b60a08301356121958460006001600160401b03851681613545565b506121a260018285613280565b604051601d9060008051602061597883398151915290600090a250505050565b607554600160801b90046001600160401b031690565b6121e0612cdf565b806121fd5760405162461bcd60e51b8152600401610f1d90615435565b60005b8181101561231357600060798185858581811061221f5761221f6153df565b90506020020160208101906122349190614d64565b6001600160a01b03168152602081019190915260400160002060010154600160801b90046001600160401b0316146122a05760405162461bcd60e51b815260206004820152600f60248201526e14d51052d15497d25397d0d2105313608a1b6044820152606401610f1d565b6122d18383838181106122b5576122b56153df565b90506020020160208101906122ca9190614d64565b6000613b97565b506123018383838181106122e7576122e76153df565b90506020020160208101906122fc9190614d64565b613c5c565b8061230b81615470565b915050612200565b5060405160169060008051602061597883398151915290600090a25050565b61233a613d02565b60405160039060008051602061597883398151915290600090a2565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe690612382908490600401614d3b565b600060405180830381600087803b15801561239c57600080fd5b505af11580156123b0573d6000803e3d6000fd5b5050604051601492506000805160206159788339815191529150600090a25050565b6068819055604051601a9060008051602061597883398151915290600090a250565b6000805b607a5481101561244f57607a8181548110612415576124156153df565b6000918252602090912001546001600160a01b038481169116141561243d5750600192915050565b8061244781615470565b9150506123f8565b50600092915050565b612460614c16565b6001600160401b03821660009081526076602052604090206040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e0870152918204831661010086015281048216610120850152919091041661014082015260059091015461016082015292915050565b607381905560405160089060008051602061597883398151915290600090a250565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561258a5760405162461bcd60e51b8152600401610f1d906152b0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166125bc612d76565b6001600160a01b0316146125e25760405162461bcd60e51b8152600401610f1d906152fc565b611c2882826001612d97565b607e805460ff1916821515179055604051601e9060008051602061597883398151915290600090a250565b826126365760405162461bcd60e51b8152600401610f1d90615435565b8281146126555760405162461bcd60e51b8152600401610f1d9061548b565b60005b838110156126ec57828282818110612672576126726153df565b905060200201602081019061268791906151ef565b6074600087878581811061269d5761269d6153df565b90506020020160208101906126b29190614d64565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806126e481615470565b915050612658565b5060405160069060008051602061597883398151915290600090a250505050565b6001600160401b03821660009081526077602090815260408083206001600160a01b038516845290915290205460ff165b92915050565b6000816001600160401b0316116127965760405162461bcd60e51b81526020600482015260166024820152751253959053125117d0d3d39192549357d411549253d160521b6044820152606401610f1d565b6065805467ffffffffffffffff19166001600160401b03831617905560405160099060008051602061597883398151915290600090a250565b6000607a8281548110611ebe57611ebe6153df565b6001600160a01b038116600090815260796020526040812060010154600160c01b900460ff16801561273e575060755461273e906001600160401b03168361270d565b6000607a828154811061283c5761283c6153df565b600091825260209091200154600160a01b90046001600160401b031692915050565b612866612cdf565b826128835760405162461bcd60e51b8152600401610f1d90615435565b8281146128a25760405162461bcd60e51b8152600401610f1d9061548b565b60005b83811015612a335760006129058686848181106128c4576128c46153df565b90506020020160208101906128d99190614d64565b8585858181106128eb576128eb6153df565b90506020020160208101906129009190614d64565b613d3f565b90506001600160401b03811661294c5760405162461bcd60e51b815260206004820152600c60248201526b1393d517d25397d0d210531360a21b6044820152606401610f1d565b6129a4868684818110612961576129616153df565b90506020020160208101906129769190614d64565b6001600160a01b03166000908152607960205260409020600101805467ffffffffffffffff60801b19169055565b6129b9848484818110612961576129616153df565b606e546040516356e9df9760e01b81526001600160401b03831660048201526001600160a01b03909116906356e9df9790602401600060405180830381600087803b158015612a0757600080fd5b505af1158015612a1b573d6000803e3d6000fd5b50505050508080612a2b90615470565b9150506128a5565b5060405160159060008051602061597883398151915290600090a250505050565b60007f000000000000000000000000000000000000000000000000000000000000000015612ab2576001600160401b0382166000908152607f60205260409020548061273e5760405162461bcd60e51b8152600401610f1d906154b1565b6001600160401b03821660009081526076602052604081206003810154909150600160401b90046001600160401b0316612afe5760405162461bcd60e51b8152600401610f1d906154b1565b60040154600160c01b90046001600160401b031692915050565b919050565b612b25613258565b6001600160a01b0316816001600160a01b03161415612b775760405162461bcd60e51b815260206004820152600e60248201526d494e56414c49445f455343524f5760901b6044820152606401610f1d565b607180546001600160a01b0319166001600160a01b03831617905560405160199060008051602061597883398151915290600090a250565b606b80546001600160a01b0319166001600160a01b0383811691909117909155606a546040516319dc7ae560e31b815291169063cee3d72890612bf9908490600190600401615348565b600060405180830381600087803b158015612c1357600080fd5b505af1158015612c27573d6000803e3d6000fd5b50506040516000925060008051602061597883398151915291508290a250565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b179052905160009182918291606491612c8591906154fe565b600060405180830381855afa9150503d8060008114612cc0576040519150601f19603f3d011682016040523d82523d6000602084013e612cc5565b606091505b5091509150818015612cd8575080516020145b9250505090565b60335460ff16612d285760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610f1d565b565b612d32612cdf565b6033805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051612d6c9190614d3b565b60405180910390a1565b60006000805160206159588339815191525b546001600160a01b0316919050565b7f49bd798cd84788856140a4cd5030756b4d08a9e4d55db725ec195f232d262a895460ff1615612dca5761197b83613e0d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612e24575060408051601f3d908101601f19168201909252612e219181019061551a565b60015b612e915760405162461bcd60e51b815260206004820152603860248201527f45524331393637557067726164653a206e6577207365636f6e6461727920696d604482015277706c656d656e746174696f6e206973206e6f74205555505360401b6064820152608401610f1d565b7f2b1dbce74324248c222f0ec2d5ed7bd323cfc425b336f0253c5ccfda7265546d8114612f1c5760405162461bcd60e51b815260206004820152603360248201527f45524331393637557067726164653a20756e737570706f72746564207365636f6044820152721b99185c9e481c1c9bde1a58589b1955555251606a1b6064820152608401610f1d565b5061197b838383613ec8565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f612f51613258565b604080516001600160a01b03928316815291841660208301520160405180910390a16110f681613ef3565b612f84614c16565b612f8c614c7a565b6000612fbe604051806040016040528084815260200160016003811115612fb557612fb56153f5565b90526001613f7f565b9050612cd881600080804381613fc4565b612fd7614018565b60008080526076602090815282517fafbc767fed27552cbeceb3d11150dacedabc53b0cc52ac5aa6285a747a181958558201517fafbc767fed27552cbeceb3d11150dacedabc53b0cc52ac5aa6285a747a1819595560408201517fafbc767fed27552cbeceb3d11150dacedabc53b0cc52ac5aa6285a747a18195a5560608201517fafbc767fed27552cbeceb3d11150dacedabc53b0cc52ac5aa6285a747a18195b8054608085015160a086015160c08701516001600160401b039586166001600160801b031994851617600160401b9387168402176001600160801b03908116600160801b93881684026001600160c01b0390811691909117600160c01b93891684021790965560e08901517fafbc767fed27552cbeceb3d11150dacedabc53b0cc52ac5aa6285a747a18195c80546101008c01516101208d01516101408e0151948c169290991691909117908a169096029590951790911694871690920290941692909217919093169091021790556101608201517fafbc767fed27552cbeceb3d11150dacedabc53b0cc52ac5aa6285a747a18195d5561317b906001615533565b607560086101000a8154816001600160401b0302191690836001600160401b031602179055507f0000000000000000000000000000000000000000000000000000000000000000156110f65760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613206573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061322a919061551a565b60008052607f6020527f18b3a2798575d3a428c1f52e616a74b071539854e037e7d7c535365d474f40335550565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103612d88565b6001600160401b03831660009081526076602052604090206132a28383614047565b8160020154146132e35760405162461bcd60e51b815260206004820152600c60248201526b434f4e4649524d5f4441544160a01b6044820152606401610f1d565b606b54604051630502677360e51b815260048101849052602481018590526001600160a01b039091169063a04cee6090604401600060405180830381600087803b15801561333057600080fd5b505af1158015613344573d6000803e3d6000fd5b50506075805467ffffffffffffffff19166001600160401b038816179055506133709050846001615533565b6075805467ffffffffffffffff60401b1916600160401b6001600160401b03938416021790556040805185815260208101859052918616917f22ef0479a7ff660660d1c2fe35f1b632cf31675c2d9378db8cec95b00d8ffa3c91015b60405180910390a250505050565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561340d5761197b83614063565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613467575060408051601f3d908101601f191682019092526134649181019061551a565b60015b6134ca5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610f1d565b60008051602061595883398151915281146135395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610f1d565b5061197b8383836140e5565b6000600161355b6101408701610120880161541a565b600381111561356c5761356c6153f5565b148061359a575060026135876101408701610120880161541a565b6003811115613598576135986153f5565b145b6135d95760405162461bcd60e51b815260206004820152601060248201526f4241445f41465445525f53544154555360801b6044820152606401610f1d565b6135e1614c9f565b6135ea85612458565b6060820152606a54604080516221048360e21b815290516001600160a01b03909216916284120c916004808201926020929091908290030181865afa158015613637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061365b919061551a565b815260608101515161366d87866140ee565b146136ac5760405162461bcd60e51b815260206004820152600f60248201526e0a0a48aacbea6a882a88abe9082a69608b1b6044820152606401610f1d565b60006136c86136c336899003890160a08a01615620565b61412a565b905060006136de6136c3368a90038a018a615620565b9050806001600160401b0316826001600160401b031610156137345760405162461bcd60e51b815260206004820152600f60248201526e494e424f585f4241434b574152445360881b6044820152606401610f1d565b806001600160401b0316826001600160401b031614156137da57613765613760368a90038a018a615620565b61413f565b6001600160401b0316613783613760368b90038b0160a08c01615620565b6001600160401b031610156137da5760405162461bcd60e51b815260206004820152601a60248201527f494e424f585f504f535f494e5f4d53475f4241434b57415244530000000000006044820152606401610f1d565b60026137ee6101408a016101208b0161541a565b60038111156137ff576137ff6153f5565b14806138285750600061381d613760368b90038b0160a08c01615620565b6001600160401b0316115b1561383b57816138378161563c565b9250505b82516001600160401b03831611156138865760405162461bcd60e51b815260206004820152600e60248201526d12539093d617d41054d517d1539160921b6044820152606401610f1d565b6001600160401b0382161561391f57606a546001600160a01b03166316bf55796138b1600185615663565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865afa1580156138f5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613919919061551a565b60e08401525b506139399050613934368890038801886156ca565b61414e565b6040820152606554613954906001600160401b031643615533565b6001600160401b0390811660c0830152606082015161012001511615801560a08301526139aa57606081015161012001516001600160401b031660009081526076602052604090206005015460808201526139ba565b6060810151610160015160808201525b6139d98160a00151826080015183604001518460e001516068546141ed565b9150828214806139e7575082155b613a2a5760405162461bcd60e51b81526020600482015260146024820152730aa9c8ab0a08a86a88a88be9c9e888abe9082a6960631b6044820152606401610f1d565b613a72613a3e8760a00183600001516140ee565b613a4f83604001514360685461425a565b613a66613a61368b90038b018b6156ca565b614299565b888560c0015187613fc4565b60208201526000613a816121c2565b613a8c906001615533565b90506000613aae876001600160401b0316600090815260766020526040902090565b9050613aba81836142c3565b613ac78360200151614334565b50508181606001516101600151613adc6121c2565b6001600160401b03167f4f4caa9e67fb994e349dd35d1ad0ce23053d4323f83ce11dc817b5435031d09684604001518a8660e001516068548860000151604051613b2a9594939291906157b4565b60405180910390a450949350505050565b60008135158015613b4e57506020820135155b8015613b705750613b656060830160408401615001565b6001600160401b0316155b801561273e5750613b876080830160608401615001565b6001600160401b03161592915050565b6001600160a01b0382166000908152607960205260408120805480841115613bf45760405162461bcd60e51b815260206004820152601060248201526f544f4f5f4c4954544c455f5354414b4560801b6044820152606401610f1d565b6000613c008583615814565b8584559050613c0f8682614513565b60408051838152602081018790526001600160a01b038816917febd093d389ab57f3566918d2c379a2b4d9539e8eb95efad9d5e465457833fde6910160405180910390a295945050505050565b6001600160a01b03808216600081815260796020908152604080832081518083019092529381526001808501546001600160401b03600160401b9091048116938301938452607a8054928301815590945290517ff0440771a29e57e18c66727944770b82cc77924aef333c927ce6bdd2cdb3ae0390910180549251909316600160a01b026001600160e01b031990921694169390931792909217909155611c28826145af565b613d0a614772565b6033805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612d5f3390565b6001600160a01b03828116600090815260796020526040808220928416825281206001830154919291600160801b90046001600160401b031680613daf5760405162461bcd60e51b81526020600482015260076024820152661393d7d0d2105360ca1b6044820152606401610f1d565b60018201546001600160401b03828116600160801b9092041614613e045760405162461bcd60e51b815260206004820152600c60248201526b1112519197d25397d0d2105360a21b6044820152606401610f1d565b95945050505050565b6001600160a01b0381163b613e845760405162461bcd60e51b815260206004820152603760248201527f455243313936373a206e6577207365636f6e6461727920696d706c656d656e74604482015276185d1a5bdb881a5cc81b9bdd08184818dbdb9d1c9858dd604a1b6064820152608401610f1d565b807f2b1dbce74324248c222f0ec2d5ed7bd323cfc425b336f0253c5ccfda7265546d5b80546001600160a01b0319166001600160a01b039290921691909117905550565b613ed1836147b8565b600082511180613ede5750805b1561197b57613eed83836147f8565b50505050565b6001600160a01b038116613f585760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f1d565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103613ea7565b6000613f8e836000015161481d565b828460200151604051602001613fa69392919061582b565b60405160208183030381529060405280519060200120905092915050565b613fcc614c16565b613fd4614c16565b96875250602086019490945260408501929092526001600160401b0390811660608501529081166080840181905260a0840152431661014083015261016082015290565b600054610100900460ff1661403f5760405162461bcd60e51b8152600401610f1d90615869565b612d28614891565b6040805160208101849052908101829052600090606001613fa6565b6001600160a01b0381163b6140d05760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610f1d565b80600080516020615958833981519152613ea7565b613ed1836148c4565b600061410761410236859003850185615620565b61481d565b8261411860a086016080870161541a565b604051602001613fa69392919061582b565b6020810151600090815b602002015192915050565b60208101516000906001614134565b6000614158614cf0565b82516020015181906003811115614171576141716153f5565b90816003811115614184576141846153f5565b9052506020838101518101519082019060038111156141a5576141a56153f5565b908160038111156141b8576141b86153f5565b9052506141c3614d0e565b8351518152602080850151519082015260408401516141e59083908390614904565b949350505050565b600080866141fc5760006141ff565b60015b6040516001600160f81b031960f883901b1660208201526021810188905260418101879052606181018690526081810185905290915060a1016040516020818303038152906040528051906020012091505095945050505050565b6040805160208101859052908101839052606081018290526000906080015b6040516020818303038152906040528051906020012090505b9392505050565b600061273e6142af8360200151600001516149ae565b6020840151516142be906149b9565b614047565b6004820154600160401b90046001600160401b03166143045760048201805467ffffffffffffffff60401b1916600160401b436001600160401b0316021790555b600490910180546001600160401b03909216600160801b0267ffffffffffffffff60801b19909216919091179055565b60758054600160801b90046001600160401b03169060106143548361563c565b825461010092830a6001600160401b03818102199092169282160291909117909255607554600160801b908190048316600090815260766020908152604091829020875181559087015160018201559086015160028201556060860151600382018054608089015160a08a015160c08b01519489166001600160801b031993841617600160401b928a168302176001600160801b03908116918a1688026001600160c01b0390811692909217600160c01b968b1687021790945560e08b0151600487018054998d01516101208e01516101408f0151938d169b9096169a909a17998b16909302989098179093169188169095029091161793909416909302919091179055610160830151600590910155507f0000000000000000000000000000000000000000000000000000000000000000156110f65760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156144ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144ee919061551a565b607554600160801b90046001600160401b03166000908152607f602052604090205550565b6001600160a01b0382166000908152607b60205260408120549061453783836158b4565b6001600160a01b0385166000908152607b60205260408120829055607c805492935085929091906145699084906158b4565b909155505060408051838152602081018390526001600160a01b038616917fa740af14c56e4e04a617b1de1eb20de73270decbaaead14f142aabf3038e5ae291016133cc565b6001600160a01b03811660009081526079602052604090206001810154600160c01b900460ff1661460f5760405162461bcd60e51b815260206004820152600a6024820152691393d517d4d51052d15160b21b6044820152606401610f1d565b600180820154607880546001600160401b039092169290916146319190615814565b81548110614641576146416153df565b600091825260209091200154607880546001600160a01b03909216916001600160401b038416908110614676576146766153df565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555080607960006078846001600160401b0316815481106146c5576146c56153df565b6000918252602080832091909101546001600160a01b031683528201929092526040019020600101805467ffffffffffffffff19166001600160401b0392909216919091179055607880548061471d5761471d6158cc565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03949094168152607990935250506040812090815560010180546001600160c81b0319169055565b60335460ff1615612d285760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610f1d565b6147c181613e0d565b6040516001600160a01b038216907ff7eed2a7fabbf1bec8d55ed5e785cc76622376dde5df4ff15470551e030b813490600090a250565b60606142928383604051806060016040528060278152602001615998602791396149c5565b8051805160209182015192820151805190830151604080516c23b637b130b61039ba30ba329d60991b81870152602d810194909452604d8401959095526001600160c01b031960c092831b8116606d850152911b1660758201528251808203605d018152607d909101909252815191012090565b600054610100900460ff166148b85760405162461bcd60e51b8152600401610f1d90615869565b6033805460ff19169055565b6148cd81614063565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60408051600280825260608201835260009283929190602083019080368337019050508551909150614946906149418660005b602002015161481d565b614aa2565b81600081518110614959576149596153df565b602090810291909101015261497a8560016020020151614941866001614937565b8160018151811061498d5761498d6153df565b602002602001018181525050613e046000846001600160401b031683614bc6565b805160009081614134565b80516000906001614134565b60606001600160a01b0384163b614a2d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610f1d565b600080856001600160a01b031685604051614a4891906154fe565b600060405180830381855af49150503d8060008114614a83576040519150601f19603f3d011682016040523d82523d6000602084013e614a88565b606091505b5091509150614a98828286614bdd565b9695505050505050565b60006001836003811115614ab857614ab86153f5565b1415614afe576040516b213637b1b59039ba30ba329d60a11b6020820152602c8101839052604c015b60405160208183030381529060405280519060200120905061273e565b6002836003811115614b1257614b126153f5565b1415614b485760405174213637b1b59039ba30ba32961032b93937b932b21d60591b602082015260358101839052605501614ae1565b6003836003811115614b5c57614b5c6153f5565b1415614b8b5760405174213637b1b59039ba30ba3296103a37b7903330b91d60591b6020820152603501614ae1565b60405162461bcd60e51b815260206004820152601060248201526f4241445f424c4f434b5f53544154555360801b6044820152606401610f1d565b6000838383604051602001614279939291906158e2565b60608315614bec575081614292565b825115614bfc5782518084602001fd5b8160405162461bcd60e51b8152600401610f1d9190615924565b6040805161018081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101829052610140810182905261016081019190915290565b6040518060400160405280614c8d614cf0565b8152602001614c9a614cf0565b905290565b60405180610100016040528060008152602001614cba614c16565b815260006020820152604001614cce614c16565b8152600060208201819052604082018190526060820181905260809091015290565b60405180604001604052806002906020820280368337509192915050565b60405180604001604052806002905b614d25614c7a565b815260200190600190039081614d1d5790505090565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146110f657600080fd5b600060208284031215614d7657600080fd5b813561429281614d4f565b600060208284031215614d9357600080fd5b5035919050565b600080828403610160811215614daf57600080fd5b83356001600160401b03811115614dc557600080fd5b84016101c08187031215614dd857600080fd5b9250610140601f1982011215614ded57600080fd5b506020830190509250929050565b80356001600160401b0381168114612b1857600080fd5b600080600060608486031215614e2757600080fd5b614e3084614dfb565b95602085013595506040909401359392505050565b60006101608284031215614e5857600080fd5b50919050565b6000806000806101c08587031215614e7557600080fd5b614e7e85614dfb565b935060208501359250614e948660408701614e45565b939692955092936101a00135925050565b80151581146110f657600080fd5b60008060408385031215614ec657600080fd5b8235614ed181614d4f565b91506020830135614ee181614ea5565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715614f2457614f24614eec565b60405290565b604051601f8201601f191681016001600160401b0381118282101715614f5257614f52614eec565b604052919050565b60008060408385031215614f6d57600080fd5b8235614f7881614d4f565b91506020838101356001600160401b0380821115614f9557600080fd5b818601915086601f830112614fa957600080fd5b813581811115614fbb57614fbb614eec565b614fcd601f8201601f19168501614f2a565b91508082528784828501011115614fe357600080fd5b80848401858401376000848284010152508093505050509250929050565b60006020828403121561501357600080fd5b61429282614dfb565b6000610160828403121561502f57600080fd5b6142928383614e45565b60008083601f84011261504b57600080fd5b5081356001600160401b0381111561506257600080fd5b6020830191508360208260051b850101111561507d57600080fd5b9250929050565b6000806020838503121561509757600080fd5b82356001600160401b038111156150ad57600080fd5b6150b985828601615039565b90969095509350505050565b600080604083850312156150d857600080fd5b82356150e381614d4f565b91506020830135614ee181614d4f565b600061018082019050825182526020830151602083015260408301516040830152606083015161512e60608401826001600160401b03169052565b50608083015161514960808401826001600160401b03169052565b5060a083015161516460a08401826001600160401b03169052565b5060c083015161517f60c08401826001600160401b03169052565b5060e083015161519a60e08401826001600160401b03169052565b50610100838101516001600160401b038116848301525050610120838101516001600160401b038116848301525050610140838101516001600160401b03811684830152505061016092830151919092015290565b60006020828403121561520157600080fd5b813561429281614ea5565b6000806000806040858703121561522257600080fd5b84356001600160401b038082111561523957600080fd5b61524588838901615039565b9096509450602087013591508082111561525e57600080fd5b5061526b87828801615039565b95989497509550505050565b6000806040838503121561528a57600080fd5b6150e383614dfb565b6000602082840312156152a557600080fd5b815161429281614ea5565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b039290921682521515602082015260400190565b6000808335601e1984360301811261537a57600080fd5b8301803591506001600160401b0382111561539457600080fd5b60200191503681900382131561507d57600080fd5b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b803560048110612b1857600080fd5b60006020828403121561542c57600080fd5b6142928261540b565b6020808252600b908201526a454d5054595f415252415960a81b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60006000198214156154845761548461545a565b5060010190565b6020808252600c908201526b0aea49e9c8ebe988a9c8ea8960a31b604082015260600190565b6020808252600790820152664e4f5f4e4f444560c81b604082015260600190565b60005b838110156154ed5781810151838201526020016154d5565b83811115613eed5750506000910152565b600082516155108184602087016154d2565b9190910192915050565b60006020828403121561552c57600080fd5b5051919050565b60006001600160401b038083168185168083038211156155555761555561545a565b01949350505050565b60006080828403121561557057600080fd5b615578614f02565b905082601f83011261558957600080fd5b615591614f02565b8060408401858111156155a357600080fd5b845b818110156155bd5780358452602093840193016155a5565b5081845285605f8601126155d057600080fd5b6155d8614f02565b925082915060808501868111156155ee57600080fd5b80821015615612576155ff82614dfb565b84526020840193506020820191506155ee565b505060208301525092915050565b60006080828403121561563257600080fd5b614292838361555e565b60006001600160401b03808316818114156156595761565961545a565b6001019392505050565b60006001600160401b03838116908316818110156156835761568361545a565b039392505050565b600060a0828403121561569d57600080fd5b6156a5614f02565b90506156b1838361555e565b81526156bf6080830161540b565b602082015292915050565b600061016082840312156156dd57600080fd5b604051606081018181106001600160401b03821117156156ff576156ff614eec565b60405261570c848461568b565b815261571b8460a0850161568b565b602082015261572d6101408401614dfb565b60408201529392505050565b604081833760006040838101828152908301915b600281101561577c576001600160401b0361576784614dfb565b1682526020928301929091019060010161574d565b50505061578b6080820161540b565b600481106157a957634e487b7160e01b600052602160045260246000fd5b806080840152505050565b8581526101e081016157c96020830187615739565b6157d960c0830160a08801615739565b6001600160401b036157ee6101408801614dfb565b1661016083015284610180830152836101a0830152826101c08301529695505050505050565b6000828210156158265761582661545a565b500390565b83815282602082015260006004831061585457634e487b7160e01b600052602160045260246000fd5b5060f89190911b604082015260410192915050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600082198211156158c7576158c761545a565b500190565b634e487b7160e01b600052603160045260246000fd5b83815260006020848184015260408301845182860160005b82811015615916578151845292840192908401906001016158fa565b509198975050505050505050565b60208152600082518060208401526159438160408501602087016154d2565b601f01601f1916919091016040019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcea8787f128d10b2cc0317b0c3960f9ad447f7f6c1ed189db1083ccffd20f456e416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220d520500d472b5a129c599797ba8381e597ca4da1bdab2d619086c91a22cb0c4364736f6c634300080c0033", - "accessList": [], - "hash": "0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3", - "v": 1, - "r": "0xba27f4c19992bee6c5555bba0b201c5ae39656c1e8d4c95138314407cb0ceb82", - "s": "0x5ae99e3e5372d3ac26c7e8df77a9e72be37dd42ef8516022e097916c019a72cc", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "rollupUser": { - "interface": { - "fragments": [ - { - "name": "AdminChanged", - "anonymous": false, - "inputs": [ - { - "name": "previousAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "BeaconUpgraded", - "anonymous": false, - "inputs": [ - { - "name": "beacon", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Initialized", - "anonymous": false, - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "NodeConfirmed", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "NodeCreated", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "parentNodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "executionHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "assertion", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterInboxBatchAcc", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "inboxMaxCount", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "NodeRejected", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Paused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RollupChallengeStarted", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "asserter", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challenger", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengedNode", - "type": "uint64", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RollupInitialized", - "anonymous": false, - "inputs": [ - { - "name": "machineHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Unpaused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "Upgraded", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UpgradedSecondary", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UserStakeUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UserWithdrawableFundsUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "VALIDATOR_AFK_BLOCKS", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "_stakerMap", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "addToDeposit", - "constant": false, - "inputs": [ - { - "name": "stakerAddress", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "amountStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "baseStake", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "chainId", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "challengeManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "completeChallenge", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "winningStaker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "losingStaker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "confirmNextNode", - "constant": false, - "inputs": [ - { - "name": "blockHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "confirmPeriodBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "countStakedZombies", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "countZombiesStakedOnChildren", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "createChallenge", - "constant": false, - "inputs": [ - { - "name": "stakers", - "type": "address[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "nodeNums", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "machineStatuses", - "type": "uint8[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "globalStates", - "type": "tuple[2]", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "secondExecutionHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "proposedBlocks", - "type": "uint256[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "wasmModuleRoots", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "currentChallenge", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "currentRequiredStake", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "extraChallengeTimeBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "firstUnresolvedNode", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getNode", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "stateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmData", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "deadlineBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "noChildConfirmedBeforeBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "childStakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "firstChildBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestChildNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "createdAtBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getNodeCreationBlockForLogLookup", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getStaker", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getStakerAddress", - "constant": true, - "inputs": [ - { - "name": "stakerNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "inbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "initialize", - "constant": true, - "inputs": [ - { - "name": "_stakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isERC20Enabled", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isStakedOnLatestConfirmed", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isValidator", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "isZombie", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "lastStakeBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestConfirmed", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestNodeCreated", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestStakedNode", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "loserStakeEscrow", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "minimumAssertionPeriod", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "newStakeOnExistingNode", - "constant": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "newStakeOnNewNode", - "constant": false, - "inputs": [ - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "expectedNodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNodeInboxMaxCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "nodeHasStaker", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "outbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "paused", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "proxiableUUID", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "reduceDeposit", - "constant": false, - "inputs": [ - { - "name": "target", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rejectNextNode", - "constant": false, - "inputs": [ - { - "name": "stakerAddress", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "removeOldZombies", - "constant": false, - "inputs": [ - { - "name": "startIndex", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "removeWhitelistAfterFork", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "removeWhitelistAfterValidatorAfk", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "removeZombie", - "constant": false, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "maxNodes", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "requireUnresolved", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "requireUnresolvedExists", - "constant": true, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "requiredStake", - "constant": true, - "inputs": [ - { - "name": "blockNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "firstUnresolvedNodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestCreatedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "returnOldDeposit", - "constant": false, - "inputs": [ - { - "name": "stakerAddress", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupDeploymentBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupEventInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "sequencerInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakeOnExistingNode", - "constant": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakeOnNewNode", - "constant": false, - "inputs": [ - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "expectedNodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNodeInboxMaxCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakeToken", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakerCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "totalWithdrawableFunds", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorUtils", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorWalletCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorWhitelistDisabled", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "wasmModuleRoot", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "withdrawStakerFunds", - "constant": false, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "withdrawableFunds", - "constant": true, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "zombieAddress", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "zombieCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "zombieLatestStakedNode", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "VALIDATOR_AFK_BLOCKS()": { - "type": "function", - "name": "VALIDATOR_AFK_BLOCKS", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "_stakerMap(address)": { - "type": "function", - "name": "_stakerMap", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "addToDeposit(address)": { - "type": "function", - "name": "addToDeposit", - "constant": false, - "inputs": [ - { - "name": "stakerAddress", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "amountStaked(address)": { - "type": "function", - "name": "amountStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "baseStake()": { - "type": "function", - "name": "baseStake", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "bridge()": { - "type": "function", - "name": "bridge", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "chainId()": { - "type": "function", - "name": "chainId", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "challengeManager()": { - "type": "function", - "name": "challengeManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "completeChallenge(uint256,address,address)": { - "type": "function", - "name": "completeChallenge", - "constant": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "winningStaker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "losingStaker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "confirmNextNode(bytes32,bytes32)": { - "type": "function", - "name": "confirmNextNode", - "constant": false, - "inputs": [ - { - "name": "blockHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "confirmPeriodBlocks()": { - "type": "function", - "name": "confirmPeriodBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "countStakedZombies(uint64)": { - "type": "function", - "name": "countStakedZombies", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "countZombiesStakedOnChildren(uint64)": { - "type": "function", - "name": "countZombiesStakedOnChildren", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "createChallenge(address[2],uint64[2],uint8[2],(bytes32[2],uint64[2])[2],uint64,bytes32,uint256[2],bytes32[2])": { - "type": "function", - "name": "createChallenge", - "constant": false, - "inputs": [ - { - "name": "stakers", - "type": "address[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "nodeNums", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "machineStatuses", - "type": "uint8[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "globalStates", - "type": "tuple[2]", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "secondExecutionHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "proposedBlocks", - "type": "uint256[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "wasmModuleRoots", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "currentChallenge(address)": { - "type": "function", - "name": "currentChallenge", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "currentRequiredStake()": { - "type": "function", - "name": "currentRequiredStake", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "extraChallengeTimeBlocks()": { - "type": "function", - "name": "extraChallengeTimeBlocks", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "firstUnresolvedNode()": { - "type": "function", - "name": "firstUnresolvedNode", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getNode(uint64)": { - "type": "function", - "name": "getNode", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "stateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmData", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "deadlineBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "noChildConfirmedBeforeBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "childStakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "firstChildBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestChildNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "createdAtBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getNodeCreationBlockForLogLookup(uint64)": { - "type": "function", - "name": "getNodeCreationBlockForLogLookup", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getStaker(address)": { - "type": "function", - "name": "getStaker", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "amountStaked", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "index", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestStakedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "currentChallenge", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "isStaked", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getStakerAddress(uint64)": { - "type": "function", - "name": "getStakerAddress", - "constant": true, - "inputs": [ - { - "name": "stakerNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "inbox()": { - "type": "function", - "name": "inbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "initialize(address)": { - "type": "function", - "name": "initialize", - "constant": true, - "inputs": [ - { - "name": "_stakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isERC20Enabled()": { - "type": "function", - "name": "isERC20Enabled", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isStaked(address)": { - "type": "function", - "name": "isStaked", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isStakedOnLatestConfirmed(address)": { - "type": "function", - "name": "isStakedOnLatestConfirmed", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isValidator(address)": { - "type": "function", - "name": "isValidator", - "constant": true, - "inputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "isZombie(address)": { - "type": "function", - "name": "isZombie", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "lastStakeBlock()": { - "type": "function", - "name": "lastStakeBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestConfirmed()": { - "type": "function", - "name": "latestConfirmed", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestNodeCreated()": { - "type": "function", - "name": "latestNodeCreated", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestStakedNode(address)": { - "type": "function", - "name": "latestStakedNode", - "constant": true, - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "loserStakeEscrow()": { - "type": "function", - "name": "loserStakeEscrow", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "minimumAssertionPeriod()": { - "type": "function", - "name": "minimumAssertionPeriod", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "newStakeOnExistingNode(uint64,bytes32)": { - "type": "function", - "name": "newStakeOnExistingNode", - "constant": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "newStakeOnNewNode((((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32,uint256)": { - "type": "function", - "name": "newStakeOnNewNode", - "constant": false, - "inputs": [ - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "expectedNodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNodeInboxMaxCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "nodeHasStaker(uint64,address)": { - "type": "function", - "name": "nodeHasStaker", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "outbox()": { - "type": "function", - "name": "outbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "owner()": { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "paused()": { - "type": "function", - "name": "paused", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "proxiableUUID()": { - "type": "function", - "name": "proxiableUUID", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "reduceDeposit(uint256)": { - "type": "function", - "name": "reduceDeposit", - "constant": false, - "inputs": [ - { - "name": "target", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rejectNextNode(address)": { - "type": "function", - "name": "rejectNextNode", - "constant": false, - "inputs": [ - { - "name": "stakerAddress", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "removeOldZombies(uint256)": { - "type": "function", - "name": "removeOldZombies", - "constant": false, - "inputs": [ - { - "name": "startIndex", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "removeWhitelistAfterFork()": { - "type": "function", - "name": "removeWhitelistAfterFork", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "removeWhitelistAfterValidatorAfk()": { - "type": "function", - "name": "removeWhitelistAfterValidatorAfk", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "removeZombie(uint256,uint256)": { - "type": "function", - "name": "removeZombie", - "constant": false, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "maxNodes", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "requireUnresolved(uint256)": { - "type": "function", - "name": "requireUnresolved", - "constant": true, - "inputs": [ - { - "name": "nodeNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "requireUnresolvedExists()": { - "type": "function", - "name": "requireUnresolvedExists", - "constant": true, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "requiredStake(uint256,uint64,uint64)": { - "type": "function", - "name": "requiredStake", - "constant": true, - "inputs": [ - { - "name": "blockNumber", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "firstUnresolvedNodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestCreatedNode", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "returnOldDeposit(address)": { - "type": "function", - "name": "returnOldDeposit", - "constant": false, - "inputs": [ - { - "name": "stakerAddress", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupDeploymentBlock()": { - "type": "function", - "name": "rollupDeploymentBlock", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupEventInbox()": { - "type": "function", - "name": "rollupEventInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "sequencerInbox()": { - "type": "function", - "name": "sequencerInbox", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakeOnExistingNode(uint64,bytes32)": { - "type": "function", - "name": "stakeOnExistingNode", - "constant": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakeOnNewNode((((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32,uint256)": { - "type": "function", - "name": "stakeOnNewNode", - "constant": false, - "inputs": [ - { - "name": "assertion", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "expectedNodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNodeInboxMaxCount", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakeToken()": { - "type": "function", - "name": "stakeToken", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakerCount()": { - "type": "function", - "name": "stakerCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "totalWithdrawableFunds()": { - "type": "function", - "name": "totalWithdrawableFunds", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorUtils()": { - "type": "function", - "name": "validatorUtils", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorWalletCreator()": { - "type": "function", - "name": "validatorWalletCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorWhitelistDisabled()": { - "type": "function", - "name": "validatorWhitelistDisabled", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "wasmModuleRoot()": { - "type": "function", - "name": "wasmModuleRoot", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "withdrawStakerFunds()": { - "type": "function", - "name": "withdrawStakerFunds", - "constant": false, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "withdrawableFunds(address)": { - "type": "function", - "name": "withdrawableFunds", - "constant": true, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "zombieAddress(uint256)": { - "type": "function", - "name": "zombieAddress", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "zombieCount()": { - "type": "function", - "name": "zombieCount", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "zombieLatestStakedNode(uint256)": { - "type": "function", - "name": "zombieLatestStakedNode", - "constant": true, - "inputs": [ - { - "name": "zombieNum", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": { - "AdminChanged(address,address)": { - "name": "AdminChanged", - "anonymous": false, - "inputs": [ - { - "name": "previousAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newAdmin", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "BeaconUpgraded(address)": { - "name": "BeaconUpgraded", - "anonymous": false, - "inputs": [ - { - "name": "beacon", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Initialized(uint8)": { - "name": "Initialized", - "anonymous": false, - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "NodeConfirmed(uint64,bytes32,bytes32)": { - "name": "NodeConfirmed", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "blockHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "sendRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "NodeCreated(uint64,bytes32,bytes32,bytes32,(((bytes32[2],uint64[2]),uint8),((bytes32[2],uint64[2]),uint8),uint64),bytes32,bytes32,uint256)": { - "name": "NodeCreated", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "parentNodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "executionHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "assertion", - "type": "tuple", - "indexed": false, - "components": [ - { - "name": "beforeState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "globalState", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "bytes32Vals", - "type": "bytes32[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "u64Vals", - "type": "uint64[2]", - "indexed": null, - "components": null, - "arrayLength": 2, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "machineStatus", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "numBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "afterInboxBatchAcc", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "inboxMaxCount", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "NodeRejected(uint64)": { - "name": "NodeRejected", - "anonymous": false, - "inputs": [ - { - "name": "nodeNum", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Paused(address)": { - "name": "Paused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RollupChallengeStarted(uint64,address,address,uint64)": { - "name": "RollupChallengeStarted", - "anonymous": false, - "inputs": [ - { - "name": "challengeIndex", - "type": "uint64", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "asserter", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challenger", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengedNode", - "type": "uint64", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RollupInitialized(bytes32,uint256)": { - "name": "RollupInitialized", - "anonymous": false, - "inputs": [ - { - "name": "machineHash", - "type": "bytes32", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Unpaused(address)": { - "name": "Unpaused", - "anonymous": false, - "inputs": [ - { - "name": "account", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "Upgraded(address)": { - "name": "Upgraded", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UpgradedSecondary(address)": { - "name": "UpgradedSecondary", - "anonymous": false, - "inputs": [ - { - "name": "implementation", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UserStakeUpdated(address,uint256,uint256)": { - "name": "UserStakeUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UserWithdrawableFundsUpdated(address,uint256,uint256)": { - "name": "UserWithdrawableFundsUpdated", - "anonymous": false, - "inputs": [ - { - "name": "user", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "initialBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "finalBalance", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x5603d464dA6b25D7c54a7A54f96154A47728C45E", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 203, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x5100df" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60e0604052620000196200003a60201b62002de91760201c565b15156080523060a0524660c0523480156200003357600080fd5b5062000115565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b1790529051600091829182916064916200007a9190620000d7565b600060405180830381855afa9150503d8060008114620000b7576040519150601f19603f3d011682016040523d82523d6000602084013e620000bc565b606091505b5091509150818015620000d0575080516020145b9250505090565b6000825160005b81811015620000fa5760208186018101518583015201620000de565b818111156200010a576000828501525b509190910192915050565b60805160a05160c051615e1f6200015a600039600061296401526000818161126c015281816129d30152612a58015260008181612d310152614cc40152615e1f6000f3fe60806040526004361061037a5760003560e01c80637427be51116101d3578063c4d66de811610103578063e8bd49221161009b578063e8bd492214610b7c578063edfd03ed14610c11578063ee35f32714610c31578063ef40a67014610c51578063f065de3f14610c71578063f33e1fac14610c91578063f63a434a14610cb1578063facd743b14610cd1578063fb0e722b14610d0157600080fd5b8063c4d66de814610a7f578063cd205fda14610a9f578063ce11e6ab14610abf578063ced01cfb14610adf578063d01e660214610af2578063d735e21d14610b12578063dcd030aa14610b27578063dff6978714610b47578063e78cea9214610b5c57600080fd5b806391c657e81161017657806391c657e81461087857806392c8134c146108985780639a8a0592146108c5578063a23c44b1146108db578063aa38a6e7146109ea578063aa65af4814610a0a578063b0ebedc714610a2a578063bc45e0ae14610a4a578063c2c2e68e14610a6a57600080fd5b80637427be511461079657806376e7e23b146107b6578063771b2f97146107cc5780637ba9534a146107f35780637e2d2155146108085780638640ce5f146108285780638da5cb5b1461084d5780638ee1a1261461086257600080fd5b806351ed6a30116102ae57806363721d6b1161025157806363721d6b1461069857806365f7f80d146106ad57806367425daf146106cb57806369fd251c146106e05780636b94c33b146107005780636d08d0a2146107205780636ddd3744146107405780636f57644e1461076057806371ef232c1461078057600080fd5b806351ed6a30146105b657806352d1902d146105d657806354ce8961146105eb5780635c617e941461060b5780635c975abb1461062b5780635eb405d51461064357806361373919146106635780636177fd181461067857600080fd5b80632b2af0ab116103215780632b2af0ab146104a15780632e7acfa6146104c15780632f30cabd146104f95780633e96576e1461052f57806345c5b2c71461054f57806345e38b64146105625780634774e576146105785780634ceccfe51461058b5780634d26732d146105a157600080fd5b8063014cc92c1461037f578063023a96fe146103bc5780630357aa49146103dc57806312ab3d3b146103fe57806318baaab9146104285780631aeb55a01461043d5780631b1689e91461045d5780631e83d30f14610481575b600080fd5b34801561038b57600080fd5b50606f5461039f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156103c857600080fd5b50606e5461039f906001600160a01b031681565b3480156103e857600080fd5b506103fc6103f7366004615232565b610d21565b005b34801561040a57600080fd5b50607e546104189060ff1681565b60405190151581526020016103b3565b34801561043457600080fd5b506103fc610dd5565b34801561044957600080fd5b506103fc610458366004615289565b610e4f565b34801561046957600080fd5b50610473607d5481565b6040519081526020016103b3565b34801561048d57600080fd5b506103fc61049c3660046152b5565b610ff4565b3480156104ad57600080fd5b506103fc6104bc3660046152b5565b6110fd565b3480156104cd57600080fd5b506065546104e1906001600160401b031681565b6040516001600160401b0390911681526020016103b3565b34801561050557600080fd5b506104736105143660046152ce565b6001600160a01b03166000908152607b602052604090205490565b34801561053b57600080fd5b506104e161054a3660046152ce565b6111a1565b6103fc61055d3660046152ce565b6111cf565b34801561056e57600080fd5b5061047360735481565b6103fc6105863660046152eb565b61121d565b34801561059757600080fd5b5061047361b2fa81565b3480156105ad57600080fd5b50610473611231565b3480156105c257600080fd5b5060725461039f906001600160a01b031681565b3480156105e257600080fd5b5061047361125f565b3480156105f757600080fd5b506103fc6106063660046152eb565b611324565b34801561061757600080fd5b50610473610626366004615328565b61156c565b34801561063757600080fd5b5060335460ff16610418565b34801561064f57600080fd5b506103fc61065e366004615345565b6115c0565b34801561066f57600080fd5b506104736118c8565b34801561068457600080fd5b506104186106933660046152ce565b611a44565b3480156106a457600080fd5b50607a54610473565b3480156106b957600080fd5b506075546001600160401b03166104e1565b3480156106d757600080fd5b506103fc611a6c565b3480156106ec57600080fd5b506104e16106fb3660046152ce565b611af6565b34801561070c57600080fd5b506103fc61071b3660046152ce565b611b24565b34801561072c57600080fd5b5061047361073b366004615328565b611e41565b34801561074c57600080fd5b5061039f61075b366004615328565b611ec4565b34801561076c57600080fd5b506103fc61077b366004615378565b611efd565b34801561078c57600080fd5b50610473607c5481565b3480156107a257600080fd5b506103fc6107b13660046152ce565b612514565b3480156107c257600080fd5b5061047360675481565b3480156107d857600080fd5b506065546104e190600160401b90046001600160401b031681565b3480156107ff57600080fd5b506104e161265d565b34801561081457600080fd5b506103fc610823366004615345565b612673565b34801561083457600080fd5b50607554600160c01b90046001600160401b03166104e1565b34801561085957600080fd5b5061039f6127bc565b34801561086e57600080fd5b5061047360685481565b34801561088457600080fd5b506104186108933660046152ce565b6127cb565b3480156108a457600080fd5b506108b86108b3366004615328565b61282f565b6040516103b39190615418565b3480156108d157600080fd5b5061047360665481565b3480156108e757600080fd5b506109956108f63660046152ce565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152506001600160a01b0316600090815260796020908152604091829020825160a081018452815481526001909101546001600160401b0380821693830193909352600160401b8104831693820193909352600160801b83049091166060820152600160c01b90910460ff161515608082015290565b6040516103b39190600060a0820190508251825260208301516001600160401b038082166020850152806040860151166040850152806060860151166060850152505060808301511515608083015292915050565b3480156109f657600080fd5b50606d5461039f906001600160a01b031681565b348015610a1657600080fd5b50610418610a25366004615514565b6128e7565b348015610a3657600080fd5b50610473610a4536600461554d565b61291e565b348015610a5657600080fd5b5060705461039f906001600160a01b031681565b348015610a7657600080fd5b506103fc61293e565b348015610a8b57600080fd5b506103fc610a9a3660046152ce565b6129c8565b348015610aab57600080fd5b506072546001600160a01b03161515610418565b348015610acb57600080fd5b50606b5461039f906001600160a01b031681565b6103fc610aed366004615289565b612b88565b348015610afe57600080fd5b5061039f610b0d3660046152b5565b612b9f565b348015610b1e57600080fd5b506104e1612bb4565b348015610b3357600080fd5b50610418610b423660046152ce565b612bca565b348015610b5357600080fd5b506078546104e1565b348015610b6857600080fd5b50606a5461039f906001600160a01b031681565b348015610b8857600080fd5b50610bd9610b973660046152ce565b607960205260009081526040902080546001909101546001600160401b0380821691600160401b8104821691600160801b82041690600160c01b900460ff1685565b604080519586526001600160401b0394851660208701529284169285019290925290911660608301521515608082015260a0016103b3565b348015610c1d57600080fd5b506103fc610c2c3660046152b5565b612c0d565b348015610c3d57600080fd5b50606c5461039f906001600160a01b031681565b348015610c5d57600080fd5b50610473610c6c3660046152ce565b612cdb565b348015610c7d57600080fd5b5060715461039f906001600160a01b031681565b348015610c9d57600080fd5b506104e1610cac3660046152b5565b612cf6565b348015610cbd57600080fd5b50610473610ccc366004615328565b612d2d565b348015610cdd57600080fd5b50610418610cec3660046152ce565b60746020526000908152604090205460ff1681565b348015610d0d57600080fd5b5060695461039f906001600160a01b031681565b610d29612e81565b606e546001600160a01b03163314610d775760405162461bcd60e51b815260206004820152600c60248201526b2ba927a723afa9a2a72222a960a11b60448201526064015b60405180910390fd5b610d818282612ec9565b6001600160401b03168314610dc65760405162461bcd60e51b815260206004820152600b60248201526a1393d517d25397d0d2105360aa1b6044820152606401610d6e565b610dd08282612f97565b505050565b607e5460ff1615610df85760405162461bcd60e51b8152600401610d6e90615584565b610e0061304d565b610e405760405162461bcd60e51b815260206004820152601160248201527056414c494441544f525f4e4f545f41464b60781b6044820152606401610d6e565b607e805460ff19166001179055565b3360009081526074602052604090205460ff1680610e6f5750607e5460ff165b610e8b5760405162461bcd60e51b8152600401610d6e906155b0565b610e93612e81565b610e9c33612bca565b610eb85760405162461bcd60e51b8152600401610d6e906155d7565b610ec0612bb4565b6001600160401b0316826001600160401b031610158015610efa5750610ee461265d565b6001600160401b0316826001600160401b031611155b610f3e5760405162461bcd60e51b81526020600482015260156024820152744e4f44455f4e554d5f4f55545f4f465f52414e474560581b6044820152606401610d6e565b6000610f4983613157565b905081816005015414610f8b5760405162461bcd60e51b815260206004820152600a6024820152694e4f44455f52454f524760b01b6044820152606401610d6e565b60038101546001600160401b0316610fa2336111a1565b6001600160401b031614610fea5760405162461bcd60e51b815260206004820152600f60248201526e2727aa2fa9aa20a5a2a22fa82922ab60891b6044820152606401610d6e565b610dd03384613171565b3360009081526074602052604090205460ff16806110145750607e5460ff165b6110305760405162461bcd60e51b8152600401610d6e906155b0565b60335460ff1615806110b65750606a546040805163cb23bcb560e01b8152905130926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa158015611086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110aa91906155fb565b6001600160a01b031614155b6110d25760405162461bcd60e51b8152600401610d6e90615618565b6110db336131c2565b60006110e5611231565b9050808210156110f3578091505b610dd03383613232565b611105612bb4565b6001600160401b031681101561114f5760405162461bcd60e51b815260206004820152600f60248201526e1053149150511657d11150d2511151608a1b6044820152606401610d6e565b61115761265d565b6001600160401b031681111561119e5760405162461bcd60e51b815260206004820152600c60248201526b1113d154d39517d1561254d560a21b6044820152606401610d6e565b50565b6001600160a01b0316600090815260796020526040902060010154600160401b90046001600160401b031690565b3360009081526074602052604090205460ff16806111ef5750607e5460ff165b61120b5760405162461bcd60e51b8152600401610d6e906155b0565b611213612e81565b61119e81346132e5565b6112263461333c565b610dd0838383611324565b60008061123c612bb4565b9050611259438261124b61265d565b6001600160401b0316613443565b91505090565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146112ff5760405162461bcd60e51b815260206004820152603b60248201527f555550534e6f745570677261646561626c653a206d757374206e6f742062652060448201527f63616c6c6564207468726f7567682064656c656761746563616c6c00000000006064820152608401610d6e565b507f2b1dbce74324248c222f0ec2d5ed7bd323cfc425b336f0253c5ccfda7265546d90565b3360009081526074602052604090205460ff16806113445750607e5460ff165b6113605760405162461bcd60e51b8152600401610d6e906155b0565b611368612e81565b61137133612bca565b61138d5760405162461bcd60e51b8152600401610d6e906155d7565b6000611398336111a1565b905060006113a58261282f565b61014001516113bd906001600160401b031643615659565b90506073548110156113fe5760405162461bcd60e51b815260206004820152600a60248201526954494d455f44454c544160b01b6044820152606401610d6e565b600261141261014087016101208801615695565b600381111561142357611423615670565b148061145157508261144561144036889003880160a089016157b1565b6136ab565b6001600160401b031610155b6114895760405162461bcd60e51b81526020600482015260096024820152681513d3d7d4d350531360ba1b6044820152606401610d6e565b600061149d61016087016101408801615328565b6001600160401b0316116114e55760405162461bcd60e51b815260206004820152600f60248201526e22a6a82a2cafa0a9a9a2a92a24a7a760891b6044820152606401610d6e565b60016114f760a0870160808801615695565b600381111561150857611508615670565b146115475760405162461bcd60e51b815260206004820152600f60248201526e4241445f505245565f53544154555360881b6044820152606401610d6e565b50611554848284866136c0565b506115663361156161265d565b613171565b50505050565b600080611578607a5490565b90506000805b828110156115b85761159385610a2583612b9f565b156115a657816115a2816157cd565b9250505b806115b0816157cd565b91505061157e565b509392505050565b3360009081526074602052604090205460ff16806115e05750607e5460ff165b6115fc5760405162461bcd60e51b8152600401610d6e906155b0565b611604612e81565b61160c611a6c565b6000611616612bb4565b9050600061162382613157565b6040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e0870152918204831661010086015281048216610120850152919091041661014082015260058201546101608201529091506116cf90613c8d565b60755460038201546001600160401b039081169116146116f1576116f16157e8565b600381015460009061170b906001600160401b0316613157565b6040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e0870152918204831661010086015281048216610120850152919091041661014082015260058201546101608201529091506117b790613cdc565b6117c16000612c0d565b60006117cc8461156c565b600384015490915060009082906117eb906001600160401b0316611e41565b6117f59190615659565b6003850154909150600160c01b90046001600160401b031682106118485760405162461bcd60e51b815260206004820152600a6024820152694e4f5f5354414b45525360b01b6044820152606401610d6e565b6003840154611868908290600160c01b90046001600160401b03166157fe565b60048401546001600160401b0316146118b45760405162461bcd60e51b815260206004820152600e60248201526d1393d517d0531317d4d51052d15160921b6044820152606401610d6e565b6118bf858888613d2c565b50505050505050565b3360009081526074602052604081205460ff16806118e85750607e5460ff165b6119045760405162461bcd60e51b8152600401610d6e906155b0565b60335460ff16158061198a5750606a546040805163cb23bcb560e01b8152905130926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa15801561195a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061197e91906155fb565b6001600160a01b031614155b6119a65760405162461bcd60e51b8152600401610d6e90615618565b60006119b133613e7b565b604051909150600090339083908381818185875af1925050503d80600081146119f6576040519150601f19603f3d011682016040523d82523d6000602084013e6119fb565b606091505b5050905080611a3e5760405162461bcd60e51b815260206004820152600f60248201526e1514905394d1915497d19052531151608a1b6044820152606401610d6e565b50905090565b6001600160a01b0316600090815260796020526040902060010154600160c01b900460ff1690565b6000611a76612bb4565b6001600160401b03169050611a936075546001600160401b031690565b6001600160401b031681118015611aba5750611aad61265d565b6001600160401b03168111155b61119e5760405162461bcd60e51b815260206004820152600d60248201526c1393d7d553949154d3d3159151609a1b6044820152606401610d6e565b6001600160a01b0316600090815260796020526040902060010154600160801b90046001600160401b031690565b3360009081526074602052604090205460ff1680611b445750607e5460ff165b611b605760405162461bcd60e51b8152600401610d6e906155b0565b611b68612e81565b611b70611a6c565b6000611b846075546001600160401b031690565b90506000611b90612bb4565b90506000611b9d82613157565b60038101549091506001600160401b0384811691161415611dff57611bc184612bca565b611bdd5760405162461bcd60e51b8152600401610d6e906155d7565b611bf7611be9856111a1565b6001600160401b03166110fd565b611c0182856128e7565b15611c415760405162461bcd60e51b815260206004820152601060248201526f14d51052d15117d3d397d5105491d15560821b6044820152606401610d6e565b6040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e087015291820483166101008601528104821661012085015291909104166101408201526005820154610160820152611cea90613c8d565b611d9c611cf684613157565b6040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e08701529182048316610100860152810482166101208501529190910416610140820152600590910154610160820152613cdc565b611da66000612c0d565b611daf8261156c565b6003820154600160c01b90046001600160401b031614611dff5760405162461bcd60e51b815260206004820152600b60248201526a4841535f5354414b45525360a81b6044820152606401610d6e565b611e07613efc565b6040516001600160401b038316907feaffa3d968707ec919a2fc9f31d5ab2b86c905881ff561725d5a82fc95ad464090600090a250505050565b600080611e4d607a5490565b90506000805b828110156115b8576000611e6682613f43565b80549091506001600160401b03878116600160a01b9092041614801590611e9e57508054611e9e9087906001600160a01b03166128e7565b15611eb15782611ead816157cd565b9350505b5080611ebc816157cd565b915050611e53565b60006078826001600160401b031681548110611ee257611ee2615816565b6000918252602090912001546001600160a01b031692915050565b3360009081526074602052604090205460ff1680611f1d5750607e5460ff165b611f395760405162461bcd60e51b8152600401610d6e906155b0565b611f41612e81565b611f516040880160208901615328565b6001600160401b0316611f676020890189615328565b6001600160401b031610611fab5760405162461bcd60e51b815260206004820152600b60248201526a2ba927a723afa7a92222a960a91b6044820152606401610d6e565b611fb361265d565b6001600160401b0316611fcc6040890160208a01615328565b6001600160401b031611156120125760405162461bcd60e51b815260206004820152600c60248201526b1393d517d41493d413d4d15160a21b6044820152606401610d6e565b61201f6020880188615328565b6001600160401b031661203a6075546001600160401b031690565b6001600160401b0316106120845760405162461bcd60e51b81526020600482015260116024820152701053149150511657d0d3d3919254935151607a1b6044820152606401610d6e565b60006120a488825b60200201602081019061209f9190615328565b613157565b905060006120b389600161208c565b600380820154908401549192506001600160401b039182169116146121065760405162461bcd60e51b81526020600482015260096024820152682224a3232fa82922ab60b91b6044820152606401610d6e565b6121258a60005b60200201602081019061212091906152ce565b6131c2565b6121308a600161210d565b61215761214060208b018b615328565b8b60005b602002016020810190610a2591906152ce565b6121985760405162461bcd60e51b815260206004820152601260248201527114d51052d1548c57d393d517d4d51052d15160721b6044820152606401610d6e565b6121b36121ab60408b0160208c01615328565b8b6001612144565b6121f45760405162461bcd60e51b815260206004820152601260248201527114d51052d1548c97d393d517d4d51052d15160721b6044820152606401610d6e565b6040805180820182526122759161226591908b90600290839083908082843760009201829052506040805180820190915292508c9150600290835b8282101561225b5761224c608083028501368190038101906157b1565b8152602001906001019061222f565b5050505089613f69565b85358560005b6020020135614013565b8260010154146122b45760405162461bcd60e51b815260206004820152600a6024820152694348414c5f484153483160b01b6044820152606401610d6e565b6122c585602086013585600161226b565b8160010154146123045760405162461bcd60e51b815260206004820152600a60248201526921a420a62fa420a9a41960b11b6044820152606401610d6e565b60655460038301546000916001600160401b03600160401b9182900481169261233292893592910416615659565b6003850154612349906001600160401b0316613157565b600401546123679190600160401b90046001600160401b03166157fe565b61237191906157fe565b905060208501358110156123ac576123a461238f60208d018d6152ce565b61239f60408e0160208f016152ce565b612f97565b50505061250a565b60006123ec8c8b8b8b89600c6123c38d358a615659565b6123cd919061582c565b600c6123dd60208f01358b615659565b6123e7919061582c565b614051565b905061246f6123fe60208e018e6152ce565b8d600160200201602081019061241491906152ce565b6001600160a01b03918216600090815260796020526040808220600190810180546001600160401b038916600160801b0267ffffffffffffffff60801b19918216811790925594909516835291200180549091169091179055565b6001600160401b0381167f6db7dc2f507647d135035469b27aa79cea90582779d084a7821d6cd092cbd8736124a760208f018f6152ce565b8e60016020020160208101906124bd91906152ce565b8e60006020020160208101906124d39190615328565b604080516001600160a01b0394851681529390921660208401526001600160401b03169082015260600160405180910390a2505050505b5050505050505050565b3360009081526074602052604090205460ff16806125345750607e5460ff165b6125505760405162461bcd60e51b8152600401610d6e906155b0565b60335460ff1615806125d65750606a546040805163cb23bcb560e01b8152905130926001600160a01b03169163cb23bcb59160048083019260209291908290030181865afa1580156125a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125ca91906155fb565b6001600160a01b031614155b6125f25760405162461bcd60e51b8152600401610d6e90615618565b6075546001600160401b0316612607826111a1565b6001600160401b0316111561264b5760405162461bcd60e51b815260206004820152600a6024820152691513d3d7d49150d1539560b21b6044820152606401610d6e565b612654816131c2565b61119e81614101565b607554600160801b90046001600160401b031690565b3360009081526074602052604090205460ff16806126935750607e5460ff165b6126af5760405162461bcd60e51b8152600401610d6e906155b0565b6126b7612e81565b607a5482106126f95760405162461bcd60e51b815260206004820152600e60248201526d4e4f5f535543485f5a4f4d42494560901b6044820152606401610d6e565b600061270483612b9f565b9050600061271184612cf6565b90506000806127286075546001600160401b031690565b6001600160401b031690505b80836001600160401b03161015801561274c57508482105b1561278b57600061275c84613157565b905061276884866141b1565b60038101546001600160401b0316935082612782816157cd565b93505050612734565b80836001600160401b031610156127aa576127a5866142fb565b6127b4565b6127b486846143c1565b505050505050565b60006127c661440a565b905090565b6000805b607a5481101561282657607a81815481106127ec576127ec615816565b6000918252602090912001546001600160a01b03848116911614156128145750600192915050565b8061281e816157cd565b9150506127cf565b50600092915050565b6128376150f8565b61284082613157565b6040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e0870152918204831661010086015281048216610120850152919091041661014082015260059091015461016082015292915050565b6001600160401b03821660009081526077602090815260408083206001600160a01b038516845290915290205460ff165b92915050565b60006129348484846001600160401b0316613443565b90505b9392505050565b607e5460ff16156129615760405162461bcd60e51b8152600401610d6e90615584565b467f00000000000000000000000000000000000000000000000000000000000000001415610e405760405162461bcd60e51b815260206004820152601460248201527310d210525397d25117d393d517d0d2105391d15160621b6044820152606401610d6e565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415612a565760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b6064820152608401610d6e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316612a8861443d565b6001600160a01b031614612af35760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b6163746976652070726f787960a01b6064820152608401610d6e565b6001600160a01b03811615612b3d5760405162461bcd60e51b815260206004820152601060248201526f1393d7d513d2d15397d0531313d5d15160821b6044820152606401610d6e565b6072546001600160a01b03161561119e5760405162461bcd60e51b815260206004820152600f60248201526e046414345545f4e4f545f455243323608c1b6044820152606401610d6e565b612b913461333c565b612b9b8282610e4f565b5050565b6000607a8281548110611ee257611ee2615816565b607554600160401b90046001600160401b031690565b6001600160a01b038116600090815260796020526040812060010154600160c01b900460ff1680156129185750607554612918906001600160401b0316836128e7565b3360009081526074602052604090205460ff1680612c2d5750607e5460ff165b612c495760405162461bcd60e51b8152600401610d6e906155b0565b612c51612e81565b6000612c5c607a5490565b90506000612c726075546001600160401b031690565b6001600160401b03169050825b82811015611566575b81612c9282612cf6565b6001600160401b03161015612cc957612caa816142fb565b82612cb48161584b565b935050828110612cc45750505050565b612c88565b80612cd3816157cd565b915050612c7f565b6001600160a01b031660009081526079602052604090205490565b6000607a8281548110612d0b57612d0b615816565b600091825260209091200154600160a01b90046001600160401b031692915050565b60007f000000000000000000000000000000000000000000000000000000000000000015612d8b576001600160401b0382166000908152607f6020526040902054806129185760405162461bcd60e51b8152600401610d6e90615862565b6000612d9683613157565b6003810154909150600160401b90046001600160401b0316612dca5760405162461bcd60e51b8152600401610d6e90615862565b60040154600160c01b90046001600160401b031692915050565b919050565b60408051600481526024810182526020810180516001600160e01b03166302881c7960e11b179052905160009182918291606491612e279190615883565b600060405180830381855afa9150503d8060008114612e62576040519150601f19603f3d011682016040523d82523d6000602084013e612e67565b606091505b5091509150818015612e7a575080516020145b9250505090565b60335460ff1615612ec75760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610d6e565b565b6001600160a01b03828116600090815260796020526040808220928416825281206001830154919291600160801b90046001600160401b031680612f395760405162461bcd60e51b81526020600482015260076024820152661393d7d0d2105360ca1b6044820152606401610d6e565b60018201546001600160401b03828116600160801b9092041614612f8e5760405162461bcd60e51b815260206004820152600c60248201526b1112519197d25397d0d2105360a21b6044820152606401610d6e565b95945050505050565b6000612fa282612cdb565b90506000612faf84612cdb565b905080821115612fd057612fc38382613232565b612fcd9083615659565b91505b6000612fdd6002846158d4565b9050612fe98582614465565b612ff38184615659565b9250613027856001600160a01b03166000908152607960205260409020600101805467ffffffffffffffff60801b19169055565b60715461303d906001600160a01b0316846144ca565b61304684614566565b5050505050565b60008061305b61209f61265d565b6040805161018081018252825481526001830154602082015260028301549181019190915260038201546001600160401b038082166060840152600160401b80830482166080850152600160801b808404831660a0860152600160c01b93849004831660c0860152600486015480841660e087015291820483166101008601528104821661012085015291909104166101408201819052600590920154610160820152915061310c57600091505090565b606554610140820151439161b2fa9161312e916001600160401b0316906158e8565b6001600160401b031661314191906157fe565b101561314f57600191505090565b600091505090565b6001600160401b0316600090815260766020526040902090565b6001600160a01b0382166000908152607960205260409020613193828461460c565b60010180546001600160401b03909216600160401b0267ffffffffffffffff60401b1990921691909117905550565b6131cb81611a44565b6131e75760405162461bcd60e51b8152600401610d6e906155d7565b60006131f282611af6565b6001600160401b03161461119e5760405162461bcd60e51b8152602060048201526007602482015266125397d0d2105360ca1b6044820152606401610d6e565b6001600160a01b038216600090815260796020526040812080548084111561328f5760405162461bcd60e51b815260206004820152601060248201526f544f4f5f4c4954544c455f5354414b4560801b6044820152606401610d6e565b600061329b8583615659565b85845590506132aa86826144ca565b60408051838152602081018790526001600160a01b03881691600080516020615dca833981519152910160405180910390a295945050505050565b3360009081526074602052604090205460ff16806133055750607e5460ff165b6133215760405162461bcd60e51b8152600401610d6e906155b0565b613329612e81565b613332826131c2565b612b9b8282614465565b3360009081526074602052604090205460ff168061335c5750607e5460ff165b6133785760405162461bcd60e51b8152600401610d6e906155b0565b613380612e81565b61338933611a44565b156133a65760405162461bcd60e51b8152600401610d6e90615913565b6133af336127cb565b156133ef5760405162461bcd60e51b815260206004820152601060248201526f5354414b45525f49535f5a4f4d42494560801b6044820152606401610d6e565b6133f7611231565b8110156134395760405162461bcd60e51b815260206004820152601060248201526f4e4f545f454e4f5547485f5354414b4560801b6044820152606401610d6e565b61119e33826147d2565b60008161345160018561593b565b6001600160401b031614156134695750606754612937565b600061347484613157565b60030154600160401b90046001600160401b031690508085101561349c575050606754612937565b6000604051806101400160405280600162ffffff1681526020016201e05b62ffffff1681526020016201f7d162ffffff1681526020016201389162ffffff168152602001620329e162ffffff1681526020016201be4362ffffff1681526020016204cb8c62ffffff1681526020016201fbc462ffffff16815260200162036d3262ffffff1681526020016202797362ffffff1681525090506000604051806101400160405280600162ffffff1681526020016201c03062ffffff1681526020016201b69962ffffff16815260200161fde262ffffff168152602001620265c662ffffff16815260200162013b8e62ffffff168152602001620329e162ffffff1681526020016201389162ffffff1681526020016201f7d162ffffff1681526020016201537562ffffff168152509050600083886135d99190615659565b6065549091506000906001600160401b03166135f683600a61582c565b61360091906158d4565b9050600061360f600a836158d4565b61361a906002615a47565b905060008561362a600a85615a53565b600a811061363a5761363a615816565b602002015161364e9062ffffff168361582c565b905060008561365e600a86615a53565b600a811061366e5761366e615816565b60200201516136829062ffffff16836158d4565b90508061368d575060015b8060675461369b919061582c565b9c9b505050505050505050505050565b6020810151600090815b602002015192915050565b600060016136d661014087016101208801615695565b60038111156136e7576136e7615670565b14806137155750600261370261014087016101208801615695565b600381111561371357613713615670565b145b6137545760405162461bcd60e51b815260206004820152601060248201526f4241445f41465445525f53544154555360801b6044820152606401610d6e565b61375c61515c565b6137658561282f565b6060820152606a54604080516221048360e21b815290516001600160a01b03909216916284120c916004808201926020929091908290030181865afa1580156137b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137d69190615a67565b81526060810151516137e8878661492d565b146138275760405162461bcd60e51b815260206004820152600f60248201526e0a0a48aacbea6a882a88abe9082a69608b1b6044820152606401610d6e565b600061383e61144036899003890160a08a016157b1565b90506000613854611440368a90038a018a6157b1565b9050806001600160401b0316826001600160401b031610156138aa5760405162461bcd60e51b815260206004820152600f60248201526e494e424f585f4241434b574152445360881b6044820152606401610d6e565b806001600160401b0316826001600160401b03161415613950576138db6138d6368a90038a018a6157b1565b614987565b6001600160401b03166138f96138d6368b90038b0160a08c016157b1565b6001600160401b031610156139505760405162461bcd60e51b815260206004820152601a60248201527f494e424f585f504f535f494e5f4d53475f4241434b57415244530000000000006044820152606401610d6e565b60026139646101408a016101208b01615695565b600381111561397557613975615670565b148061399e575060006139936138d6368b90038b0160a08c016157b1565b6001600160401b0316115b156139b157816139ad81615a80565b9250505b82516001600160401b03831611156139fc5760405162461bcd60e51b815260206004820152600e60248201526d12539093d617d41054d517d1539160921b6044820152606401610d6e565b6001600160401b03821615613a9557606a546001600160a01b03166316bf5579613a2760018561593b565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865afa158015613a6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a8f9190615a67565b60e08401525b50613aaf9050613aaa36889003880188615ae6565b614996565b6040820152606554613aca906001600160401b0316436158e8565b6001600160401b0390811660c0830152606082015161012001511615801560a0830152613b1157613b0381606001516101200151613157565b600501546080820152613b21565b6060810151610160015160808201525b613b408160a00151826080015183604001518460e00151606854614a35565b915082821480613b4e575082155b613b915760405162461bcd60e51b81526020600482015260146024820152730aa9c8ab0a08a86a88a88be9c9e888abe9082a6960631b6044820152606401610d6e565b613bd9613ba58760a001836000015161492d565b613bb6836040015143606854614013565b613bcd613bc8368b90038b018b615ae6565b614aa2565b888560c0015187614acc565b60208201526000613be861265d565b613bf39060016158e8565b90506000613c0087613157565b9050613c0c8183614b20565b613c198360200151614b91565b50508181606001516101600151613c2e61265d565b6001600160401b03167f4f4caa9e67fb994e349dd35d1ad0ce23053d4323f83ce11dc817b5435031d09684604001518a8660e001516068548860000151604051613c7c959493929190615be1565b60405180910390a450949350505050565b80608001516001600160401b031643101561119e5760405162461bcd60e51b815260206004820152600f60248201526e4245464f52455f444541444c494e4560881b6044820152606401610d6e565b8060a001516001600160401b031643101561119e5760405162461bcd60e51b815260206004820152601060248201526f10d212531117d513d3d7d49150d1539560821b6044820152606401610d6e565b6000613d3784613157565b9050613d438383614d70565b816002015414613d845760405162461bcd60e51b815260206004820152600c60248201526b434f4e4649524d5f4441544160a01b6044820152606401610d6e565b606b54604051630502677360e51b815260048101849052602481018590526001600160a01b039091169063a04cee6090604401600060405180830381600087803b158015613dd157600080fd5b505af1158015613de5573d6000803e3d6000fd5b50506075805467ffffffffffffffff19166001600160401b03881617905550613e1190508460016158e8565b6075805467ffffffffffffffff60401b1916600160401b6001600160401b03938416021790556040805185815260208101859052918616917f22ef0479a7ff660660d1c2fe35f1b632cf31675c2d9378db8cec95b00d8ffa3c91015b60405180910390a250505050565b6001600160a01b0381166000908152607b60205260408120805490829055607c80548291908490613ead908490615659565b909155505060408051828152600060208201526001600160a01b038516917fa740af14c56e4e04a617b1de1eb20de73270decbaaead14f142aabf3038e5ae2910160405180910390a292915050565b60758054600160401b90046001600160401b0316906008613f1c83615a80565b91906101000a8154816001600160401b0302191690836001600160401b0316021790555050565b6000607a8281548110613f5857613f58615816565b906000526020600020019050919050565b60408051600280825260608201835260009283929190602083019080368337019050508551909150613fab90613fa68660005b6020020151614d8c565b614e00565b81600081518110613fbe57613fbe615816565b6020908102919091010152613fdf8560016020020151613fa6866001613f9c565b81600181518110613ff257613ff2615816565b602002602001018181525050612f8e6000846001600160401b031683614f24565b6040805160208101859052908101839052606081018290526000906080015b6040516020818303038152906040528051906020012090509392505050565b606e546000906001600160a01b03166314eab5e7853589898961407760208f018f6152ce565b8e600160200201602081019061408d91906152ce565b8a8a6040518963ffffffff1660e01b81526004016140b2989796959493929190615c43565b6020604051808303816000875af11580156140d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f59190615cf3565b98975050505050505050565b6001600160a01b03811660009081526079602052604081209061412c6075546001600160401b031690565b905061413881846128e7565b1561416d5760018201546001600160401b03828116600160401b9092041614614163576141636157e8565b61416d81846141b1565b815461417984826144ca565b61418284614f3b565b60408051828152600060208201526001600160a01b03861691600080516020615dca8339815191529101613e6d565b6001600160401b03821660009081526077602090815260408083206001600160a01b038516845290915290205460ff166141fd5760405162461bcd60e51b8152600401610d6e906155d7565b6001600160401b03821660009081526077602090815260408083206001600160a01b03851684529091528120805460ff1916905561423a83613157565b600381018054919250600160c01b9091046001600160401b031690601861426083615d10565b91906101000a8154816001600160401b0302191690836001600160401b031602179055505060006001600160401b0316836001600160401b03161115610dd05760038101546142b7906001600160401b0316613157565b60040180546001600160401b03169060006142d183615d10565b91906101000a8154816001600160401b0302191690836001600160401b0316021790555050505050565b607a805461430b90600190615659565b8154811061431b5761431b615816565b90600052602060002001607a828154811061433857614338615816565b600091825260209091208254910180546001600160a01b039092166001600160a01b031983168117825592546001600160e01b0319909216909217600160a01b918290046001600160401b0316909102179055607a80548061439c5761439c615d33565b600082815260209020810160001990810180546001600160e01b031916905501905550565b80607a83815481106143d5576143d5615816565b9060005260206000200160000160146101000a8154816001600160401b0302191690836001600160401b031602179055505050565b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b60007f2b1dbce74324248c222f0ec2d5ed7bd323cfc425b336f0253c5ccfda7265546d61442e565b6001600160a01b03821660009081526079602052604081208054909161448b84836157fe565b80845560408051848152602081018390529192506001600160a01b03871691600080516020615dca833981519152910160405180910390a25050505050565b6001600160a01b0382166000908152607b6020526040812054906144ee83836157fe565b6001600160a01b0385166000908152607b60205260408120829055607c805492935085929091906145209084906157fe565b909155505060408051838152602081018390526001600160a01b038616917fa740af14c56e4e04a617b1de1eb20de73270decbaaead14f142aabf3038e5ae29101613e6d565b6001600160a01b03808216600081815260796020908152604080832081518083019092529381526001808501546001600160401b03600160401b9091048116938301938452607a8054928301815590945290517ff0440771a29e57e18c66727944770b82cc77924aef333c927ce6bdd2cdb3ae0390910180549251909316600160a01b026001600160e01b031990921694169390931792909217909155612b9b82614f3b565b6001600160401b03821660009081526077602090815260408083206001600160a01b038516845290915290205460ff16156146595760405162461bcd60e51b8152600401610d6e90615913565b6001600160401b03821660009081526077602090815260408083206001600160a01b03851684529091528120805460ff1916600117905561469983613157565b6003810154909150600160401b90046001600160401b03166146cd5760405162461bcd60e51b8152600401610d6e90615862565b6003810154600160c01b90046001600160401b03166146ed8160016158e8565b6003830180546001600160c01b0316600160c01b6001600160401b0393841602179055841615611566576003820154600090614731906001600160401b0316613157565b6004810180549192506001600160401b0390911690600061475183615a80565b91906101000a8154816001600160401b0302191690836001600160401b0316021790555050816001600160401b03166000141561304657606554613046906147a2906001600160401b0316436158e8565b60038301805467ffffffffffffffff60801b1916600160801b6001600160401b0390931692909202919091179055565b6078805460018082019092557f8dc6fb69531d98d70dc0420e638d2dfd04e09e1ec783ede9aac77da9c5a0dac4810180546001600160a01b0319166001600160a01b0386169081179091556040805160a0810182528581526001600160401b038085166020808401918252607580548416858701908152600060608701818152608088018c81528a835260798652898320985189559551978c0180549351915196519888166001600160801b031990941693909317600160401b918816919091021768ffffffffffffffffff60801b1916600160801b9587169590950260ff60c01b191694909417600160c01b9615158702179055805484168352607782528583208784528252858320805460ff191690991790985587546001600160c01b031643909316909302919091179095558151948552840185905291929091600080516020615dca833981519152910160405180910390a2505050565b6000614946614941368590038501856157b1565b614d8c565b8261495760a0860160808701615695565b60405160200161496993929190615d49565b60405160208183030381529060405280519060200120905092915050565b602081015160009060016136b5565b60006149a06151ad565b825160200151819060038111156149b9576149b9615670565b908160038111156149cc576149cc615670565b9052506020838101518101519082019060038111156149ed576149ed615670565b90816003811115614a0057614a00615670565b905250614a0b6151cb565b835151815260208085015151908201526040840151614a2d9083908390613f69565b949350505050565b60008086614a44576000614a47565b60015b6040516001600160f81b031960f883901b1660208201526021810188905260418101879052606181018690526081810185905290915060a1016040516020818303038152906040528051906020012091505095945050505050565b6000612918614ab88360200151600001516150e1565b602084015151614ac7906150ec565b614d70565b614ad46150f8565b614adc6150f8565b96875250602086019490945260408501929092526001600160401b0390811660608501529081166080840181905260a0840152431661014083015261016082015290565b6004820154600160401b90046001600160401b0316614b615760048201805467ffffffffffffffff60401b1916600160401b436001600160401b0316021790555b600490910180546001600160401b03909216600160801b0267ffffffffffffffff60801b19909216919091179055565b60758054600160801b90046001600160401b0316906010614bb183615a80565b825461010092830a6001600160401b03818102199092169282160291909117909255607554600160801b908190048316600090815260766020908152604091829020875181559087015160018201559086015160028201556060860151600382018054608089015160a08a015160c08b01519489166001600160801b031993841617600160401b928a168302176001600160801b03908116918a1688026001600160c01b0390811692909217600160c01b968b1687021790945560e08b0151600487018054998d01516101208e01516101408f0151938d169b9096169a909a17998b16909302989098179093169188169095029091161793909416909302919091179055610160830151600590910155507f00000000000000000000000000000000000000000000000000000000000000001561119e5760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614d27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614d4b9190615a67565b607554600160801b90046001600160401b03166000908152607f602052604090205550565b6040805160208101849052908101829052600090606001614969565b8051805160209182015192820151805190830151604080516c23b637b130b61039ba30ba329d60991b81870152602d810194909452604d8401959095526001600160c01b031960c092831b8116606d850152911b1660758201528251808203605d018152607d909101909252815191012090565b60006001836003811115614e1657614e16615670565b1415614e5c576040516b213637b1b59039ba30ba329d60a11b6020820152602c8101839052604c015b604051602081830303815290604052805190602001209050612918565b6002836003811115614e7057614e70615670565b1415614ea65760405174213637b1b59039ba30ba32961032b93937b932b21d60591b602082015260358101839052605501614e3f565b6003836003811115614eba57614eba615670565b1415614ee95760405174213637b1b59039ba30ba3296103a37b7903330b91d60591b6020820152603501614e3f565b60405162461bcd60e51b815260206004820152601060248201526f4241445f424c4f434b5f53544154555360801b6044820152606401610d6e565b600083838360405160200161403293929190615d87565b6001600160a01b03811660009081526079602052604090206001810154600160c01b900460ff16614f7e5760405162461bcd60e51b8152600401610d6e906155d7565b600180820154607880546001600160401b03909216929091614fa09190615659565b81548110614fb057614fb0615816565b600091825260209091200154607880546001600160a01b03909216916001600160401b038416908110614fe557614fe5615816565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555080607960006078846001600160401b03168154811061503457615034615816565b6000918252602080832091909101546001600160a01b031683528201929092526040019020600101805467ffffffffffffffff19166001600160401b0392909216919091179055607880548061508c5761508c615d33565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03949094168152607990935250506040812090815560010180546001600160c81b0319169055565b8051600090816136b5565b805160009060016136b5565b6040805161018081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101829052610140810182905261016081019190915290565b604051806101000160405280600081526020016151776150f8565b81526000602082015260400161518b6150f8565b8152600060208201819052604082018190526060820181905260809091015290565b60405180604001604052806002906020820280368337509192915050565b60405180604001604052806002905b6151e26151f8565b8152602001906001900390816151da5790505090565b604051806040016040528061520b6151ad565b81526020016152186151ad565b905290565b6001600160a01b038116811461119e57600080fd5b60008060006060848603121561524757600080fd5b8335925060208401356152598161521d565b915060408401356152698161521d565b809150509250925092565b6001600160401b038116811461119e57600080fd5b6000806040838503121561529c57600080fd5b82356152a781615274565b946020939093013593505050565b6000602082840312156152c757600080fd5b5035919050565b6000602082840312156152e057600080fd5b81356129378161521d565b60008060008385036101a081121561530257600080fd5b6101608082121561531257600080fd5b9496948701359550505061018085013592915050565b60006020828403121561533a57600080fd5b813561293781615274565b6000806040838503121561535857600080fd5b50508035926020909101359150565b806040810183101561291857600080fd5b600080600080600080600080610280898b03121561539557600080fd5b61539f8a8a615367565b97506153ae8a60408b01615367565b96506153bd8a60808b01615367565b95506101c089018a8111156153d157600080fd5b60c08a019550356153e181615274565b93506101e089013592506153f98a6102008b01615367565b91506154098a6102408b01615367565b90509295985092959890939650565b600061018082019050825182526020830151602083015260408301516040830152606083015161545360608401826001600160401b03169052565b50608083015161546e60808401826001600160401b03169052565b5060a083015161548960a08401826001600160401b03169052565b5060c08301516154a460c08401826001600160401b03169052565b5060e08301516154bf60e08401826001600160401b03169052565b50610100838101516001600160401b038116848301525050610120838101516001600160401b038116848301525050610140838101516001600160401b03811684830152505061016092830151919092015290565b6000806040838503121561552757600080fd5b823561553281615274565b915060208301356155428161521d565b809150509250929050565b60008060006060848603121561556257600080fd5b83359250602084013561557481615274565b9150604084013561526981615274565b60208082526012908201527115d2125511531254d517d11254d05093115160721b604082015260600190565b6020808252600d908201526c2727aa2fab20a624a220aa27a960991b604082015260600190565b6020808252600a90820152691393d517d4d51052d15160b21b604082015260600190565b60006020828403121561560d57600080fd5b81516129378161521d565b6020808252601190820152705041555345445f414e445f41435449564560781b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008282101561566b5761566b615643565b500390565b634e487b7160e01b600052602160045260246000fd5b803560048110612de457600080fd5b6000602082840312156156a757600080fd5b61293782615686565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156156e8576156e86156b0565b60405290565b60006080828403121561570057600080fd5b6157086156c6565b905082601f83011261571957600080fd5b6157216156c6565b80604084018581111561573357600080fd5b845b8181101561574d578035845260209384019301615735565b5081845285605f86011261576057600080fd5b6157686156c6565b9250829150608085018681111561577e57600080fd5b808210156157a357813561579181615274565b8452602093840193919091019061577e565b505060208301525092915050565b6000608082840312156157c357600080fd5b61293783836156ee565b60006000198214156157e1576157e1615643565b5060010190565b634e487b7160e01b600052600160045260246000fd5b6000821982111561581157615811615643565b500190565b634e487b7160e01b600052603260045260246000fd5b600081600019048311821515161561584657615846615643565b500290565b60008161585a5761585a615643565b506000190190565b6020808252600790820152664e4f5f4e4f444560c81b604082015260600190565b6000825160005b818110156158a4576020818601810151858301520161588a565b818111156158b3576000828501525b509190910192915050565b634e487b7160e01b600052601260045260246000fd5b6000826158e3576158e36158be565b500490565b60006001600160401b0380831681851680830382111561590a5761590a615643565b01949350505050565b6020808252600e908201526d1053149150511657d4d51052d15160921b604082015260600190565b60006001600160401b038381169083168181101561595b5761595b615643565b039392505050565b600181815b8085111561599e57816000190482111561598457615984615643565b8085161561599157918102915b93841c9390800290615968565b509250929050565b6000826159b557506001612918565b816159c257506000612918565b81600181146159d857600281146159e2576159fe565b6001915050612918565b60ff8411156159f3576159f3615643565b50506001821b612918565b5060208310610133831016604e8410600b8410161715615a21575081810a612918565b615a2b8383615963565b8060001904821115615a3f57615a3f615643565b029392505050565b600061293783836159a6565b600082615a6257615a626158be565b500690565b600060208284031215615a7957600080fd5b5051919050565b60006001600160401b0380831681811415615a9d57615a9d615643565b6001019392505050565b600060a08284031215615ab957600080fd5b615ac16156c6565b9050615acd83836156ee565b8152615adb60808301615686565b602082015292915050565b60006101608284031215615af957600080fd5b604051606081018181106001600160401b0382111715615b1b57615b1b6156b0565b604052615b288484615aa7565b8152615b378460a08501615aa7565b6020820152610140830135615b4b81615274565b60408201529392505050565b604081833760006040838101828152908301915b6002811015613046578235615b7f81615274565b6001600160401b0316825260209283019290910190600101615b6b565b60048110615bba57634e487b7160e01b600052602160045260246000fd5b9052565b615bc88282615b57565b615bd460808201615686565b610dd06080840182615b9c565b8581526101e08101615bf66020830187615bbe565b615c0660c0830160a08801615bbe565b610140860135615c1581615274565b6001600160401b03166101608301526101808201949094526101a08101929092526101c09091015292915050565b888152610200810160208083018a60005b6002811015615c7f57615c6f83615c6a84615686565b615b9c565b9183019190830190600101615c54565b50505050606082018860005b6002811015615cb157615c9e8383615b57565b6080928301929190910190600101615c8b565b5050506001600160401b03969096166101608201526001600160a01b03948516610180820152929093166101a08301526101c08201526101e001529392505050565b600060208284031215615d0557600080fd5b815161293781615274565b60006001600160401b03821680615d2957615d29615643565b6000190192915050565b634e487b7160e01b600052603160045260246000fd5b838152826020820152600060048310615d7257634e487b7160e01b600052602160045260246000fd5b5060f89190911b604082015260410192915050565b83815260006020848184015260408301845182860160005b82811015615dbb57815184529284019290840190600101615d9f565b50919897505050505050505056feebd093d389ab57f3566918d2c379a2b4d9539e8eb95efad9d5e465457833fde6a2646970667358221220fb1681800bdd66934522250a98cf52f419fd492288d1fe8639073383c8ef27ee64736f6c634300080c0033", - "accessList": [], - "hash": "0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a", - "v": 0, - "r": "0x47c231f471a3d3a7f9ddac2d18b15a2a600144e39d3c7c23540ceb053102497b", - "s": "0x07db383e9a63e6bd3efee9012439d94af83fa3b227692c58c76379f8843509f8", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "upgradeExecutor": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "name": "Initialized", - "anonymous": false, - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RoleAdminChanged", - "anonymous": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "previousAdminRole", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "newAdminRole", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RoleGranted", - "anonymous": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sender", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RoleRevoked", - "anonymous": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sender", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "TargetCallExecuted", - "anonymous": false, - "inputs": [ - { - "name": "target", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "UpgradeExecuted", - "anonymous": false, - "inputs": [ - { - "name": "upgrade", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "ADMIN_ROLE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "DEFAULT_ADMIN_ROLE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "EXECUTOR_ROLE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "execute", - "constant": false, - "inputs": [ - { - "name": "upgrade", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "upgradeCallData", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "executeCall", - "constant": false, - "inputs": [ - { - "name": "target", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "targetCallData", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getRoleAdmin", - "constant": true, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "grantRole", - "constant": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "hasRole", - "constant": true, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "admin", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "executors", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "renounceRole", - "constant": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "revokeRole", - "constant": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "supportsInterface", - "constant": true, - "inputs": [ - { - "name": "interfaceId", - "type": "bytes4", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes4", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "ADMIN_ROLE()": { - "type": "function", - "name": "ADMIN_ROLE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "DEFAULT_ADMIN_ROLE()": { - "type": "function", - "name": "DEFAULT_ADMIN_ROLE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "EXECUTOR_ROLE()": { - "type": "function", - "name": "EXECUTOR_ROLE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "execute(address,bytes)": { - "type": "function", - "name": "execute", - "constant": false, - "inputs": [ - { - "name": "upgrade", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "upgradeCallData", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "executeCall(address,bytes)": { - "type": "function", - "name": "executeCall", - "constant": false, - "inputs": [ - { - "name": "target", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "targetCallData", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getRoleAdmin(bytes32)": { - "type": "function", - "name": "getRoleAdmin", - "constant": true, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "grantRole(bytes32,address)": { - "type": "function", - "name": "grantRole", - "constant": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "hasRole(bytes32,address)": { - "type": "function", - "name": "hasRole", - "constant": true, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "initialize(address,address[])": { - "type": "function", - "name": "initialize", - "constant": false, - "inputs": [ - { - "name": "admin", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "executors", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "renounceRole(bytes32,address)": { - "type": "function", - "name": "renounceRole", - "constant": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "revokeRole(bytes32,address)": { - "type": "function", - "name": "revokeRole", - "constant": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "supportsInterface(bytes4)": { - "type": "function", - "name": "supportsInterface", - "constant": true, - "inputs": [ - { - "name": "interfaceId", - "type": "bytes4", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes4", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": { - "Initialized(uint8)": { - "name": "Initialized", - "anonymous": false, - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RoleAdminChanged(bytes32,bytes32,bytes32)": { - "name": "RoleAdminChanged", - "anonymous": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "previousAdminRole", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "newAdminRole", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RoleGranted(bytes32,address,address)": { - "name": "RoleGranted", - "anonymous": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sender", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RoleRevoked(bytes32,address,address)": { - "name": "RoleRevoked", - "anonymous": false, - "inputs": [ - { - "name": "role", - "type": "bytes32", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "account", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sender", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "TargetCallExecuted(address,uint256,bytes)": { - "name": "TargetCallExecuted", - "anonymous": false, - "inputs": [ - { - "name": "target", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "UpgradeExecuted(address,uint256,bytes)": { - "name": "UpgradeExecuted", - "anonymous": false, - "inputs": [ - { - "name": "upgrade", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "data", - "type": "bytes", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x939E34B8047E61EB8831742D7AD88b11d93a85fe", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 204, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x161052" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b50600160975561001e610023565b6100e3565b600054610100900460ff161561008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61183c806100f26000396000f3fe6080604052600436106100c75760003560e01c806375b238fc11610074578063a217fddf1161004e578063a217fddf1461026f578063bca8c7b514610284578063d547741f1461029757600080fd5b806375b238fc146101c857806391d14854146101fc578063946d92041461024f57600080fd5b8063248a9ca3116100a5578063248a9ca3146101585780632f2ff15d1461018857806336568abe146101a857600080fd5b806301ffc9a7146100cc57806307bd0265146101015780631cff79cd14610143575b600080fd5b3480156100d857600080fd5b506100ec6100e736600461128f565b6102b7565b60405190151581526020015b60405180910390f35b34801561010d57600080fd5b506101357fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e6381565b6040519081526020016100f8565b610156610151366004611378565b610350565b005b34801561016457600080fd5b5061013561017336600461143c565b60009081526065602052604090206001015490565b34801561019457600080fd5b506101566101a3366004611455565b610489565b3480156101b457600080fd5b506101566101c3366004611455565b6104b3565b3480156101d457600080fd5b506101357fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b34801561020857600080fd5b506100ec610217366004611455565b600091825260656020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561025b57600080fd5b5061015661026a366004611481565b610566565b34801561027b57600080fd5b50610135600081565b610156610292366004611378565b610874565b3480156102a357600080fd5b506101566102b2366004611455565b610998565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061034a57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e6361037a816109bd565b6002609754036103eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b600260978190555061042e826040518060600160405280603a81526020016117cd603a913973ffffffffffffffffffffffffffffffffffffffff861691906109ca565b508273ffffffffffffffffffffffffffffffffffffffff167f49f6851d1cd01a518db5bdea5cffbbe90276baa2595f74250b7472b96806302e34846040516104779291906115af565b60405180910390a25050600160975550565b6000828152606560205260409020600101546104a4816109bd565b6104ae8383610af4565b505050565b73ffffffffffffffffffffffffffffffffffffffff81163314610558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c66000000000000000000000000000000000060648201526084016103e2565b6105628282610be8565b5050565b600054610100900460ff16158080156105865750600054600160ff909116105b806105a05750303b1580156105a0575060005460ff166001145b61062c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084016103e2565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561068a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b73ffffffffffffffffffffffffffffffffffffffff8316610707576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f557067726164654578656375746f723a207a65726f2061646d696e000000000060448201526064016103e2565b61070f610ca3565b6107397fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177580610d3c565b6107837fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e637fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775610d3c565b6107ad7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177584610d87565b60005b825181101561080c576107fc7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e638483815181106107ef576107ef6115d0565b6020026020010151610d87565b6108058161162e565b90506107b0565b5080156104ae57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e6361089e816109bd565b60026097540361090a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103e2565b600260978190555061094f823460405180606001604052806031815260200161179c6031913973ffffffffffffffffffffffffffffffffffffffff8716929190610d91565b508273ffffffffffffffffffffffffffffffffffffffff167f4d7dbdcc249630ec373f584267f10abf44938de920c32562f5aee93959c2525834846040516104779291906115af565b6000828152606560205260409020600101546109b3816109bd565b6104ae8383610be8565b6109c78133610f27565b50565b606073ffffffffffffffffffffffffffffffffffffffff84163b610a70576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e7472616374000000000000000000000000000000000000000000000000000060648201526084016103e2565b6000808573ffffffffffffffffffffffffffffffffffffffff1685604051610a989190611666565b600060405180830381855af49150503d8060008114610ad3576040519150601f19603f3d011682016040523d82523d6000602084013e610ad8565b606091505b5091509150610ae8828286610ff9565b925050505b9392505050565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661056257600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055610b8a3390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561056257600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff16610d3a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016103e2565b565b600082815260656020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6105628282610af4565b606082471015610e23576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016103e2565b73ffffffffffffffffffffffffffffffffffffffff85163b610ea1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016103e2565b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051610eca9190611666565b60006040518083038185875af1925050503d8060008114610f07576040519150601f19603f3d011682016040523d82523d6000602084013e610f0c565b606091505b5091509150610f1c828286610ff9565b979650505050505050565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661056257610f7f8173ffffffffffffffffffffffffffffffffffffffff16601461104c565b610f8a83602061104c565b604051602001610f9b929190611682565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a00000000000000000000000000000000000000000000000000000000082526103e291600401611703565b60608315611008575081610aed565b8251156110185782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e29190611703565b6060600061105b836002611716565b611066906002611753565b67ffffffffffffffff81111561107e5761107e6112fa565b6040519080825280601f01601f1916602001820160405280156110a8576020820181803683370190505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106110df576110df6115d0565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611142576111426115d0565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600061117e846002611716565b611189906001611753565b90505b6001811115611226577f303132333435363738396162636465660000000000000000000000000000000085600f16601081106111ca576111ca6115d0565b1a60f81b8282815181106111e0576111e06115d0565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c9361121f81611766565b905061118c565b508315610aed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016103e2565b6000602082840312156112a157600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610aed57600080fd5b803573ffffffffffffffffffffffffffffffffffffffff811681146112f557600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611370576113706112fa565b604052919050565b6000806040838503121561138b57600080fd5b611394836112d1565b915060208084013567ffffffffffffffff808211156113b257600080fd5b818601915086601f8301126113c657600080fd5b8135818111156113d8576113d86112fa565b611408847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611329565b9150808252878482850101111561141e57600080fd5b80848401858401376000848284010152508093505050509250929050565b60006020828403121561144e57600080fd5b5035919050565b6000806040838503121561146857600080fd5b82359150611478602084016112d1565b90509250929050565b6000806040838503121561149457600080fd5b61149d836112d1565b915060208084013567ffffffffffffffff808211156114bb57600080fd5b818601915086601f8301126114cf57600080fd5b8135818111156114e1576114e16112fa565b8060051b91506114f2848301611329565b818152918301840191848101908984111561150c57600080fd5b938501935b8385101561153157611522856112d1565b82529385019390850190611511565b8096505050505050509250929050565b60005b8381101561155c578181015183820152602001611544565b50506000910152565b6000815180845261157d816020860160208601611541565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b8281526040602082015260006115c86040830184611565565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361165f5761165f6115ff565b5060010190565b60008251611678818460208701611541565b9190910192915050565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516116ba816017850160208801611541565b7f206973206d697373696e6720726f6c652000000000000000000000000000000060179184019182015283516116f7816028840160208801611541565b01602801949350505050565b602081526000610aed6020830184611565565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561174e5761174e6115ff565b500290565b8082018082111561034a5761034a6115ff565b600081611775576117756115ff565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fe557067726164654578656375746f723a20696e6e65722063616c6c206661696c656420776974686f757420726561736f6e557067726164654578656375746f723a20696e6e65722064656c65676174652063616c6c206661696c656420776974686f757420726561736f6ea26469706673582212202dd5382fdba08a29cf28575cf947a054897172a386b7932a48f84af2cd16c35c64736f6c63430008100033", - "accessList": [], - "hash": "0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056", - "v": 1, - "r": "0x22c9b1b992f7b74b3d34d505599fd0a98378903085aa497de3accd8cfc8d2f4f", - "s": "0x0c118482380f9b42d8bf48e5f4b448c4214acfefb089bb7a75b21ac7683a6c51", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "validatorUtils": { - "interface": { - "fragments": [ - { - "type": "function", - "name": "areUnresolvedNodesLinear", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "checkDecidableNextNode", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "findNodeConflict", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "node1", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "node2", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxDepth", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "ty", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "node1", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "node2", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "findStakerConflict", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker1", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker2", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxDepth", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "ty", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "node1", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "node2", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getStakers", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "startIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "max", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "hasMore", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "latestStaked", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "stateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmData", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "deadlineBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "noChildConfirmedBeforeBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "childStakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "firstChildBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestChildNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "createdAtBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "refundableStakers", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "requireConfirmable", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "requireRejectable", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "stakedNodes", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "timedOutChallenges", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "startIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "max", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "hasMore", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "areUnresolvedNodesLinear(address)": { - "type": "function", - "name": "areUnresolvedNodesLinear", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "checkDecidableNextNode(address)": { - "type": "function", - "name": "checkDecidableNextNode", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "findNodeConflict(address,uint64,uint64,uint256)": { - "type": "function", - "name": "findNodeConflict", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "node1", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "node2", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "maxDepth", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "ty", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "node1", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "node2", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "findStakerConflict(address,address,address,uint256)": { - "type": "function", - "name": "findStakerConflict", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker1", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker2", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxDepth", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "ty", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "node1", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "node2", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getStakers(address,uint64,uint64)": { - "type": "function", - "name": "getStakers", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "startIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "max", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "hasMore", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "latestStaked(address,address)": { - "type": "function", - "name": "latestStaked", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "stateHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "challengeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmData", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "prevNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "deadlineBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "noChildConfirmedBeforeBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "childStakerCount", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "firstChildBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "latestChildNumber", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "createdAtBlock", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "nodeHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "refundableStakers(address)": { - "type": "function", - "name": "refundableStakers", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "requireConfirmable(address)": { - "type": "function", - "name": "requireConfirmable", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "requireRejectable(address)": { - "type": "function", - "name": "requireRejectable", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "stakedNodes(address,address)": { - "type": "function", - "name": "stakedNodes", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "staker", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "timedOutChallenges(address,uint64,uint64)": { - "type": "function", - "name": "timedOutChallenges", - "constant": true, - "inputs": [ - { - "name": "rollup", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "startIndex", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "max", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint64[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "hasMore", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x60281F9B82E2E7Bf0231d674A129B0F915223E88", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 205, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x1efebf" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b50612376806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80637464ae06116100715780637464ae06146101415780637988ad371461016157806382f50e2d14610181578063aea2f06e14610194578063c308eaaf146101b7578063f36e18cc146101d757600080fd5b806301d9717d146100ae5780630a46c1b5146100d85780631fc43bb6146100f85780633400b5fa1461010d578063712293401461012e575b600080fd5b6100c16100bc366004611cb4565b6101f8565b6040516100cf929190611ced565b60405180910390f35b6100eb6100e6366004611dfa565b6103bf565b6040516100cf9190611e34565b61010b610106366004611dfa565b610484565b005b61012061011b366004611e63565b6108dd565b6040516100cf929190611ef2565b61010b61013c366004611dfa565b610bb1565b61015461014f366004611dfa565b610ecc565b6040516100cf9190611f4f565b61017461016f366004611f62565b6111d8565b6040516100cf9190611fb3565b61017461018f366004611ff7565b6112f1565b6101a76101a2366004611dfa565b6116b3565b60405190151581526020016100cf565b6101ca6101c5366004611cb4565b61186c565b6040516100cf9190612038565b6101ea6101e5366004611e63565b611a4e565b6040516100cf92919061204b565b6040805161018081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081018290526101008101829052610120810182905261014081018290526101608101829052604051631f4b2bb760e11b81526000906001600160a01b03861690633e96576e9061028790879060040161205e565b602060405180830381865afa1580156102a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c8919061207d565b90506001600160401b03811661033d57846001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610316573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033a919061207d565b90505b6040516324b204d360e21b81526001600160401b03821660048201526000906001600160a01b038716906392c8134c9060240161018060405180830381865afa15801561038e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103b291906120e7565b9196919550909350505050565b604051630fe21ddb60e11b81526000903090631fc43bb6906103e590859060040161205e565b60006040518083038186803b1580156103fd57600080fd5b505afa92505050801561040e575060015b6104175761041f565b506001919050565b6040516301c48a4d60e61b8152309063712293409061044290859060040161205e565b60006040518083038186803b15801561045a57600080fd5b505afa92505050801561046b575060015b61047757506000919050565b506002919050565b919050565b806001600160a01b03166367425daf6040518163ffffffff1660e01b815260040160006040518083038186803b1580156104bd57600080fd5b505afa1580156104d1573d6000803e3d6000fd5b505050506000816001600160a01b031663dff697876040518163ffffffff1660e01b8152600401602060405180830381865afa158015610515573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610539919061207d565b6001600160401b03169050600081116105865760405162461bcd60e51b815260206004820152600a6024820152694e4f5f5354414b45525360b01b60448201526064015b60405180910390fd5b6000826001600160a01b031663d735e21d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ea919061207d565b6040516324b204d360e21b81526001600160401b03821660048201529091506000906001600160a01b038516906392c8134c9060240161018060405180830381865afa15801561063e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066291906120e7565b905061066d81611c1f565b836001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cf919061207d565b6001600160401b031681606001516001600160401b0316146106f3576106f36121b9565b60608101516040516324b204d360e21b81526001600160401b0390911660048201526000906001600160a01b038616906392c8134c9060240161018060405180830381865afa15801561074a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076e91906120e7565b905061077981611c4f565b6040516317185fa560e21b81526001600160401b03841660048201526000906001600160a01b03871690635c617e9490602401602060405180830381865afa1580156107c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ed91906121cf565b6060840151604051633684685160e11b81526001600160401b0390911660048201526001600160a01b03881690636d08d0a290602401602060405180830381865afa158015610840573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086491906121cf565b61086e91906121fe565b9050808360c001516001600160401b03166108899190612215565b8260e001516001600160401b0316146108d55760405162461bcd60e51b815260206004820152600e60248201526d1393d517d0531317d4d51052d15160921b604482015260640161057d565b505050505050565b606060008060006108ef878787611a4e565b91509150600082516001600160401b0381111561090e5761090e61209a565b604051908082528060200260200182016040528015610937578160200160208202803683370190505b509050600080896001600160a01b031663023a96fe6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561097b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099f919061222d565b905060005b8551811015610ba15760008682815181106109c1576109c161224a565b6020026020010151905060008c6001600160a01b03166369fd251c836040518263ffffffff1660e01b81526004016109f9919061205e565b602060405180830381865afa158015610a16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3a919061207d565b90506001600160401b03811615801590610ac05750604051639ede42b960e01b81526001600160401b03821660048201526001600160a01b03851690639ede42b990602401602060405180830381865afa158015610a9c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac09190612260565b8015610b4857506040516323a9ef2360e01b81526001600160401b03821660048201526001600160a01b0380841691908616906323a9ef2390602401602060405180830381865afa158015610b19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3d919061222d565b6001600160a01b0316145b15610b8c57808686610b5981612282565b975081518110610b6b57610b6b61224a565b60200260200101906001600160401b031690816001600160401b0316815250505b50508080610b9990612282565b9150506109a4565b5050815297909650945050505050565b806001600160a01b03166367425daf6040518163ffffffff1660e01b815260040160006040518083038186803b158015610bea57600080fd5b505afa158015610bfe573d6000803e3d6000fd5b505050506000816001600160a01b031663d735e21d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c66919061207d565b6040516324b204d360e21b81526001600160401b03821660048201529091506000906001600160a01b038416906392c8134c9060240161018060405180830381865afa158015610cba573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cde91906120e7565b9050826001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d42919061207d565b6001600160401b031681606001516001600160401b03161415610ec75780608001516001600160401b0316431015610d8c5760405162461bcd60e51b815260040161057d9061229d565b60608101516040516324b204d360e21b81526001600160401b039091166004820152610e0d906001600160a01b038516906392c8134c9060240161018060405180830381865afa158015610de4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e0891906120e7565b611c4f565b6040516317185fa560e21b81526001600160401b03831660048201526001600160a01b03841690635c617e9490602401602060405180830381865afa158015610e5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e7e91906121cf565b8160c001516001600160401b031614610ec75760405162461bcd60e51b815260206004820152600b60248201526a4841535f5354414b45525360a81b604482015260640161057d565b505050565b60606000826001600160a01b031663dff697876040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f32919061207d565b6001600160401b031690506000816001600160401b03811115610f5757610f5761209a565b604051908082528060200260200182016040528015610f80578160200160208202803683370190505b5090506000846001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fe7919061207d565b6001600160401b031690506000805b84816001600160401b031610156111cd57604051631b774dd160e21b81526001600160401b03821660048201526000906001600160a01b03891690636ddd374490602401602060405180830381865afa158015611057573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107b919061222d565b90506000886001600160a01b0316633e96576e836040518263ffffffff1660e01b81526004016110ab919061205e565b602060405180830381865afa1580156110c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ec919061207d565b6001600160401b0316905084811115801561117a5750604051631a7f494760e21b81526001600160a01b038a16906369fd251c9061112e90859060040161205e565b602060405180830381865afa15801561114b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116f919061207d565b6001600160401b0316155b156111b857818685815181106111925761119261224a565b6001600160a01b0390921660209283029190910190910152836111b481612282565b9450505b505080806111c5906122c6565b915050610ff6565b508252509392505050565b6040805160608101825260008082526020820181905291810191909152604051631f4b2bb760e11b81526000906001600160a01b03871690633e96576e9061122490889060040161205e565b602060405180830381865afa158015611241573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611265919061207d565b90506000866001600160a01b0316633e96576e866040518263ffffffff1660e01b8152600401611295919061205e565b602060405180830381865afa1580156112b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112d6919061207d565b90506112e4878383876112f1565b925050505b949350505050565b60408051606081018252600080825260208201819052918101919091526000856001600160a01b031663d735e21d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561134e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611372919061207d565b6040516324b204d360e21b81526001600160401b03871660048201529091506000906001600160a01b038816906392c8134c9060240161018060405180830381865afa1580156113c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ea91906120e7565b606001516040516324b204d360e21b81526001600160401b03871660048201529091506000906001600160a01b038916906392c8134c9060240161018060405180830381865afa158015611442573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061146691906120e7565b60600151905060005b8581101561168757866001600160401b0316886001600160401b031614156114cc5760408051606081019091528060005b8152602001896001600160401b03168152602001886001600160401b03168152509450505050506112e9565b816001600160401b0316836001600160401b031614156114f95760408051606081019091528060016114a0565b836001600160401b0316836001600160401b031610801561152b5750836001600160401b0316826001600160401b0316105b1561155b576040805160608101909152806002815260006020820181905260409091015294506112e99350505050565b816001600160401b0316836001600160401b031610156115f7576040516324b204d360e21b81526001600160401b038316600482015291965086916001600160a01b038a16906392c8134c9060240161018060405180830381865afa1580156115c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ec91906120e7565b606001519150611675565b6040516324b204d360e21b81526001600160401b038416600482015292975087926001600160a01b038a16906392c8134c9060240161018060405180830381865afa15801561164a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166e91906120e7565b6060015192505b8061167f81612282565b91505061146f565b506040805160608101909152806003815260006020820181905260409091015298975050505050505050565b600080826001600160a01b0316637ba9534a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116f4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611718919061207d565b6001600160401b031690506000836001600160a01b031663d735e21d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611787919061207d565b90505b81816001600160401b031611611862576000816001600160401b031611801561184157506117b96001826122ed565b6040516324b204d360e21b81526001600160401b03838116600483015291909116906001600160a01b038616906392c8134c9060240161018060405180830381865afa15801561180d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061183191906120e7565b606001516001600160401b031614155b15611850575060009392505050565b8061185a816122c6565b91505061178a565b5060019392505050565b60408051620186a08082526230d420820190925260609160009190602082016230d40080368337019050509050600080856001600160a01b03166365f7f80d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118fe919061207d565b90505b856001600160a01b0316637ba9534a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561193f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611963919061207d565b6001600160401b0316816001600160401b031611611a445760405163154cb5e960e31b81526001600160401b03821660048201526001600160a01b03868116602483015287169063aa65af4890604401602060405180830381865afa1580156119d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f49190612260565b15611a325780838381518110611a0c57611a0c61224a565b6001600160401b039092166020928302919091019091015281611a2e81612282565b9250505b80611a3c816122c6565b915050611901565b5081529392505050565b6060600080856001600160a01b031663dff697876040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ab5919061207d565b6001600160401b0316905080611acb8587612315565b6001600160401b031611611af357611ae38486612315565b6001600160401b03169050600191505b6000816001600160401b03811115611b0d57611b0d61209a565b604051908082528060200260200182016040528015611b36578160200160208202803683370190505b50905060005b82816001600160401b03161015611c13576001600160a01b038816636ddd3744611b66838a612315565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401602060405180830381865afa158015611baa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bce919061222d565b82826001600160401b031681518110611be957611be961224a565b6001600160a01b039092166020928302919091019091015280611c0b816122c6565b915050611b3c565b50925050935093915050565b80608001516001600160401b0316431015611c4c5760405162461bcd60e51b815260040161057d9061229d565b50565b8060a001516001600160401b0316431015611c4c5760405162461bcd60e51b815260206004820152601060248201526f10d212531117d513d3d7d49150d1539560821b604482015260640161057d565b6001600160a01b0381168114611c4c57600080fd5b60008060408385031215611cc757600080fd5b8235611cd281611c9f565b91506020830135611ce281611c9f565b809150509250929050565b60006101a0820190506001600160401b03841682528251602083015260208301516040830152604083015160608301526060830151611d3760808401826001600160401b03169052565b5060808301516001600160401b03811660a08401525060a08301516001600160401b03811660c08401525060c08301516001600160401b03811660e08401525060e0830151610100611d93818501836001600160401b03169052565b8401519050610120611daf848201836001600160401b03169052565b8401519050610140611dcb848201836001600160401b03169052565b8401519050610160611de7848201836001600160401b03169052565b8085015161018085015250509392505050565b600060208284031215611e0c57600080fd5b8135611e1781611c9f565b9392505050565b634e487b7160e01b600052602160045260246000fd5b6020810160038310611e4857611e48611e1e565b91905290565b6001600160401b0381168114611c4c57600080fd5b600080600060608486031215611e7857600080fd5b8335611e8381611c9f565b92506020840135611e9381611e4e565b91506040840135611ea381611e4e565b809150509250925092565b600081518084526020808501945080840160005b83811015611ee75781516001600160401b031687529582019590820190600101611ec2565b509495945050505050565b604081526000611f056040830185611eae565b905082151560208301529392505050565b600081518084526020808501945080840160005b83811015611ee75781516001600160a01b031687529582019590820190600101611f2a565b602081526000611e176020830184611f16565b60008060008060808587031215611f7857600080fd5b8435611f8381611c9f565b93506020850135611f9381611c9f565b92506040850135611fa381611c9f565b9396929550929360600135925050565b8151606082019060048110611fca57611fca611e1e565b8083525060208301516001600160401b038082166020850152806040860151166040850152505092915050565b6000806000806080858703121561200d57600080fd5b843561201881611c9f565b9350602085013561202881611e4e565b92506040850135611fa381611e4e565b602081526000611e176020830184611eae565b604081526000611f056040830185611f16565b6001600160a01b0391909116815260200190565b805161047f81611e4e565b60006020828403121561208f57600080fd5b8151611e1781611e4e565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156120e157634e487b7160e01b600052604160045260246000fd5b60405290565b600061018082840312156120fa57600080fd5b6121026120b0565b82518152602083015160208201526040830151604082015261212660608401612072565b606082015261213760808401612072565b608082015261214860a08401612072565b60a082015261215960c08401612072565b60c082015261216a60e08401612072565b60e082015261010061217d818501612072565b9082015261012061218f848201612072565b908201526101406121a1848201612072565b90820152610160928301519281019290925250919050565b634e487b7160e01b600052600160045260246000fd5b6000602082840312156121e157600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b600082821015612210576122106121e8565b500390565b60008219821115612228576122286121e8565b500190565b60006020828403121561223f57600080fd5b8151611e1781611c9f565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561227257600080fd5b81518015158114611e1757600080fd5b6000600019821415612296576122966121e8565b5060010190565b6020808252600f908201526e4245464f52455f444541444c494e4560881b604082015260600190565b60006001600160401b03808316818114156122e3576122e36121e8565b6001019392505050565b60006001600160401b038381169083168181101561230d5761230d6121e8565b039392505050565b60006001600160401b03808316818516808303821115612337576123376121e8565b0194935050505056fea26469706673582212206ffb0dbca7137d889933db3cfab5f5514b95c7023acb0f0c5f467b22f3d930f264736f6c634300080c0033", - "accessList": [], - "hash": "0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e", - "v": 0, - "r": "0xb09b2bba7d713e79b780b8c329dc61947a1c57706015f9ce020c03825ca1d37d", - "s": "0x042743f19d403de895191697ee4cf168c3f45c284fe8c8811c46233794101c0e", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "validatorWalletCreator": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "name": "OwnershipTransferred", - "anonymous": false, - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "TemplateUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - }, - { - "name": "WalletCreated", - "anonymous": false, - "inputs": [ - { - "name": "walletAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "executorAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "ownerAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "adminProxy", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "createWallet", - "constant": false, - "inputs": [ - { - "name": "initialExecutorAllowedDests", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "renounceOwnership", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setTemplate", - "constant": false, - "inputs": [ - { - "name": "_template", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "template", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "transferOwnership", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "createWallet(address[])": { - "type": "function", - "name": "createWallet", - "constant": false, - "inputs": [ - { - "name": "initialExecutorAllowedDests", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "owner()": { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "renounceOwnership()": { - "type": "function", - "name": "renounceOwnership", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setTemplate(address)": { - "type": "function", - "name": "setTemplate", - "constant": false, - "inputs": [ - { - "name": "_template", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "template()": { - "type": "function", - "name": "template", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "transferOwnership(address)": { - "type": "function", - "name": "transferOwnership", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": { - "OwnershipTransferred(address,address)": { - "name": "OwnershipTransferred", - "anonymous": false, - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "TemplateUpdated()": { - "name": "TemplateUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - }, - "WalletCreated(address,address,address,address)": { - "name": "WalletCreated", - "anonymous": false, - "inputs": [ - { - "name": "walletAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "executorAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "ownerAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "adminProxy", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x79B9f9674F92F8150F9d45939b82F0F27303B4aE", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 206, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x33d3c3" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b5061001a33610068565b604051610026906100b8565b604051809103906000f080158015610042573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b03929092169190911790556100c5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611f5880611c5483390190565b611b80806100d46000396000f3fe60806040523480156200001157600080fd5b50600436106200006a5760003560e01c80631cf89b4b146200006f5780636f2ddd93146200009e578063715018a614620000b257806389c716d114620000be5780638da5cb5b14620000d5578063f2fde38b14620000e7575b600080fd5b62000086620000803660046200047e565b620000fe565b604051620000959190620004f8565b60405180910390f35b60015462000086906001600160a01b031681565b620000bc620002ca565b005b620000bc620000cf36600462000529565b620002e2565b6000546001600160a01b031662000086565b620000bc620000f836600462000529565b62000333565b604051600090339081908390620001159062000462565b604051809103906000f08015801562000132573d6000803e3d6000fd5b506001546040519192506000916001600160a01b03909116908390620001589062000470565b6001600160a01b03928316815291166020820152606060408201819052600090820152608001604051809103906000f0801580156200019b573d6000803e3d6000fd5b5060405163f2fde38b60e01b81529091506001600160a01b0383169063f2fde38b90620001cd908690600401620004f8565b600060405180830381600087803b158015620001e857600080fd5b505af1158015620001fd573d6000803e3d6000fd5b5050604051633bd1279b60e11b81526001600160a01b03841692506377a24f3691506200023590879087908c908c906004016200054e565b600060405180830381600087803b1580156200025057600080fd5b505af115801562000265573d6000803e3d6000fd5b50505050826001600160a01b0316846001600160a01b0316826001600160a01b03167f7a6fe39e62e2aeedf6430893f8ce67c6aa08c92d3c7d66c83706057ee178ee4885604051620002b89190620004f8565b60405180910390a49695505050505050565b620002d4620003b6565b620002e0600062000412565b565b620002ec620003b6565b600180546001600160a01b0319166001600160a01b0383161790556040517f6eb26f176dd9180849dd4874d3530de0e5c1f62a6e6798d34e3abfc11f1db2cc90600090a150565b6200033d620003b6565b6001600160a01b038116620003a85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b620003b38162000412565b50565b6000546001600160a01b03163314620002e05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200039f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61071680620005b883390190565b610e7d8062000cce83390190565b600080602083850312156200049257600080fd5b823567ffffffffffffffff80821115620004ab57600080fd5b818501915085601f830112620004c057600080fd5b813581811115620004d057600080fd5b8660208260051b8501011115620004e657600080fd5b60209290920196919550909350505050565b6001600160a01b0391909116815260200190565b80356001600160a01b03811681146200052457600080fd5b919050565b6000602082840312156200053c57600080fd5b62000547826200050c565b9392505050565b6001600160a01b0385811682528481166020808401919091526060604084018190528301849052600091859160808501845b87811015620005a9578362000595866200050c565b168252938201939082019060010162000580565b50999850505050505050505056fe608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6106988061007e6000396000f3fe60806040526004361061006b5760003560e01c8063204e1c7a14610070578063715018a6146100a65780637eff275e146100bd5780638da5cb5b146100dd5780639623609d146100fb57806399a88ec41461010e578063f2fde38b1461012e578063f3b7dead1461014e575b600080fd5b34801561007c57600080fd5b5061009061008b366004610483565b61016e565b60405161009d91906104a7565b60405180910390f35b3480156100b257600080fd5b506100bb6101ff565b005b3480156100c957600080fd5b506100bb6100d83660046104bb565b610213565b3480156100e957600080fd5b506000546001600160a01b0316610090565b6100bb61010936600461050a565b61027d565b34801561011a57600080fd5b506100bb6101293660046104bb565b6102ec565b34801561013a57600080fd5b506100bb610149366004610483565b610320565b34801561015a57600080fd5b50610090610169366004610483565b61039e565b6000806000836001600160a01b031660405161019490635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101cf576040519150601f19603f3d011682016040523d82523d6000602084013e6101d4565b606091505b5091509150816101e357600080fd5b808060200190518101906101f791906105e0565b949350505050565b6102076103c4565b610211600061041e565b565b61021b6103c4565b6040516308f2839760e41b81526001600160a01b03831690638f283970906102479084906004016104a7565b600060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050505050565b6102856103c4565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102b590869086906004016105fd565b6000604051808303818588803b1580156102ce57600080fd5b505af11580156102e2573d6000803e3d6000fd5b5050505050505050565b6102f46103c4565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe6906102479084906004016104a7565b6103286103c4565b6001600160a01b0381166103925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61039b8161041e565b50565b6000806000836001600160a01b0316604051610194906303e1469160e61b815260040190565b6000546001600160a01b031633146102115760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610389565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811461039b57600080fd5b60006020828403121561049557600080fd5b81356104a08161046e565b9392505050565b6001600160a01b0391909116815260200190565b600080604083850312156104ce57600080fd5b82356104d98161046e565b915060208301356104e98161046e565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561051f57600080fd5b833561052a8161046e565b9250602084013561053a8161046e565b9150604084013567ffffffffffffffff8082111561055757600080fd5b818601915086601f83011261056b57600080fd5b81358181111561057d5761057d6104f4565b604051601f8201601f19908116603f011681019083821181831017156105a5576105a56104f4565b816040528281528960208487010111156105be57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f257600080fd5b81516104a08161046e565b60018060a01b038316815260006020604081840152835180604085015260005b818110156106395785810183015185820160600152820161061d565b8181111561064b576000606083870101525b50601f01601f19169290920160600194935050505056fea2646970667358221220915d9842903694c497beb6565948760f3370217c4fdc248151eab4a5b36eede364736f6c634300080c0033608060405260405162000e7d38038062000e7d833981016040819052620000269162000490565b828162000036828260006200004d565b50620000449050826200008a565b505050620005c3565b6200005883620000e5565b600082511180620000665750805b1562000085576200008383836200012760201b620002601760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000b562000156565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e2816200018f565b50565b620000f08162000244565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200014f838360405180606001604052806027815260200162000e5660279139620002f8565b9392505050565b60006200018060008051602062000e3683398151915260001b620003de60201b620002081760201c565b546001600160a01b0316919050565b6001600160a01b038116620001fa5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022360008051602062000e3683398151915260001b620003de60201b620002081760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6200025a81620003e160201b6200028c1760201c565b620002be5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f1565b80620002237f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b620003de60201b620002081760201c565b60606001600160a01b0384163b620003625760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401620001f1565b600080856001600160a01b0316856040516200037f919062000570565b600060405180830381855af49150503d8060008114620003bc576040519150601f19603f3d011682016040523d82523d6000602084013e620003c1565b606091505b509092509050620003d4828286620003f0565b9695505050505050565b90565b6001600160a01b03163b151590565b60608315620004015750816200014f565b825115620004125782518084602001fd5b8160405162461bcd60e51b8152600401620001f191906200058e565b80516001600160a01b03811681146200044657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200047e57818101518382015260200162000464565b83811115620000835750506000910152565b600080600060608486031215620004a657600080fd5b620004b1846200042e565b9250620004c1602085016200042e565b60408501519092506001600160401b0380821115620004df57600080fd5b818601915086601f830112620004f457600080fd5b8151818111156200050957620005096200044b565b604051601f8201601f19908116603f011681019083821181831017156200053457620005346200044b565b816040528281528960208487010111156200054e57600080fd5b6200056183602083016020880162000461565b80955050505050509250925092565b600082516200058481846020870162000461565b9190910192915050565b6020815260008251806020840152620005af81604085016020870162000461565b601f01601f19169190910160400192915050565b61086380620005d36000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106ed565b610118565b61005b610093366004610708565b61015f565b3480156100a457600080fd5b506100ad6101d0565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106ed565b61020b565b3480156100f557600080fd5b506100ad610235565b61010661029b565b61011661011161033a565b610344565b565b610120610368565b6001600160a01b0316336001600160a01b03161415610157576101548160405180602001604052806000815250600061039b565b50565b6101546100fe565b610167610368565b6001600160a01b0316336001600160a01b031614156101c8576101c38383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061039b915050565b505050565b6101c36100fe565b60006101da610368565b6001600160a01b0316336001600160a01b03161415610200576101fb61033a565b905090565b6102086100fe565b90565b610213610368565b6001600160a01b0316336001600160a01b0316141561015757610154816103c6565b600061023f610368565b6001600160a01b0316336001600160a01b03161415610200576101fb610368565b606061028583836040518060600160405280602781526020016108076027913961041a565b9392505050565b6001600160a01b03163b151590565b6102a3610368565b6001600160a01b0316336001600160a01b031614156101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101fb6104f5565b3660008037600080366000845af43d6000803e808015610363573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6103a48361051d565b6000825111806103b15750805b156101c3576103c08383610260565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103ef610368565b604080516001600160a01b03928316815291841660208301520160405180910390a16101548161055d565b60606104258461028c565b6104805760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610331565b600080856001600160a01b03168560405161049b91906107b7565b600060405180830381855af49150503d80600081146104d6576040519150601f19603f3d011682016040523d82523d6000602084013e6104db565b606091505b50915091506104eb828286610606565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61038c565b6105268161063f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105c25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610331565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60608315610615575081610285565b8251156106255782518084602001fd5b8160405162461bcd60e51b815260040161033191906107d3565b6106488161028c565b6106aa5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610331565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6105e5565b80356001600160a01b03811681146106e857600080fd5b919050565b6000602082840312156106ff57600080fd5b610285826106d1565b60008060006040848603121561071d57600080fd5b610726846106d1565b9250602084013567ffffffffffffffff8082111561074357600080fd5b818601915086601f83011261075757600080fd5b81358181111561076657600080fd5b87602082850101111561077857600080fd5b6020830194508093505050509250925092565b60005b838110156107a657818101518382015260200161078e565b838111156103c05750506000910152565b600082516107c981846020870161078b565b9190910192915050565b60208152600082518060208401526107f281604085016020870161078b565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220b443311d3bfcd8adf6febdfd2ccac26e84b8453cf5949581b52011aeeb08010564736f6c634300080c0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220a2b57982033aa3716d7f905f9106bfb84751874fc31789bbbca5e9621fcea55a64736f6c634300080c003360c0604052306080526202000060a05234801561001b57600080fd5b5060805160a051611f0961004f60003960008181610546015281816110b90152611459015260006109df0152611f096000f3fe6080604052600436106100d75760003560e01c80639ac2a0111161007a5780639ac2a011146101e75780639be7bbd214610217578063a158657c14610237578063af1b9a0714610257578063c179f1d914610277578063ce1d571f1461028a578063d327821a1461029d578063f2fde38b146102bd57600080fd5b8063097da1f8146100e35780630a2435f8146100f8578063193c8edd146101185780633a7c721a1461015d578063715018a61461017d57806372f458661461019257806377a24f36146101a55780638da5cb5b146101c557600080fd5b366100de57005b600080fd5b6100f66100f136600461170c565b6102dd565b005b34801561010457600080fd5b506100f66101133660046117bf565b610620565b34801561012457600080fd5b5061014861013336600461182a565b60666020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b34801561016957600080fd5b506100f66101783660046117bf565b61079e565b34801561018957600080fd5b506100f66108e8565b6100f66101a036600461184e565b6108fc565b3480156101b157600080fd5b506100f66101c03660046118e7565b610914565b3480156101d157600080fd5b506101da610c09565b604051610154919061193f565b3480156101f357600080fd5b5061014861020236600461182a565b60656020526000908152604090205460ff1681565b34801561022357600080fd5b506100f661023236600461182a565b610c18565b34801561024357600080fd5b506100f6610252366004611953565b610c94565b34801561026357600080fd5b506100f6610272366004611983565b610d17565b6100f66102853660046119d7565b610d24565b6100f6610298366004611a83565b611195565b3480156102a957600080fd5b506100f66102b83660046118e7565b6111a9565b3480156102c957600080fd5b506100f66102d836600461182a565b61152e565b3360009081526065602052604090205460ff1615801561030d575033610301610c09565b6001600160a01b031614155b1561033757335b60405163f26aea8b60e01b815260040161032e919061193f565b60405180910390fd5b846000805a9050851561036b576001600160a01b0385163b61036b5760405162461bcd60e51b815260040161032e90611adf565b61037485610c18565b6000856001600160a01b0316858989604051610391929190611b08565b60006040518083038185875af1925050503d80600081146103ce576040519150601f19603f3d011682016040523d82523d6000602084013e6103d3565b606091505b50509050806103e9576040513d806000833e8082fd5b506001600160a01b0383161561061657366000602061040983601f611b2e565b6104139190611b46565b9050610200610423600283611c4e565b61042d9190611b46565b610438826006611c5d565b6104429190611b2e565b61044c9084611b2e565b925033321461045e5760009150610595565b6001600160a01b0384161561059557836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156104cc57506040513d6000823e601f3d908101601f191682016040526104c99190810190611c92565b60015b6104d557610595565b805115610593576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561051c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105409190611d4f565b905048817f000000000000000000000000000000000000000000000000000000000000000084516105719190611c5d565b61057b9190611c5d565b6105859190611b46565b61058f9086611b2e565b9450505b505b846001600160a01b031663e3db8a49335a6105b09087611d68565b856040518463ffffffff1660e01b81526004016105cf93929190611d7f565b6020604051808303816000875af11580156105ee573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106129190611dae565b5050505b5050505050505050565b6106286115a4565b8281146106525760405163088253c360e11b8152600481018490526024810182905260440161032e565b60005b6001600160401b038116841115610797578282826001600160401b031681811061068157610681611dcb565b90506020020160208101906106969190611de1565b606560008787856001600160401b03168181106106b5576106b5611dcb565b90506020020160208101906106ca919061182a565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905584846001600160401b03831681811061070d5761070d611dcb565b9050602002016020810190610722919061182a565b6001600160a01b03167f9fdbc2d48b8a0db2f62663bf9312ad02f5b1f6414ad600b55a247d09aeec3ea28484846001600160401b031681811061076757610767611dcb565b905060200201602081019061077c9190611de1565b604051901515815260200160405180910390a2600101610655565b5050505050565b6107a66115a4565b8281146107d05760405163088253c360e11b8152600481018490526024810182905260440161032e565b60005b83811015610797578282828181106107ed576107ed611dcb565b90506020020160208101906108029190611de1565b6066600087878581811061081857610818611dcb565b905060200201602081019061082d919061182a565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905584848281811061086757610867611dcb565b905060200201602081019061087c919061182a565b6001600160a01b03167fab063fe575c4df359aaf3733bcf10706bacfdd24557e670a2c1cba126ae4d8a48484848181106108b8576108b8611dcb565b90506020020160208101906108cd9190611de1565b604051901515815260200160405180910390a26001016107d3565b6108f06115a4565b6108fa6000611603565b565b61090c6000878787878787610d24565b505050505050565b600054610100900460ff16158080156109345750600054600160ff909116105b8061094e5750303b15801561094e575060005460ff166001145b6109b15760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161032e565b6000805460ff1916600117905580156109d4576000805461ff0019166101001790555b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610a625760405162461bcd60e51b815260206004820152602c60248201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060448201526b19195b1959d85d1958d85b1b60a21b606482015260840161032e565b610a6a611655565b610a738461152e565b6001600160a01b038516600081815260656020908152604091829020805460ff1916600190811790915591519182527f9fdbc2d48b8a0db2f62663bf9312ad02f5b1f6414ad600b55a247d09aeec3ea2910160405180910390a260005b6001600160401b038116831115610bbc576001606660008686856001600160401b0316818110610b0257610b02611dcb565b9050602002016020810190610b17919061182a565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905583836001600160401b038316818110610b5a57610b5a611dcb565b9050602002016020810190610b6f919061182a565b6001600160a01b03167fab063fe575c4df359aaf3733bcf10706bacfdd24557e670a2c1cba126ae4d8a46001604051610bac911515815260200190565b60405180910390a2600101610ad0565b508015610797576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b6033546001600160a01b031690565b6001600160a01b03811660009081526066602052604090205460ff16158015610c51575033610c45610c09565b6001600160a01b031614155b15610c9157610c5e610c09565b6040516320fe37c560e11b81526001600160a01b039182166004820152336024820152908216604482015260640161032e565b50565b610c9c6115a4565b6000816001600160a01b03168360405160006040518083038185875af1925050503d8060008114610ce9576040519150601f19603f3d011682016040523d82523d6000602084013e610cee565b606091505b5050905080610d125781604051630fdb769360e31b815260040161032e919061193f565b505050565b610d1260008484846111a9565b3360009081526065602052604090205460ff16158015610d54575033610d48610c09565b6001600160a01b031614155b15610d5f5733610314565b866000805a905087868114610d915760405163088253c360e11b8152600481018290526024810188905260440161032e565b808514610dbb5760405163088253c360e11b8152600481018290526024810186905260440161032e565b60005b81811015610f5b5760008b8b83818110610dda57610dda611dcb565b9050602002810190610dec9190611dfe565b90501115610e4957610e2d898983818110610e0957610e09611dcb565b9050602002016020810190610e1e919061182a565b6001600160a01b03163b151590565b610e495760405162461bcd60e51b815260040161032e90611adf565b610e73898983818110610e5e57610e5e611dcb565b9050602002016020810190610232919061182a565b6000898983818110610e8757610e87611dcb565b9050602002016020810190610e9c919061182a565b6001600160a01b0316888884818110610eb757610eb7611dcb565b905060200201358d8d85818110610ed057610ed0611dcb565b9050602002810190610ee29190611dfe565b604051610ef0929190611b08565b60006040518083038185875af1925050503d8060008114610f2d576040519150601f19603f3d011682016040523d82523d6000602084013e610f32565b606091505b5050905080610f48576040513d806000833e8082fd5b5080610f5381611e44565b915050610dbe565b50506001600160a01b03831615611189573660006020610f7c83601f611b2e565b610f869190611b46565b9050610200610f96600283611c4e565b610fa09190611b46565b610fab826006611c5d565b610fb59190611b2e565b610fbf9084611b2e565b9250333214610fd15760009150611108565b6001600160a01b0384161561110857836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561103f57506040513d6000823e601f3d908101601f1916820160405261103c9190810190611c92565b60015b61104857611108565b805115611106576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561108f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b39190611d4f565b905048817f000000000000000000000000000000000000000000000000000000000000000084516110e49190611c5d565b6110ee9190611c5d565b6110f89190611b46565b6111029086611b2e565b9450505b505b846001600160a01b031663e3db8a49335a6111239087611d68565b856040518463ffffffff1660e01b815260040161114293929190611d7f565b6020604051808303816000875af1158015611161573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111859190611dae565b5050505b50505050505050505050565b6111a36000858585856102dd565b50505050565b3360009081526065602052604090205460ff161580156111d95750336111cd610c09565b6001600160a01b031614155b156111e45733610314565b836000805a90508360005b818110156112fb57876001600160a01b0316631b45c86a88888481811061121857611218611dcb565b905060200201602081019061122d9190611e5f565b6040516001600160e01b031960e084901b1681526001600160401b039091166004820152602401600060405180830381600087803b15801561126e57600080fd5b505af192505050801561127f575060015b6112e9573d8080156112ad576040519150601f19603f3d011682016040523d82523d6000602084013e6112b2565b606091505b5080516112e75760405162461bcd60e51b815260206004820152600360248201526247415360e81b604482015260640161032e565b505b806112f381611e44565b9150506111ef565b50506001600160a01b0383161561152557366000602061131c83601f611b2e565b6113269190611b46565b9050610200611336600283611c4e565b6113409190611b46565b61134b826006611c5d565b6113559190611b2e565b61135f9084611b2e565b925033321461137157600091506114a8565b6001600160a01b038416156114a857836001600160a01b031663e83a2d826040518163ffffffff1660e01b8152600401600060405180830381865afa9250505080156113df57506040513d6000823e601f3d908101601f191682016040526113dc9190810190611c92565b60015b6113e8576114a8565b8051156114a6576000856001600160a01b0316631f6d6ef76040518163ffffffff1660e01b8152600401602060405180830381865afa15801561142f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114539190611d4f565b905048817f000000000000000000000000000000000000000000000000000000000000000084516114849190611c5d565b61148e9190611c5d565b6114989190611b46565b6114a29086611b2e565b9450505b505b846001600160a01b031663e3db8a49335a6114c39087611d68565b856040518463ffffffff1660e01b81526004016114e293929190611d7f565b6020604051808303816000875af1158015611501573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111899190611dae565b50505050505050565b6115366115a4565b6001600160a01b03811661159b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161032e565b610c9181611603565b336115ad610c09565b6001600160a01b0316146108fa5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161032e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1661167c5760405162461bcd60e51b815260040161032e90611e88565b6108fa600054610100900460ff166116a65760405162461bcd60e51b815260040161032e90611e88565b6108fa33611603565b6001600160a01b0381168114610c9157600080fd5b60008083601f8401126116d657600080fd5b5081356001600160401b038111156116ed57600080fd5b60208301915083602082850101111561170557600080fd5b9250929050565b60008060008060006080868803121561172457600080fd5b853561172f816116af565b945060208601356001600160401b0381111561174a57600080fd5b611756888289016116c4565b909550935050604086013561176a816116af565b949793965091946060013592915050565b60008083601f84011261178d57600080fd5b5081356001600160401b038111156117a457600080fd5b6020830191508360208260051b850101111561170557600080fd5b600080600080604085870312156117d557600080fd5b84356001600160401b03808211156117ec57600080fd5b6117f88883890161177b565b9096509450602087013591508082111561181157600080fd5b5061181e8782880161177b565b95989497509550505050565b60006020828403121561183c57600080fd5b8135611847816116af565b9392505050565b6000806000806000806060878903121561186757600080fd5b86356001600160401b038082111561187e57600080fd5b61188a8a838b0161177b565b909850965060208901359150808211156118a357600080fd5b6118af8a838b0161177b565b909650945060408901359150808211156118c857600080fd5b506118d589828a0161177b565b979a9699509497509295939492505050565b600080600080606085870312156118fd57600080fd5b8435611908816116af565b93506020850135611918816116af565b925060408501356001600160401b0381111561193357600080fd5b61181e8782880161177b565b6001600160a01b0391909116815260200190565b6000806040838503121561196657600080fd5b823591506020830135611978816116af565b809150509250929050565b60008060006040848603121561199857600080fd5b83356119a3816116af565b925060208401356001600160401b038111156119be57600080fd5b6119ca8682870161177b565b9497909650939450505050565b60008060008060008060006080888a0312156119f257600080fd5b87356119fd816116af565b965060208801356001600160401b0380821115611a1957600080fd5b611a258b838c0161177b565b909850965060408a0135915080821115611a3e57600080fd5b611a4a8b838c0161177b565b909650945060608a0135915080821115611a6357600080fd5b50611a708a828b0161177b565b989b979a50959850939692959293505050565b60008060008060608587031215611a9957600080fd5b84356001600160401b03811115611aaf57600080fd5b611abb878288016116c4565b9095509350506020850135611acf816116af565b9396929550929360400135925050565b6020808252600f908201526e2727afa1a7a222afa0aa2fa0a2222960891b604082015260600190565b8183823760009101908152919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115611b4157611b41611b18565b500190565b600082611b6357634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115611ba3578160001904821115611b8957611b89611b18565b80851615611b9657918102915b93841c9390800290611b6d565b509250929050565b600082611bba57506001611c48565b81611bc757506000611c48565b8160018114611bdd5760028114611be757611c03565b6001915050611c48565b60ff841115611bf857611bf8611b18565b50506001821b611c48565b5060208310610133831016604e8410600b8410161715611c26575081810a611c48565b611c308383611b68565b8060001904821115611c4457611c44611b18565b0290505b92915050565b600061184760ff841683611bab565b6000816000190483118215151615611c7757611c77611b18565b500290565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611ca557600080fd5b82516001600160401b0380821115611cbc57600080fd5b818501915085601f830112611cd057600080fd5b815181811115611ce257611ce2611c7c565b8060051b604051601f19603f83011681018181108582111715611d0757611d07611c7c565b604052918252848201925083810185019188831115611d2557600080fd5b938501935b82851015611d4357845184529385019392850192611d2a565b98975050505050505050565b600060208284031215611d6157600080fd5b5051919050565b600082821015611d7a57611d7a611b18565b500390565b6001600160a01b039390931683526020830191909152604082015260600190565b8015158114610c9157600080fd5b600060208284031215611dc057600080fd5b815161184781611da0565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611df357600080fd5b813561184781611da0565b6000808335601e19843603018112611e1557600080fd5b8301803591506001600160401b03821115611e2f57600080fd5b60200191503681900382131561170557600080fd5b6000600019821415611e5857611e58611b18565b5060010190565b600060208284031215611e7157600080fd5b81356001600160401b038116811461184757600080fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fea26469706673582212203f0f5c0612b28a0ea806f955639b404fd965a8d58941dd998d46056d5dc2898864736f6c634300080c0033", - "accessList": [], - "hash": "0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020", - "v": 1, - "r": "0x7400043f3c5e1286b17671db5b09808b0bb69bdca6b3c087d283229b905af7c4", - "s": "0x4ef3eef8a69494fca73f48e015a367553e61693a0401255cb96a9e53187d9993", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "rollupCreator": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "name": "OwnershipTransferred", - "anonymous": false, - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "RollupCreated", - "anonymous": false, - "inputs": [ - { - "name": "rollupAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "nativeToken", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inboxAddress", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengeManager", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "adminProxy", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "upgradeExecutor", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorUtils", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorWalletCreator", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - { - "name": "TemplatesUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - }, - { - "type": "function", - "name": "bridgeCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "challengeManagerTemplate", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "createRollup", - "constant": false, - "inputs": [ - { - "name": "deployParams", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "config", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "confirmPeriodBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "extraChallengeTimeBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "baseStake", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "loserStakeEscrow", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "chainConfig", - "type": "string", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "string", - "_isParamType": true - }, - { - "name": "genesisBlockNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "sequencerInboxMaxTimeVariation", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "validators", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "maxDataSize", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "nativeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "deployFactoriesToL2", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - }, - { - "name": "maxFeePerGasForRetryables", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "batchPosters", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "batchPosterManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "eigenDARollupManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "l2FactoriesDeployer", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "osp", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "renounceOwnership", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupAdminLogic", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "rollupUserLogic", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "setTemplates", - "constant": false, - "inputs": [ - { - "name": "_bridgeCreator", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_osp", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_challengeManagerLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_rollupAdminLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_rollupUserLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_upgradeExecutorLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_validatorUtils", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_validatorWalletCreator", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_l2FactoriesDeployer", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "transferOwnership", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "upgradeExecutorLogic", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorUtils", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "validatorWalletCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "bridgeCreator()": { - "type": "function", - "name": "bridgeCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "challengeManagerTemplate()": { - "type": "function", - "name": "challengeManagerTemplate", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "createRollup(((uint64,uint64,address,uint256,bytes32,address,address,uint256,string,uint64,(uint256,uint256,uint256,uint256)),address[],uint256,address,bool,uint256,address[],address,address))": { - "type": "function", - "name": "createRollup", - "constant": false, - "inputs": [ - { - "name": "deployParams", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "config", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "confirmPeriodBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "extraChallengeTimeBlocks", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "stakeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "baseStake", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "wasmModuleRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "owner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "loserStakeEscrow", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "chainId", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "chainConfig", - "type": "string", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "string", - "_isParamType": true - }, - { - "name": "genesisBlockNum", - "type": "uint64", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint64", - "_isParamType": true - }, - { - "name": "sequencerInboxMaxTimeVariation", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "delayBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureBlocks", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "delaySeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "futureSeconds", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "validators", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "maxDataSize", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "nativeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "deployFactoriesToL2", - "type": "bool", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bool", - "_isParamType": true - }, - { - "name": "maxFeePerGasForRetryables", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "batchPosters", - "type": "address[]", - "indexed": null, - "components": null, - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - }, - { - "name": "batchPosterManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "eigenDARollupManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "l2FactoriesDeployer()": { - "type": "function", - "name": "l2FactoriesDeployer", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "osp()": { - "type": "function", - "name": "osp", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "owner()": { - "type": "function", - "name": "owner", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "renounceOwnership()": { - "type": "function", - "name": "renounceOwnership", - "constant": false, - "inputs": [], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupAdminLogic()": { - "type": "function", - "name": "rollupAdminLogic", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "rollupUserLogic()": { - "type": "function", - "name": "rollupUserLogic", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "setTemplates(address,address,address,address,address,address,address,address,address)": { - "type": "function", - "name": "setTemplates", - "constant": false, - "inputs": [ - { - "name": "_bridgeCreator", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_osp", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_challengeManagerLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_rollupAdminLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_rollupUserLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_upgradeExecutorLogic", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_validatorUtils", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_validatorWalletCreator", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_l2FactoriesDeployer", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "transferOwnership(address)": { - "type": "function", - "name": "transferOwnership", - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "upgradeExecutorLogic()": { - "type": "function", - "name": "upgradeExecutorLogic", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorUtils()": { - "type": "function", - "name": "validatorUtils", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "validatorWalletCreator()": { - "type": "function", - "name": "validatorWalletCreator", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": { - "OwnershipTransferred(address,address)": { - "name": "OwnershipTransferred", - "anonymous": false, - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "RollupCreated(address,address,address,address,address,address,address,address,address,address,address,address)": { - "name": "RollupCreated", - "anonymous": false, - "inputs": [ - { - "name": "rollupAddress", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "nativeToken", - "type": "address", - "indexed": true, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "inboxAddress", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "outbox", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "rollupEventInbox", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "challengeManager", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "adminProxy", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "sequencerInbox", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "bridge", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "upgradeExecutor", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorUtils", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "validatorWalletCreator", - "type": "address", - "indexed": false, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "type": "event", - "_isFragment": true - }, - "TemplatesUpdated()": { - "name": "TemplatesUpdated", - "anonymous": false, - "inputs": [], - "type": "event", - "_isFragment": true - } - }, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x071D783458b5CcB49edBDb217Aa9d2Aa8c494d01", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 207, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x3d3714" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6146ab8061007e6000396000f3fe608060405260043610620000d15760003560e01c8063ac0425bc1162000078578063ac0425bc14620001da578063ac9a97b414620001fc578063bc45e0ae1462000221578063d1e1d36a1462000243578063f26a62c6146200025a578063f2fde38b146200027c578063f860cefa14620002a157600080fd5b8063014cc92c14620000de578063030cb85e1462000118578063715018a6146200013a5780638da5cb5b14620001545780639c683d1014620001745780639d4798e314620001965780639dba324114620001b857600080fd5b36620000d957005b600080fd5b348015620000eb57600080fd5b5060075462000100906001600160a01b031681565b6040516200010f919062001619565b60405180910390f35b3480156200012557600080fd5b5060065462000100906001600160a01b031681565b3480156200014757600080fd5b5062000152620002c3565b005b3480156200016157600080fd5b506000546001600160a01b031662000100565b3480156200018157600080fd5b5060035462000100906001600160a01b031681565b348015620001a357600080fd5b5060055462000100906001600160a01b031681565b348015620001c557600080fd5b5060045462000100906001600160a01b031681565b348015620001e757600080fd5b5060095462000100906001600160a01b031681565b3480156200020957600080fd5b50620001526200021b36600462001655565b620002db565b3480156200022e57600080fd5b5060085462000100906001600160a01b031681565b620001006200025436600462001a50565b6200039f565b3480156200026757600080fd5b5060025462000100906001600160a01b031681565b3480156200028957600080fd5b50620001526200029b36600462001b78565b62000e47565b348015620002ae57600080fd5b5060015462000100906001600160a01b031681565b620002cd62000ec6565b620002d9600062000f22565b565b620002e562000ec6565b600180546001600160a01b03199081166001600160a01b038c8116919091179092556002805482168b84161790556003805482168a8416179055600480548216898416179055600580548216888416179055600680548216878416179055600780548216868416179055600880548216858416179055600980549091169183169190911790556040517fc9d3947d22fa124aaec4c7e8c919f79016e2d7b48eee10568375d98b86460d1b90600090a1505050505050505050565b6000806000600160009054906101000a90046001600160a01b03166001600160a01b03166311f022276040518163ffffffff1660e01b815260040160a060405180830381865afa158015620003f8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200041e919062001b98565b50509250925050816001600160a01b031663e8eb1dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000464573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200048a919062001c18565b846040015114620004b85760405162461bcd60e51b8152600401620004af9062001c32565b60405180910390fd5b806001600160a01b031663e8eb1dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015620004f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200051d919062001c18565b846040015114620005425760405162461bcd60e51b8152600401620004af9062001c65565b600080600160009054906101000a90046001600160a01b03166001600160a01b03166376768ab96040518163ffffffff1660e01b815260040160a060405180830381865afa15801562000599573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005bf919062001b98565b50509250925050816001600160a01b031663e8eb1dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000605573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200062b919062001c18565b866040015114620006505760405162461bcd60e51b8152600401620004af9062001c32565b806001600160a01b031663e8eb1dc36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200068f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006b5919062001c18565b866040015114620006da5760405162461bcd60e51b8152600401620004af9062001c65565b505050506000604051620006ee90620015e2565b604051809103906000f0801580156200070b573d6000803e3d6000fd5b50905060008360405160200162000723919062001e3a565b604051602081830303815290604052805190602001206040516200074790620015f0565b8190604051809103906000f590508015801562000768573d6000803e3d6000fd5b50600154606086015186516101400151604051632d29730d60e21b81529394506000936001600160a01b039093169263b4a5cc3492620007b19288928892919060040162001f00565b60a0604051808303816000875af1158015620007d1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007f7919062001f58565b6003546040519192506000916001600160a01b039091169085906200081c90620015fe565b6001600160a01b03928316815291166020820152606060408201819052600090820152608001604051809103906000f0801580156200085f573d6000803e3d6000fd5b5060208301518351600254604051637c643b2f60e11b81526001600160a01b038881166004830152938416602482015291831660448301528216606482015291925082169063f8c8765e90608401600060405180830381600087803b158015620008c857600080fd5b505af1158015620008dd573d6000803e3d6000fd5b505050506000620008f7876000015160a001518662000f72565b60405163f2fde38b60e01b81529091506001600160a01b0386169063f2fde38b906200092890849060040162001619565b600060405180830381600087803b1580156200094357600080fd5b505af115801562000958573d6000803e3d6000fd5b505088513060a0918201528951604080516101408101825288516001600160a01b0390811682526020808b0151821690830152898301518116828401526080808b015182166060808501919091528b01518216908301528881169482019490945260048054851660c0830152600554851660e08301526007548516610100830152600854851661012083015291516337121b4f60e11b8152938a169550636e24369e945062000a0a9390910162001ffd565b600060405180830381600087803b15801562000a2557600080fd5b505af115801562000a3a573d6000803e3d6000fd5b5050505060005b8760c001515181101562000afe5783602001516001600160a01b0316636e7df3e78960c00151838151811062000a7b5762000a7b620020ed565b60209081029190910101516040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260016024820152604401600060405180830381600087803b15801562000acf57600080fd5b505af115801562000ae4573d6000803e3d6000fd5b50505050808062000af59062002103565b91505062000a41565b5060e08701516001600160a01b03161562000b7f57602083015160e08801516040516301ff647960e41b81526001600160a01b0390921691631ff647909162000b4a9160040162001619565b600060405180830381600087803b15801562000b6557600080fd5b505af115801562000b7a573d6000803e3d6000fd5b505050505b60208301516101008801516040516313f9970360e11b81526001600160a01b03909216916327f32e069162000bb79160040162001619565b600060405180830381600087803b15801562000bd257600080fd5b505af115801562000be7573d6000803e3d6000fd5b5050505086602001515160001462000d005760008760200151516001600160401b0381111562000c1b5762000c1b62001724565b60405190808252806020026020018201604052801562000c45578160200160208202803683370190505b50905060005b88602001515181101562000c9557600182828151811062000c705762000c70620020ed565b911515602092830291909101909101528062000c8c8162002103565b91505062000c4b565b5060208801516040516351ffdbb960e11b81526001600160a01b0387169163a3ffb7729162000cca919085906004016200212d565b600060405180830381600087803b15801562000ce557600080fd5b505af115801562000cfa573d6000803e3d6000fd5b50505050505b6040516313af403560e01b81526001600160a01b038516906313af40359062000d2e90849060040162001619565b600060405180830381600087803b15801562000d4957600080fd5b505af115801562000d5e573d6000803e3d6000fd5b5050505086608001511562000d865762000d86836040015188606001518960a0015162001088565b606087810151604085810151608080880151888601516020808b01518b5160075460085489516001600160a01b03998a16815296891694870194909452938716858901528b8716998501999099528d86169484019490945292841660a083015295831660c082015286831660e08201529482166101008601528116610120850152905191811692908716917f481277de518d1f364b196166b90219b996fba76138a3dc84e7fe02540eb1cbdb918190036101400190a3509195945050505050565b62000e5162000ec6565b6001600160a01b03811662000eb85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620004af565b62000ec38162000f22565b50565b6000546001600160a01b03163314620002d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620004af565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6006546040805160208101825260008082529151919283926001600160a01b0390911691859162000fa390620015fe565b62000fb1939291906200218a565b604051809103906000f08015801562000fce573d6000803e3d6000fd5b50604080516001808252818301909252919250600091906020808301908036833701905050905084816000815181106200100c576200100c620020ed565b6001600160a01b03928316602091820292909201015260405163251b648160e21b81529083169063946d9204906200104b9085908590600401620021b8565b600060405180830381600087803b1580156200106657600080fd5b505af11580156200107b573d6000803e3d6000fd5b5093979650505050505050565b6001600160a01b038216620012105760095460405163566be81560e11b81526001600160a01b03858116600483015260248201849052600092169063acd7d02a90604401602060405180830381865afa158015620010ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001110919062001c18565b60095460405163d7c641e760e01b81529192506001600160a01b03169063d7c641e79083906200114990889088908890600401620021de565b6000604051808303818588803b1580156200116357600080fd5b505af115801562001178573d6000803e3d6000fd5b5050604051600093503392504791508381818185875af1925050503d8060008114620011c1576040519150601f19603f3d011682016040523d82523d6000602084013e620011c6565b606091505b5050905080620012095760405162461bcd60e51b815260206004820152600d60248201526c1499599d5b990819985a5b1959609a1b6044820152606401620004af565b5050505050565b60095460405163566be81560e11b81526001600160a01b03858116600483015260248201849052600092169063acd7d02a90604401602060405180830381865afa15801562001263573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001289919062001c18565b9050620012a26001600160a01b03841633868462001313565b60095460405163d7c641e760e01b81526001600160a01b039091169063d7c641e790620012d890879087908790600401620021de565b600060405180830381600087803b158015620012f357600080fd5b505af115801562001308573d6000803e3d6000fd5b50505050505b505050565b6200136f846323b872dd60e01b8585856040516024016200133793929190620021de565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262001375565b50505050565b6000620013cc826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200144e9092919063ffffffff16565b8051909150156200130e5780806020019051810190620013ed919062002202565b6200130e5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620004af565b60606200145f848460008562001469565b90505b9392505050565b606082471015620014cc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620004af565b6001600160a01b0385163b620015255760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620004af565b600080866001600160a01b0316858760405162001543919062002222565b60006040518083038185875af1925050503d806000811462001582576040519150601f19603f3d011682016040523d82523d6000602084013e62001587565b606091505b509150915062001599828286620015a4565b979650505050505050565b60608315620015b557508162001462565b825115620015c65782518084602001fd5b8160405162461bcd60e51b8152600401620004af919062002240565b610716806200225683390190565b610e8d806200296c83390190565b610e7d80620037f983390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b038116811462000ec357600080fd5b803562001650816200162d565b919050565b60008060008060008060008060006101208a8c0312156200167557600080fd5b893562001682816200162d565b985060208a013562001694816200162d565b975060408a0135620016a6816200162d565b965060608a0135620016b8816200162d565b955060808a0135620016ca816200162d565b945060a08a0135620016dc816200162d565b935060c08a0135620016ee816200162d565b925060e08a013562001700816200162d565b91506101008a013562001713816200162d565b809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b60405161016081016001600160401b038111828210171562001760576200176062001724565b60405290565b60405161012081016001600160401b038111828210171562001760576200176062001724565b604051601f8201601f191681016001600160401b0381118282101715620017b757620017b762001724565b604052919050565b80356001600160401b03811681146200165057600080fd5b600082601f830112620017e957600080fd5b81356001600160401b0381111562001805576200180562001724565b6200181a601f8201601f19166020016200178c565b8181528460208386010111156200183057600080fd5b816020850160208301376000918101602001919091529392505050565b6000608082840312156200186057600080fd5b604051608081018181106001600160401b038211171562001885576200188562001724565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b60006101c08284031215620018ca57600080fd5b620018d46200173a565b9050620018e182620017bf565b8152620018f160208301620017bf565b6020820152620019046040830162001643565b604082015260608201356060820152608082013560808201526200192b60a0830162001643565b60a08201526200193e60c0830162001643565b60c082015260e082013560e0820152610100808301356001600160401b038111156200196957600080fd5b6200197785828601620017d7565b8284015250506101206200198d818401620017bf565b90820152610140620019a2848483016200184d565b9082015292915050565b600082601f830112620019be57600080fd5b813560206001600160401b03821115620019dc57620019dc62001724565b8160051b620019ed8282016200178c565b928352848101820192828101908785111562001a0857600080fd5b83870192505b848310156200159957823562001a24816200162d565b8252918301919083019062001a0e565b801515811462000ec357600080fd5b8035620016508162001a34565b60006020828403121562001a6357600080fd5b81356001600160401b038082111562001a7b57600080fd5b90830190610120828603121562001a9157600080fd5b62001a9b62001766565b82358281111562001aab57600080fd5b62001ab987828601620018b6565b82525060208301358281111562001acf57600080fd5b62001add87828601620019ac565b6020830152506040830135604082015262001afb6060840162001643565b606082015262001b0e6080840162001a43565b608082015260a083013560a082015260c08301358281111562001b3057600080fd5b62001b3e87828601620019ac565b60c08301525062001b5260e0840162001643565b60e0820152610100915062001b6982840162001643565b91810191909152949350505050565b60006020828403121562001b8b57600080fd5b813562001462816200162d565b600080600080600060a0868803121562001bb157600080fd5b855162001bbe816200162d565b602087015190955062001bd1816200162d565b604087015190945062001be4816200162d565b606087015190935062001bf7816200162d565b608087015190925062001c0a816200162d565b809150509295509295909350565b60006020828403121562001c2b57600080fd5b5051919050565b6020808252601990820152780a692be9a82b0be8882a882bea692b48abe9a92a69a82a8869603b1b604082015260600190565b602080825260189082015277092be9a82b0be8882a882bea692b48abe9a92a69a82a886960431b604082015260600190565b60005b8381101562001cb457818101518382015260200162001c9a565b838111156200136f5750506000910152565b6000815180845262001ce081602086016020860162001c97565b601f01601f19169290920160200192915050565b80516001600160401b0316825260006101c0602083015162001d2160208601826001600160401b03169052565b50604083015162001d3660408601826200160c565b50606083015160608501526080830151608085015260a083015162001d5f60a08601826200160c565b5060c083015162001d7460c08601826200160c565b5060e083015160e085015261010080840151828287015262001d998387018262001cc6565b925050506101208084015162001db9828701826001600160401b03169052565b5050610140838101518051868301526020810151610160870152604081015161018087015260608101516101a08701525b5090949350505050565b600081518084526020808501945080840160005b8381101562001e2f5781516001600160a01b03168752958201959082019060010162001e08565b509495945050505050565b602081526000825161012080602085015262001e5b61014085018362001cf4565b91506020850151601f198086850301604087015262001e7b848362001df4565b9350604087015160608701526060870151915062001e9d60808701836200160c565b608087015180151560a0880152915060a087015160c087015260c08701519150808685030160e08701525062001ed4838262001df4565b92505060e085015161010062001eed818701836200160c565b860151905062001dea858301826200160c565b6001600160a01b03858116825284811660208301528316604082015260e0810162001f4f6060830184805182526020810151602083015260408101516040830152606081015160608301525050565b95945050505050565b600060a0828403121562001f6b57600080fd5b60405160a081018181106001600160401b038211171562001f905762001f9062001724565b604052825162001fa0816200162d565b8152602083015162001fb2816200162d565b6020820152604083015162001fc7816200162d565b6040820152606083015162001fdc816200162d565b6060820152608083015162001ff1816200162d565b60808201529392505050565b6000610160808352620020138184018662001cf4565b915050620020266020830184516200160c565b60208301516200203a60408401826200160c565b5060408301516200204f60608401826200160c565b5060608301516200206460808401826200160c565b5060808301516200207960a08401826200160c565b5060a08301516200208e60c08401826200160c565b5060c0830151620020a360e08401826200160c565b5060e0830151610100620020ba818501836200160c565b8401519050610120620020d0848201836200160c565b8401519050620020e56101408401826200160c565b509392505050565b634e487b7160e01b600052603260045260246000fd5b60006000198214156200212657634e487b7160e01b600052601160045260246000fd5b5060010190565b60408152600062002142604083018562001df4565b82810360208481019190915284518083528582019282019060005b818110156200217d5784511515835293830193918301916001016200215d565b5090979650505050505050565b6001600160a01b0384811682528316602082015260606040820181905260009062001f4f9083018462001cc6565b6001600160a01b03831681526040602082018190526000906200145f9083018462001df4565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6000602082840312156200221557600080fd5b8151620014628162001a34565b600082516200223681846020870162001c97565b9190910192915050565b60208152600062001462602083018462001cc656fe608060405234801561001057600080fd5b5061001a3361001f565b61006f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6106988061007e6000396000f3fe60806040526004361061006b5760003560e01c8063204e1c7a14610070578063715018a6146100a65780637eff275e146100bd5780638da5cb5b146100dd5780639623609d146100fb57806399a88ec41461010e578063f2fde38b1461012e578063f3b7dead1461014e575b600080fd5b34801561007c57600080fd5b5061009061008b366004610483565b61016e565b60405161009d91906104a7565b60405180910390f35b3480156100b257600080fd5b506100bb6101ff565b005b3480156100c957600080fd5b506100bb6100d83660046104bb565b610213565b3480156100e957600080fd5b506000546001600160a01b0316610090565b6100bb61010936600461050a565b61027d565b34801561011a57600080fd5b506100bb6101293660046104bb565b6102ec565b34801561013a57600080fd5b506100bb610149366004610483565b610320565b34801561015a57600080fd5b50610090610169366004610483565b61039e565b6000806000836001600160a01b031660405161019490635c60da1b60e01b815260040190565b600060405180830381855afa9150503d80600081146101cf576040519150601f19603f3d011682016040523d82523d6000602084013e6101d4565b606091505b5091509150816101e357600080fd5b808060200190518101906101f791906105e0565b949350505050565b6102076103c4565b610211600061041e565b565b61021b6103c4565b6040516308f2839760e41b81526001600160a01b03831690638f283970906102479084906004016104a7565b600060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050505050565b6102856103c4565b60405163278f794360e11b81526001600160a01b03841690634f1ef2869034906102b590869086906004016105fd565b6000604051808303818588803b1580156102ce57600080fd5b505af11580156102e2573d6000803e3d6000fd5b5050505050505050565b6102f46103c4565b604051631b2ce7f360e11b81526001600160a01b03831690633659cfe6906102479084906004016104a7565b6103286103c4565b6001600160a01b0381166103925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61039b8161041e565b50565b6000806000836001600160a01b0316604051610194906303e1469160e61b815260040190565b6000546001600160a01b031633146102115760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610389565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116811461039b57600080fd5b60006020828403121561049557600080fd5b81356104a08161046e565b9392505050565b6001600160a01b0391909116815260200190565b600080604083850312156104ce57600080fd5b82356104d98161046e565b915060208301356104e98161046e565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561051f57600080fd5b833561052a8161046e565b9250602084013561053a8161046e565b9150604084013567ffffffffffffffff8082111561055757600080fd5b818601915086601f83011261056b57600080fd5b81358181111561057d5761057d6104f4565b604051601f8201601f19908116603f011681019083821181831017156105a5576105a56104f4565b816040528281528960208487010111156105be57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000602082840312156105f257600080fd5b81516104a08161046e565b60018060a01b038316815260006020604081840152835180604085015260005b818110156106395785810183015185820160600152820161061d565b8181111561064b576000606083870101525b50601f01601f19169290920160600194935050505056fea2646970667358221220915d9842903694c497beb6565948760f3370217c4fdc248151eab4a5b36eede364736f6c634300080c0033608060405234801561001057600080fd5b50610e6d806100206000396000f3fe6080604052600436106100225760003560e01c80636e24369e1461003957610031565b366100315761002f610059565b005b61002f610059565b34801561004557600080fd5b5061002f6100543660046109fa565b61006b565b610069610064610182565b61024b565b565b6000610075610274565b6001600160a01b031614801561009b57506000610090610295565b6001600160a01b0316145b80156100b7575060006100ac6102ab565b6001600160a01b0316145b1561017a576101768160c001516328ff127a60e01b84846040516024016100df929190610c37565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925260e08501518683015192516001600160a01b039093166024840152909163189acdbd60e31b9060440160408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915260a08701516102c1565b5050565b610176610059565b600060043610156101c85760405162461bcd60e51b815260206004820152600b60248201526a4e4f5f46554e435f53494760a81b60448201526064015b60405180910390fd5b6000336101d3610274565b6001600160a01b031614156101ef576101ea610295565b6101f7565b6101f76102ab565b90506001600160a01b0381163b6102465760405162461bcd60e51b815260206004820152601360248201527215105491d15517d393d517d0d3d395149050d5606a1b60448201526064016101bf565b919050565b3660008037600080366000845af43d6000803e80801561026a573d6000f35b3d6000fd5b505050565b6000600080516020610db18339815191525b546001600160a01b0316919050565b6000600080516020610dd1833981519152610286565b6000600080516020610e18833981519152610286565b6102ec60017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6104610d46565b600080516020610db18339815191521461030857610308610d6b565b61033360017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd610d46565b600080516020610dd18339815191521461034f5761034f610d6b565b61037a60017f2b1dbce74324248c222f0ec2d5ed7bd323cfc425b336f0253c5ccfda7265546e610d46565b600080516020610e188339815191521461039657610396610d6b565b61039f816103be565b6103ab85856000610415565b6103b783836000610440565b5050505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103e7610274565b604080516001600160a01b03928316815291841660208301520160405180910390a161041281610449565b50565b61041e836104e0565b60008251118061042b5750805b1561026f5761043a8383610520565b50505050565b61041e8361054c565b6001600160a01b0381166104ae5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084016101bf565b80600080516020610db18339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b6104e98161058c565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606105458383604051806060016040528060278152602001610df16027913961060e565b9392505050565b610555816106eb565b6040516001600160a01b038216907ff7eed2a7fabbf1bec8d55ed5e785cc76622376dde5df4ff15470551e030b813490600090a250565b6001600160a01b0381163b6105f95760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016101bf565b80600080516020610dd18339815191526104bf565b60606001600160a01b0384163b6106765760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016101bf565b600080856001600160a01b0316856040516106919190610d81565b600060405180830381855af49150503d80600081146106cc576040519150601f19603f3d011682016040523d82523d6000602084013e6106d1565b606091505b50915091506106e1828286610777565b9695505050505050565b6001600160a01b0381163b6107625760405162461bcd60e51b815260206004820152603760248201527f455243313936373a206e6577207365636f6e6461727920696d706c656d656e74604482015276185d1a5bdb881a5cc81b9bdd08184818dbdb9d1c9858dd604a1b60648201526084016101bf565b80600080516020610e188339815191526104bf565b60608315610786575081610545565b8251156107965782518084602001fd5b8160405162461bcd60e51b81526004016101bf9190610d9d565b634e487b7160e01b600052604160045260246000fd5b60405161014081016001600160401b03811182821017156107e9576107e96107b0565b60405290565b60405161016081016001600160401b03811182821017156107e9576107e96107b0565b80356001600160401b038116811461024657600080fd5b80356001600160a01b038116811461024657600080fd5b600082601f83011261085157600080fd5b81356001600160401b038082111561086b5761086b6107b0565b604051601f8301601f19908116603f01168101908282118183101715610893576108936107b0565b816040528381528660208588010111156108ac57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000608082840312156108de57600080fd5b604051608081018181106001600160401b0382111715610900576109006107b0565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b6000610140828403121561094457600080fd5b61094c6107c6565b905061095782610829565b815261096560208301610829565b602082015261097660408301610829565b604082015261098760608301610829565b606082015261099860808301610829565b60808201526109a960a08301610829565b60a08201526109ba60c08301610829565b60c08201526109cb60e08301610829565b60e08201526101006109de818401610829565b908201526101206109f0838201610829565b9082015292915050565b6000806101608385031215610a0e57600080fd5b82356001600160401b0380821115610a2557600080fd5b908401906101c08287031215610a3a57600080fd5b610a426107ef565b610a4b83610812565b8152610a5960208401610812565b6020820152610a6a60408401610829565b60408201526060830135606082015260808301356080820152610a8f60a08401610829565b60a0820152610aa060c08401610829565b60c082015260e083013560e08201526101008084013583811115610ac357600080fd5b610acf89828701610840565b8284015250506101209150610ae5828401610812565b828201526101409150610afa878385016108cc565b82820152809450505050610b118460208501610931565b90509250929050565b6001600160a01b03169052565b60005b83811015610b42578181015183820152602001610b2a565b8381111561043a5750506000910152565b60008151808452610b6b816020860160208601610b27565b601f01601f19169290920160200192915050565b610b8a828251610b1a565b6020810151610b9c6020840182610b1a565b506040810151610baf6040840182610b1a565b506060810151610bc26060840182610b1a565b506080810151610bd56080840182610b1a565b5060a0810151610be860a0840182610b1a565b5060c0810151610bfb60c0840182610b1a565b5060e0810151610c0e60e0840182610b1a565b5061010080820151610c2282850182610b1a565b50506101208082015161043a82850182610b1a565b6000610160808352610c5481840186516001600160401b03169052565b5060208401516001600160401b03166101808301526040840151610c7c6101a0840182610b1a565b5060608401516101c0818185015260808601516101e085015260a08601519150610caa610200850183610b1a565b60c08601519150610cbf610220850183610b1a565b60e086015161024085015261010086015191508061026085015250610ce8610320840182610b53565b9050610120850151610d066102808501826001600160401b03169052565b5061014085015180516102a085015260208101516102c085015260408101516102e085015260608101516103008501525090506105456020830184610b7f565b600082821015610d6657634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052600160045260246000fd5b60008251610d93818460208701610b27565b9190910192915050565b6020815260006105456020830184610b5356feb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65642b1dbce74324248c222f0ec2d5ed7bd323cfc425b336f0253c5ccfda7265546da26469706673582212201cb11f2d49cd7d38f6f68fd1349ec6c6154ef5e50217a58d5fd06b9b5195539864736f6c634300080c0033608060405260405162000e7d38038062000e7d833981016040819052620000269162000490565b828162000036828260006200004d565b50620000449050826200008a565b505050620005c3565b6200005883620000e5565b600082511180620000665750805b1562000085576200008383836200012760201b620002601760201c565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f620000b562000156565b604080516001600160a01b03928316815291841660208301520160405180910390a1620000e2816200018f565b50565b620000f08162000244565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200014f838360405180606001604052806027815260200162000e5660279139620002f8565b9392505050565b60006200018060008051602062000e3683398151915260001b620003de60201b620002081760201c565b546001600160a01b0316919050565b6001600160a01b038116620001fa5760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b806200022360008051602062000e3683398151915260001b620003de60201b620002081760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6200025a81620003e160201b6200028c1760201c565b620002be5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620001f1565b80620002237f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b620003de60201b620002081760201c565b60606001600160a01b0384163b620003625760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401620001f1565b600080856001600160a01b0316856040516200037f919062000570565b600060405180830381855af49150503d8060008114620003bc576040519150601f19603f3d011682016040523d82523d6000602084013e620003c1565b606091505b509092509050620003d4828286620003f0565b9695505050505050565b90565b6001600160a01b03163b151590565b60608315620004015750816200014f565b825115620004125782518084602001fd5b8160405162461bcd60e51b8152600401620001f191906200058e565b80516001600160a01b03811681146200044657600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200047e57818101518382015260200162000464565b83811115620000835750506000910152565b600080600060608486031215620004a657600080fd5b620004b1846200042e565b9250620004c1602085016200042e565b60408501519092506001600160401b0380821115620004df57600080fd5b818601915086601f830112620004f457600080fd5b8151818111156200050957620005096200044b565b604051601f8201601f19908116603f011681019083821181831017156200053457620005346200044b565b816040528281528960208487010111156200054e57600080fd5b6200056183602083016020880162000461565b80955050505050509250925092565b600082516200058481846020870162000461565b9190910192915050565b6020815260008251806020840152620005af81604085016020870162000461565b601f01601f19169190910160400192915050565b61086380620005d36000396000f3fe60806040526004361061004e5760003560e01c80633659cfe6146100655780634f1ef286146100855780635c60da1b146100985780638f283970146100c9578063f851a440146100e95761005d565b3661005d5761005b6100fe565b005b61005b6100fe565b34801561007157600080fd5b5061005b6100803660046106ed565b610118565b61005b610093366004610708565b61015f565b3480156100a457600080fd5b506100ad6101d0565b6040516001600160a01b03909116815260200160405180910390f35b3480156100d557600080fd5b5061005b6100e43660046106ed565b61020b565b3480156100f557600080fd5b506100ad610235565b61010661029b565b61011661011161033a565b610344565b565b610120610368565b6001600160a01b0316336001600160a01b03161415610157576101548160405180602001604052806000815250600061039b565b50565b6101546100fe565b610167610368565b6001600160a01b0316336001600160a01b031614156101c8576101c38383838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925061039b915050565b505050565b6101c36100fe565b60006101da610368565b6001600160a01b0316336001600160a01b03161415610200576101fb61033a565b905090565b6102086100fe565b90565b610213610368565b6001600160a01b0316336001600160a01b0316141561015757610154816103c6565b600061023f610368565b6001600160a01b0316336001600160a01b03161415610200576101fb610368565b606061028583836040518060600160405280602781526020016108076027913961041a565b9392505050565b6001600160a01b03163b151590565b6102a3610368565b6001600160a01b0316336001600160a01b031614156101165760405162461bcd60e51b815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f78792074617267606482015261195d60f21b608482015260a4015b60405180910390fd5b60006101fb6104f5565b3660008037600080366000845af43d6000803e808015610363573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b6103a48361051d565b6000825111806103b15750805b156101c3576103c08383610260565b50505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6103ef610368565b604080516001600160a01b03928316815291841660208301520160405180910390a16101548161055d565b60606104258461028c565b6104805760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610331565b600080856001600160a01b03168560405161049b91906107b7565b600060405180830381855af49150503d80600081146104d6576040519150601f19603f3d011682016040523d82523d6000602084013e6104db565b606091505b50915091506104eb828286610606565b9695505050505050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61038c565b6105268161063f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6001600160a01b0381166105c25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610331565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b60608315610615575081610285565b8251156106255782518084602001fd5b8160405162461bcd60e51b815260040161033191906107d3565b6106488161028c565b6106aa5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610331565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6105e5565b80356001600160a01b03811681146106e857600080fd5b919050565b6000602082840312156106ff57600080fd5b610285826106d1565b60008060006040848603121561071d57600080fd5b610726846106d1565b9250602084013567ffffffffffffffff8082111561074357600080fd5b818601915086601f83011261075757600080fd5b81358181111561076657600080fd5b87602082850101111561077857600080fd5b6020830194508093505050509250925092565b60005b838110156107a657818101518382015260200161078e565b838111156103c05750506000910152565b600082516107c981846020870161078b565b9190910192915050565b60208152600082518060208401526107f281604085016020870161078b565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220b443311d3bfcd8adf6febdfd2ccac26e84b8453cf5949581b52011aeeb08010564736f6c634300080c0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212202c46a8f94db223f23b55e65bab2210875fa52cb36a5e9b45b13bdf92eaf57b2864736f6c634300080c0033", - "accessList": [], - "hash": "0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22", - "v": 1, - "r": "0x632a1088c3d413d7bc111c9b3c2f53415485245c863724389b6279a05f3069dc", - "s": "0x3c31cfbce08ada6c09e73b5fe0011f8293e0299b8e690096e93a82ef9d75b964", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - }, - "_deployedPromise": {} - }, - "deployHelper": { - "interface": { - "fragments": [ - { - "type": "function", - "name": "ERC1820_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ERC1820_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ERC1820_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ERC2470_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ERC2470_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ERC2470_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "NICK_CREATE2_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "NICK_CREATE2_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "NICK_CREATE2_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ZOLTU_CREATE2_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ZOLTU_CREATE2_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "ZOLTU_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "getDeploymentTotalCost", - "constant": true, - "inputs": [ - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxFeePerGas", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "perform", - "constant": false, - "inputs": [ - { - "name": "_inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_nativeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_maxFeePerGas", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "ERC1820_DEPLOYER()": { - "type": "function", - "name": "ERC1820_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ERC1820_PAYLOAD()": { - "type": "function", - "name": "ERC1820_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ERC1820_VALUE()": { - "type": "function", - "name": "ERC1820_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ERC2470_DEPLOYER()": { - "type": "function", - "name": "ERC2470_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ERC2470_PAYLOAD()": { - "type": "function", - "name": "ERC2470_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ERC2470_VALUE()": { - "type": "function", - "name": "ERC2470_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "NICK_CREATE2_DEPLOYER()": { - "type": "function", - "name": "NICK_CREATE2_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "NICK_CREATE2_PAYLOAD()": { - "type": "function", - "name": "NICK_CREATE2_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "NICK_CREATE2_VALUE()": { - "type": "function", - "name": "NICK_CREATE2_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ZOLTU_CREATE2_DEPLOYER()": { - "type": "function", - "name": "ZOLTU_CREATE2_DEPLOYER", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ZOLTU_CREATE2_PAYLOAD()": { - "type": "function", - "name": "ZOLTU_CREATE2_PAYLOAD", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "ZOLTU_VALUE()": { - "type": "function", - "name": "ZOLTU_VALUE", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "getDeploymentTotalCost(address,uint256)": { - "type": "function", - "name": "getDeploymentTotalCost", - "constant": true, - "inputs": [ - { - "name": "inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "maxFeePerGas", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [ - { - "name": null, - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "perform(address,address,uint256)": { - "type": "function", - "name": "perform", - "constant": false, - "inputs": [ - { - "name": "_inbox", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_nativeToken", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - }, - { - "name": "_maxFeePerGas", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "outputs": [], - "payable": true, - "stateMutability": "payable", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x7f68D531e8F6F93804A0656161da64a7ed9Dc4d9", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 208, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x1373ad" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x608060405234801561001057600080fd5b506115ef806100206000396000f3fe6080604052600436106100bd5760003560e01c80639ed2c6f01161006f5780639ed2c6f0146101bd578063acd7d02a146101d8578063d3a3faab146101f8578063d7c641e714610220578063db633c3e14610235578063dd0c625a14610142578063ef77e71a1461025157600080fd5b80631b9a680c146100c2578063290302ce146100ed5780632e7966411461012d5780634367d6521461014257806355e34a6b1461016b57806375ae22b51461019357806389cf8ae6146101a8575b600080fd5b3480156100ce57600080fd5b506100d7610279565b6040516100e491906107a4565b60405180910390f35b3480156100f957600080fd5b5061011573a990077c3205cbdf861e17fa532eeb069ce9ff9681565b6040516001600160a01b0390911681526020016100e4565b34801561013957600080fd5b506100d7610295565b34801561014e57600080fd5b5061015d662386f26fc1000081565b6040519081526020016100e4565b34801561017757600080fd5b5061011573bb6e024b9cffacb947a71991e386681b1cd1477d81565b34801561019f57600080fd5b506100d76102b4565b3480156101b457600080fd5b506100d76102d0565b3480156101c957600080fd5b5061015d6657c084e5f3c00081565b3480156101e457600080fd5b5061015d6101f3366004610811565b6102ef565b34801561020457600080fd5b50610115734c8d290a1b368ac4728d83a9e8321fc3af2b39b181565b61023361022e36600461083d565b6103ce565b005b34801561024157600080fd5b5061015d67011c37937e08000081565b34801561025d57600080fd5b50610115733fab184622dc19b6109349b94811493bf2a4536281565b6040518060e0016040528060a8815260200161151260a8913981565b60405180610a600160405280610a3c81526020016108e5610a3c913981565b6040518060c00160405280608181526020016113216081913981565b604051806101a0016040528061017081526020016113a2610170913981565b60405163a66b327d60e01b81526000600482018190524860248301529081906001600160a01b0385169063a66b327d90604401602060405180830381865afa15801561033f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610363919061087e565b9050610371836152086108ad565b61037b90826108cc565b6103869060046108ad565b67011c37937e080000662386f26fc100006103a86657c084e5f3c000826108cc565b6103b291906108cc565b6103bc91906108cc565b6103c691906108cc565b949350505050565b6000806001600160a01b0316836001600160a01b03161415905061042984662386f26fc10000733fab184622dc19b6109349b94811493bf2a453626040518060e0016040528060a8815260200161151260a89139858761052c565b61046d846657c084e5f3c00073bb6e024b9cffacb947a71991e386681b1cd1477d604051806101a0016040528061017081526020016113a26101709139858761052c565b6104ae84662386f26fc10000734c8d290a1b368ac4728d83a9e8321fc3af2b39b16040518060c001604052806081815260200161132160819139858761052c565b6104f38467011c37937e08000073a990077c3205cbdf861e17fa532eeb069ce9ff9660405180610a600160405280610a3c81526020016108e5610a3c9139858761052c565b806105265760405133904780156108fc02916000818181858888f19350505050158015610524573d6000803e3d6000fd5b505b50505050565b60405163a66b327d60e01b8152600060048201819052486024830152906001600160a01b0388169063a66b327d90604401602060405180830381865afa15801561057a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059e919061087e565b905060006105ae836152086108ad565b6105b883896108cc565b6105c291906108cc565b9050831561067f57604051632a4f421360e11b81526001600160a01b03878116600483015260248201899052604482018490523360648301819052608483015261520860a483015260c4820185905260e48201839052610120610104830152600061012483015289169063549e842690610144016020604051808303816000875af1158015610655573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610679919061087e565b5061072a565b60405163679b6ded60e01b81526001600160a01b03878116600483015260248201899052604482018490523360648301819052608483015261520860a483015260c4820185905261010060e4830152600061010483015289169063679b6ded9083906101240160206040518083038185885af1158015610703573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610728919061087e565b505b60405163b75436bb60e01b81526001600160a01b0389169063b75436bb906107569088906004016107a4565b6020604051808303816000875af1158015610775573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610799919061087e565b505050505050505050565b600060208083528351808285015260005b818110156107d1578581018301518582016040015282016107b5565b818111156107e3576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461080e57600080fd5b50565b6000806040838503121561082457600080fd5b823561082f816107f9565b946020939093013593505050565b60008060006060848603121561085257600080fd5b833561085d816107f9565b9250602084013561086d816107f9565b929592945050506040919091013590565b60006020828403121561089057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156108c7576108c7610897565b500290565b600082198211156108df576108df610897565b50019056fe04f90a388085174876e800830c35008080b909e5608060405234801561001057600080fd5b506109c5806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a5576000357c010000000000000000000000000000000000000000000000000000000090048063a41e7d5111610078578063a41e7d51146101d4578063aabbb8ca1461020a578063b705676514610236578063f712f3e814610280576100a5565b806329965a1d146100aa5780633d584063146100e25780635df8122f1461012457806365ba36c114610152575b600080fd5b6100e0600480360360608110156100c057600080fd5b50600160a060020a038135811691602081013591604090910135166102b6565b005b610108600480360360208110156100f857600080fd5b5035600160a060020a0316610570565b60408051600160a060020a039092168252519081900360200190f35b6100e06004803603604081101561013a57600080fd5b50600160a060020a03813581169160200135166105bc565b6101c26004803603602081101561016857600080fd5b81019060208101813564010000000081111561018357600080fd5b82018360208201111561019557600080fd5b803590602001918460018302840111640100000000831117156101b757600080fd5b5090925090506106b3565b60408051918252519081900360200190f35b6100e0600480360360408110156101ea57600080fd5b508035600160a060020a03169060200135600160e060020a0319166106ee565b6101086004803603604081101561022057600080fd5b50600160a060020a038135169060200135610778565b61026c6004803603604081101561024c57600080fd5b508035600160a060020a03169060200135600160e060020a0319166107ef565b604080519115158252519081900360200190f35b61026c6004803603604081101561029657600080fd5b508035600160a060020a03169060200135600160e060020a0319166108aa565b6000600160a060020a038416156102cd57836102cf565b335b9050336102db82610570565b600160a060020a031614610339576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f7420746865206d616e616765720000000000000000000000000000000000604482015290519081900360640190fd5b6103428361092a565b15610397576040805160e560020a62461bcd02815260206004820152601a60248201527f4d757374206e6f7420626520616e204552433136352068617368000000000000604482015290519081900360640190fd5b600160a060020a038216158015906103b85750600160a060020a0382163314155b156104ff5760405160200180807f455243313832305f4143434550545f4d4147494300000000000000000000000081525060140190506040516020818303038152906040528051906020012082600160a060020a031663249cb3fa85846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600160a060020a0316600160a060020a031681526020019250505060206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b5051146104ff576040805160e560020a62461bcd02815260206004820181905260248201527f446f6573206e6f7420696d706c656d656e742074686520696e74657266616365604482015290519081900360640190fd5b600160a060020a03818116600081815260208181526040808320888452909152808220805473ffffffffffffffffffffffffffffffffffffffff19169487169485179055518692917f93baa6efbd2244243bfee6ce4cfdd1d04fc4c0e9a786abd3a41313bd352db15391a450505050565b600160a060020a03818116600090815260016020526040812054909116151561059a5750806105b7565b50600160a060020a03808216600090815260016020526040902054165b919050565b336105c683610570565b600160a060020a031614610624576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f7420746865206d616e616765720000000000000000000000000000000000604482015290519081900360640190fd5b81600160a060020a031681600160a060020a0316146106435780610646565b60005b600160a060020a03838116600081815260016020526040808220805473ffffffffffffffffffffffffffffffffffffffff19169585169590951790945592519184169290917f605c2dbf762e5f7d60a546d42e7205dcb1b011ebc62a61736a57c9089d3a43509190a35050565b600082826040516020018083838082843780830192505050925050506040516020818303038152906040528051906020012090505b92915050565b6106f882826107ef565b610703576000610705565b815b600160a060020a03928316600081815260208181526040808320600160e060020a031996909616808452958252808320805473ffffffffffffffffffffffffffffffffffffffff19169590971694909417909555908152600284528181209281529190925220805460ff19166001179055565b600080600160a060020a038416156107905783610792565b335b905061079d8361092a565b156107c357826107ad82826108aa565b6107b85760006107ba565b815b925050506106e8565b600160a060020a0390811660009081526020818152604080832086845290915290205416905092915050565b6000808061081d857f01ffc9a70000000000000000000000000000000000000000000000000000000061094c565b909250905081158061082d575080155b1561083d576000925050506106e8565b61084f85600160e060020a031961094c565b909250905081158061086057508015155b15610870576000925050506106e8565b61087a858561094c565b909250905060018214801561088f5750806001145b1561089f576001925050506106e8565b506000949350505050565b600160a060020a0382166000908152600260209081526040808320600160e060020a03198516845290915281205460ff1615156108f2576108eb83836107ef565b90506106e8565b50600160a060020a03808316600081815260208181526040808320600160e060020a0319871684529091529020549091161492915050565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff161590565b6040517f01ffc9a7000000000000000000000000000000000000000000000000000000008082526004820183905260009182919060208160248189617530fa90519096909550935050505056fea165627a7a72305820377f4a2d4301ede9949f163f319021a6e9c687c292a5e2b2c4734c126b524e6c00291ba01820182018201820182018201820182018201820182018201820182018201820a0182018201820182018201820182018201820182018201820182018201820182004f87e8085174876e800830186a08080ad601f80600e600039806000f350fe60003681823780368234f58015156014578182fd5b80825250506014600cf31ba02222222222222222222222222222222222222222222222222222222222222222a0222222222222222222222222222222222222222222222222222222222222222204f9016c8085174876e8008303c4d88080b90154608060405234801561001057600080fd5b50610134806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80634af63f0214602d575b600080fd5b60cf60048036036040811015604157600080fd5b810190602081018135640100000000811115605b57600080fd5b820183602082011115606c57600080fd5b80359060200191846001830284011164010000000083111715608d57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550509135925060eb915050565b604080516001600160a01b039092168252519081900360200190f35b6000818351602085016000f5939250505056fea26469706673582212206b44f8a82cb6b156bfcc3dc6aadd6df4eefd204bc928a4397fd15dacf6d5320564736f6c634300060200331b8324700082247004f8a58085174876e800830186a08080b853604580600e600039806000f350fe7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf31ba02222222222222222222222222222222222222222222222222222222222222222a02222222222222222222222222222222222222222222222222222222222222222a264697066735822122037c3fd90ae3600432601addaadc5c240ee4220313cc649bd8f62d6d28cff166364736f6c634300080c0033", - "accessList": [], - "hash": "0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0", - "v": 0, - "r": "0x91f15c508389a7cd1f5ca5d3dbed432784d2ffe01046788936678acaa2f5324a", - "s": "0x55e92514760eae10d6396533fac45da1f8c4688e0416635aa2429b9146985560", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - }, - "eigenDARollupManager": { - "interface": { - "fragments": [ - { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "_eigenDAServiceManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - { - "type": "function", - "name": "eigenDAServiceManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - { - "type": "function", - "name": "verifyBlob", - "constant": true, - "inputs": [ - { - "name": "blobHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "commitment", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "X", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "Y", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "dataLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "quorumBlobParams", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "blobVerificationProof", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchId", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "blobIndex", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "batchMetadata", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "blobHeadersRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "quorumNumbers", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "signedStakeForQuorums", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "signatoryRecordHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmationBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inclusionProof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "quorumIndices", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - ], - "_abiCoder": { - "coerceFunc": null - }, - "functions": { - "eigenDAServiceManager()": { - "type": "function", - "name": "eigenDAServiceManager", - "constant": true, - "inputs": [], - "outputs": [ - { - "name": null, - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - }, - "verifyBlob(((uint256,uint256),uint32,(uint8,uint8,uint8,uint32)[]),(uint32,uint32,((bytes32,bytes,bytes,uint32),bytes32,uint32),bytes,bytes))": { - "type": "function", - "name": "verifyBlob", - "constant": true, - "inputs": [ - { - "name": "blobHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "commitment", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "X", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - }, - { - "name": "Y", - "type": "uint256", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint256", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "dataLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "quorumBlobParams", - "type": "tuple[]", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": -1, - "arrayChildren": { - "name": null, - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "quorumNumber", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "adversaryThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "confirmationThresholdPercentage", - "type": "uint8", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint8", - "_isParamType": true - }, - { - "name": "chunkLength", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - "baseType": "array", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "blobVerificationProof", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchId", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "blobIndex", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - }, - { - "name": "batchMetadata", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "batchHeader", - "type": "tuple", - "indexed": null, - "components": [ - { - "name": "blobHeadersRoot", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "quorumNumbers", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "signedStakeForQuorums", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "signatoryRecordHash", - "type": "bytes32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes32", - "_isParamType": true - }, - { - "name": "confirmationBlockNumber", - "type": "uint32", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "uint32", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - }, - { - "name": "inclusionProof", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - }, - { - "name": "quorumIndices", - "type": "bytes", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "bytes", - "_isParamType": true - } - ], - "arrayLength": null, - "arrayChildren": null, - "baseType": "tuple", - "_isParamType": true - } - ], - "outputs": [], - "payable": false, - "stateMutability": "view", - "gas": { - "type": "BigNumber", - "hex": "0x0bdc7fc0" - }, - "_isFragment": true - } - }, - "errors": {}, - "events": {}, - "structs": {}, - "deploy": { - "name": null, - "type": "constructor", - "inputs": [ - { - "name": "_eigenDAServiceManager", - "type": "address", - "indexed": null, - "components": null, - "arrayLength": null, - "arrayChildren": null, - "baseType": "address", - "_isParamType": true - } - ], - "payable": false, - "stateMutability": "nonpayable", - "gas": null, - "_isFragment": true - }, - "_isInterface": true - }, - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - }, - "signer": { - "_isSigner": true, - "address": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "provider": { - "_isProvider": true, - "_events": [], - "_emitted": { - "block": 2213784, - "t:0xd0affb8ab813d98903718ed7dd214ba59ec99d056a469889625cbbb1a16e7951": 2213772, - "t:0xa783f3882594cda718e4fa8a566e9bc267bbe3ad5686967d41f9d80dbd3f4b76": 2213773, - "t:0xa24916e9812fd27931eca7e17e460086794346b45fcdd0c05289aba715736d09": 2213774, - "t:0x0af79b305dc16359251082cf097b9b163280d648484cbdb5cb595f387dbb821f": 2213775, - "t:0xb9b5524a0ed181f2402c11238592af095c018bce2e092a23b7a6144304ee8956": 2213776, - "t:0x3da1f80891a1416c3efa11e4dc3311414cf85b2f29445b1e08569599feeaa6b3": 2213777, - "t:0xb322450ab22fa9e02373f7e19e548cb3c08a88f86f5b93bfb2e0774fae59da7a": 2213778, - "t:0x21193c8352f5c5e9a0de26f5de3f5d451a4d0680b2ff26f1378a431e650a3056": 2213779, - "t:0x2ede2ca5c70db746c01c0000f53731bbb2d77cfd5b4fae0666f824530a1f577e": 2213780, - "t:0xe10ad38fa63fee6e27cd978b63dfc334338936488203ae32e8ed8717819df020": 2213781, - "t:0x9ac4b86319b5031746a8825cfe09d425af189248fe5e935a7904eeff38194a22": 2213782, - "t:0x9f4e2d857b0c963bd3b96addfee9848783adc2c06de6780d4c0640059fd967b0": 2213783, - "t:0x56d07ee93e49267d68e1458ecebdf253ca69de3fa284567cdca358687d9f484a": 2213784 - }, - "disableCcipRead": false, - "formatter": { - "formats": { - "transaction": {}, - "transactionRequest": {}, - "receiptLog": {}, - "receipt": {}, - "block": {}, - "blockWithTransactions": {}, - "filter": {}, - "filterLog": {} - } - }, - "anyNetwork": false, - "_networkPromise": {}, - "_maxInternalBlockNumber": 2213784, - "_lastBlockNumber": 2213784, - "_maxFilterBlockRange": 10, - "_pollingInterval": 4000, - "_fastQueryDate": 1724727073644, - "connection": { - "url": "https://ethereum-holesky-rpc.publicnode.com" - }, - "_nextId": 645, - "_eventLoopCache": { - "detectNetwork": null, - "eth_chainId": null, - "eth_blockNumber": null - }, - "_network": { - "chainId": 17000, - "name": "unknown" - }, - "_internalBlockNumber": {}, - "_fastBlockNumber": 2213784, - "_fastBlockNumberPromise": {}, - "_poller": null, - "_bootstrapPoll": null - } - }, - "callStatic": {}, - "estimateGas": {}, - "functions": {}, - "populateTransaction": {}, - "filters": {}, - "_runningEvents": {}, - "_wrappedEmits": {}, - "address": "0x0a7C7C49D291ed4B15c90A06353236fA78b7ca97", - "resolvedAddress": {}, - "deployTransaction": { - "type": 2, - "chainId": 17000, - "nonce": 183, - "maxPriorityFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f00" - }, - "maxFeePerGas": { - "type": "BigNumber", - "hex": "0x59682f0e" - }, - "gasPrice": null, - "gasLimit": { - "type": "BigNumber", - "hex": "0x0506fd" - }, - "to": null, - "value": { - "type": "BigNumber", - "hex": "0x00" - }, - "data": "0x60a060405234801561001057600080fd5b5060405161057638038061057683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516104e6610090600039600081816055015260c401526104e66000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063c18e77381461003b578063fc30cad014610050575b600080fd5b61004e610049366004610122565b610093565b005b6100777f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200160405180910390f35b60405163219460e160e21b815273de1b292fe88cfab3f6689ce86490b6ff51e8b271906386518384906100ee9085907f00000000000000000000000000000000000000000000000000000000000000009086906004016103fe565b60006040518083038186803b15801561010657600080fd5b505af415801561011a573d6000803e3d6000fd5b505050505050565b6000806040838503121561013557600080fd5b823567ffffffffffffffff8082111561014d57600080fd5b908401906080828703121561016157600080fd5b9092506020840135908082111561017757600080fd5b50830160a0818603121561018a57600080fd5b809150509250929050565b803563ffffffff811681146101a957600080fd5b919050565b803560ff811681146101a957600080fd5b8183526000602080850194508260005b858110156102355760ff806101e3846101ae565b168852806101f28585016101ae565b16848901526040816102058286016101ae565b169089015250606063ffffffff61021d848301610195565b169088015260809687019691909101906001016101cf565b509495945050505050565b6000808335601e1984360301811261025757600080fd5b830160208101925035905067ffffffffffffffff81111561027757600080fd5b80360383131561028657600080fd5b9250929050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b600063ffffffff806102c784610195565b168452806102d760208501610195565b1660208501526040830135605e198436030181126102f457600080fd5b60a060408601528301803536829003607e1901811261031257600080fd5b606060a0870152810180356101008701526103306020820182610240565b60806101208901526103476101808901828461028d565b9150506103576040830183610240565b88830360ff19016101408a015261036f83828461028d565b925050508361038060608401610195565b16610160880152602083013560c088015261039d60408401610195565b63ffffffff811660e089015293506103b86060870187610240565b9450925086810360608801526103cf81858561028d565b93505050506103e16080840184610240565b85830360808701526103f483828461028d565b9695505050505050565b60608152833560608201526020840135608082015263ffffffff61042460408601610195565b1660a082015260006060850135601e1986360301811261044357600080fd5b8501803567ffffffffffffffff81111561045c57600080fd5b8060071b360387131561046e57600080fd5b608060c085015261048660e0850182602085016101bf565b91505061049e60208401866001600160a01b03169052565b82810360408401526103f481856102b656fea26469706673582212207cf3c79a0983b776d41eda887443fa5f355db6e801ebeced1152f28396d8a83e64736f6c634300080c003300000000000000000000000054a03db2784e3d0acc08344d05385d0b62d4f432", - "accessList": [], - "hash": "0x7491dc35fba593b5e84b0e70bcda41d7f7233cb073839dec26f7baf49dc30e14", - "v": 1, - "r": "0x4599c7dfbef154b2426934e5293304837766d72ed8d7e06b9d9f718815cbf4ab", - "s": "0x57150556ee5e06d8142a2f0d42f7ba8c5f1d1b3bcad73717e1dc7d68a262404d", - "from": "0x77b2cf6e1Ba57902C05f1898A97b9B0557100263", - "confirmations": 0 - } - } -} diff --git a/slither.db.json b/slither.db.json index dae73509..4b5fb9a3 100644 --- a/slither.db.json +++ b/slither.db.json @@ -1,29759 +1 @@ -[ - { - "elements": [ - { - "type": "variable", - "name": "anyTrustFastConfirmer", - "source_mapping": { - "start": 2460, - "length": 36, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [80], - "starting_column": 5, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6793, - "length": 334, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [176, 177, 178, 179, 180], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32,bytes32)" - } - } - ], - "description": "RollupCore.anyTrustFastConfirmer (src/rollup/RollupCore.sol#80) is never initialized. It is used in:\n\t- AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32) (src/rollup/RollupUserLogic.sol#176-180)\n", - "markdown": "[RollupCore.anyTrustFastConfirmer](src/rollup/RollupCore.sol#L80) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32)](src/rollup/RollupUserLogic.sol#L176-L180)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L80", - "id": "7588d31598e0049c45ba6922d304b0edadbf1308b5a8af9527dffbbc4dc61ac4", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21211, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, - 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 544, 545, 546, 547 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", - "source_mapping": { - "start": 22554, - "length": 69, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [542], - "starting_column": 9, - "ending_column": 78 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21211, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, - 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 544, 545, 546, 547 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - }, - { - "type": "node", - "name": "baseStake * multiplier", - "source_mapping": { - "start": 22702, - "length": 29, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [546], - "starting_column": 9, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21211, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, - 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 544, 545, 546, 547 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#501-547) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#542)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#546)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L501-L547) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L542)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L546)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L501-L547", - "id": "c6b99e53c65770259b3301c94d2bc1a08086bddcc14611a28cdd3ac02bb85aab", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21211, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, - 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 544, 545, 546, 547 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier == 0", - "source_mapping": { - "start": 22637, - "length": 15, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [543], - "starting_column": 13, - "ending_column": 28 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21211, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, - 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 544, 545, 546, 547 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#501-547) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#543)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L501-L547) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L543)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L501-L547", - "id": "cd03d61e7b54e2afdbbc53bb1658f1e1bb0ff6071019d4e450c88b97ab1ef062", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6793, - "length": 334, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [176, 177, 178, 179, 180], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash,WRONG_HASH)", - "source_mapping": { - "start": 6986, - "length": 81, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [178], - "starting_column": 9, - "ending_column": 90 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6793, - "length": 334, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [176, 177, 178, 179, 180], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32,bytes32)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32) (src/rollup/RollupUserLogic.sol#176-180) uses a dangerous strict equality:\n\t- require(bool,string)(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash,WRONG_HASH) (src/rollup/RollupUserLogic.sol#178)\n", - "markdown": "[AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32)](src/rollup/RollupUserLogic.sol#L176-L180) uses a dangerous strict equality:\n\t- [require(bool,string)(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash,WRONG_HASH)](src/rollup/RollupUserLogic.sol#L178)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L176-L180", - "id": "19ca8615fd5f71005c78c7230011930b328c1949f9594bef453bbe022663a85d", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 26420, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [640, 641, 642, 643], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - }, - { - "type": "node", - "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", - "source_mapping": { - "start": 26557, - "length": 68, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [642], - "starting_column": 9, - "ending_column": 77 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 26420, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [640, 641, 642, 643], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#640-643) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#642)\n", - "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L640-L643) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L642)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L640-L643", - "id": "5b92a43a048601d647a680d472499f14a3b778f80130e8c058351203f5d5fd5a", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 7909, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", - "source_mapping": { - "start": 8371, - "length": 72, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [213], - "starting_column": 9, - "ending_column": 81 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 7909, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#200-215) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#213)\n", - "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L200-L215) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L213)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L200-L215", - "id": "ccbd0d521b15fdf53a5989679bae528b0dc5388bbbb4c4fdc19a8b9bd9f86879", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13265, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - }, - { - "type": "node", - "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", - "source_mapping": { - "start": 15808, - "length": 398, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [374, 375, 376, 377, 378, 379, 380, 381, 382, 383], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13265, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", - "source_mapping": { - "start": 16750, - "length": 317, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409], - "starting_column": 9, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallengeHelper", - "source_mapping": { - "start": 16402, - "length": 672, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", - "source_mapping": { - "start": 16242, - "length": 56, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [385], - "starting_column": 9, - "ending_column": 65 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13265, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26133, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker1].currentChallenge = challenge", - "source_mapping": { - "start": 13618, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [384], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13491, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [379, 380, 381, 382, 383, 384, 385, 386], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker2].currentChallenge = challenge", - "source_mapping": { - "start": 13676, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [385], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13491, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [379, 380, 381, 382, 383, 384, 385, 386], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - } - ], - "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#315-388):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#374-383)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#399-409)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#385)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#385)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#379-386)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#393-399)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#508-512)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#489-501)\n", - "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L315-L388):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L374-L383)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L399-L409)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L385)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L385)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L379-L386)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L393-L399)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L508-L512)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L489-L501)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L315-L388", - "id": "2b29c60586106261585a7463cf78d2dc6e7c2d56072499e590e932df559d24bb", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "anyTrustFastConfirmer", - "source_mapping": { - "start": 2460, - "length": 36, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [80], - "starting_column": 5, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6800, - "length": 401, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [176, 177, 178, 179, 180, 181], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)" - } - } - ], - "description": "RollupCore.anyTrustFastConfirmer (src/rollup/RollupCore.sol#80) is never initialized. It is used in:\n\t- AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32) (src/rollup/RollupUserLogic.sol#176-181)\n", - "markdown": "[RollupCore.anyTrustFastConfirmer](src/rollup/RollupCore.sol#L80) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)](src/rollup/RollupUserLogic.sol#L176-L181)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L80", - "id": "73f909a3e549c85be9403f39fd73d421a43658f2516798cb75e1788e512992f2", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21285, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", - "source_mapping": { - "start": 22628, - "length": 69, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [543], - "starting_column": 9, - "ending_column": 78 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21285, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - }, - { - "type": "node", - "name": "baseStake * multiplier", - "source_mapping": { - "start": 22776, - "length": 29, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [547], - "starting_column": 9, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21285, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#502-548) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#543)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#547)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L502-L548) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L543)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L547)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L502-L548", - "id": "a06a90d9213a90fab9e69dcb5ff30aff7af9ca537f078f891088bb6e179d0c41", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21285, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier == 0", - "source_mapping": { - "start": 22711, - "length": 15, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [544], - "starting_column": 13, - "ending_column": 28 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21285, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 544, 545, 546, 547, 548 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#502-548) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#544)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L502-L548) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L544)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L502-L548", - "id": "f0540633dca6b3c5acc4f012e6533bb6b22a026d8ff3b90b8585b50c348b0d5d", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6800, - "length": 401, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [176, 177, 178, 179, 180, 181], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(nodeHash == getNodeStorage(nodeNum).nodeHash,WRONG_HASH)", - "source_mapping": { - "start": 7074, - "length": 67, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [179], - "starting_column": 9, - "ending_column": 76 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6800, - "length": 401, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [176, 177, 178, 179, 180, 181], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32) (src/rollup/RollupUserLogic.sol#176-181) uses a dangerous strict equality:\n\t- require(bool,string)(nodeHash == getNodeStorage(nodeNum).nodeHash,WRONG_HASH) (src/rollup/RollupUserLogic.sol#179)\n", - "markdown": "[AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)](src/rollup/RollupUserLogic.sol#L176-L181) uses a dangerous strict equality:\n\t- [require(bool,string)(nodeHash == getNodeStorage(nodeNum).nodeHash,WRONG_HASH)](src/rollup/RollupUserLogic.sol#L179)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L176-L181", - "id": "d81d8afbfd2634a30a7859c5a5e586e9810463b8236da8bf559155d43b58a230", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 26494, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [641, 642, 643, 644], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - }, - { - "type": "node", - "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", - "source_mapping": { - "start": 26631, - "length": 68, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [643], - "starting_column": 9, - "ending_column": 77 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 26494, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [641, 642, 643, 644], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#641-644) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#643)\n", - "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L641-L644) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L643)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L641-L644", - "id": "3323048300e79cff852072e2a5dd523379c0c9072bfb004b3ba5bd0d09c86c3f", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 7983, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", - "source_mapping": { - "start": 8445, - "length": 72, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [214], - "starting_column": 9, - "ending_column": 81 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 7983, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#201-216) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#214)\n", - "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L201-L216) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L214)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L201-L216", - "id": "45ab4c7ef9266f342edc09390b14e6ebbb5742734ae6570773770ba6b1be22df", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13339, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - }, - { - "type": "node", - "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", - "source_mapping": { - "start": 15882, - "length": 398, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [375, 376, 377, 378, 379, 380, 381, 382, 383, 384], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13339, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", - "source_mapping": { - "start": 16824, - "length": 317, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410], - "starting_column": 9, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallengeHelper", - "source_mapping": { - "start": 16476, - "length": 672, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", - "source_mapping": { - "start": 16316, - "length": 56, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [386], - "starting_column": 9, - "ending_column": 65 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13339, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 26207, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker1].currentChallenge = challenge", - "source_mapping": { - "start": 13618, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [384], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13491, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [379, 380, 381, 382, 383, 384, 385, 386], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker2].currentChallenge = challenge", - "source_mapping": { - "start": 13676, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [385], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13491, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [379, 380, 381, 382, 383, 384, 385, 386], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - } - ], - "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#316-389):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#375-384)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#400-410)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#386)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#385)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#379-386)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#393-399)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#508-512)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#489-501)\n", - "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L316-L389):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L375-L384)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L400-L410)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L386)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L385)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L379-L386)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L393-L399)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L508-L512)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L489-L501)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L316-L389", - "id": "0c968d1b20454d8fd452f65b003e0966ae923df9d1ef17996b29defd85f3dc9e", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - }, - { - "type": "node", - "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", - "source_mapping": { - "start": 10156, - "length": 399, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [87, 88, 89, 90, 91, 92, 93, 94, 95, 96], - "starting_column": 13, - "ending_column": 15 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#87-96)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L87-L96)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", - "id": "58b5f7a8d77486bc6173862a853121ecdf5d9979f84cc2e05b66e0f0fd11218c", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10685, - "length": 1095, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - }, - { - "type": "node", - "name": "address(msg.sender).transfer(address(this).balance)", - "source_mapping": { - "start": 11712, - "length": 51, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [142], - "starting_column": 13, - "ending_column": 64 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10685, - "length": 1095, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper.perform(address,address,uint256) (src/rollup/DeployHelper.sol#102-144) sends eth to arbitrary user\n\tDangerous calls:\n\t- address(msg.sender).transfer(address(this).balance) (src/rollup/DeployHelper.sol#142)\n", - "markdown": "[DeployHelper.perform(address,address,uint256)](src/rollup/DeployHelper.sol#L102-L144) sends eth to arbitrary user\n\tDangerous calls:\n\t- [address(msg.sender).transfer(address(this).balance)](src/rollup/DeployHelper.sol#L142)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L102-L144", - "id": "ce5c492f55419016b34eb4e4de36fb8212599a42274960d6402d10a63f45ad40", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "anyTrustFastConfirmer", - "source_mapping": { - "start": 2460, - "length": 36, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [80], - "starting_column": 5, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "fastConfirmNextNode", - "source_mapping": { - "start": 6703, - "length": 225, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [175, 176, 177, 178], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "fastConfirmNextNode(bytes32,bytes32)" - } - } - ], - "description": "RollupCore.anyTrustFastConfirmer (src/rollup/RollupCore.sol#80) is never initialized. It is used in:\n\t- AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32) (src/rollup/RollupUserLogic.sol#175-178)\n", - "markdown": "[RollupCore.anyTrustFastConfirmer](src/rollup/RollupCore.sol#L80) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32)](src/rollup/RollupUserLogic.sol#L175-L178)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L80", - "id": "18d2bfd017f6e3f4e743eb058275a178a0fd6d2d88265a51e06df0a8d6cd6473", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - }, - { - "type": "node", - "name": "feeAmountNativeDenominated = feeAmount / (10 ** (18 - decimals))", - "source_mapping": { - "start": 9268, - "length": 62, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [66], - "starting_column": 17, - "ending_column": 79 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - } - } - }, - { - "type": "node", - "name": "feeAmountNativeDenominated * (10 ** (18 - decimals)) < feeAmount", - "source_mapping": { - "start": 9393, - "length": 62, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [68], - "starting_column": 21, - "ending_column": 83 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) performs a multiplication on the result of a division:\n\t- feeAmountNativeDenominated = feeAmount / (10 ** (18 - decimals)) (src/rollup/DeployHelper.sol#66)\n\t- feeAmountNativeDenominated * (10 ** (18 - decimals)) < feeAmount (src/rollup/DeployHelper.sol#68)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) performs a multiplication on the result of a division:\n\t- [feeAmountNativeDenominated = feeAmount / (10 ** (18 - decimals))](src/rollup/DeployHelper.sol#L66)\n\t- [feeAmountNativeDenominated * (10 ** (18 - decimals)) < feeAmount](src/rollup/DeployHelper.sol#L68)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", - "id": "4fb20a676d1f3bfb16ac2bd8d3fe3bbb5a365c9934ae12d86b9b88967edde290", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_scaleDownToNativeDecimals", - "source_mapping": { - "start": 13092, - "length": 449, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 12840, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_scaleDownToNativeDecimals(uint256,uint8)" - } - }, - { - "type": "node", - "name": "scaledAmount = amount / (10 ** (18 - decimals))", - "source_mapping": { - "start": 13302, - "length": 45, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [326], - "starting_column": 13, - "ending_column": 58 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_scaleDownToNativeDecimals", - "source_mapping": { - "start": 13092, - "length": 449, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 12840, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_scaleDownToNativeDecimals(uint256,uint8)" - } - } - } - }, - { - "type": "node", - "name": "scaledAmount * (10 ** (18 - decimals)) < amount", - "source_mapping": { - "start": 13402, - "length": 45, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [328], - "starting_column": 17, - "ending_column": 62 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_scaleDownToNativeDecimals", - "source_mapping": { - "start": 13092, - "length": 449, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 12840, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_scaleDownToNativeDecimals(uint256,uint8)" - } - } - } - } - ], - "description": "RollupCreator._scaleDownToNativeDecimals(uint256,uint8) (src/rollup/RollupCreator.sol#319-333) performs a multiplication on the result of a division:\n\t- scaledAmount = amount / (10 ** (18 - decimals)) (src/rollup/RollupCreator.sol#326)\n\t- scaledAmount * (10 ** (18 - decimals)) < amount (src/rollup/RollupCreator.sol#328)\n", - "markdown": "[RollupCreator._scaleDownToNativeDecimals(uint256,uint8)](src/rollup/RollupCreator.sol#L319-L333) performs a multiplication on the result of a division:\n\t- [scaledAmount = amount / (10 ** (18 - decimals))](src/rollup/RollupCreator.sol#L326)\n\t- [scaledAmount * (10 ** (18 - decimals)) < amount](src/rollup/RollupCreator.sol#L328)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L319-L333", - "id": "dfee0ddb602c8f74926e48357bc4e6a51a2881e92e8dc12e111f59780c4affb8", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21012, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", - "source_mapping": { - "start": 22355, - "length": 69, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [540], - "starting_column": 9, - "ending_column": 78 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21012, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - }, - { - "type": "node", - "name": "baseStake * multiplier", - "source_mapping": { - "start": 22503, - "length": 29, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [544], - "starting_column": 9, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21012, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#499-545) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#540)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#544)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L499-L545) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L540)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L544)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L499-L545", - "id": "2803a8de725e2165f69c9445b653745db069a7cfd61b8cc7b16da012952dc7f5", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20694, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, - 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)", - "source_mapping": { - "start": 21435, - "length": 193, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [583, 584, 585, 586, 587], - "starting_column": 13, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20694, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, - 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - } - } - ], - "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#564-678) uses a dangerous strict equality:\n\t- require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH) (src/rollup/RollupCore.sol#583-587)\n", - "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L564-L678) uses a dangerous strict equality:\n\t- [require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)](src/rollup/RollupCore.sol#L583-L587)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L564-L678", - "id": "a6975dd3860f8b5f0ecafe0488b0b42245ca3c01b6eb97806a28024e4594f214", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20694, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, - 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)", - "source_mapping": { - "start": 23889, - "length": 144, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [636, 637, 638, 639], - "starting_column": 13, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20694, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, - 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, - 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - } - } - ], - "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#564-678) uses a dangerous strict equality:\n\t- require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH) (src/rollup/RollupCore.sol#636-639)\n", - "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L564-L678) uses a dangerous strict equality:\n\t- [require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)](src/rollup/RollupCore.sol#L636-L639)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L564-L678", - "id": "3b3dac1beaad095c507198b6bb9f705f811752b33542b85f5e042f86bec5fb00", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21012, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier == 0", - "source_mapping": { - "start": 22438, - "length": 15, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [541], - "starting_column": 13, - "ending_column": 28 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 21012, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#499-545) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#541)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L499-L545) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L541)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L499-L545", - "id": "d6f41cb5c33b4595428f9030c7e4c9a13c4023ba81089f63456a41d8784bd753", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 26221, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [638, 639, 640, 641], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - }, - { - "type": "node", - "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", - "source_mapping": { - "start": 26358, - "length": 68, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [640], - "starting_column": 9, - "ending_column": 77 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 26221, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [638, 639, 640, 641], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#638-641) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#640)\n", - "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L638-L641) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L640)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L638-L641", - "id": "7bbbccc60c30858495f1002fa4f96507c8f35e5225b241a5dab5ec293383b044", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 7710, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", - "source_mapping": { - "start": 8172, - "length": 72, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [211], - "starting_column": 9, - "ending_column": 81 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 7710, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#198-213) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#211)\n", - "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L198-L213) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L211)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L198-L213", - "id": "8e5cdf0b77d052567cdd55e34a5291c9b1e139a5df0033fdf1de430263047d89", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "node", - "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)", - "source_mapping": { - "start": 10820, - "length": 198, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [107, 108, 109, 110, 111, 112, 113, 114], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10685, - "length": 1095, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - } - } - }, - { - "type": "node", - "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)", - "source_mapping": { - "start": 10820, - "length": 198, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [107, 108, 109, 110, 111, 112, 113, 114], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10685, - "length": 1095, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - } - } - } - ], - "description": "Multiple retryable tickets created in the same function:\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#107-114)\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#107-114)\n", - "markdown": "Multiple retryable tickets created in the same function:\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L107-L114)\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L107-L114)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L107-L114", - "id": "f31d620e4b82e77afe7ac6649042f283243e9582402f79ba35dacb2026ef6aa7", - "check": "out-of-order-retryable", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13066, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, - 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - }, - { - "type": "node", - "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", - "source_mapping": { - "start": 15609, - "length": 398, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [372, 373, 374, 375, 376, 377, 378, 379, 380, 381], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13066, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", - "source_mapping": { - "start": 16551, - "length": 317, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407], - "starting_column": 9, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallengeHelper", - "source_mapping": { - "start": 16203, - "length": 672, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", - "source_mapping": { - "start": 16043, - "length": 56, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [383], - "starting_column": 9, - "ending_column": 65 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 13066, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25934, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker1].currentChallenge = challenge", - "source_mapping": { - "start": 13618, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [384], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13491, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [379, 380, 381, 382, 383, 384, 385, 386], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker2].currentChallenge = challenge", - "source_mapping": { - "start": 13676, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [385], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13491, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [379, 380, 381, 382, 383, 384, 385, 386], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - } - ], - "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#313-386):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#372-381)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#397-407)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#383)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#385)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#379-386)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#393-399)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#508-512)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#489-501)\n", - "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L313-L386):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L372-L381)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L397-L407)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L383)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L385)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L379-L386)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L393-L399)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L508-L512)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L489-L501)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L313-L386", - "id": "c426748e54bb463a55d94c54cd2dffbe8b77ffd98bce03600799e5fe749a7b1d", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeTransactionImpl", - "source_mapping": { - "start": 7336, - "length": 1225, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 12161, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326, 327, 328, 329, 330, 331, 332, 333, 334, 335 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)" - } - }, - { - "type": "node", - "name": "executeBridgeCall(to,amountToUnlock,data)", - "source_mapping": { - "start": 8479, - "length": 43, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [226], - "starting_column": 9, - "ending_column": 52 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeTransactionImpl", - "source_mapping": { - "start": 7336, - "length": 1225, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 12161, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "(success,returndata) = bridge.executeCall(to,value,data)", - "source_mapping": { - "start": 10189, - "length": 77, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [279], - "starting_column": 9, - "ending_column": 86 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeBridgeCall", - "source_mapping": { - "start": 10067, - "length": 594, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 12161, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeBridgeCall(address,uint256,bytes)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "context = prevContext", - "source_mapping": { - "start": 8533, - "length": 21, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [228], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeTransactionImpl", - "source_mapping": { - "start": 7336, - "length": 1225, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 12161, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "context" - } - } - ], - "description": "Reentrancy in AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-229):\n\tExternal calls:\n\t- executeBridgeCall(to,amountToUnlock,data) (src/bridge/AbsOutbox.sol#226)\n\t\t- (success,returndata) = bridge.executeCall(to,value,data) (src/bridge/AbsOutbox.sol#279)\n\tState variables written after the call(s):\n\t- context = prevContext (src/bridge/AbsOutbox.sol#228)\n\tAbsOutbox.context (src/bridge/AbsOutbox.sol#51) can be used in cross function reentrancies:\n\t- AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-229)\n\t- AbsOutbox.initialize(IBridge) (src/bridge/AbsOutbox.sol#63-79)\n\t- AbsOutbox.l2ToL1Block() (src/bridge/AbsOutbox.sol#118-123)\n\t- AbsOutbox.l2ToL1EthBlock() (src/bridge/AbsOutbox.sol#126-131)\n\t- AbsOutbox.l2ToL1OutputId() (src/bridge/AbsOutbox.sol#147-152)\n\t- AbsOutbox.l2ToL1Sender() (src/bridge/AbsOutbox.sol#110-115)\n\t- AbsOutbox.l2ToL1Timestamp() (src/bridge/AbsOutbox.sol#134-139)\n\t- AbsOutbox.postUpgradeInit() (src/bridge/AbsOutbox.sol#81-92)\n", - "markdown": "Reentrancy in [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L229):\n\tExternal calls:\n\t- [executeBridgeCall(to,amountToUnlock,data)](src/bridge/AbsOutbox.sol#L226)\n\t\t- [(success,returndata) = bridge.executeCall(to,value,data)](src/bridge/AbsOutbox.sol#L279)\n\tState variables written after the call(s):\n\t- [context = prevContext](src/bridge/AbsOutbox.sol#L228)\n\t[AbsOutbox.context](src/bridge/AbsOutbox.sol#L51) can be used in cross function reentrancies:\n\t- [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L229)\n\t- [AbsOutbox.initialize(IBridge)](src/bridge/AbsOutbox.sol#L63-L79)\n\t- [AbsOutbox.l2ToL1Block()](src/bridge/AbsOutbox.sol#L118-L123)\n\t- [AbsOutbox.l2ToL1EthBlock()](src/bridge/AbsOutbox.sol#L126-L131)\n\t- [AbsOutbox.l2ToL1OutputId()](src/bridge/AbsOutbox.sol#L147-L152)\n\t- [AbsOutbox.l2ToL1Sender()](src/bridge/AbsOutbox.sol#L110-L115)\n\t- [AbsOutbox.l2ToL1Timestamp()](src/bridge/AbsOutbox.sol#L134-L139)\n\t- [AbsOutbox.postUpgradeInit()](src/bridge/AbsOutbox.sol#L81-L92)\n", - "first_markdown_element": "src/bridge/AbsOutbox.sol#L196-L229", - "id": "b42ba1855895a9ed1833beaf1f3c481a846ec27a28578623d5aca757932249c1", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 15056, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, 393 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - }, - { - "type": "node", - "name": "challengeManager.clearChallenge(chall)", - "source_mapping": { - "start": 10950, - "length": 38, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [271], - "starting_column": 13, - "ending_column": 51 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 15056, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "clearChallenge(stakerA[i])", - "source_mapping": { - "start": 10870, - "length": 26, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [269], - "starting_column": 13, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 15056, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "staker.currentChallenge = NO_CHAL_INDEX", - "source_mapping": { - "start": 13178, - "length": 39, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [370], - "starting_column": 9, - "ending_column": 48 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "clearChallenge", - "source_mapping": { - "start": 13053, - "length": 171, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [368, 369, 370, 371], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "clearChallenge(address)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "clearChallenge(stakerB[i])", - "source_mapping": { - "start": 10910, - "length": 26, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [270], - "starting_column": 13, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 15056, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "staker.currentChallenge = NO_CHAL_INDEX", - "source_mapping": { - "start": 13178, - "length": 39, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [370], - "starting_column": 9, - "ending_column": 48 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "clearChallenge", - "source_mapping": { - "start": 13053, - "length": 171, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [368, 369, 370, 371], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24629, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "clearChallenge(address)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - } - ], - "description": "Reentrancy in RollupAdminLogic.forceResolveChallenge(address[],address[]) (src/rollup/RollupAdminLogic.sol#258-274):\n\tExternal calls:\n\t- challengeManager.clearChallenge(chall) (src/rollup/RollupAdminLogic.sol#271)\n\tState variables written after the call(s):\n\t- clearChallenge(stakerA[i]) (src/rollup/RollupAdminLogic.sol#269)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#370)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- clearChallenge(stakerB[i]) (src/rollup/RollupAdminLogic.sol#270)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#370)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n", - "markdown": "Reentrancy in [RollupAdminLogic.forceResolveChallenge(address[],address[])](src/rollup/RollupAdminLogic.sol#L258-L274):\n\tExternal calls:\n\t- [challengeManager.clearChallenge(chall)](src/rollup/RollupAdminLogic.sol#L271)\n\tState variables written after the call(s):\n\t- [clearChallenge(stakerA[i])](src/rollup/RollupAdminLogic.sol#L269)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L370)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [clearChallenge(stakerB[i])](src/rollup/RollupAdminLogic.sol#L270)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L370)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n", - "first_markdown_element": "src/rollup/RollupAdminLogic.sol#L258-L274", - "id": "3a149381278a1de4529bcf77f84d92625154d32ad83406ea2d17142b95cb4a53", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - }, - { - "type": "node", - "name": "IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmountNativeDenominated,data:})", - "source_mapping": { - "start": 9674, - "length": 451, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85], - "starting_column": 13, - "ending_column": 15 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) ignores return value by IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmountNativeDenominated,data:}) (src/rollup/DeployHelper.sol#75-85)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) ignores return value by [IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmountNativeDenominated,data:})](src/rollup/DeployHelper.sol#L75-L85)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", - "id": "bc3bd802cf43553ebdde2f5a650bd37e2ba8471fe3f9de0d0bdbfad1fced1d00", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - }, - { - "type": "node", - "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", - "source_mapping": { - "start": 10156, - "length": 399, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [87, 88, 89, 90, 91, 92, 93, 94, 95, 96], - "starting_column": 13, - "ending_column": 15 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) ignores return value by IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#87-96)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) ignores return value by [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L87-L96)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", - "id": "fb1bf81f56dbacb484c41b74ff6b97327ed3ab06f9599b6d9c236b51f9a320ad", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - }, - { - "type": "node", - "name": "IInboxBase(inbox).sendL2Message(payload)", - "source_mapping": { - "start": 10632, - "length": 40, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [99], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8525, - "length": 2154, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 525, - "length": 11692, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) ignores return value by IInboxBase(inbox).sendL2Message(payload) (src/rollup/DeployHelper.sol#99)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) ignores return value by [IInboxBase(inbox).sendL2Message(payload)](src/rollup/DeployHelper.sol#L99)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", - "id": "1c1cb22c16963df7619b9d485774b3c8fbd70bb511ebd2becbfca1ad7bd77e50", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "deploy", - "source_mapping": { - "start": 660, - "length": 435, - "filename_relative": "src/rollup/FactoryDeployerHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", - "filename_short": "src/rollup/FactoryDeployerHelper.sol", - "is_dependency": false, - "lines": [17, 18, 19, 20, 21, 22, 23, 24], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "FactoryDeployerHelper", - "source_mapping": { - "start": 373, - "length": 724, - "filename_relative": "src/rollup/FactoryDeployerHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", - "filename_short": "src/rollup/FactoryDeployerHelper.sol", - "is_dependency": false, - "lines": [ - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "deploy(address,uint256)" - } - }, - { - "type": "node", - "name": "IERC20(feeToken).transferFrom(msg.sender,inbox,amount)", - "source_mapping": { - "start": 955, - "length": 56, - "filename_relative": "src/rollup/FactoryDeployerHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", - "filename_short": "src/rollup/FactoryDeployerHelper.sol", - "is_dependency": false, - "lines": [22], - "starting_column": 9, - "ending_column": 65 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "deploy", - "source_mapping": { - "start": 660, - "length": 435, - "filename_relative": "src/rollup/FactoryDeployerHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", - "filename_short": "src/rollup/FactoryDeployerHelper.sol", - "is_dependency": false, - "lines": [17, 18, 19, 20, 21, 22, 23, 24], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "FactoryDeployerHelper", - "source_mapping": { - "start": 373, - "length": 724, - "filename_relative": "src/rollup/FactoryDeployerHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", - "filename_short": "src/rollup/FactoryDeployerHelper.sol", - "is_dependency": false, - "lines": [ - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "deploy(address,uint256)" - } - } - } - } - ], - "description": "FactoryDeployerHelper.deploy(address,uint256) (src/rollup/FactoryDeployerHelper.sol#17-24) ignores return value by IERC20(feeToken).transferFrom(msg.sender,inbox,amount) (src/rollup/FactoryDeployerHelper.sol#22)\n", - "markdown": "[FactoryDeployerHelper.deploy(address,uint256)](src/rollup/FactoryDeployerHelper.sol#L17-L24) ignores return value by [IERC20(feeToken).transferFrom(msg.sender,inbox,amount)](src/rollup/FactoryDeployerHelper.sol#L22)\n", - "first_markdown_element": "src/rollup/FactoryDeployerHelper.sol#L17-L24", - "id": "b61f6cd7e1b9dac16bde231f4604f5082f9d2bb1141b083d7b0c790237076ce2", - "check": "unchecked-transfer", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - }, - { - "type": "node", - "name": "index == entries.length", - "source_mapping": { - "start": 9123, - "length": 23, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [255], - "starting_column": 13, - "ending_column": 36 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - } - } - ], - "description": "CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261) uses a dangerous strict equality:\n\t- index == entries.length (src/chain/CacheManager.sol#255)\n", - "markdown": "[CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261) uses a dangerous strict equality:\n\t- [index == entries.length](src/chain/CacheManager.sol#L255)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L240-L261", - "id": "d628a546b26bab7d17e51242113a300dee8b63d78108aa14fa547838f7c984b2", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.cacheProgram(program)", - "source_mapping": { - "start": 9005, - "length": 36, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [252], - "starting_column": 9, - "ending_column": 45 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "queueSize += size", - "source_mapping": { - "start": 9092, - "length": 17, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - } - ], - "description": "Reentrancy in CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261):\n\tExternal calls:\n\t- ARB_WASM_CACHE.cacheProgram(program) (src/chain/CacheManager.sol#252)\n\tState variables written after the call(s):\n\t- queueSize += size (src/chain/CacheManager.sol#254)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#196-205)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", - "markdown": "Reentrancy in [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.cacheProgram(program)](src/chain/CacheManager.sol#L252)\n\tState variables written after the call(s):\n\t- [queueSize += size](src/chain/CacheManager.sol#L254)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L196-L205)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L240-L261", - "id": "e3c59613b5f55bcaed6f72836989cdf48eec69a17bd181502982fefee7611e78", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 9356, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [264, 265, 266, 267, 268, 269, 270], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 9469, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [266], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 9356, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [264, 265, 266, 267, 268, 269, 270], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "delete entries[index]", - "source_mapping": { - "start": 9605, - "length": 21, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [269], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 9356, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [264, 265, 266, 267, 268, 269, 270], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - } - ], - "description": "Reentrancy in CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270):\n\tExternal calls:\n\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#266)\n\tState variables written after the call(s):\n\t- delete entries[index] (src/chain/CacheManager.sol#269)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", - "markdown": "Reentrancy in [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L266)\n\tState variables written after the call(s):\n\t- [delete entries[index]](src/chain/CacheManager.sol#L269)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L264-L270", - "id": "da879b6db94b2d7e9b0b7ac41852a5d4daca51e4947137749f0329b126127352", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2880, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89, 90, 91, 92], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - }, - { - "type": "node", - "name": "evictPrograms(type()(uint256).max)", - "source_mapping": { - "start": 2929, - "length": 32, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [90], - "starting_column": 9, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2880, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89, 90, 91, 92], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 9469, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [266], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 9356, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [264, 265, 266, 267, 268, 269, 270], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "delete entries", - "source_mapping": { - "start": 2971, - "length": 14, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [91], - "starting_column": 9, - "ending_column": 23 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2880, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89, 90, 91, 92], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - } - ], - "description": "Reentrancy in CacheManager.evictAll() (src/chain/CacheManager.sol#89-92):\n\tExternal calls:\n\t- evictPrograms(type()(uint256).max) (src/chain/CacheManager.sol#90)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#266)\n\tState variables written after the call(s):\n\t- delete entries (src/chain/CacheManager.sol#91)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", - "markdown": "Reentrancy in [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92):\n\tExternal calls:\n\t- [evictPrograms(type()(uint256).max)](src/chain/CacheManager.sol#L90)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L266)\n\tState variables written after the call(s):\n\t- [delete entries](src/chain/CacheManager.sol#L91)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L89-L92", - "id": "02366c421ff860e2f8a1d8cd1d277a7c7b74585fbb7afb043f28e6cf527b3d68", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6437, - "length": 420, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(address)" - } - }, - { - "type": "node", - "name": "(bid,index) = _makeSpace(asm)", - "source_mapping": { - "start": 6745, - "length": 45, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [189], - "starting_column": 9, - "ending_column": 54 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6437, - "length": 420, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(address)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 9469, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [266], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 9356, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [264, 265, 266, 267, 268, 269, 270], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "_addBid(bid,program,codehash,asm,index)", - "source_mapping": { - "start": 6800, - "length": 50, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [190], - "starting_column": 9, - "ending_column": 59 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6437, - "length": 420, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(address)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.cacheProgram(program)", - "source_mapping": { - "start": 9005, - "length": 36, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [252], - "starting_column": 9, - "ending_column": 45 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "_addBid(bid,program,codehash,asm,index)", - "source_mapping": { - "start": 6800, - "length": 50, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [190], - "starting_column": 9, - "ending_column": 59 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6437, - "length": 420, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(address)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "entries.push(entry)", - "source_mapping": { - "start": 9162, - "length": 19, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256], - "starting_column": 13, - "ending_column": 32 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "entries[index] = entry", - "source_mapping": { - "start": 9212, - "length": 22, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [258], - "starting_column": 13, - "ending_column": 35 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "_addBid(bid,program,codehash,asm,index)", - "source_mapping": { - "start": 6800, - "length": 50, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [190], - "starting_column": 9, - "ending_column": 59 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6437, - "length": 420, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(address)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - }, - { - "type": "node", - "name": "queueSize += size", - "source_mapping": { - "start": 9092, - "length": 17, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8665, - "length": 636, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 10045, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,address,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - } - ], - "description": "Reentrancy in CacheManager.placeBid(address) (src/chain/CacheManager.sol#179-191):\n\tExternal calls:\n\t- (bid,index) = _makeSpace(asm) (src/chain/CacheManager.sol#189)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#266)\n\t- _addBid(bid,program,codehash,asm,index) (src/chain/CacheManager.sol#190)\n\t\t- ARB_WASM_CACHE.cacheProgram(program) (src/chain/CacheManager.sol#252)\n\tState variables written after the call(s):\n\t- _addBid(bid,program,codehash,asm,index) (src/chain/CacheManager.sol#190)\n\t\t- entries.push(entry) (src/chain/CacheManager.sol#256)\n\t\t- entries[index] = entry (src/chain/CacheManager.sol#258)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n\t- _addBid(bid,program,codehash,asm,index) (src/chain/CacheManager.sol#190)\n\t\t- queueSize += size (src/chain/CacheManager.sol#254)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#196-205)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", - "markdown": "Reentrancy in [CacheManager.placeBid(address)](src/chain/CacheManager.sol#L179-L191):\n\tExternal calls:\n\t- [(bid,index) = _makeSpace(asm)](src/chain/CacheManager.sol#L189)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L266)\n\t- [_addBid(bid,program,codehash,asm,index)](src/chain/CacheManager.sol#L190)\n\t\t- [ARB_WASM_CACHE.cacheProgram(program)](src/chain/CacheManager.sol#L252)\n\tState variables written after the call(s):\n\t- [_addBid(bid,program,codehash,asm,index)](src/chain/CacheManager.sol#L190)\n\t\t- [entries.push(entry)](src/chain/CacheManager.sol#L256)\n\t\t- [entries[index] = entry](src/chain/CacheManager.sol#L258)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n\t- [_addBid(bid,program,codehash,asm,index)](src/chain/CacheManager.sol#L190)\n\t\t- [queueSize += size](src/chain/CacheManager.sol#L254)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L196-L205)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L179-L191", - "id": "0c16e4db0a475c13c57a12b678c8c00c11806c69f841246d0fbbc7448bde8935", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - }, - { - "type": "node", - "name": "index == entries.length", - "source_mapping": { - "start": 8731, - "length": 23, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [247], - "starting_column": 13, - "ending_column": 36 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - } - } - ], - "description": "CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253) uses a dangerous strict equality:\n\t- index == entries.length (src/chain/CacheManager.sol#247)\n", - "markdown": "[CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253) uses a dangerous strict equality:\n\t- [index == entries.length](src/chain/CacheManager.sol#L247)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L233-L253", - "id": "4c098b01c2961dc5b2294e0f72e7cf015b9600b3d18b28ada01a3659da0d5e6f", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.cacheCodehash(code)", - "source_mapping": { - "start": 8615, - "length": 34, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [244], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "queueSize += size", - "source_mapping": { - "start": 8700, - "length": 17, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [246], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - } - ], - "description": "Reentrancy in CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253):\n\tExternal calls:\n\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#244)\n\tState variables written after the call(s):\n\t- queueSize += size (src/chain/CacheManager.sol#246)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#189-198)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", - "markdown": "Reentrancy in [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L244)\n\tState variables written after the call(s):\n\t- [queueSize += size](src/chain/CacheManager.sol#L246)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L189-L198)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L233-L253", - "id": "b9f6ea80a6accee7014dea8d7e8b56ddc8f2ed2255b688758266f20c2bbf230e", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8955, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256, 257, 258, 259, 260, 261, 262], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 9068, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [258], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8955, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256, 257, 258, 259, 260, 261, 262], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "delete entries[index]", - "source_mapping": { - "start": 9204, - "length": 21, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [261], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8955, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256, 257, 258, 259, 260, 261, 262], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - } - ], - "description": "Reentrancy in CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262):\n\tExternal calls:\n\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#258)\n\tState variables written after the call(s):\n\t- delete entries[index] (src/chain/CacheManager.sol#261)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", - "markdown": "Reentrancy in [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L258)\n\tState variables written after the call(s):\n\t- [delete entries[index]](src/chain/CacheManager.sol#L261)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L256-L262", - "id": "4848413594e9f06020a2a4a3b7755e0ac5f0d7f7c22946958b361b50e6ce4a52", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2863, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89, 90, 91, 92], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - }, - { - "type": "node", - "name": "evictPrograms(type()(uint256).max)", - "source_mapping": { - "start": 2912, - "length": 32, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [90], - "starting_column": 9, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2863, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89, 90, 91, 92], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 9068, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [258], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8955, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256, 257, 258, 259, 260, 261, 262], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "delete entries", - "source_mapping": { - "start": 2954, - "length": 14, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [91], - "starting_column": 9, - "ending_column": 23 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2863, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89, 90, 91, 92], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - } - ], - "description": "Reentrancy in CacheManager.evictAll() (src/chain/CacheManager.sol#89-92):\n\tExternal calls:\n\t- evictPrograms(type()(uint256).max) (src/chain/CacheManager.sol#90)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#258)\n\tState variables written after the call(s):\n\t- delete entries (src/chain/CacheManager.sol#91)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", - "markdown": "Reentrancy in [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92):\n\tExternal calls:\n\t- [evictPrograms(type()(uint256).max)](src/chain/CacheManager.sol#L90)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L258)\n\tState variables written after the call(s):\n\t- [delete entries](src/chain/CacheManager.sol#L91)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L89-L92", - "id": "bf120df8d715208381d983040d42897d8dcac47177e732ee5496cde132d2f231", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6125, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - }, - { - "type": "node", - "name": "(bid,index) = _makeSpace(asm)", - "source_mapping": { - "start": 6389, - "length": 45, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [182], - "starting_column": 9, - "ending_column": 54 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6125, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 9068, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [258], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8955, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256, 257, 258, 259, 260, 261, 262], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "_addBid(bid,codehash,asm,index)", - "source_mapping": { - "start": 6444, - "length": 41, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [183], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6125, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.cacheCodehash(code)", - "source_mapping": { - "start": 8615, - "length": 34, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [244], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "_addBid(bid,codehash,asm,index)", - "source_mapping": { - "start": 6444, - "length": 41, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [183], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6125, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "entries.push(entry)", - "source_mapping": { - "start": 8770, - "length": 19, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [248], - "starting_column": 13, - "ending_column": 32 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "entries[index] = entry", - "source_mapping": { - "start": 8820, - "length": 22, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [250], - "starting_column": 13, - "ending_column": 35 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "_addBid(bid,codehash,asm,index)", - "source_mapping": { - "start": 6444, - "length": 41, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [183], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 6125, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - }, - { - "type": "node", - "name": "queueSize += size", - "source_mapping": { - "start": 8700, - "length": 17, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [246], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8300, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 471, - "length": 9644, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - } - ], - "description": "Reentrancy in CacheManager.placeBid(bytes32) (src/chain/CacheManager.sol#173-184):\n\tExternal calls:\n\t- (bid,index) = _makeSpace(asm) (src/chain/CacheManager.sol#182)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#258)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#183)\n\t\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#244)\n\tState variables written after the call(s):\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#183)\n\t\t- entries.push(entry) (src/chain/CacheManager.sol#248)\n\t\t- entries[index] = entry (src/chain/CacheManager.sol#250)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#183)\n\t\t- queueSize += size (src/chain/CacheManager.sol#246)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#189-198)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", - "markdown": "Reentrancy in [CacheManager.placeBid(bytes32)](src/chain/CacheManager.sol#L173-L184):\n\tExternal calls:\n\t- [(bid,index) = _makeSpace(asm)](src/chain/CacheManager.sol#L182)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L258)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L183)\n\t\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L244)\n\tState variables written after the call(s):\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L183)\n\t\t- [entries.push(entry)](src/chain/CacheManager.sol#L248)\n\t\t- [entries[index] = entry](src/chain/CacheManager.sol#L250)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L183)\n\t\t- [queueSize += size](src/chain/CacheManager.sol#L246)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L189-L198)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L173-L184", - "id": "436212c386c26726839a1cf3068734d839e7b01aab9f4594d2df94fcad8587cf", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_deployFactories", - "source_mapping": { - "start": 10566, - "length": 1163, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deployFactories(address,address,uint256)" - } - }, - { - "type": "node", - "name": "l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)", - "source_mapping": { - "start": 10973, - "length": 77, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [268], - "starting_column": 13, - "ending_column": 90 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deployFactories", - "source_mapping": { - "start": 10566, - "length": 1163, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deployFactories(address,address,uint256)" - } - } - } - }, - { - "type": "node", - "name": "(sent,None) = msg.sender.call{value: address(this).balance}()", - "source_mapping": { - "start": 11161, - "length": 65, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [272], - "starting_column": 13, - "ending_column": 78 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deployFactories", - "source_mapping": { - "start": 10566, - "length": 1163, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deployFactories(address,address,uint256)" - } - } - } - } - ], - "description": "RollupCreator._deployFactories(address,address,uint256) (src/rollup/RollupCreator.sol#255-285) sends eth to arbitrary user\n\tDangerous calls:\n\t- l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas) (src/rollup/RollupCreator.sol#268)\n\t- (sent,None) = msg.sender.call{value: address(this).balance}() (src/rollup/RollupCreator.sol#272)\n", - "markdown": "[RollupCreator._deployFactories(address,address,uint256)](src/rollup/RollupCreator.sol#L255-L285) sends eth to arbitrary user\n\tDangerous calls:\n\t- [l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)](src/rollup/RollupCreator.sol#L268)\n\t- [(sent,None) = msg.sender.call{value: address(this).balance}()](src/rollup/RollupCreator.sol#L272)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L255-L285", - "id": "33e46ab503ffc67db10a32c76db44b3d71085e8ccabf978afab4963ab79410b7", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - }, - { - "type": "node", - "name": "index == entries.length", - "source_mapping": { - "start": 8531, - "length": 23, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [245], - "starting_column": 13, - "ending_column": 36 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - } - } - ], - "description": "CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251) uses a dangerous strict equality:\n\t- index == entries.length (src/chain/CacheManager.sol#245)\n", - "markdown": "[CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251) uses a dangerous strict equality:\n\t- [index == entries.length](src/chain/CacheManager.sol#L245)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L231-L251", - "id": "3a781781186cbb842796b829845aa7945c024854a5354a602603028bf3bf838a", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "executeLinkModule", - "source_mapping": { - "start": 16420, - "length": 1090, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, - 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "(userMod,offset,None) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)", - "source_mapping": { - "start": 16918, - "length": 141, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [448, 449, 450, 451, 452], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeLinkModule", - "source_mapping": { - "start": 16420, - "length": 1090, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#433-464) ignores return value by (userMod,offset,None) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0) (src/osp/OneStepProverHostIo.sol#448-452)\n", - "markdown": "[OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L433-L464) ignores return value by [(userMod,offset,None) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)](src/osp/OneStepProverHostIo.sol#L448-L452)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L433-L464", - "id": "92ac837d702aee6d12fc38548f7f338739ba47bacbb9aa683450dead6b522b68", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1168, - "length": 3662, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 10198, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "(err,value,None) = mod.moduleMemory.load(index,readBytes,proof,0)", - "source_mapping": { - "start": 3641, - "length": 79, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [106], - "starting_column": 9, - "ending_column": 88 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1168, - "length": 3662, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 10198, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes) (src/osp/OneStepProverMemory.sol#36-131) ignores return value by (err,value,None) = mod.moduleMemory.load(index,readBytes,proof,0) (src/osp/OneStepProverMemory.sol#106)\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes)](src/osp/OneStepProverMemory.sol#L36-L131) ignores return value by [(err,value,None) = mod.moduleMemory.load(index,readBytes,proof,0)](src/osp/OneStepProverMemory.sol#L106)\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L36-L131", - "id": "b002aa15c2eafad3b5923f9ca2204b8ea235c930c19b94647b519331fc1abc4c", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - }, - { - "type": "node", - "name": "(None,ethSequencerInbox,ethInbox,None,None) = bridgeCreator.ethBasedTemplates()", - "source_mapping": { - "start": 5121, - "length": 115, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [117, 118], - "starting_column": 13, - "ending_column": 37 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - } - } - } - ], - "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (None,ethSequencerInbox,ethInbox,None,None) = bridgeCreator.ethBasedTemplates() (src/rollup/RollupCreator.sol#117-118)\n", - "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(None,ethSequencerInbox,ethInbox,None,None) = bridgeCreator.ethBasedTemplates()](src/rollup/RollupCreator.sol#L117-L118)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", - "id": "6ac2b9112a4ee35d3925d1fe7a7ff08b6979520c84e24a42eba70d56c25bfb49", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - }, - { - "type": "node", - "name": "(None,erc20SequencerInbox,erc20Inbox,None,None) = bridgeCreator.erc20BasedTemplates()", - "source_mapping": { - "start": 5509, - "length": 121, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [125, 126], - "starting_column": 13, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - } - } - } - ], - "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (None,erc20SequencerInbox,erc20Inbox,None,None) = bridgeCreator.erc20BasedTemplates() (src/rollup/RollupCreator.sol#125-126)\n", - "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(None,erc20SequencerInbox,erc20Inbox,None,None) = bridgeCreator.erc20BasedTemplates()](src/rollup/RollupCreator.sol#L125-L126)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", - "id": "a4a7309cfe7707c52e24933155fba88b888f432e0f2bd5db4106b9577b09fab3", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "lastProvedLeafContents", - "source_mapping": { - "start": 7133, - "length": 30, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [192], - "starting_column": 9, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryStore", - "source_mapping": { - "start": 4836, - "length": 3663, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 10198, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedLeafContents (src/osp/OneStepProverMemory.sol#192) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedLeafContents](src/osp/OneStepProverMemory.sol#L192) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L192", - "id": "00c7e5f6fcc242a5d65ca8b940bee5979b1e5fae2dfaad3a0f8f2ba6c6cd7a99", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "extractChallengeSegment", - "source_mapping": { - "start": 1364, - "length": 682, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 2649, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)" - } - }, - { - "type": "node", - "name": "segmentLength = selection.oldSegmentsLength / oldChallengeDegree", - "source_mapping": { - "start": 1611, - "length": 64, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [57], - "starting_column": 9, - "ending_column": 73 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "extractChallengeSegment", - "source_mapping": { - "start": 1364, - "length": 682, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 2649, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)" - } - } - } - }, - { - "type": "node", - "name": "segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition", - "source_mapping": { - "start": 1784, - "length": 87, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [59], - "starting_column": 9, - "ending_column": 96 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "extractChallengeSegment", - "source_mapping": { - "start": 1364, - "length": 682, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 2649, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)" - } - } - } - } - ], - "description": "ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection) (src/challenge/ChallengeLib.sol#51-63) performs a multiplication on the result of a division:\n\t- segmentLength = selection.oldSegmentsLength / oldChallengeDegree (src/challenge/ChallengeLib.sol#57)\n\t- segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition (src/challenge/ChallengeLib.sol#59)\n", - "markdown": "[ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection)](src/challenge/ChallengeLib.sol#L51-L63) performs a multiplication on the result of a division:\n\t- [segmentLength = selection.oldSegmentsLength / oldChallengeDegree](src/challenge/ChallengeLib.sol#L57)\n\t- [segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition](src/challenge/ChallengeLib.sol#L59)\n", - "first_markdown_element": "src/challenge/ChallengeLib.sol#L51-L63", - "id": "a4b93976a94b1cf6b99dc623ae954b79e816fc108466f521511aaa71a571ee62", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4469, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, - 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "rootOfUnityPower = (1 << 32) / fieldElementsPerBlob", - "source_mapping": { - "start": 9247, - "length": 59, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [229], - "starting_column": 17, - "ending_column": 76 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4469, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - }, - { - "type": "node", - "name": "rootOfUnityPower *= bitReversedIndex", - "source_mapping": { - "start": 9474, - "length": 36, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [232], - "starting_column": 17, - "ending_column": 53 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4469, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#128-250) performs a multiplication on the result of a division:\n\t- rootOfUnityPower = (1 << 32) / fieldElementsPerBlob (src/osp/OneStepProverHostIo.sol#229)\n\t- rootOfUnityPower *= bitReversedIndex (src/osp/OneStepProverHostIo.sol#232)\n", - "markdown": "[OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L128-L250) performs a multiplication on the result of a division:\n\t- [rootOfUnityPower = (1 << 32) / fieldElementsPerBlob](src/osp/OneStepProverHostIo.sol#L229)\n\t- [rootOfUnityPower *= bitReversedIndex](src/osp/OneStepProverHostIo.sol#L232)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L128-L250", - "id": "f0b43f8c42c636a0a6c208ac9bd013cf20177f73df6cf1ea5ab40b7aec7a50ca", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.cacheCodehash(code)", - "source_mapping": { - "start": 8415, - "length": 34, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [242], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "queueSize += size", - "source_mapping": { - "start": 8500, - "length": 17, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [244], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - } - ], - "description": "Reentrancy in CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251):\n\tExternal calls:\n\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#242)\n\tState variables written after the call(s):\n\t- queueSize += size (src/chain/CacheManager.sol#244)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#25) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#122-150)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#187-196)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#25)\n", - "markdown": "Reentrancy in [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L242)\n\tState variables written after the call(s):\n\t- [queueSize += size](src/chain/CacheManager.sol#L244)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L25) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L122-L150)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L187-L196)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L25)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L231-L251", - "id": "7cafef621b24ce7927bcb6c53b9a6c824466abcd138ed1f43bd4a38e07637b19", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8755, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254, 255, 256, 257, 258, 259, 260], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 8868, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8755, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254, 255, 256, 257, 258, 259, 260], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "delete entries[index]", - "source_mapping": { - "start": 9004, - "length": 21, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [259], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8755, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254, 255, 256, 257, 258, 259, 260], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - } - ], - "description": "Reentrancy in CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260):\n\tExternal calls:\n\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#256)\n\tState variables written after the call(s):\n\t- delete entries[index] (src/chain/CacheManager.sol#259)\n\tCacheManager.entries (src/chain/CacheManager.sol#22) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.entries (src/chain/CacheManager.sol#22)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#87-90)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#102-104)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#108-118)\n", - "markdown": "Reentrancy in [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L256)\n\tState variables written after the call(s):\n\t- [delete entries[index]](src/chain/CacheManager.sol#L259)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L22) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L22)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L102-L104)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L108-L118)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L254-L260", - "id": "1400e2c01607b2bdf7010ad99c436ef2db92c4122f6340a3ca3e5664bc80c983", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2663, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [87, 88, 89, 90], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - }, - { - "type": "node", - "name": "evictPrograms(type()(uint256).max)", - "source_mapping": { - "start": 2712, - "length": 32, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [88], - "starting_column": 9, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2663, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [87, 88, 89, 90], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 8868, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8755, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254, 255, 256, 257, 258, 259, 260], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "delete entries", - "source_mapping": { - "start": 2754, - "length": 14, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [89], - "starting_column": 9, - "ending_column": 23 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "evictAll", - "source_mapping": { - "start": 2663, - "length": 112, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [87, 88, 89, 90], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "evictAll()" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - } - ], - "description": "Reentrancy in CacheManager.evictAll() (src/chain/CacheManager.sol#87-90):\n\tExternal calls:\n\t- evictPrograms(type()(uint256).max) (src/chain/CacheManager.sol#88)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#256)\n\tState variables written after the call(s):\n\t- delete entries (src/chain/CacheManager.sol#89)\n\tCacheManager.entries (src/chain/CacheManager.sol#22) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.entries (src/chain/CacheManager.sol#22)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#87-90)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#102-104)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#108-118)\n", - "markdown": "Reentrancy in [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90):\n\tExternal calls:\n\t- [evictPrograms(type()(uint256).max)](src/chain/CacheManager.sol#L88)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L256)\n\tState variables written after the call(s):\n\t- [delete entries](src/chain/CacheManager.sol#L89)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L22) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L22)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L102-L104)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L108-L118)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L87-L90", - "id": "e453de7fb42e742ec25db94618c0bc9d52db23aecc625992da375d6e46e61fa8", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 5925, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - }, - { - "type": "node", - "name": "(bid,index) = _makeSpace(asm)", - "source_mapping": { - "start": 6189, - "length": 45, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [180], - "starting_column": 9, - "ending_column": 54 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 5925, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", - "source_mapping": { - "start": 8868, - "length": 40, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [256], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deleteEntry", - "source_mapping": { - "start": 8755, - "length": 277, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [254, 255, 256, 257, 258, 259, 260], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deleteEntry(uint192,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "_addBid(bid,codehash,asm,index)", - "source_mapping": { - "start": 6244, - "length": 41, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [181], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 5925, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "ARB_WASM_CACHE.cacheCodehash(code)", - "source_mapping": { - "start": 8415, - "length": 34, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [242], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "_addBid(bid,codehash,asm,index)", - "source_mapping": { - "start": 6244, - "length": 41, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [181], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 5925, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "entries.push(entry)", - "source_mapping": { - "start": 8570, - "length": 19, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [246], - "starting_column": 13, - "ending_column": 32 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "entries[index] = entry", - "source_mapping": { - "start": 8620, - "length": 22, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [248], - "starting_column": 13, - "ending_column": 35 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "entries" - } - }, - { - "type": "node", - "name": "_addBid(bid,codehash,asm,index)", - "source_mapping": { - "start": 6244, - "length": 41, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [181], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "placeBid", - "source_mapping": { - "start": 5925, - "length": 367, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "placeBid(bytes32)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - }, - { - "type": "node", - "name": "queueSize += size", - "source_mapping": { - "start": 8500, - "length": 17, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [244], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_addBid", - "source_mapping": { - "start": 8100, - "length": 600, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_addBid(uint192,bytes32,uint64,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "queueSize" - } - } - ], - "description": "Reentrancy in CacheManager.placeBid(bytes32) (src/chain/CacheManager.sol#171-182):\n\tExternal calls:\n\t- (bid,index) = _makeSpace(asm) (src/chain/CacheManager.sol#180)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#256)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#181)\n\t\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#242)\n\tState variables written after the call(s):\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#181)\n\t\t- entries.push(entry) (src/chain/CacheManager.sol#246)\n\t\t- entries[index] = entry (src/chain/CacheManager.sol#248)\n\tCacheManager.entries (src/chain/CacheManager.sol#22) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.entries (src/chain/CacheManager.sol#22)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#87-90)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#102-104)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#108-118)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#181)\n\t\t- queueSize += size (src/chain/CacheManager.sol#244)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#25) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#122-150)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#187-196)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#25)\n", - "markdown": "Reentrancy in [CacheManager.placeBid(bytes32)](src/chain/CacheManager.sol#L171-L182):\n\tExternal calls:\n\t- [(bid,index) = _makeSpace(asm)](src/chain/CacheManager.sol#L180)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L256)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L181)\n\t\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L242)\n\tState variables written after the call(s):\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L181)\n\t\t- [entries.push(entry)](src/chain/CacheManager.sol#L246)\n\t\t- [entries[index] = entry](src/chain/CacheManager.sol#L248)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L22) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L22)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L102-L104)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L108-L118)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L181)\n\t\t- [queueSize += size](src/chain/CacheManager.sol#L244)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L25) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L122-L150)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L187-L196)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L25)\n", - "first_markdown_element": "src/chain/CacheManager.sol#L171-L182", - "id": "1e0701041bd439420af2077b392bf8fa2ccd25ae29d0d785daec5e92d76ecbb8", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "internalStack", - "source_mapping": { - "start": 1753, - "length": 31, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [52], - "starting_column": 9, - "ending_column": 40 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getStartMachineHash", - "source_mapping": { - "start": 1158, - "length": 1300, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProofEntry", - "source_mapping": { - "start": 407, - "length": 7601, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getStartMachineHash(bytes32,bytes32)" - } - } - } - } - ], - "description": "OneStepProofEntry.getStartMachineHash(bytes32,bytes32).internalStack (src/osp/OneStepProofEntry.sol#52) is a local variable never initialized\n", - "markdown": "[OneStepProofEntry.getStartMachineHash(bytes32,bytes32).internalStack](src/osp/OneStepProofEntry.sol#L52) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProofEntry.sol#L52", - "id": "fb3b9ad9a22662ab3a9d3f187478b9833041da23c79103d4346a16da071526e9", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "frameStack", - "source_mapping": { - "start": 1794, - "length": 34, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [53], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getStartMachineHash", - "source_mapping": { - "start": 1158, - "length": 1300, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProofEntry", - "source_mapping": { - "start": 407, - "length": 7601, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getStartMachineHash(bytes32,bytes32)" - } - } - } - } - ], - "description": "OneStepProofEntry.getStartMachineHash(bytes32,bytes32).frameStack (src/osp/OneStepProofEntry.sol#53) is a local variable never initialized\n", - "markdown": "[OneStepProofEntry.getStartMachineHash(bytes32,bytes32).frameStack](src/osp/OneStepProofEntry.sol#L53) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProofEntry.sol#L53", - "id": "2dd21e12ec5d5965b5bd41d82bb252991172e100ac1f78846fb692a07fd06c26", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "lastProvedLeafContents", - "source_mapping": { - "start": 2178, - "length": 30, - "filename_relative": "src/state/ModuleMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/ModuleMemory.sol", - "filename_short": "src/state/ModuleMemory.sol", - "is_dependency": false, - "lines": [73], - "starting_column": 9, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "load", - "source_mapping": { - "start": 1729, - "length": 1164, - "filename_relative": "src/state/ModuleMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/ModuleMemory.sol", - "filename_short": "src/state/ModuleMemory.sol", - "is_dependency": false, - "lines": [ - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ModuleMemoryLib", - "source_mapping": { - "start": 298, - "length": 2597, - "filename_relative": "src/state/ModuleMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/ModuleMemory.sol", - "filename_short": "src/state/ModuleMemory.sol", - "is_dependency": false, - "lines": [ - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "load(ModuleMemory,uint256,uint256,bytes,uint256)" - } - } - } - } - ], - "description": "ModuleMemoryLib.load(ModuleMemory,uint256,uint256,bytes,uint256).lastProvedLeafContents (src/state/ModuleMemory.sol#73) is a local variable never initialized\n", - "markdown": "[ModuleMemoryLib.load(ModuleMemory,uint256,uint256,bytes,uint256).lastProvedLeafContents](src/state/ModuleMemory.sol#L73) is a local variable never initialized\n", - "first_markdown_element": "src/state/ModuleMemory.sol#L73", - "id": "ddf8f7daccaffa622915e6d24c5497c3801c89f4969af443509e576747d091fe", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "emptyMultiStack", - "source_mapping": { - "start": 1838, - "length": 33, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [54], - "starting_column": 9, - "ending_column": 42 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getStartMachineHash", - "source_mapping": { - "start": 1158, - "length": 1300, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProofEntry", - "source_mapping": { - "start": 407, - "length": 7601, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getStartMachineHash(bytes32,bytes32)" - } - } - } - } - ], - "description": "OneStepProofEntry.getStartMachineHash(bytes32,bytes32).emptyMultiStack (src/osp/OneStepProofEntry.sol#54) is a local variable never initialized\n", - "markdown": "[OneStepProofEntry.getStartMachineHash(bytes32,bytes32).emptyMultiStack](src/osp/OneStepProofEntry.sol#L54) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProofEntry.sol#L54", - "id": "5c6acbea6429303780ccb1049265a5d97162a57ddda1d6d332f3201bff526332", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "min", - "source_mapping": { - "start": 7701, - "length": 11, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [218], - "starting_column": 9, - "ending_column": 20 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_makeSpace", - "source_mapping": { - "start": 7478, - "length": 592, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "CacheManager", - "source_mapping": { - "start": 350, - "length": 9565, - "filename_relative": "src/chain/CacheManager.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", - "filename_short": "src/chain/CacheManager.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_makeSpace(uint64)" - } - } - } - } - ], - "description": "CacheManager._makeSpace(uint64).min (src/chain/CacheManager.sol#218) is a local variable never initialized\n", - "markdown": "[CacheManager._makeSpace(uint64).min](src/chain/CacheManager.sol#L218) is a local variable never initialized\n", - "first_markdown_element": "src/chain/CacheManager.sol#L218", - "id": "73850e9ef891d5f054eb989dce18e9362ba7349b4f2237be464bcaeab7c4fe54", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "proveOneStep", - "source_mapping": { - "start": 3092, - "length": 4914, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProofEntry", - "source_mapping": { - "start": 407, - "length": 7601, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "proveOneStep(ExecutionContext,uint256,bytes32,bytes)" - } - }, - { - "type": "node", - "name": "mach.setPcFromRecovery()", - "source_mapping": { - "start": 7887, - "length": 24, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [197], - "starting_column": 13, - "ending_column": 37 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "proveOneStep", - "source_mapping": { - "start": 3092, - "length": 4914, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProofEntry", - "source_mapping": { - "start": 407, - "length": 7601, - "filename_relative": "src/osp/OneStepProofEntry.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", - "filename_short": "src/osp/OneStepProofEntry.sol", - "is_dependency": false, - "lines": [ - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "proveOneStep(ExecutionContext,uint256,bytes32,bytes)" - } - } - } - } - ], - "description": "OneStepProofEntry.proveOneStep(ExecutionContext,uint256,bytes32,bytes) (src/osp/OneStepProofEntry.sol#91-202) ignores return value by mach.setPcFromRecovery() (src/osp/OneStepProofEntry.sol#197)\n", - "markdown": "[OneStepProofEntry.proveOneStep(ExecutionContext,uint256,bytes32,bytes)](src/osp/OneStepProofEntry.sol#L91-L202) ignores return value by [mach.setPcFromRecovery()](src/osp/OneStepProofEntry.sol#L197)\n", - "first_markdown_element": "src/osp/OneStepProofEntry.sol#L91-L202", - "id": "1e2dda001e02cbbabef97b698cc66ccc8052b4444a6785554ba4d649b6511550", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeDrop", - "source_mapping": { - "start": 1726, - "length": 185, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [61, 62, 63, 64, 65, 66, 67, 68], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 18300, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, - 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, - 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, - 536, 537, 538 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeDrop(Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "mach.valueStack.pop()", - "source_mapping": { - "start": 1883, - "length": 21, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [67], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeDrop", - "source_mapping": { - "start": 1726, - "length": 185, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [61, 62, 63, 64, 65, 66, 67, 68], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 18300, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeDrop(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeDrop(Machine,Module,Instruction,bytes) (src/osp/OneStepProver0.sol#61-68) ignores return value by mach.valueStack.pop() (src/osp/OneStepProver0.sol#67)\n", - "markdown": "[OneStepProver0.executeDrop(Machine,Module,Instruction,bytes)](src/osp/OneStepProver0.sol#L61-L68) ignores return value by [mach.valueStack.pop()](src/osp/OneStepProver0.sol#L67)\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L61-L68", - "id": "eba4f716555f696a91fc8ad9e049846421a7a6ad85a83865fb641cf1b9b27c54", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "validateSequencerInbox", - "source_mapping": { - "start": 10247, - "length": 884, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, - 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)" - } - }, - { - "type": "node", - "name": "(afterDelayedMsg,None) = Deserialize.u64(message,32)", - "source_mapping": { - "start": 10532, - "length": 50, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [260], - "starting_column": 9, - "ending_column": 59 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateSequencerInbox", - "source_mapping": { - "start": 10247, - "length": 884, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#252-274) ignores return value by (afterDelayedMsg,None) = Deserialize.u64(message,32) (src/osp/OneStepProverHostIo.sol#260)\n", - "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L252-L274) ignores return value by [(afterDelayedMsg,None) = Deserialize.u64(message,32)](src/osp/OneStepProverHostIo.sol#L260)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L252-L274", - "id": "7a935ab3d3995d6dce7a8ceebf4df0c402dd5ffa259ff05c1b75422e65f9a5ed", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "validateDelayedInbox", - "source_mapping": { - "start": 11137, - "length": 916, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, - 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)" - } - }, - { - "type": "node", - "name": "(sender,None) = Deserialize.u256(message,1)", - "source_mapping": { - "start": 11660, - "length": 41, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [292], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateDelayedInbox", - "source_mapping": { - "start": 11137, - "length": 916, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#276-301) ignores return value by (sender,None) = Deserialize.u256(message,1) (src/osp/OneStepProverHostIo.sol#292)\n", - "markdown": "[OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L276-L301) ignores return value by [(sender,None) = Deserialize.u256(message,1)](src/osp/OneStepProverHostIo.sol#L292)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L276-L301", - "id": "81ff5b93f212262122b563d7d9aa8ed5b61e0fe74edfe59c06accd2ae77a46ca", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeLinkModule", - "source_mapping": { - "start": 16420, - "length": 1090, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, - 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "(userMod,offset) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)", - "source_mapping": { - "start": 16918, - "length": 141, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [448, 449, 450, 451, 452], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeLinkModule", - "source_mapping": { - "start": 16420, - "length": 1090, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, - 459, 460, 461, 462, 463, 464 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#433-464) ignores return value by (userMod,offset) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0) (src/osp/OneStepProverHostIo.sol#448-452)\n", - "markdown": "[OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L433-L464) ignores return value by [(userMod,offset) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)](src/osp/OneStepProverHostIo.sol#L448-L452)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L433-L464", - "id": "ca4b4a9a8f6f270a10c0e390a10831708cbcfc0bfa398fc3f21331bfbd5fc479", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeSwitchCoThread", - "source_mapping": { - "start": 21302, - "length": 1074, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, - 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, - 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, - 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "mach.setRecoveryFromPc(uint32(inst.argumentData))", - "source_mapping": { - "start": 22273, - "length": 49, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [597], - "starting_column": 13, - "ending_column": 62 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeSwitchCoThread", - "source_mapping": { - "start": 21302, - "length": 1074, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 502, - "length": 23583, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, - 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#572-600) ignores return value by mach.setRecoveryFromPc(uint32(inst.argumentData)) (src/osp/OneStepProverHostIo.sol#597)\n", - "markdown": "[OneStepProverHostIo.executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L572-L600) ignores return value by [mach.setRecoveryFromPc(uint32(inst.argumentData))](src/osp/OneStepProverHostIo.sol#L597)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L572-L600", - "id": "ac3b6c8d13d7ed575d28aeae91d5e7c25757469f13c56cd8ec10843535deca31", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1168, - "length": 3662, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 10198, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "(err,value) = mod.moduleMemory.load(index,readBytes,proof,0)", - "source_mapping": { - "start": 3641, - "length": 79, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [106], - "starting_column": 9, - "ending_column": 88 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1168, - "length": 3662, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 10198, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes) (src/osp/OneStepProverMemory.sol#36-131) ignores return value by (err,value) = mod.moduleMemory.load(index,readBytes,proof,0) (src/osp/OneStepProverMemory.sol#106)\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes)](src/osp/OneStepProverMemory.sol#L36-L131) ignores return value by [(err,value) = mod.moduleMemory.load(index,readBytes,proof,0)](src/osp/OneStepProverMemory.sol#L106)\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L36-L131", - "id": "df6a63edce47eb17310486af71173d172b59ec0187bd5f84df01a3e0bbd022c2", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "offset", - "source_mapping": { - "start": 7752, - "length": 18, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [241], - "starting_column": 13, - "ending_column": 31 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 7332, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 18300, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - }, - { - "type": "node", - "name": "(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)", - "source_mapping": { - "start": 9359, - "length": 59, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [277], - "starting_column": 13, - "ending_column": 72 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 7332, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 18300, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - }, - { - "type": "node", - "name": "(functionPointer,offset) = Deserialize.value(proof,offset)", - "source_mapping": { - "start": 9432, - "length": 60, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [278], - "starting_column": 13, - "ending_column": 73 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 7332, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 18300, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, - 534, 535, 536, 537, 538 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset (src/osp/OneStepProver0.sol#241) is written in both\n\t(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset) (src/osp/OneStepProver0.sol#277)\n\t(functionPointer,offset) = Deserialize.value(proof,offset) (src/osp/OneStepProver0.sol#278)\n", - "markdown": "[OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset](src/osp/OneStepProver0.sol#L241) is written in both\n\t[(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)](src/osp/OneStepProver0.sol#L277)\n\t[(functionPointer,offset) = Deserialize.value(proof,offset)](src/osp/OneStepProver0.sol#L278)\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L241", - "id": "d6a42f778bdb10ec1cc4e3ae5bd1d2a66edf8c14085e20de930344608bd29bd2", - "check": "write-after-write", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "refundsGas", - "source_mapping": { - "start": 721, - "length": 2143, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefundEnabled", - "source_mapping": { - "start": 309, - "length": 2557, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "refundsGas(IGasRefunder,IReader4844)" - } - }, - { - "type": "node", - "name": "calldataWords = (calldataSize + 31) / 32", - "source_mapping": { - "start": 960, - "length": 48, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [22], - "starting_column": 13, - "ending_column": 61 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "refundsGas", - "source_mapping": { - "start": 721, - "length": 2143, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefundEnabled", - "source_mapping": { - "start": 309, - "length": 2557, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "refundsGas(IGasRefunder,IReader4844)" - } - } - } - }, - { - "type": "node", - "name": "startGasLeft += calldataWords * 6 + (calldataWords ** 2) / 512", - "source_mapping": { - "start": 1130, - "length": 60, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [24], - "starting_column": 13, - "ending_column": 73 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "refundsGas", - "source_mapping": { - "start": 721, - "length": 2143, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefundEnabled", - "source_mapping": { - "start": 309, - "length": 2557, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "refundsGas(IGasRefunder,IReader4844)" - } - } - } - } - ], - "description": "GasRefundEnabled.refundsGas(IGasRefunder,IReader4844) (src/libraries/GasRefundEnabled.sol#17-51) performs a multiplication on the result of a division:\n\t- calldataWords = (calldataSize + 31) / 32 (src/libraries/GasRefundEnabled.sol#22)\n\t- startGasLeft += calldataWords * 6 + (calldataWords ** 2) / 512 (src/libraries/GasRefundEnabled.sol#24)\n", - "markdown": "[GasRefundEnabled.refundsGas(IGasRefunder,IReader4844)](src/libraries/GasRefundEnabled.sol#L17-L51) performs a multiplication on the result of a division:\n\t- [calldataWords = (calldataSize + 31) / 32](src/libraries/GasRefundEnabled.sol#L22)\n\t- [startGasLeft += calldataWords * 6 + (calldataWords ** 2) / 512](src/libraries/GasRefundEnabled.sol#L24)\n", - "first_markdown_element": "src/libraries/GasRefundEnabled.sol#L17-L51", - "id": "bb26256ad08f6833c6e0395d78c4b8a1182860d966d17803ac727cde7719e8b6", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "node", - "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)", - "source_mapping": { - "start": 10207, - "length": 201, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [96, 97, 98, 99, 100, 101, 102, 103], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10012, - "length": 1157, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - } - } - }, - { - "type": "node", - "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)", - "source_mapping": { - "start": 10207, - "length": 201, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [96, 97, 98, 99, 100, 101, 102, 103], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10012, - "length": 1157, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - } - } - } - ], - "description": "Multiple retryable tickets created in the same function:\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#96-103)\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#96-103)\n", - "markdown": "Multiple retryable tickets created in the same function:\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L96-L103)\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L96-L103)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L96-L103", - "id": "5d40acc11dbb925c7e8ac930729d7231aea71007192a71ca36b451cad7a17520", - "check": "out-of-order-retryable", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_executeLowLevelCall", - "source_mapping": { - "start": 1379, - "length": 299, - "filename_relative": "src/bridge/Bridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", - "filename_short": "src/bridge/Bridge.sol", - "is_dependency": false, - "lines": [42, 43, 44, 45, 46, 47, 48, 49], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "Bridge", - "source_mapping": { - "start": 702, - "length": 1090, - "filename_relative": "src/bridge/Bridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", - "filename_short": "src/bridge/Bridge.sol", - "is_dependency": false, - "lines": [ - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_executeLowLevelCall(address,uint256,bytes)" - } - }, - { - "type": "node", - "name": "(success,returnData) = to.call{value: value}(data)", - "source_mapping": { - "start": 1620, - "length": 51, - "filename_relative": "src/bridge/Bridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", - "filename_short": "src/bridge/Bridge.sol", - "is_dependency": false, - "lines": [48], - "starting_column": 9, - "ending_column": 60 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_executeLowLevelCall", - "source_mapping": { - "start": 1379, - "length": 299, - "filename_relative": "src/bridge/Bridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", - "filename_short": "src/bridge/Bridge.sol", - "is_dependency": false, - "lines": [42, 43, 44, 45, 46, 47, 48, 49], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "Bridge", - "source_mapping": { - "start": 702, - "length": 1090, - "filename_relative": "src/bridge/Bridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", - "filename_short": "src/bridge/Bridge.sol", - "is_dependency": false, - "lines": [ - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_executeLowLevelCall(address,uint256,bytes)" - } - } - } - } - ], - "description": "Bridge._executeLowLevelCall(address,uint256,bytes) (src/bridge/Bridge.sol#42-49) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success,returnData) = to.call{value: value}(data) (src/bridge/Bridge.sol#48)\n", - "markdown": "[Bridge._executeLowLevelCall(address,uint256,bytes)](src/bridge/Bridge.sol#L42-L49) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success,returnData) = to.call{value: value}(data)](src/bridge/Bridge.sol#L48)\n", - "first_markdown_element": "src/bridge/Bridge.sol#L42-L49", - "id": "52aa149e251bcbda3478032a3845253462c6d80e50cde35746a072dd6dd226a6", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - }, - { - "type": "node", - "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", - "source_mapping": { - "start": 9483, - "length": 399, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [74, 75, 76, 77, 78, 79, 80, 81, 82, 83], - "starting_column": 13, - "ending_column": 15 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#74-83)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L74-L83)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", - "id": "e0479a62ad4830e7fe86da8c84b5e23beb3117b4fad5a10981cccab1ed4d7fef", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10012, - "length": 1157, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - }, - { - "type": "node", - "name": "address(msg.sender).transfer(address(this).balance)", - "source_mapping": { - "start": 11101, - "length": 51, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [131], - "starting_column": 13, - "ending_column": 64 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "perform", - "source_mapping": { - "start": 10012, - "length": 1157, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "perform(address,address,uint256)" - } - } - } - } - ], - "description": "DeployHelper.perform(address,address,uint256) (src/rollup/DeployHelper.sol#89-133) sends eth to arbitrary user\n\tDangerous calls:\n\t- address(msg.sender).transfer(address(this).balance) (src/rollup/DeployHelper.sol#131)\n", - "markdown": "[DeployHelper.perform(address,address,uint256)](src/rollup/DeployHelper.sol#L89-L133) sends eth to arbitrary user\n\tDangerous calls:\n\t- [address(msg.sender).transfer(address(this).balance)](src/rollup/DeployHelper.sol#L131)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L89-L133", - "id": "9ffb800c52b7ebc92a4117369762770d49beb52d8f7f0c4c53742745d88e75c4", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_deployFactories", - "source_mapping": { - "start": 10566, - "length": 1163, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deployFactories(address,address,uint256)" - } - }, - { - "type": "node", - "name": "l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)", - "source_mapping": { - "start": 10973, - "length": 77, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [268], - "starting_column": 13, - "ending_column": 90 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deployFactories", - "source_mapping": { - "start": 10566, - "length": 1163, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deployFactories(address,address,uint256)" - } - } - } - }, - { - "type": "node", - "name": "(sent) = msg.sender.call{value: address(this).balance}()", - "source_mapping": { - "start": 11161, - "length": 65, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [272], - "starting_column": 13, - "ending_column": 78 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_deployFactories", - "source_mapping": { - "start": 10566, - "length": 1163, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_deployFactories(address,address,uint256)" - } - } - } - } - ], - "description": "RollupCreator._deployFactories(address,address,uint256) (src/rollup/RollupCreator.sol#255-285) sends eth to arbitrary user\n\tDangerous calls:\n\t- l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas) (src/rollup/RollupCreator.sol#268)\n\t- (sent) = msg.sender.call{value: address(this).balance}() (src/rollup/RollupCreator.sol#272)\n", - "markdown": "[RollupCreator._deployFactories(address,address,uint256)](src/rollup/RollupCreator.sol#L255-L285) sends eth to arbitrary user\n\tDangerous calls:\n\t- [l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)](src/rollup/RollupCreator.sol#L268)\n\t- [(sent) = msg.sender.call{value: address(this).balance}()](src/rollup/RollupCreator.sol#L272)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L255-L285", - "id": "76dc4e58fa8c5850af786b5521aa4b4047660ca4b5cfdc3ec6d2b34a27bf414d", - "check": "arbitrary-send-eth", - "impact": "High", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "calculateRoot", - "source_mapping": { - "start": 987, - "length": 872, - "filename_relative": "src/libraries/MerkleLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", - "filename_short": "src/libraries/MerkleLib.sol", - "is_dependency": false, - "lines": [ - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "MerkleLib", - "source_mapping": { - "start": 254, - "length": 1607, - "filename_relative": "src/libraries/MerkleLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", - "filename_short": "src/libraries/MerkleLib.sol", - "is_dependency": false, - "lines": [ - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "calculateRoot(bytes32[],uint256,bytes32)" - } - }, - { - "type": "node", - "name": "(route & (1 << i)) == 0", - "source_mapping": { - "start": 1371, - "length": 23, - "filename_relative": "src/libraries/MerkleLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", - "filename_short": "src/libraries/MerkleLib.sol", - "is_dependency": false, - "lines": [38], - "starting_column": 17, - "ending_column": 40 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "calculateRoot", - "source_mapping": { - "start": 987, - "length": 872, - "filename_relative": "src/libraries/MerkleLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", - "filename_short": "src/libraries/MerkleLib.sol", - "is_dependency": false, - "lines": [ - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "MerkleLib", - "source_mapping": { - "start": 254, - "length": 1607, - "filename_relative": "src/libraries/MerkleLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", - "filename_short": "src/libraries/MerkleLib.sol", - "is_dependency": false, - "lines": [ - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "calculateRoot(bytes32[],uint256,bytes32)" - } - } - } - } - ], - "description": "MerkleLib.calculateRoot(bytes32[],uint256,bytes32) (src/libraries/MerkleLib.sol#28-56) contains an incorrect shift operation: (route & (1 << i)) == 0 (src/libraries/MerkleLib.sol#38)\n", - "markdown": "[MerkleLib.calculateRoot(bytes32[],uint256,bytes32)](src/libraries/MerkleLib.sol#L28-L56) contains an incorrect shift operation: [(route & (1 << i)) == 0](src/libraries/MerkleLib.sol#L38)\n", - "first_markdown_element": "src/libraries/MerkleLib.sol#L28-L56", - "id": "5c3db261bcf096a853ed1cbf065868696b577e437b35616c25ee3da2af6bc0d7", - "check": "incorrect-shift", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "confirmPeriodBlocks", - "source_mapping": { - "start": 848, - "length": 33, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [30], - "starting_column": 5, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "_validatorIsAfk", - "source_mapping": { - "start": 1426, - "length": 349, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [47, 48, 49, 50, 51, 52, 53, 54], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_validatorIsAfk()" - } - }, - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "function", - "name": "addStaker", - "source_mapping": { - "start": 16226, - "length": 666, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "addStaker(uint64,address)" - } - }, - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - ], - "description": "RollupCore.confirmPeriodBlocks (src/rollup/RollupCore.sol#30) is never initialized. It is used in:\n\t- AbsRollupUserLogic._validatorIsAfk() (src/rollup/RollupUserLogic.sol#47-54)\n\t- AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523)\n\t- RollupCore.addStaker(uint64,address) (src/rollup/RollupCore.sol#449-465)\n\t- RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677)\n", - "markdown": "[RollupCore.confirmPeriodBlocks](src/rollup/RollupCore.sol#L30) is never initialized. It is used in:\n\t- [AbsRollupUserLogic._validatorIsAfk()](src/rollup/RollupUserLogic.sol#L47-L54)\n\t- [AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523)\n\t- [RollupCore.addStaker(uint64,address)](src/rollup/RollupCore.sol#L449-L465)\n\t- [RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L30", - "id": "a4b24bce5aba1839e99647d1a79bb6ee736796ffa0b26da1ff6de3bf0cad25a2", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "extraChallengeTimeBlocks", - "source_mapping": { - "start": 887, - "length": 38, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [31], - "starting_column": 5, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 12264, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - ], - "description": "RollupCore.extraChallengeTimeBlocks (src/rollup/RollupCore.sol#31) is never initialized. It is used in:\n\t- AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#291-364)\n", - "markdown": "[RollupCore.extraChallengeTimeBlocks](src/rollup/RollupCore.sol#L31) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L291-L364)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L31", - "id": "da3953abca5cd200b13fe48850b6aa7652681e329be2738fada97e811ccf823c", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "baseStake", - "source_mapping": { - "start": 959, - "length": 24, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [33], - "starting_column": 5, - "ending_column": 29 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - ], - "description": "RollupCore.baseStake (src/rollup/RollupCore.sol#33) is never initialized. It is used in:\n\t- AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523)\n", - "markdown": "[RollupCore.baseStake](src/rollup/RollupCore.sol#L33) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L33", - "id": "e38524abb8244a635c7bb2fbd1c2e3be4f6f4c45b66589d5c431018eaec19736", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "wasmModuleRoot", - "source_mapping": { - "start": 989, - "length": 29, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [34], - "starting_column": 5, - "ending_column": 34 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - ], - "description": "RollupCore.wasmModuleRoot (src/rollup/RollupCore.sol#34) is never initialized. It is used in:\n\t- RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677)\n", - "markdown": "[RollupCore.wasmModuleRoot](src/rollup/RollupCore.sol#L34) is never initialized. It is used in:\n\t- [RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L34", - "id": "ba1b0a9663907f65e34f85d9522781abdfd536250f5ca9c3ce00e5d5fd99e0e5", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "bridge", - "source_mapping": { - "start": 1054, - "length": 21, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [37], - "starting_column": 5, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - ], - "description": "RollupCore.bridge (src/rollup/RollupCore.sol#37) is never initialized. It is used in:\n\t- RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677)\n", - "markdown": "[RollupCore.bridge](src/rollup/RollupCore.sol#L37) is never initialized. It is used in:\n\t- [RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L37", - "id": "083aba2c7a6498e3f6b62bd57041243e85867ce1e7deb7e73af230c8a3fda57c", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "outbox", - "source_mapping": { - "start": 1081, - "length": 21, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [38], - "starting_column": 5, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "confirmNode", - "source_mapping": { - "start": 10760, - "length": 573, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "confirmNode(uint64,bytes32,bytes32)" - } - } - ], - "description": "RollupCore.outbox (src/rollup/RollupCore.sol#38) is never initialized. It is used in:\n\t- RollupCore.confirmNode(uint64,bytes32,bytes32) (src/rollup/RollupCore.sol#306-322)\n", - "markdown": "[RollupCore.outbox](src/rollup/RollupCore.sol#L38) is never initialized. It is used in:\n\t- [RollupCore.confirmNode(uint64,bytes32,bytes32)](src/rollup/RollupCore.sol#L306-L322)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L38", - "id": "0e386868f4529a31d9469b3b0f8148977860a53590d8f94171666883bbbe4c3d", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "challengeManager", - "source_mapping": { - "start": 1198, - "length": 50, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [41], - "starting_column": 5, - "ending_column": 55 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "createChallengeHelper", - "source_mapping": { - "start": 15401, - "length": 672, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)" - } - }, - { - "type": "function", - "name": "completeChallenge", - "source_mapping": { - "start": 16300, - "length": 484, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [393, 394, 395, 396, 397, 398, 399, 400, 401, 402], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "completeChallenge(uint256,address,address)" - } - } - ], - "description": "RollupCore.challengeManager (src/rollup/RollupCore.sol#41) is never initialized. It is used in:\n\t- AbsRollupUserLogic.createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256) (src/rollup/RollupUserLogic.sol#366-386)\n\t- AbsRollupUserLogic.completeChallenge(uint256,address,address) (src/rollup/RollupUserLogic.sol#393-402)\n", - "markdown": "[RollupCore.challengeManager](src/rollup/RollupCore.sol#L41) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)](src/rollup/RollupUserLogic.sol#L366-L386)\n\t- [AbsRollupUserLogic.completeChallenge(uint256,address,address)](src/rollup/RollupUserLogic.sol#L393-L402)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L41", - "id": "22c612a6037a18832e2adecba9cb92ae47a8af1b6ad06cd807e2930e95704f7f", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "loserStakeEscrow", - "source_mapping": { - "start": 1485, - "length": 31, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [48], - "starting_column": 5, - "ending_column": 36 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "completeChallengeImpl", - "source_mapping": { - "start": 16790, - "length": 1104, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "completeChallengeImpl(address,address)" - } - } - ], - "description": "RollupCore.loserStakeEscrow (src/rollup/RollupCore.sol#48) is never initialized. It is used in:\n\t- AbsRollupUserLogic.completeChallengeImpl(address,address) (src/rollup/RollupUserLogic.sol#404-423)\n", - "markdown": "[RollupCore.loserStakeEscrow](src/rollup/RollupCore.sol#L48) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.completeChallengeImpl(address,address)](src/rollup/RollupUserLogic.sol#L404-L423)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L48", - "id": "c7bcdadad2017983801efa1f09090e62d03f763f4327a3ff8eae213d33849120", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "stakeToken", - "source_mapping": { - "start": 1522, - "length": 25, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [49], - "starting_column": 5, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "isERC20Enabled", - "source_mapping": { - "start": 2244, - "length": 110, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [68, 69, 70], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "isERC20Enabled()" - } - } - ], - "description": "RollupCore.stakeToken (src/rollup/RollupCore.sol#49) is never initialized. It is used in:\n\t- AbsRollupUserLogic.isERC20Enabled() (src/rollup/RollupUserLogic.sol#68-70)\n", - "markdown": "[RollupCore.stakeToken](src/rollup/RollupCore.sol#L49) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.isERC20Enabled()](src/rollup/RollupUserLogic.sol#L68-L70)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L49", - "id": "762ea8af9375f2dee07c120ca7a44b367b72fbd357f74ed8397e8540a17d87b6", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "minimumAssertionPeriod", - "source_mapping": { - "start": 1553, - "length": 37, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [50], - "starting_column": 5, - "ending_column": 42 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "stakeOnNewNode", - "source_mapping": { - "start": 7704, - "length": 1684, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnNewNode(Assertion,bytes32,uint256)" - } - } - ], - "description": "RollupCore.minimumAssertionPeriod (src/rollup/RollupCore.sol#50) is never initialized. It is used in:\n\t- AbsRollupUserLogic.stakeOnNewNode(Assertion,bytes32,uint256) (src/rollup/RollupUserLogic.sol#198-233)\n", - "markdown": "[RollupCore.minimumAssertionPeriod](src/rollup/RollupCore.sol#L50) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.stakeOnNewNode(Assertion,bytes32,uint256)](src/rollup/RollupUserLogic.sol#L198-L233)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L50", - "id": "01fe9c1889403593f4723665fd7724b4e31b63dd3689c5816cb6d147d16dbf42", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "isValidator", - "source_mapping": { - "start": 1597, - "length": 43, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [52], - "starting_column": 5, - "ending_column": 48 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - } - ], - "description": "RollupCore.isValidator (src/rollup/RollupCore.sol#52) is never initialized. It is used in:\n", - "markdown": "[RollupCore.isValidator](src/rollup/RollupCore.sol#L52) is never initialized. It is used in:\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L52", - "id": "f316200e22d3febd4d78fe211de5d864b1b65169f67e03191ea884e8b60055ae", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "stakeToken", - "source_mapping": { - "start": 1522, - "length": 25, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [49], - "starting_column": 5, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "function", - "name": "isERC20Enabled", - "source_mapping": { - "start": 2244, - "length": 110, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [68, 69, 70], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "isERC20Enabled()" - } - }, - { - "type": "function", - "name": "withdrawStakerFunds", - "source_mapping": { - "start": 30568, - "length": 400, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ERC20RollupUserLogic", - "source_mapping": { - "start": 28020, - "length": 3167, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, - 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, - 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, - 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, - 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, - 766, 767, 768, 769 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "withdrawStakerFunds()" - } - }, - { - "type": "function", - "name": "receiveTokens", - "source_mapping": { - "start": 30974, - "length": 211, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [763, 764, 765, 766, 767, 768], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ERC20RollupUserLogic", - "source_mapping": { - "start": 28020, - "length": 3167, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, - 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, - 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, - 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, - 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, - 766, 767, 768, 769 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "receiveTokens(uint256)" - } - } - ], - "description": "RollupCore.stakeToken (src/rollup/RollupCore.sol#49) is never initialized. It is used in:\n\t- AbsRollupUserLogic.isERC20Enabled() (src/rollup/RollupUserLogic.sol#68-70)\n\t- ERC20RollupUserLogic.withdrawStakerFunds() (src/rollup/RollupUserLogic.sol#750-761)\n\t- ERC20RollupUserLogic.receiveTokens(uint256) (src/rollup/RollupUserLogic.sol#763-768)\n", - "markdown": "[RollupCore.stakeToken](src/rollup/RollupCore.sol#L49) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.isERC20Enabled()](src/rollup/RollupUserLogic.sol#L68-L70)\n\t- [ERC20RollupUserLogic.withdrawStakerFunds()](src/rollup/RollupUserLogic.sol#L750-L761)\n\t- [ERC20RollupUserLogic.receiveTokens(uint256)](src/rollup/RollupUserLogic.sol#L763-L768)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L49", - "id": "388304453678fb7cb187225ae4a8eef1f46c80d072185688bad31640b221fb6d", - "check": "uninitialized-state", - "impact": "High", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "extractChallengeSegment", - "source_mapping": { - "start": 3040, - "length": 682, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 4325, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)" - } - }, - { - "type": "node", - "name": "segmentLength = selection.oldSegmentsLength / oldChallengeDegree", - "source_mapping": { - "start": 3287, - "length": 64, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [102], - "starting_column": 9, - "ending_column": 73 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "extractChallengeSegment", - "source_mapping": { - "start": 3040, - "length": 682, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 4325, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)" - } - } - } - }, - { - "type": "node", - "name": "segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition", - "source_mapping": { - "start": 3460, - "length": 87, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [104], - "starting_column": 9, - "ending_column": 96 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "extractChallengeSegment", - "source_mapping": { - "start": 3040, - "length": 682, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 4325, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)" - } - } - } - } - ], - "description": "ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection) (src/challenge/ChallengeLib.sol#96-108) performs a multiplication on the result of a division:\n\t- segmentLength = selection.oldSegmentsLength / oldChallengeDegree (src/challenge/ChallengeLib.sol#102)\n\t- segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition (src/challenge/ChallengeLib.sol#104)\n", - "markdown": "[ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection)](src/challenge/ChallengeLib.sol#L96-L108) performs a multiplication on the result of a division:\n\t- [segmentLength = selection.oldSegmentsLength / oldChallengeDegree](src/challenge/ChallengeLib.sol#L102)\n\t- [segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition](src/challenge/ChallengeLib.sol#L104)\n", - "first_markdown_element": "src/challenge/ChallengeLib.sol#L96-L108", - "id": "e1c80d5388c10fc3c7985b252a3988308fb524570c5772733ff6da1f68ae3665", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4302, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "rootOfUnityPower = (1 << 32) / fieldElementsPerBlob", - "source_mapping": { - "start": 9080, - "length": 59, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [224], - "starting_column": 17, - "ending_column": 76 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4302, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - }, - { - "type": "node", - "name": "rootOfUnityPower *= bitReversedIndex", - "source_mapping": { - "start": 9307, - "length": 36, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [227], - "starting_column": 17, - "ending_column": 53 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4302, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#123-245) performs a multiplication on the result of a division:\n\t- rootOfUnityPower = (1 << 32) / fieldElementsPerBlob (src/osp/OneStepProverHostIo.sol#224)\n\t- rootOfUnityPower *= bitReversedIndex (src/osp/OneStepProverHostIo.sol#227)\n", - "markdown": "[OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L123-L245) performs a multiplication on the result of a division:\n\t- [rootOfUnityPower = (1 << 32) / fieldElementsPerBlob](src/osp/OneStepProverHostIo.sol#L224)\n\t- [rootOfUnityPower *= bitReversedIndex](src/osp/OneStepProverHostIo.sol#L227)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L123-L245", - "id": "544b092c0dd6ff4838cb1cbaa7af3a7e9ba4011548b519524ea1c0f49488ba8a", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", - "source_mapping": { - "start": 21553, - "length": 69, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [518], - "starting_column": 9, - "ending_column": 78 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - }, - { - "type": "node", - "name": "baseStake * multiplier", - "source_mapping": { - "start": 21701, - "length": 29, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [522], - "starting_column": 9, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#518)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#522)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L518)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L522)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L477-L523", - "id": "d8acf03a6b7c6bb0b8a091fbcc3c5657b15d7180c1edc798c1b2b66b27895d5d", - "check": "divide-before-multiply", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "onGasSpent", - "source_mapping": { - "start": 5994, - "length": 3002, - "filename_relative": "src/bridge/GasRefunder.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", - "filename_short": "src/bridge/GasRefunder.sol", - "is_dependency": false, - "lines": [ - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefunder", - "source_mapping": { - "start": 916, - "length": 8082, - "filename_relative": "src/bridge/GasRefunder.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", - "filename_short": "src/bridge/GasRefunder.sol", - "is_dependency": false, - "lines": [ - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "onGasSpent(address,uint256,uint256)" - } - }, - { - "type": "node", - "name": "ownBalance == 0", - "source_mapping": { - "start": 6260, - "length": 15, - "filename_relative": "src/bridge/GasRefunder.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", - "filename_short": "src/bridge/GasRefunder.sol", - "is_dependency": false, - "lines": [183], - "starting_column": 13, - "ending_column": 28 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "onGasSpent", - "source_mapping": { - "start": 5994, - "length": 3002, - "filename_relative": "src/bridge/GasRefunder.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", - "filename_short": "src/bridge/GasRefunder.sol", - "is_dependency": false, - "lines": [ - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefunder", - "source_mapping": { - "start": 916, - "length": 8082, - "filename_relative": "src/bridge/GasRefunder.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", - "filename_short": "src/bridge/GasRefunder.sol", - "is_dependency": false, - "lines": [ - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "onGasSpent(address,uint256,uint256)" - } - } - } - } - ], - "description": "GasRefunder.onGasSpent(address,uint256,uint256) (src/bridge/GasRefunder.sol#174-256) uses a dangerous strict equality:\n\t- ownBalance == 0 (src/bridge/GasRefunder.sol#183)\n", - "markdown": "[GasRefunder.onGasSpent(address,uint256,uint256)](src/bridge/GasRefunder.sol#L174-L256) uses a dangerous strict equality:\n\t- [ownBalance == 0](src/bridge/GasRefunder.sol#L183)\n", - "first_markdown_element": "src/bridge/GasRefunder.sol#L174-L256", - "id": "7130559f3bef7fa36dc1a06a74ba5036fede4a8f9a9b7aa15356ff38ae92691a", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "getKeysetCreationBlock", - "source_mapping": { - "start": 30911, - "length": 262, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [800, 801, 802, 803, 804], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "SequencerInbox", - "source_mapping": { - "start": 1909, - "length": 29266, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, - 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, - 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, - 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, - 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, - 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, - 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, - 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getKeysetCreationBlock(bytes32)" - } - }, - { - "type": "node", - "name": "ksInfo.creationBlock == 0", - "source_mapping": { - "start": 31066, - "length": 25, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [802], - "starting_column": 13, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getKeysetCreationBlock", - "source_mapping": { - "start": 30911, - "length": 262, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [800, 801, 802, 803, 804], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "SequencerInbox", - "source_mapping": { - "start": 1909, - "length": 29266, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, - 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, - 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, - 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, - 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, - 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, - 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, - 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, - 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, - 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, - 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, - 797, 798, 799, 800, 801, 802, 803, 804, 805 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getKeysetCreationBlock(bytes32)" - } - } - } - } - ], - "description": "SequencerInbox.getKeysetCreationBlock(bytes32) (src/bridge/SequencerInbox.sol#800-804) uses a dangerous strict equality:\n\t- ksInfo.creationBlock == 0 (src/bridge/SequencerInbox.sol#802)\n", - "markdown": "[SequencerInbox.getKeysetCreationBlock(bytes32)](src/bridge/SequencerInbox.sol#L800-L804) uses a dangerous strict equality:\n\t- [ksInfo.creationBlock == 0](src/bridge/SequencerInbox.sol#L802)\n", - "first_markdown_element": "src/bridge/SequencerInbox.sol#L800-L804", - "id": "8d08f988c853ddc93c73c73c2ffb4eab98ae44f427249e22931a28dd9e0d9616", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)", - "source_mapping": { - "start": 21393, - "length": 193, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [582, 583, 584, 585, 586], - "starting_column": 13, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - } - } - ], - "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677) uses a dangerous strict equality:\n\t- require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH) (src/rollup/RollupCore.sol#582-586)\n", - "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677) uses a dangerous strict equality:\n\t- [require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)](src/rollup/RollupCore.sol#L582-L586)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L563-L677", - "id": "d127dddc177369c36ad1c5bef7eb43c1a61fc683b55406bc72a59dc5596e864b", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)", - "source_mapping": { - "start": 23847, - "length": 144, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [635, 636, 637, 638], - "starting_column": 13, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - } - } - ], - "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677) uses a dangerous strict equality:\n\t- require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH) (src/rollup/RollupCore.sol#635-638)\n", - "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677) uses a dangerous strict equality:\n\t- [require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)](src/rollup/RollupCore.sol#L635-L638)\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L563-L677", - "id": "dfac2423a21baf2a37b1dd8b95efc0128475cfb15a4f40d0cc542e69ff413c79", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "_validatorIsAfk", - "source_mapping": { - "start": 1426, - "length": 349, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [47, 48, 49, 50, 51, 52, 53, 54], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_validatorIsAfk()" - } - }, - { - "type": "node", - "name": "latestNode.createdAtBlock == 0", - "source_mapping": { - "start": 1566, - "length": 30, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [49], - "starting_column": 13, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_validatorIsAfk", - "source_mapping": { - "start": 1426, - "length": 349, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [47, 48, 49, 50, 51, 52, 53, 54], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_validatorIsAfk()" - } - } - } - } - ], - "description": "AbsRollupUserLogic._validatorIsAfk() (src/rollup/RollupUserLogic.sol#47-54) uses a dangerous strict equality:\n\t- latestNode.createdAtBlock == 0 (src/rollup/RollupUserLogic.sol#49)\n", - "markdown": "[AbsRollupUserLogic._validatorIsAfk()](src/rollup/RollupUserLogic.sol#L47-L54) uses a dangerous strict equality:\n\t- [latestNode.createdAtBlock == 0](src/rollup/RollupUserLogic.sol#L49)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L47-L54", - "id": "27da8dd2563854302dbb23b92013f4ff6bae23b8f09a7843b7bd073905bc04e7", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - }, - { - "type": "node", - "name": "multiplier == 0", - "source_mapping": { - "start": 21636, - "length": 15, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [519], - "starting_column": 13, - "ending_column": 28 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "currentRequiredStake", - "source_mapping": { - "start": 20210, - "length": 1527, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "currentRequiredStake(uint256,uint64,uint256)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#519)\n", - "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L519)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L477-L523", - "id": "46c10604345612b1526f352cacc87cc039daedff5beba654f8f07a5fdc228a45", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 25419, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [616, 617, 618, 619], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - }, - { - "type": "node", - "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", - "source_mapping": { - "start": 25556, - "length": 68, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [618], - "starting_column": 9, - "ending_column": 77 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "requireUnchallengedStaker", - "source_mapping": { - "start": 25419, - "length": 212, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [616, 617, 618, 619], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "requireUnchallengedStaker(address)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#616-619) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#618)\n", - "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L616-L619) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L618)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L616-L619", - "id": "1e95eacfdcf4026b8e9c94f14922ed3f0a0ec1b366b7d354316a8dbcdb09add8", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 6908, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - }, - { - "type": "node", - "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", - "source_mapping": { - "start": 7370, - "length": 72, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [189], - "starting_column": 9, - "ending_column": 81 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "stakeOnExistingNode", - "source_mapping": { - "start": 6908, - "length": 583, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "stakeOnExistingNode(uint64,bytes32)" - } - } - } - } - ], - "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#176-191) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#189)\n", - "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L176-L191) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L189)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L176-L191", - "id": "4507b4ce50a7c39ed1ba1cdbee0a87e257d071a80d56ccf457734f2c8f166b64", - "check": "incorrect-equality", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "function", - "name": "addSequencerL2BatchImpl", - "source_mapping": { - "start": 26211, - "length": 1103, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, - 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, - 700, 701, 702, 703, 704, 705 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "SequencerInbox", - "source_mapping": { - "start": 1909, - "length": 29266, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, - 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, - 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, - 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, - 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, - 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, - 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, - 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, - 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, - 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, - 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, - 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, - 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, - 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, - 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, - 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, - 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)" - } - }, - { - "type": "node", - "name": "(seqMessageIndex,beforeAcc,delayedAcc,acc) = bridge.enqueueSequencerMessage(dataHash,afterDelayedMessagesRead,prevMessageCount,newMessageCount)", - "source_mapping": { - "start": 26792, - "length": 207, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [692, 693, 694, 695, 696, 697], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "addSequencerL2BatchImpl", - "source_mapping": { - "start": 26211, - "length": 1103, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, - 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, - 700, 701, 702, 703, 704, 705 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "SequencerInbox", - "source_mapping": { - "start": 1909, - "length": 29266, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, - 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, - 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, - 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, - 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, - 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, - 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, - 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, - 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, - 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, - 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, - 797, 798, 799, 800, 801, 802, 803, 804, 805 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "totalDelayedMessagesRead = afterDelayedMessagesRead", - "source_mapping": { - "start": 27010, - "length": 51, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [699], - "starting_column": 9, - "ending_column": 60 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "addSequencerL2BatchImpl", - "source_mapping": { - "start": 26211, - "length": 1103, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, - 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, - 700, 701, 702, 703, 704, 705 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "SequencerInbox", - "source_mapping": { - "start": 1909, - "length": 29266, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, - 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, - 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, - 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, - 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, - 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, - 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, - 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, - 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, - 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, - 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, - 797, 798, 799, 800, 801, 802, 803, 804, 805 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "totalDelayedMessagesRead" - } - } - ], - "description": "Reentrancy in SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256) (src/bridge/SequencerInbox.sol#674-705):\n\tExternal calls:\n\t- (seqMessageIndex,beforeAcc,delayedAcc,acc) = bridge.enqueueSequencerMessage(dataHash,afterDelayedMessagesRead,prevMessageCount,newMessageCount) (src/bridge/SequencerInbox.sol#692-697)\n\tState variables written after the call(s):\n\t- totalDelayedMessagesRead = afterDelayedMessagesRead (src/bridge/SequencerInbox.sol#699)\n\tSequencerInbox.totalDelayedMessagesRead (src/bridge/SequencerInbox.sol#58) can be used in cross function reentrancies:\n\t- SequencerInbox.addSequencerL2Batch(uint256,bytes,uint256,IGasRefunder,uint256,uint256) (src/bridge/SequencerInbox.sol#468-519)\n\t- SequencerInbox.addSequencerL2BatchFromBlobs(uint256,uint256,IGasRefunder,uint256,uint256) (src/bridge/SequencerInbox.sol#407-466)\n\t- SequencerInbox.addSequencerL2BatchFromOrigin(uint256,bytes,uint256,IGasRefunder,uint256,uint256) (src/bridge/SequencerInbox.sol#355-405)\n\t- SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256) (src/bridge/SequencerInbox.sol#674-705)\n\t- SequencerInbox.forceInclusion(uint256,uint8,uint64[2],uint256,address,bytes32) (src/bridge/SequencerInbox.sol#284-343)\n\t- SequencerInbox.totalDelayedMessagesRead (src/bridge/SequencerInbox.sol#58)\n", - "markdown": "Reentrancy in [SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)](src/bridge/SequencerInbox.sol#L674-L705):\n\tExternal calls:\n\t- [(seqMessageIndex,beforeAcc,delayedAcc,acc) = bridge.enqueueSequencerMessage(dataHash,afterDelayedMessagesRead,prevMessageCount,newMessageCount)](src/bridge/SequencerInbox.sol#L692-L697)\n\tState variables written after the call(s):\n\t- [totalDelayedMessagesRead = afterDelayedMessagesRead](src/bridge/SequencerInbox.sol#L699)\n\t[SequencerInbox.totalDelayedMessagesRead](src/bridge/SequencerInbox.sol#L58) can be used in cross function reentrancies:\n\t- [SequencerInbox.addSequencerL2Batch(uint256,bytes,uint256,IGasRefunder,uint256,uint256)](src/bridge/SequencerInbox.sol#L468-L519)\n\t- [SequencerInbox.addSequencerL2BatchFromBlobs(uint256,uint256,IGasRefunder,uint256,uint256)](src/bridge/SequencerInbox.sol#L407-L466)\n\t- [SequencerInbox.addSequencerL2BatchFromOrigin(uint256,bytes,uint256,IGasRefunder,uint256,uint256)](src/bridge/SequencerInbox.sol#L355-L405)\n\t- [SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)](src/bridge/SequencerInbox.sol#L674-L705)\n\t- [SequencerInbox.forceInclusion(uint256,uint8,uint64[2],uint256,address,bytes32)](src/bridge/SequencerInbox.sol#L284-L343)\n\t- [SequencerInbox.totalDelayedMessagesRead](src/bridge/SequencerInbox.sol#L58)\n", - "first_markdown_element": "src/bridge/SequencerInbox.sol#L674-L705", - "id": "b38d9bf0df554a08cf1b8bb6d468b87dd156690f340b399262fff373086c5825", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 12264, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, - 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, - 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - }, - { - "type": "node", - "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", - "source_mapping": { - "start": 14807, - "length": 398, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [350, 351, 352, 353, 354, 355, 356, 357, 358, 359], - "starting_column": 9, - "ending_column": 10 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 12264, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", - "source_mapping": { - "start": 15749, - "length": 317, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385], - "starting_column": 9, - "ending_column": 14 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallengeHelper", - "source_mapping": { - "start": 15401, - "length": 672, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, 383, 384, 385, 386 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", - "source_mapping": { - "start": 15241, - "length": 56, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [361], - "starting_column": 9, - "ending_column": 65 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createChallenge", - "source_mapping": { - "start": 12264, - "length": 3131, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsRollupUserLogic", - "source_mapping": { - "start": 501, - "length": 25132, - "filename_relative": "src/rollup/RollupUserLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", - "filename_short": "src/rollup/RollupUserLogic.sol", - "is_dependency": false, - "lines": [ - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, - 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, - 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, - 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, - 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker1].currentChallenge = challenge", - "source_mapping": { - "start": 13576, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [383], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13449, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [378, 379, 380, 381, 382, 383, 384, 385], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "_stakerMap[staker2].currentChallenge = challenge", - "source_mapping": { - "start": 13634, - "length": 48, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [384], - "starting_column": 9, - "ending_column": 57 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "challengeStarted", - "source_mapping": { - "start": 13449, - "length": 240, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [378, 379, 380, 381, 382, 383, 384, 385], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "challengeStarted(address,address,uint64)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - } - ], - "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#291-364):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#350-359)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#375-385)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#361)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#383)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#185-187)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#378-385)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#367-370)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#176-178)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#542-550)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#194-196)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#350-361)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#392-398)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#148-150)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#158-160)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#167-169)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#406-415)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#507-511)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#421-425)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#488-500)\n", - "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L291-L364):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L350-L359)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L375-L385)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L361)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L383)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L185-L187)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L378-L385)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L367-L370)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L176-L178)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L542-L550)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L194-L196)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L350-L361)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L392-L398)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L148-L150)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L158-L160)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L167-L169)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L406-L415)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L507-L511)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L421-L425)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L488-L500)\n", - "first_markdown_element": "src/rollup/RollupUserLogic.sol#L291-L364", - "id": "af65892a907a109b6f58d5895c29425a5794647abc20793593b6461989e07fb6", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeTransactionImpl", - "source_mapping": { - "start": 7336, - "length": 990, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 11504, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, - 326 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)" - } - }, - { - "type": "node", - "name": "executeBridgeCall(to,value,data)", - "source_mapping": { - "start": 8253, - "length": 34, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [222], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeTransactionImpl", - "source_mapping": { - "start": 7336, - "length": 990, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 11504, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "(success,returndata) = bridge.executeCall(to,value,data)", - "source_mapping": { - "start": 9954, - "length": 77, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [275], - "starting_column": 9, - "ending_column": 86 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeBridgeCall", - "source_mapping": { - "start": 9832, - "length": 594, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 11504, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeBridgeCall(address,uint256,bytes)" - } - } - }, - "additional_fields": { "underlying_type": "external_calls_sending_eth" } - }, - { - "type": "node", - "name": "context = prevContext", - "source_mapping": { - "start": 8298, - "length": 21, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [224], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeTransactionImpl", - "source_mapping": { - "start": 7336, - "length": 990, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsOutbox", - "source_mapping": { - "start": 698, - "length": 11504, - "filename_relative": "src/bridge/AbsOutbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", - "filename_short": "src/bridge/AbsOutbox.sol", - "is_dependency": false, - "lines": [ - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "context" - } - } - ], - "description": "Reentrancy in AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-225):\n\tExternal calls:\n\t- executeBridgeCall(to,value,data) (src/bridge/AbsOutbox.sol#222)\n\t\t- (success,returndata) = bridge.executeCall(to,value,data) (src/bridge/AbsOutbox.sol#275)\n\tState variables written after the call(s):\n\t- context = prevContext (src/bridge/AbsOutbox.sol#224)\n\tAbsOutbox.context (src/bridge/AbsOutbox.sol#51) can be used in cross function reentrancies:\n\t- AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-225)\n\t- AbsOutbox.initialize(IBridge) (src/bridge/AbsOutbox.sol#63-79)\n\t- AbsOutbox.l2ToL1Block() (src/bridge/AbsOutbox.sol#118-123)\n\t- AbsOutbox.l2ToL1EthBlock() (src/bridge/AbsOutbox.sol#126-131)\n\t- AbsOutbox.l2ToL1OutputId() (src/bridge/AbsOutbox.sol#147-152)\n\t- AbsOutbox.l2ToL1Sender() (src/bridge/AbsOutbox.sol#110-115)\n\t- AbsOutbox.l2ToL1Timestamp() (src/bridge/AbsOutbox.sol#134-139)\n\t- AbsOutbox.postUpgradeInit() (src/bridge/AbsOutbox.sol#81-92)\n", - "markdown": "Reentrancy in [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L225):\n\tExternal calls:\n\t- [executeBridgeCall(to,value,data)](src/bridge/AbsOutbox.sol#L222)\n\t\t- [(success,returndata) = bridge.executeCall(to,value,data)](src/bridge/AbsOutbox.sol#L275)\n\tState variables written after the call(s):\n\t- [context = prevContext](src/bridge/AbsOutbox.sol#L224)\n\t[AbsOutbox.context](src/bridge/AbsOutbox.sol#L51) can be used in cross function reentrancies:\n\t- [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L225)\n\t- [AbsOutbox.initialize(IBridge)](src/bridge/AbsOutbox.sol#L63-L79)\n\t- [AbsOutbox.l2ToL1Block()](src/bridge/AbsOutbox.sol#L118-L123)\n\t- [AbsOutbox.l2ToL1EthBlock()](src/bridge/AbsOutbox.sol#L126-L131)\n\t- [AbsOutbox.l2ToL1OutputId()](src/bridge/AbsOutbox.sol#L147-L152)\n\t- [AbsOutbox.l2ToL1Sender()](src/bridge/AbsOutbox.sol#L110-L115)\n\t- [AbsOutbox.l2ToL1Timestamp()](src/bridge/AbsOutbox.sol#L134-L139)\n\t- [AbsOutbox.postUpgradeInit()](src/bridge/AbsOutbox.sol#L81-L92)\n", - "first_markdown_element": "src/bridge/AbsOutbox.sol#L196-L225", - "id": "426e61b097c321e642232d0d55da1f37bdf8bba9a4d0f425a61dc187192ef9ed", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 14555, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - }, - { - "type": "node", - "name": "challengeManager.clearChallenge(chall)", - "source_mapping": { - "start": 10950, - "length": 38, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [271], - "starting_column": 13, - "ending_column": 51 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 14555, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - } - }, - "additional_fields": { "underlying_type": "external_calls" } - }, - { - "type": "node", - "name": "clearChallenge(stakerA[i])", - "source_mapping": { - "start": 10870, - "length": 26, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [269], - "starting_column": 13, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 14555, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "staker.currentChallenge = NO_CHAL_INDEX", - "source_mapping": { - "start": 13136, - "length": 39, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [369], - "starting_column": 9, - "ending_column": 48 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "clearChallenge", - "source_mapping": { - "start": 13011, - "length": 171, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [367, 368, 369, 370], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "clearChallenge(address)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "clearChallenge(stakerB[i])", - "source_mapping": { - "start": 10910, - "length": 26, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [270], - "starting_column": 13, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "forceResolveChallenge", - "source_mapping": { - "start": 10412, - "length": 631, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 14555, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "forceResolveChallenge(address[],address[])" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - }, - { - "type": "node", - "name": "staker.currentChallenge = NO_CHAL_INDEX", - "source_mapping": { - "start": 13136, - "length": 39, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [369], - "starting_column": 9, - "ending_column": 48 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "clearChallenge", - "source_mapping": { - "start": 13011, - "length": 171, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [367, 368, 369, 370], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "clearChallenge(address)" - } - } - }, - "additional_fields": { - "underlying_type": "variables_written", - "variable_name": "_stakerMap" - } - } - ], - "description": "Reentrancy in RollupAdminLogic.forceResolveChallenge(address[],address[]) (src/rollup/RollupAdminLogic.sol#258-274):\n\tExternal calls:\n\t- challengeManager.clearChallenge(chall) (src/rollup/RollupAdminLogic.sol#271)\n\tState variables written after the call(s):\n\t- clearChallenge(stakerA[i]) (src/rollup/RollupAdminLogic.sol#269)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#369)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#185-187)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#367-370)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#176-178)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#542-550)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#194-196)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#350-361)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#148-150)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#158-160)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#167-169)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#406-415)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#421-425)\n\t- clearChallenge(stakerB[i]) (src/rollup/RollupAdminLogic.sol#270)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#369)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#185-187)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#367-370)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#176-178)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#542-550)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#194-196)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#350-361)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#148-150)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#158-160)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#167-169)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#406-415)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#421-425)\n", - "markdown": "Reentrancy in [RollupAdminLogic.forceResolveChallenge(address[],address[])](src/rollup/RollupAdminLogic.sol#L258-L274):\n\tExternal calls:\n\t- [challengeManager.clearChallenge(chall)](src/rollup/RollupAdminLogic.sol#L271)\n\tState variables written after the call(s):\n\t- [clearChallenge(stakerA[i])](src/rollup/RollupAdminLogic.sol#L269)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L369)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L185-L187)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L367-L370)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L176-L178)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L542-L550)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L194-L196)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L350-L361)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L148-L150)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L158-L160)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L167-L169)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L406-L415)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L421-L425)\n\t- [clearChallenge(stakerB[i])](src/rollup/RollupAdminLogic.sol#L270)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L369)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L185-L187)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L367-L370)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L176-L178)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L542-L550)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L194-L196)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L350-L361)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L148-L150)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L158-L160)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L167-L169)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L406-L415)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L421-L425)\n", - "first_markdown_element": "src/rollup/RollupAdminLogic.sol#L258-L274", - "id": "2e21893be44131693ea2dfb272622853fa44deea082e4c78e0bbd132c84af93e", - "check": "reentrancy-no-eth", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "u64Vals", - "source_mapping": { - "start": 6924, - "length": 24, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [226], - "starting_column": 9, - "ending_column": 33 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "globalState", - "source_mapping": { - "start": 6617, - "length": 684, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [ - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 233, 234, 235 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "Deserialize", - "source_mapping": { - "start": 450, - "length": 9161, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "globalState(bytes,uint256)" - } - } - } - } - ], - "description": "Deserialize.globalState(bytes,uint256).u64Vals (src/state/Deserialize.sol#226) is a local variable never initialized\n", - "markdown": "[Deserialize.globalState(bytes,uint256).u64Vals](src/state/Deserialize.sol#L226) is a local variable never initialized\n", - "first_markdown_element": "src/state/Deserialize.sol#L226", - "id": "b49e20832cf227724d4b048fc859ce00efa36bda00bb2d354df6861b1e5b65c8", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "funcIdx", - "source_mapping": { - "start": 6151, - "length": 14, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [194], - "starting_column": 9, - "ending_column": 23 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 5971, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).funcIdx (src/osp/OneStepProver0.sol#194) is a local variable never initialized\n", - "markdown": "[OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).funcIdx](src/osp/OneStepProver0.sol#L194) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L194", - "id": "0b3ea27e34dd552b3d33e544c7732699f56da1be9d675526040264c6f35cf115", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "sourceBits", - "source_mapping": { - "start": 12021, - "length": 16, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [400], - "starting_column": 9, - "ending_column": 25 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeExtendSameType", - "source_mapping": { - "start": 11827, - "length": 1476, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMath", - "source_mapping": { - "start": 362, - "length": 16325, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeExtendSameType(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).sourceBits (src/osp/OneStepProverMath.sol#400) is a local variable never initialized\n", - "markdown": "[OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).sourceBits](src/osp/OneStepProverMath.sol#L400) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMath.sol#L400", - "id": "7e6b4db4655b21a377a13a4c03fdcc62f8c4e56c5ecdf979c82afb0985a1fac5", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "part", - "source_mapping": { - "start": 1123, - "length": 17, - "filename_relative": "src/osp/HashProofHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", - "filename_short": "src/osp/HashProofHelper.sol", - "is_dependency": false, - "lines": [38], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "proveWithFullPreimage", - "source_mapping": { - "start": 954, - "length": 572, - "filename_relative": "src/osp/HashProofHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", - "filename_short": "src/osp/HashProofHelper.sol", - "is_dependency": false, - "lines": [ - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "HashProofHelper", - "source_mapping": { - "start": 388, - "length": 5264, - "filename_relative": "src/osp/HashProofHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", - "filename_short": "src/osp/HashProofHelper.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "proveWithFullPreimage(bytes,uint64)" - } - } - } - } - ], - "description": "HashProofHelper.proveWithFullPreimage(bytes,uint64).part (src/osp/HashProofHelper.sol#38) is a local variable never initialized\n", - "markdown": "[HashProofHelper.proveWithFullPreimage(bytes,uint64).part](src/osp/HashProofHelper.sol#L38) is a local variable never initialized\n", - "first_markdown_element": "src/osp/HashProofHelper.sol#L38", - "id": "9f6b190b96895f4cfb0f3db956545a55f4132aa16c8af057e7257d7fd2c5de43", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "ty", - "source_mapping": { - "start": 1685, - "length": 12, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [49], - "starting_column": 9, - "ending_column": 21 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1507, - "length": 4594, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProverMemory.sol#49) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProverMemory.sol#L49) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L49", - "id": "d44b109a885f9f18431fcbd810bf7f45b9f86b4749430739056c0786ab2d150e", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "impl", - "source_mapping": { - "start": 11151, - "length": 120, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [296, 297, 298], - "starting_column": 9, - "ending_column": 22 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeOneStep", - "source_mapping": { - "start": 10780, - "length": 1055, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProverMemory.sol#296-298) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProverMemory.sol#L296-L298) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L296-L298", - "id": "c0081c68be4899b530be0e0720e9713a3d42b71364ad4392c42fd165ec162d1e", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "beforeAcc", - "source_mapping": { - "start": 11222, - "length": 17, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [278], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateDelayedInbox", - "source_mapping": { - "start": 10970, - "length": 916, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes).beforeAcc (src/osp/OneStepProverHostIo.sol#278) is a local variable never initialized\n", - "markdown": "[OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes).beforeAcc](src/osp/OneStepProverHostIo.sol#L278) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L278", - "id": "dab8df6b27e88ad0e415842d20e13cd455e0d5f0c84fa74d2906eefd6d1e06f0", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "impl", - "source_mapping": { - "start": 14734, - "length": 120, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [477, 478, 479], - "starting_column": 9, - "ending_column": 22 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeOneStep", - "source_mapping": { - "start": 14363, - "length": 2322, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, - 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, - 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 521, 522, 523 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMath", - "source_mapping": { - "start": 362, - "length": 16325, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMath.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProverMath.sol#477-479) is a local variable never initialized\n", - "markdown": "[OneStepProverMath.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProverMath.sol#L477-L479) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMath.sol#L477-L479", - "id": "7bb129f3bd93db0e9c1579c8ab353fe86d0d54b40d421f4a568ab9279ce8b6cb", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "internalStack", - "source_mapping": { - "start": 1959, - "length": 31, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [63], - "starting_column": 9, - "ending_column": 40 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getStartMachineHash", - "source_mapping": { - "start": 1364, - "length": 1078, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 4325, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getStartMachineHash(bytes32,bytes32)" - } - } - } - } - ], - "description": "ChallengeLib.getStartMachineHash(bytes32,bytes32).internalStack (src/challenge/ChallengeLib.sol#63) is a local variable never initialized\n", - "markdown": "[ChallengeLib.getStartMachineHash(bytes32,bytes32).internalStack](src/challenge/ChallengeLib.sol#L63) is a local variable never initialized\n", - "first_markdown_element": "src/challenge/ChallengeLib.sol#L63", - "id": "2b6e1af0735464f525ca02dac16210c75f5e60fdd4f5020e646e82eccdf94e2a", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "frameStack", - "source_mapping": { - "start": 2000, - "length": 34, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [64], - "starting_column": 9, - "ending_column": 43 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getStartMachineHash", - "source_mapping": { - "start": 1364, - "length": 1078, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ChallengeLib", - "source_mapping": { - "start": 272, - "length": 4325, - "filename_relative": "src/challenge/ChallengeLib.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", - "filename_short": "src/challenge/ChallengeLib.sol", - "is_dependency": false, - "lines": [ - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getStartMachineHash(bytes32,bytes32)" - } - } - } - } - ], - "description": "ChallengeLib.getStartMachineHash(bytes32,bytes32).frameStack (src/challenge/ChallengeLib.sol#64) is a local variable never initialized\n", - "markdown": "[ChallengeLib.getStartMachineHash(bytes32,bytes32).frameStack](src/challenge/ChallengeLib.sol#L64) is a local variable never initialized\n", - "first_markdown_element": "src/challenge/ChallengeLib.sol#L64", - "id": "e2c13e88a674b7d15f66c38811493b28e3d768158293153c3761365faf8e45c7", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "signed", - "source_mapping": { - "start": 1734, - "length": 11, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [51], - "starting_column": 9, - "ending_column": 20 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1507, - "length": 4594, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).signed (src/osp/OneStepProverMemory.sol#51) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).signed](src/osp/OneStepProverMemory.sol#L51) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L51", - "id": "494ad26e42522ed318b7143deadf6e22863a94ac35e1bc7e431f680c09e99249", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "extracted", - "source_mapping": { - "start": 5123, - "length": 22, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [147], - "starting_column": 9, - "ending_column": 31 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReadPreImage", - "source_mapping": { - "start": 4302, - "length": 5772, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes).extracted (src/osp/OneStepProverHostIo.sol#147) is a local variable never initialized\n", - "markdown": "[OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes).extracted](src/osp/OneStepProverHostIo.sol#L147) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L147", - "id": "b8f149ef07d9b5bf6a4fd2772d951ef00e1136d5728509097c74a6d35fb7419a", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "delayedAcc", - "source_mapping": { - "start": 10502, - "length": 18, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [258], - "starting_column": 9, - "ending_column": 27 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateSequencerInbox", - "source_mapping": { - "start": 10080, - "length": 884, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).delayedAcc (src/osp/OneStepProverHostIo.sol#258) is a local variable never initialized\n", - "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).delayedAcc](src/osp/OneStepProverHostIo.sol#L258) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L258", - "id": "a4af275d7732b756f493da186504395ee7b6705d359094ed504be4cb2382a71f", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "state256", - "source_mapping": { - "start": 4683, - "length": 27, - "filename_relative": "src/osp/HashProofHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", - "filename_short": "src/osp/HashProofHelper.sol", - "is_dependency": false, - "lines": [127], - "starting_column": 13, - "ending_column": 40 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "keccakUpdate", - "source_mapping": { - "start": 3663, - "length": 1486, - "filename_relative": "src/osp/HashProofHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", - "filename_short": "src/osp/HashProofHelper.sol", - "is_dependency": false, - "lines": [ - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "HashProofHelper", - "source_mapping": { - "start": 388, - "length": 5264, - "filename_relative": "src/osp/HashProofHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", - "filename_short": "src/osp/HashProofHelper.sol", - "is_dependency": false, - "lines": [ - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "keccakUpdate(HashProofHelper.KeccakState,bytes,bool)" - } - } - } - } - ], - "description": "HashProofHelper.keccakUpdate(HashProofHelper.KeccakState,bytes,bool).state256 (src/osp/HashProofHelper.sol#127) is a local variable never initialized\n", - "markdown": "[HashProofHelper.keccakUpdate(HashProofHelper.KeccakState,bytes,bool).state256](src/osp/HashProofHelper.sol#L127) is a local variable never initialized\n", - "first_markdown_element": "src/osp/HashProofHelper.sol#L127", - "id": "b10eafcd668276e8f081740d67fa003ef0534d1520e371c18e96833214fc3ff2", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "beforeAcc", - "source_mapping": { - "start": 10475, - "length": 17, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [257], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateSequencerInbox", - "source_mapping": { - "start": 10080, - "length": 884, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).beforeAcc (src/osp/OneStepProverHostIo.sol#257) is a local variable never initialized\n", - "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).beforeAcc](src/osp/OneStepProverHostIo.sol#L257) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L257", - "id": "93458ecce4030168b57a5b4b9bddf11e556bda0b87b21572901703776f8a4a4d", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "memoryFrame", - "source_mapping": { - "start": 21082, - "length": 38, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [575], - "starting_column": 9, - "ending_column": 47 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createNewNode", - "source_mapping": { - "start": 20652, - "length": 4618, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, - 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCore", - "source_mapping": { - "start": 685, - "length": 24587, - "filename_relative": "src/rollup/RollupCore.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", - "filename_short": "src/rollup/RollupCore.sol", - "is_dependency": false, - "lines": [ - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, - 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, - 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, - 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, - 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, - 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, - 676, 677, 678 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNewNode(Assertion,uint64,uint256,bytes32)" - } - } - } - } - ], - "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32).memoryFrame (src/rollup/RollupCore.sol#575) is a local variable never initialized\n", - "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32).memoryFrame](src/rollup/RollupCore.sol#L575) is a local variable never initialized\n", - "first_markdown_element": "src/rollup/RollupCore.sol#L575", - "id": "22d3572f5fd9e44b1a0e455ebf3a57c571e31a392c713a5313ed78cdb5bdd79d", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "bounds", - "source_mapping": { - "start": 7906, - "length": 32, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [214], - "starting_column": 9, - "ending_column": 41 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "getTimeBounds", - "source_mapping": { - "start": 7813, - "length": 740, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "SequencerInbox", - "source_mapping": { - "start": 1909, - "length": 29266, - "filename_relative": "src/bridge/SequencerInbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", - "filename_short": "src/bridge/SequencerInbox.sol", - "is_dependency": false, - "lines": [ - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, - 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, - 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, - 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, - 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, - 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, - 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, - 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, - 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, - 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, - 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, - 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, - 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, - 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, - 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, - 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, - 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, - 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, - 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, - 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, - 797, 798, 799, 800, 801, 802, 803, 804, 805 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "getTimeBounds()" - } - } - } - } - ], - "description": "SequencerInbox.getTimeBounds().bounds (src/bridge/SequencerInbox.sol#214) is a local variable never initialized\n", - "markdown": "[SequencerInbox.getTimeBounds().bounds](src/bridge/SequencerInbox.sol#L214) is a local variable never initialized\n", - "first_markdown_element": "src/bridge/SequencerInbox.sol#L214", - "id": "a9ab2d44723c17809429f069881bb97a07e53966e1c848cc3083baebb7d26ceb", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "ty", - "source_mapping": { - "start": 6351, - "length": 12, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [171], - "starting_column": 13, - "ending_column": 25 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryStore", - "source_mapping": { - "start": 6107, - "length": 3663, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProverMemory.sol#171) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProverMemory.sol#L171) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L171", - "id": "565f5e19fbe1a69065e4ef47ec789739a56008570ac09324d5995e298652f2be", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "ty", - "source_mapping": { - "start": 1158, - "length": 12, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [44], - "starting_column": 9, - "ending_column": 21 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeConstPush", - "source_mapping": { - "start": 954, - "length": 732, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeConstPush(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeConstPush(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProver0.sol#44) is a local variable never initialized\n", - "markdown": "[OneStepProver0.executeConstPush(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProver0.sol#L44) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L44", - "id": "f3a4bd8740f9565ecd548a3027588ef6a9ab1fab50a47ee9989dff0a450c0d81", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "emptyGlobalState", - "source_mapping": { - "start": 3120, - "length": 35, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [78], - "starting_column": 9, - "ending_column": 44 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createInitialNode", - "source_mapping": { - "start": 3046, - "length": 662, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupAdminLogic", - "source_mapping": { - "start": 590, - "length": 14555, - "filename_relative": "src/rollup/RollupAdminLogic.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", - "filename_short": "src/rollup/RollupAdminLogic.sol", - "is_dependency": false, - "lines": [ - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, - 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createInitialNode()" - } - } - } - } - ], - "description": "RollupAdminLogic.createInitialNode().emptyGlobalState (src/rollup/RollupAdminLogic.sol#78) is a local variable never initialized\n", - "markdown": "[RollupAdminLogic.createInitialNode().emptyGlobalState](src/rollup/RollupAdminLogic.sol#L78) is a local variable never initialized\n", - "first_markdown_element": "src/rollup/RollupAdminLogic.sol#L78", - "id": "b104a1c9b21db741f0eff33cad88bcd28b01251cf7cb2ac69372f55f19cc56b2", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "lastProvedLeafContents", - "source_mapping": { - "start": 4304, - "length": 30, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [121], - "starting_column": 9, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1507, - "length": 4594, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).lastProvedLeafContents (src/osp/OneStepProverMemory.sol#121) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).lastProvedLeafContents](src/osp/OneStepProverMemory.sol#L121) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L121", - "id": "162cb33b9534bc21104309b21e51a798ebe240718727aed3b174e3802daec4c1", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "bytes32Vals", - "source_mapping": { - "start": 6885, - "length": 29, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [225], - "starting_column": 9, - "ending_column": 38 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "globalState", - "source_mapping": { - "start": 6617, - "length": 684, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [ - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 233, 234, 235 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "Deserialize", - "source_mapping": { - "start": 450, - "length": 9161, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "globalState(bytes,uint256)" - } - } - } - } - ], - "description": "Deserialize.globalState(bytes,uint256).bytes32Vals (src/state/Deserialize.sol#225) is a local variable never initialized\n", - "markdown": "[Deserialize.globalState(bytes,uint256).bytes32Vals](src/state/Deserialize.sol#L225) is a local variable never initialized\n", - "first_markdown_element": "src/state/Deserialize.sol#L225", - "id": "347c23c28d92854b0181184cb13878043e27048bb6b0d14e6f9f24d733477f80", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "status", - "source_mapping": { - "start": 7495, - "length": 20, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [243], - "starting_column": 9, - "ending_column": 29 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "machine", - "source_mapping": { - "start": 7307, - "length": 1811, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [ - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "Deserialize", - "source_mapping": { - "start": 450, - "length": 9161, - "filename_relative": "src/state/Deserialize.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", - "filename_short": "src/state/Deserialize.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "machine(bytes,uint256)" - } - } - } - } - ], - "description": "Deserialize.machine(bytes,uint256).status (src/state/Deserialize.sol#243) is a local variable never initialized\n", - "markdown": "[Deserialize.machine(bytes,uint256).status](src/state/Deserialize.sol#L243) is a local variable never initialized\n", - "first_markdown_element": "src/state/Deserialize.sol#L243", - "id": "b0bb66b3aaa5e859564fcf69ddd9c518a2dff55461b2e23469e57954ece88023", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "sourceTy", - "source_mapping": { - "start": 13504, - "length": 18, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [443], - "starting_column": 9, - "ending_column": 27 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReinterpret", - "source_mapping": { - "start": 13309, - "length": 1048, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMath", - "source_mapping": { - "start": 362, - "length": 16325, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReinterpret(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).sourceTy (src/osp/OneStepProverMath.sol#443) is a local variable never initialized\n", - "markdown": "[OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).sourceTy](src/osp/OneStepProverMath.sol#L443) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMath.sol#L443", - "id": "19cc2967641f968047d8174e2ba3152038af798b63c42b1bb55dd59287a923a7", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "writeBytes", - "source_mapping": { - "start": 6286, - "length": 17, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [168], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryStore", - "source_mapping": { - "start": 6107, - "length": 3663, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).writeBytes (src/osp/OneStepProverMemory.sol#168) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).writeBytes](src/osp/OneStepProverMemory.sol#L168) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L168", - "id": "f573681c354f3fdccf310c43fad70c2f0994cf3b3de20432e01071bd6a3981de", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "destTy", - "source_mapping": { - "start": 13478, - "length": 16, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [442], - "starting_column": 9, - "ending_column": 25 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeReinterpret", - "source_mapping": { - "start": 13309, - "length": 1048, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMath", - "source_mapping": { - "start": 362, - "length": 16325, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeReinterpret(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).destTy (src/osp/OneStepProverMath.sol#442) is a local variable never initialized\n", - "markdown": "[OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).destTy](src/osp/OneStepProverMath.sol#L442) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMath.sol#L442", - "id": "0c40a87502e42085a3fc0a61f202e687aed2386c6fe161376f0f0b2f16a4c9c5", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "ty", - "source_mapping": { - "start": 11999, - "length": 12, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [399], - "starting_column": 9, - "ending_column": 21 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeExtendSameType", - "source_mapping": { - "start": 11827, - "length": 1476, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMath", - "source_mapping": { - "start": 362, - "length": 16325, - "filename_relative": "src/osp/OneStepProverMath.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", - "filename_short": "src/osp/OneStepProverMath.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeExtendSameType(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProverMath.sol#399) is a local variable never initialized\n", - "markdown": "[OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProverMath.sol#L399) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMath.sol#L399", - "id": "d5801e7c2f23eb0d6bc004590ab2e75879037d149be714c34ab3b066e1c4b819", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "readBytes", - "source_mapping": { - "start": 1707, - "length": 17, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [50], - "starting_column": 9, - "ending_column": 26 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1507, - "length": 4594, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).readBytes (src/osp/OneStepProverMemory.sol#50) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).readBytes](src/osp/OneStepProverMemory.sol#L50) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L50", - "id": "09c1e38d961440cc644e890e7e165ecd2073dd96901441ae9b2b9c939257cc6f", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "frame", - "source_mapping": { - "start": 1824, - "length": 28, - "filename_relative": "src/rollup/BridgeCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/BridgeCreator.sol", - "filename_short": "src/rollup/BridgeCreator.sol", - "is_dependency": false, - "lines": [58], - "starting_column": 9, - "ending_column": 37 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_createBridge", - "source_mapping": { - "start": 1674, - "length": 1017, - "filename_relative": "src/rollup/BridgeCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/BridgeCreator.sol", - "filename_short": "src/rollup/BridgeCreator.sol", - "is_dependency": false, - "lines": [ - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "BridgeCreator", - "source_mapping": { - "start": 676, - "length": 3074, - "filename_relative": "src/rollup/BridgeCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/BridgeCreator.sol", - "filename_short": "src/rollup/BridgeCreator.sol", - "is_dependency": false, - "lines": [ - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_createBridge(address,BridgeCreator.BridgeContracts)" - } - } - } - } - ], - "description": "BridgeCreator._createBridge(address,BridgeCreator.BridgeContracts).frame (src/rollup/BridgeCreator.sol#58) is a local variable never initialized\n", - "markdown": "[BridgeCreator._createBridge(address,BridgeCreator.BridgeContracts).frame](src/rollup/BridgeCreator.sol#L58) is a local variable never initialized\n", - "first_markdown_element": "src/rollup/BridgeCreator.sol#L58", - "id": "4c4998aea345771ab95ff74b35dc261d24cfbcc254dff7368e71dcded4e6b088", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "impl", - "source_mapping": { - "start": 14921, - "length": 120, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [444, 445, 446], - "starting_column": 9, - "ending_column": 22 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeOneStep", - "source_mapping": { - "start": 14550, - "length": 2514, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, - 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProver0.sol#444-446) is a local variable never initialized\n", - "markdown": "[OneStepProver0.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProver0.sol#L444-L446) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L444-L446", - "id": "bf9df19313618417269a105ecd5b4cf0c22530264701877ed554d77b7886b033", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "impl", - "source_mapping": { - "start": 16165, - "length": 193, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [425, 426, 427, 428, 429, 430, 431], - "starting_column": 9, - "ending_column": 29 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeOneStep", - "source_mapping": { - "start": 15786, - "length": 1210, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProverHostIo.sol#425-431) is a local variable never initialized\n", - "markdown": "[OneStepProverHostIo.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProverHostIo.sol#L425-L431) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L425-L431", - "id": "fd4baa84dfad7402f9c850b2abb8c959fa89f0a0f27d7a4d985504eafa596460", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "node", - "source_mapping": { - "start": 2394, - "length": 16, - "filename_relative": "src/rollup/Node.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/Node.sol", - "filename_short": "src/rollup/Node.sol", - "is_dependency": false, - "lines": [69], - "starting_column": 9, - "ending_column": 25 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createNode", - "source_mapping": { - "start": 2149, - "length": 636, - "filename_relative": "src/rollup/Node.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/Node.sol", - "filename_short": "src/rollup/Node.sol", - "is_dependency": false, - "lines": [ - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "NodeLib", - "source_mapping": { - "start": 1752, - "length": 2186, - "filename_relative": "src/rollup/Node.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/Node.sol", - "filename_short": "src/rollup/Node.sol", - "is_dependency": false, - "lines": [ - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createNode(bytes32,bytes32,bytes32,uint64,uint64,bytes32)" - } - } - } - } - ], - "description": "NodeLib.createNode(bytes32,bytes32,bytes32,uint64,uint64,bytes32).node (src/rollup/Node.sol#69) is a local variable never initialized\n", - "markdown": "[NodeLib.createNode(bytes32,bytes32,bytes32,uint64,uint64,bytes32).node](src/rollup/Node.sol#L69) is a local variable never initialized\n", - "first_markdown_element": "src/rollup/Node.sol#L69", - "id": "2fbc6226a17bd364563caa94e1c97858f74f9cd682e6c1096bb46cf3ce114daf", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "lastProvedMerkle", - "source_mapping": { - "start": 8359, - "length": 35, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [220], - "starting_column": 9, - "ending_column": 44 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryStore", - "source_mapping": { - "start": 6107, - "length": 3663, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedMerkle (src/osp/OneStepProverMemory.sol#220) is a local variable never initialized\n", - "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedMerkle](src/osp/OneStepProverMemory.sol#L220) is a local variable never initialized\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L220", - "id": "970df6569838c064f8c23181f94aa7553a41b5a23c53e802d29cd0162f7d4f2b", - "check": "uninitialized-local", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "initialize", - "source_mapping": { - "start": 969, - "length": 447, - "filename_relative": "src/bridge/ERC20Inbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", - "filename_short": "src/bridge/ERC20Inbox.sol", - "is_dependency": false, - "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ERC20Inbox", - "source_mapping": { - "start": 789, - "length": 4172, - "filename_relative": "src/bridge/ERC20Inbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", - "filename_short": "src/bridge/ERC20Inbox.sol", - "is_dependency": false, - "lines": [ - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "initialize(IBridge,ISequencerInbox)" - } - }, - { - "type": "node", - "name": "IERC20(nativeToken).approve(address(bridge),type()(uint256).max)", - "source_mapping": { - "start": 1346, - "length": 63, - "filename_relative": "src/bridge/ERC20Inbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", - "filename_short": "src/bridge/ERC20Inbox.sol", - "is_dependency": false, - "lines": [36], - "starting_column": 9, - "ending_column": 72 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "initialize", - "source_mapping": { - "start": 969, - "length": 447, - "filename_relative": "src/bridge/ERC20Inbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", - "filename_short": "src/bridge/ERC20Inbox.sol", - "is_dependency": false, - "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "ERC20Inbox", - "source_mapping": { - "start": 789, - "length": 4172, - "filename_relative": "src/bridge/ERC20Inbox.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", - "filename_short": "src/bridge/ERC20Inbox.sol", - "is_dependency": false, - "lines": [ - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "initialize(IBridge,ISequencerInbox)" - } - } - } - } - ], - "description": "ERC20Inbox.initialize(IBridge,ISequencerInbox) (src/bridge/ERC20Inbox.sol#27-37) ignores return value by IERC20(nativeToken).approve(address(bridge),type()(uint256).max) (src/bridge/ERC20Inbox.sol#36)\n", - "markdown": "[ERC20Inbox.initialize(IBridge,ISequencerInbox)](src/bridge/ERC20Inbox.sol#L27-L37) ignores return value by [IERC20(nativeToken).approve(address(bridge),type()(uint256).max)](src/bridge/ERC20Inbox.sol#L36)\n", - "first_markdown_element": "src/bridge/ERC20Inbox.sol#L27-L37", - "id": "02a7ce9e0718ec474776a6c6466ec2120335f60d5d537c682d2d0b48b02e328e", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "refundsGas", - "source_mapping": { - "start": 721, - "length": 2143, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefundEnabled", - "source_mapping": { - "start": 309, - "length": 2557, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "refundsGas(IGasRefunder,IReader4844)" - } - }, - { - "type": "node", - "name": "gasRefunder.onGasSpent(address(msg.sender),startGasLeft - gasleft()(),calldataSize)", - "source_mapping": { - "start": 2764, - "length": 83, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [49], - "starting_column": 13, - "ending_column": 96 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "refundsGas", - "source_mapping": { - "start": 721, - "length": 2143, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "GasRefundEnabled", - "source_mapping": { - "start": 309, - "length": 2557, - "filename_relative": "src/libraries/GasRefundEnabled.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", - "filename_short": "src/libraries/GasRefundEnabled.sol", - "is_dependency": false, - "lines": [ - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "refundsGas(IGasRefunder,IReader4844)" - } - } - } - } - ], - "description": "GasRefundEnabled.refundsGas(IGasRefunder,IReader4844) (src/libraries/GasRefundEnabled.sol#17-51) ignores return value by gasRefunder.onGasSpent(address(msg.sender),startGasLeft - gasleft()(),calldataSize) (src/libraries/GasRefundEnabled.sol#49)\n", - "markdown": "[GasRefundEnabled.refundsGas(IGasRefunder,IReader4844)](src/libraries/GasRefundEnabled.sol#L17-L51) ignores return value by [gasRefunder.onGasSpent(address(msg.sender),startGasLeft - gasleft()(),calldataSize)](src/libraries/GasRefundEnabled.sol#L49)\n", - "first_markdown_element": "src/libraries/GasRefundEnabled.sol#L17-L51", - "id": "dd7d7f9070537fa235923aa2a3f52a440202d201a28033828f3cfb6418df3676", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeDrop", - "source_mapping": { - "start": 1692, - "length": 185, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [60, 61, 62, 63, 64, 65, 66, 67], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, - 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeDrop(Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "mach.valueStack.pop()", - "source_mapping": { - "start": 1849, - "length": 21, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [66], - "starting_column": 9, - "ending_column": 30 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeDrop", - "source_mapping": { - "start": 1692, - "length": 185, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [60, 61, 62, 63, 64, 65, 66, 67], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeDrop(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeDrop(Machine,Module,Instruction,bytes) (src/osp/OneStepProver0.sol#60-67) ignores return value by mach.valueStack.pop() (src/osp/OneStepProver0.sol#66)\n", - "markdown": "[OneStepProver0.executeDrop(Machine,Module,Instruction,bytes)](src/osp/OneStepProver0.sol#L60-L67) ignores return value by [mach.valueStack.pop()](src/osp/OneStepProver0.sol#L66)\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L60-L67", - "id": "12bf5611aeaa1ce8c4037f42705c38eef1245905dff7bc27604a5c8290de634b", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "validateSequencerInbox", - "source_mapping": { - "start": 10080, - "length": 884, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)" - } - }, - { - "type": "node", - "name": "(afterDelayedMsg,None) = Deserialize.u64(message,32)", - "source_mapping": { - "start": 10365, - "length": 50, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [255], - "starting_column": 9, - "ending_column": 59 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateSequencerInbox", - "source_mapping": { - "start": 10080, - "length": 884, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#247-269) ignores return value by (afterDelayedMsg,None) = Deserialize.u64(message,32) (src/osp/OneStepProverHostIo.sol#255)\n", - "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L247-L269) ignores return value by [(afterDelayedMsg,None) = Deserialize.u64(message,32)](src/osp/OneStepProverHostIo.sol#L255)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L247-L269", - "id": "8e9dac288df9bcd5afd57ce5afd7d08f223411c09b70bf9486fbdce8c99e8a4e", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "validateDelayedInbox", - "source_mapping": { - "start": 10970, - "length": 916, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)" - } - }, - { - "type": "node", - "name": "(sender,None) = Deserialize.u256(message,1)", - "source_mapping": { - "start": 11493, - "length": 41, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [287], - "starting_column": 9, - "ending_column": 50 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "validateDelayedInbox", - "source_mapping": { - "start": 10970, - "length": 916, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverHostIo", - "source_mapping": { - "start": 433, - "length": 16565, - "filename_relative": "src/osp/OneStepProverHostIo.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", - "filename_short": "src/osp/OneStepProverHostIo.sol", - "is_dependency": false, - "lines": [ - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)" - } - } - } - } - ], - "description": "OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#271-296) ignores return value by (sender,None) = Deserialize.u256(message,1) (src/osp/OneStepProverHostIo.sol#287)\n", - "markdown": "[OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L271-L296) ignores return value by [(sender,None) = Deserialize.u256(message,1)](src/osp/OneStepProverHostIo.sol#L287)\n", - "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L271-L296", - "id": "06e60ad1cf7b2c761d007d2174aab9de589f5fb917c2547582fac31386b8bf17", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1507, - "length": 4594, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - }, - { - "type": "node", - "name": "(lastProvedLeafContents,proofOffset,None) = ModuleMemoryLib.proveLeaf(mod.moduleMemory,leafIdx,proof,proofOffset)", - "source_mapping": { - "start": 4658, - "length": 212, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [128, 129, 130, 131, 132, 133], - "starting_column": 17, - "ending_column": 18 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeMemoryLoad", - "source_mapping": { - "start": 1507, - "length": 4594, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, 160 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProverMemory", - "source_mapping": { - "start": 368, - "length": 11469, - "filename_relative": "src/osp/OneStepProverMemory.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", - "filename_short": "src/osp/OneStepProverMemory.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes) (src/osp/OneStepProverMemory.sol#43-160) ignores return value by (lastProvedLeafContents,proofOffset,None) = ModuleMemoryLib.proveLeaf(mod.moduleMemory,leafIdx,proof,proofOffset) (src/osp/OneStepProverMemory.sol#128-133)\n", - "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes)](src/osp/OneStepProverMemory.sol#L43-L160) ignores return value by [(lastProvedLeafContents,proofOffset,None) = ModuleMemoryLib.proveLeaf(mod.moduleMemory,leafIdx,proof,proofOffset)](src/osp/OneStepProverMemory.sol#L128-L133)\n", - "first_markdown_element": "src/osp/OneStepProverMemory.sol#L43-L160", - "id": "ab8910cb7fbab9ad8b4fcabf66567df3327f36c637f318ceaf3df0ea258b2a1d", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - }, - { - "type": "node", - "name": "IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmount,data:})", - "source_mapping": { - "start": 9018, - "length": 434, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72], - "starting_column": 13, - "ending_column": 15 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) ignores return value by IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmount,data:}) (src/rollup/DeployHelper.sol#62-72)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) ignores return value by [IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmount,data:})](src/rollup/DeployHelper.sol#L62-L72)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", - "id": "b577066c87e9c3fd8db423a41c6f80870945020f8f55d5dd38041b1894b9af5a", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - }, - { - "type": "node", - "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", - "source_mapping": { - "start": 9483, - "length": 399, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [74, 75, 76, 77, 78, 79, 80, 81, 82, 83], - "starting_column": 13, - "ending_column": 15 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) ignores return value by IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#74-83)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) ignores return value by [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L74-L83)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", - "id": "08d31a6c6d79a1ee2e015f8b5e35c4ed5b9293c91824de95a577f6e382ac73bd", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, - 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - }, - { - "type": "node", - "name": "IInboxBase(inbox).sendL2Message(payload)", - "source_mapping": { - "start": 9959, - "length": 40, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [86], - "starting_column": 9, - "ending_column": 49 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_fundAndDeploy", - "source_mapping": { - "start": 8513, - "length": 1493, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DeployHelper", - "source_mapping": { - "start": 513, - "length": 11093, - "filename_relative": "src/rollup/DeployHelper.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", - "filename_short": "src/rollup/DeployHelper.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)" - } - } - } - } - ], - "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) ignores return value by IInboxBase(inbox).sendL2Message(payload) (src/rollup/DeployHelper.sol#86)\n", - "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) ignores return value by [IInboxBase(inbox).sendL2Message(payload)](src/rollup/DeployHelper.sol#L86)\n", - "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", - "id": "b4a84cbb13a9ec2260cb5bdf5bf9641492e27e04195d23e819c7abac1a906e14", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "_upgradeSecondaryToAndCall", - "source_mapping": { - "start": 2306, - "length": 313, - "filename_relative": "src/libraries/AdminFallbackProxy.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", - "filename_short": "src/libraries/AdminFallbackProxy.sol", - "is_dependency": false, - "lines": [60, 61, 62, 63, 64, 65, 66, 67, 68, 69], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DoubleLogicERC1967Upgrade", - "source_mapping": { - "start": 525, - "length": 3364, - "filename_relative": "src/libraries/AdminFallbackProxy.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", - "filename_short": "src/libraries/AdminFallbackProxy.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_upgradeSecondaryToAndCall(address,bytes,bool)" - } - }, - { - "type": "node", - "name": "Address.functionDelegateCall(newImplementation,data)", - "source_mapping": { - "start": 2549, - "length": 53, - "filename_relative": "src/libraries/AdminFallbackProxy.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", - "filename_short": "src/libraries/AdminFallbackProxy.sol", - "is_dependency": false, - "lines": [67], - "starting_column": 13, - "ending_column": 66 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "_upgradeSecondaryToAndCall", - "source_mapping": { - "start": 2306, - "length": 313, - "filename_relative": "src/libraries/AdminFallbackProxy.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", - "filename_short": "src/libraries/AdminFallbackProxy.sol", - "is_dependency": false, - "lines": [60, 61, 62, 63, 64, 65, 66, 67, 68, 69], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "DoubleLogicERC1967Upgrade", - "source_mapping": { - "start": 525, - "length": 3364, - "filename_relative": "src/libraries/AdminFallbackProxy.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", - "filename_short": "src/libraries/AdminFallbackProxy.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "_upgradeSecondaryToAndCall(address,bytes,bool)" - } - } - } - } - ], - "description": "DoubleLogicERC1967Upgrade._upgradeSecondaryToAndCall(address,bytes,bool) (src/libraries/AdminFallbackProxy.sol#60-69) ignores return value by Address.functionDelegateCall(newImplementation,data) (src/libraries/AdminFallbackProxy.sol#67)\n", - "markdown": "[DoubleLogicERC1967Upgrade._upgradeSecondaryToAndCall(address,bytes,bool)](src/libraries/AdminFallbackProxy.sol#L60-L69) ignores return value by [Address.functionDelegateCall(newImplementation,data)](src/libraries/AdminFallbackProxy.sol#L67)\n", - "first_markdown_element": "src/libraries/AdminFallbackProxy.sol#L60-L69", - "id": "47e0b452924c566df231e1282a84ce0091600869b7eac2442aebf277bfcb6455", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - }, - { - "type": "node", - "name": "(ethSequencerInbox,ethInbox) = bridgeCreator.ethBasedTemplates()", - "source_mapping": { - "start": 5121, - "length": 115, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [117, 118], - "starting_column": 13, - "ending_column": 37 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - } - } - } - ], - "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (ethSequencerInbox,ethInbox) = bridgeCreator.ethBasedTemplates() (src/rollup/RollupCreator.sol#117-118)\n", - "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(ethSequencerInbox,ethInbox) = bridgeCreator.ethBasedTemplates()](src/rollup/RollupCreator.sol#L117-L118)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", - "id": "ab1f7532bdfa2da03ac0035addb1594f2610bdbf697232a9b6207e2345bfd5a7", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - }, - { - "type": "node", - "name": "(erc20SequencerInbox,erc20Inbox) = bridgeCreator.erc20BasedTemplates()", - "source_mapping": { - "start": 5509, - "length": 121, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [125, 126], - "starting_column": 13, - "ending_column": 39 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "createRollup", - "source_mapping": { - "start": 4904, - "length": 5018, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "RollupCreator", - "source_mapping": { - "start": 703, - "length": 11028, - "filename_relative": "src/rollup/RollupCreator.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", - "filename_short": "src/rollup/RollupCreator.sol", - "is_dependency": false, - "lines": [ - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "createRollup(RollupCreator.RollupDeploymentParams)" - } - } - } - } - ], - "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (erc20SequencerInbox,erc20Inbox) = bridgeCreator.erc20BasedTemplates() (src/rollup/RollupCreator.sol#125-126)\n", - "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(erc20SequencerInbox,erc20Inbox) = bridgeCreator.erc20BasedTemplates()](src/rollup/RollupCreator.sol#L125-L126)\n", - "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", - "id": "66c2e2cbe1d68bc0695a2c75ad2b2ad0c7a15d7d1455bb4ae31a64aeece91d52", - "check": "unused-return", - "impact": "Medium", - "confidence": "Medium" - }, - { - "elements": [ - { - "type": "variable", - "name": "_activeOutbox", - "source_mapping": { - "start": 1410, - "length": 30, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [45], - "starting_column": 5, - "ending_column": 35 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsBridge", - "source_mapping": { - "start": 995, - "length": 9716, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [ - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308 - ], - "starting_column": 1, - "ending_column": 2 - } - } - } - }, - { - "type": "node", - "name": "_activeOutbox = msg.sender", - "source_mapping": { - "start": 6961, - "length": 26, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [218], - "starting_column": 9, - "ending_column": 35 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCall", - "source_mapping": { - "start": 6606, - "length": 870, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [ - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsBridge", - "source_mapping": { - "start": 995, - "length": 9716, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [ - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCall(address,uint256,bytes)" - } - } - } - }, - { - "type": "node", - "name": "_activeOutbox = prevOutbox", - "source_mapping": { - "start": 7380, - "length": 26, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [225], - "starting_column": 9, - "ending_column": 35 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCall", - "source_mapping": { - "start": 6606, - "length": 870, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [ - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "AbsBridge", - "source_mapping": { - "start": 995, - "length": 9716, - "filename_relative": "src/bridge/AbsBridge.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", - "filename_short": "src/bridge/AbsBridge.sol", - "is_dependency": false, - "lines": [ - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCall(address,uint256,bytes)" - } - } - } - } - ], - "description": "AbsBridge._activeOutbox (src/bridge/AbsBridge.sol#45) is written in both\n\t_activeOutbox = msg.sender (src/bridge/AbsBridge.sol#218)\n\t_activeOutbox = prevOutbox (src/bridge/AbsBridge.sol#225)\n", - "markdown": "[AbsBridge._activeOutbox](src/bridge/AbsBridge.sol#L45) is written in both\n\t[_activeOutbox = msg.sender](src/bridge/AbsBridge.sol#L218)\n\t[_activeOutbox = prevOutbox](src/bridge/AbsBridge.sol#L225)\n", - "first_markdown_element": "src/bridge/AbsBridge.sol#L45", - "id": "b37c58023a3ec214b040ae7619219597fa970084995f29f74c24648d6f1ba59f", - "check": "write-after-write", - "impact": "Medium", - "confidence": "High" - }, - { - "elements": [ - { - "type": "variable", - "name": "offset", - "source_mapping": { - "start": 6391, - "length": 18, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [201], - "starting_column": 13, - "ending_column": 31 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 5971, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - }, - { - "type": "node", - "name": "(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)", - "source_mapping": { - "start": 7998, - "length": 59, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [237], - "starting_column": 13, - "ending_column": 72 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 5971, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - }, - { - "type": "node", - "name": "(functionPointer,offset) = Deserialize.value(proof,offset)", - "source_mapping": { - "start": 8071, - "length": 60, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [238], - "starting_column": 13, - "ending_column": 73 - }, - "type_specific_fields": { - "parent": { - "type": "function", - "name": "executeCallIndirect", - "source_mapping": { - "start": 5971, - "length": 3565, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274 - ], - "starting_column": 5, - "ending_column": 6 - }, - "type_specific_fields": { - "parent": { - "type": "contract", - "name": "OneStepProver0", - "source_mapping": { - "start": 362, - "length": 16704, - "filename_relative": "src/osp/OneStepProver0.sol", - "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", - "filename_short": "src/osp/OneStepProver0.sol", - "is_dependency": false, - "lines": [ - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494 - ], - "starting_column": 1, - "ending_column": 2 - } - }, - "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)" - } - } - } - } - ], - "description": "OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset (src/osp/OneStepProver0.sol#201) is written in both\n\t(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset) (src/osp/OneStepProver0.sol#237)\n\t(functionPointer,offset) = Deserialize.value(proof,offset) (src/osp/OneStepProver0.sol#238)\n", - "markdown": "[OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset](src/osp/OneStepProver0.sol#L201) is written in both\n\t[(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)](src/osp/OneStepProver0.sol#L237)\n\t[(functionPointer,offset) = Deserialize.value(proof,offset)](src/osp/OneStepProver0.sol#L238)\n", - "first_markdown_element": "src/osp/OneStepProver0.sol#L201", - "id": "a2b254b166a5aad9092374dafd67aae05d0d84bd0d8079074f9addfc91926e56", - "check": "write-after-write", - "impact": "Medium", - "confidence": "High" - } -] +[{"elements": [{"type": "variable", "name": "anyTrustFastConfirmer", "source_mapping": {"start": 2460, "length": 36, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [80], "starting_column": 5, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6793, "length": 334, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32,bytes32)"}}], "description": "RollupCore.anyTrustFastConfirmer (src/rollup/RollupCore.sol#80) is never initialized. It is used in:\n\t- AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32) (src/rollup/RollupUserLogic.sol#176-180)\n", "markdown": "[RollupCore.anyTrustFastConfirmer](src/rollup/RollupCore.sol#L80) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32)](src/rollup/RollupUserLogic.sol#L176-L180)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L80", "id": "7588d31598e0049c45ba6922d304b0edadbf1308b5a8af9527dffbbc4dc61ac4", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21211, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", "source_mapping": {"start": 22554, "length": 69, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [542], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21211, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}, {"type": "node", "name": "baseStake * multiplier", "source_mapping": {"start": 22702, "length": 29, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [546], "starting_column": 9, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21211, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#501-547) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#542)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#546)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L501-L547) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L542)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L546)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L501-L547", "id": "c6b99e53c65770259b3301c94d2bc1a08086bddcc14611a28cdd3ac02bb85aab", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21211, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier == 0", "source_mapping": {"start": 22637, "length": 15, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [543], "starting_column": 13, "ending_column": 28}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21211, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#501-547) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#543)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L501-L547) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L543)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L501-L547", "id": "cd03d61e7b54e2afdbbc53bb1658f1e1bb0ff6071019d4e450c88b97ab1ef062", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6793, "length": 334, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32,bytes32)"}}, {"type": "node", "name": "require(bool,string)(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash,WRONG_HASH)", "source_mapping": {"start": 6986, "length": 81, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [178], "starting_column": 9, "ending_column": 90}, "type_specific_fields": {"parent": {"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6793, "length": 334, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32,bytes32)"}}}}], "description": "AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32) (src/rollup/RollupUserLogic.sol#176-180) uses a dangerous strict equality:\n\t- require(bool,string)(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash,WRONG_HASH) (src/rollup/RollupUserLogic.sol#178)\n", "markdown": "[AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,bytes32)](src/rollup/RollupUserLogic.sol#L176-L180) uses a dangerous strict equality:\n\t- [require(bool,string)(nodeHash == getNodeStorage(firstUnresolvedNode()).nodeHash,WRONG_HASH)](src/rollup/RollupUserLogic.sol#L178)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L176-L180", "id": "19ca8615fd5f71005c78c7230011930b328c1949f9594bef453bbe022663a85d", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 26420, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [640, 641, 642, 643], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}, {"type": "node", "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", "source_mapping": {"start": 26557, "length": 68, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [642], "starting_column": 9, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 26420, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [640, 641, 642, 643], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}}}], "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#640-643) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#642)\n", "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L640-L643) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L642)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L640-L643", "id": "5b92a43a048601d647a680d472499f14a3b778f80130e8c058351203f5d5fd5a", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 7909, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}, {"type": "node", "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", "source_mapping": {"start": 8371, "length": 72, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [213], "starting_column": 9, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 7909, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}}}], "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#200-215) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#213)\n", "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L200-L215) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L213)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L200-L215", "id": "ccbd0d521b15fdf53a5989679bae528b0dc5388bbbb4c4fdc19a8b9bd9f86879", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "createChallenge", "source_mapping": {"start": 13265, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}, {"type": "node", "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", "source_mapping": {"start": 15808, "length": 398, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [374, 375, 376, 377, 378, 379, 380, 381, 382, 383], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 13265, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", "source_mapping": {"start": 16750, "length": 317, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409], "starting_column": 9, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallengeHelper", "source_mapping": {"start": 16402, "length": 672, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", "source_mapping": {"start": 16242, "length": 56, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [385], "starting_column": 9, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 13265, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26133, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker1].currentChallenge = challenge", "source_mapping": {"start": 13618, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [384], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13491, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker2].currentChallenge = challenge", "source_mapping": {"start": 13676, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [385], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13491, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}], "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#315-388):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#374-383)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#399-409)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#385)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#385)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#379-386)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#393-399)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#508-512)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#489-501)\n", "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L315-L388):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L374-L383)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L399-L409)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L385)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L385)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L379-L386)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L393-L399)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L508-L512)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L489-L501)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L315-L388", "id": "2b29c60586106261585a7463cf78d2dc6e7c2d56072499e590e932df559d24bb", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "anyTrustFastConfirmer", "source_mapping": {"start": 2460, "length": 36, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [80], "starting_column": 5, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6800, "length": 401, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)"}}], "description": "RollupCore.anyTrustFastConfirmer (src/rollup/RollupCore.sol#80) is never initialized. It is used in:\n\t- AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32) (src/rollup/RollupUserLogic.sol#176-181)\n", "markdown": "[RollupCore.anyTrustFastConfirmer](src/rollup/RollupCore.sol#L80) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)](src/rollup/RollupUserLogic.sol#L176-L181)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L80", "id": "73f909a3e549c85be9403f39fd73d421a43658f2516798cb75e1788e512992f2", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21285, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", "source_mapping": {"start": 22628, "length": 69, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [543], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21285, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}, {"type": "node", "name": "baseStake * multiplier", "source_mapping": {"start": 22776, "length": 29, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [547], "starting_column": 9, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21285, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#502-548) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#543)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#547)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L502-L548) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L543)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L547)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L502-L548", "id": "a06a90d9213a90fab9e69dcb5ff30aff7af9ca537f078f891088bb6e179d0c41", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21285, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier == 0", "source_mapping": {"start": 22711, "length": 15, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [544], "starting_column": 13, "ending_column": 28}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21285, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#502-548) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#544)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L502-L548) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L544)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L502-L548", "id": "f0540633dca6b3c5acc4f012e6533bb6b22a026d8ff3b90b8585b50c348b0d5d", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6800, "length": 401, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)"}}, {"type": "node", "name": "require(bool,string)(nodeHash == getNodeStorage(nodeNum).nodeHash,WRONG_HASH)", "source_mapping": {"start": 7074, "length": 67, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [179], "starting_column": 9, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6800, "length": 401, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)"}}}}], "description": "AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32) (src/rollup/RollupUserLogic.sol#176-181) uses a dangerous strict equality:\n\t- require(bool,string)(nodeHash == getNodeStorage(nodeNum).nodeHash,WRONG_HASH) (src/rollup/RollupUserLogic.sol#179)\n", "markdown": "[AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32,uint64,bytes32)](src/rollup/RollupUserLogic.sol#L176-L181) uses a dangerous strict equality:\n\t- [require(bool,string)(nodeHash == getNodeStorage(nodeNum).nodeHash,WRONG_HASH)](src/rollup/RollupUserLogic.sol#L179)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L176-L181", "id": "d81d8afbfd2634a30a7859c5a5e586e9810463b8236da8bf559155d43b58a230", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 26494, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [641, 642, 643, 644], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}, {"type": "node", "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", "source_mapping": {"start": 26631, "length": 68, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [643], "starting_column": 9, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 26494, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [641, 642, 643, 644], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}}}], "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#641-644) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#643)\n", "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L641-L644) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L643)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L641-L644", "id": "3323048300e79cff852072e2a5dd523379c0c9072bfb004b3ba5bd0d09c86c3f", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 7983, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}, {"type": "node", "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", "source_mapping": {"start": 8445, "length": 72, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [214], "starting_column": 9, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 7983, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}}}], "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#201-216) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#214)\n", "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L201-L216) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L214)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L201-L216", "id": "45ab4c7ef9266f342edc09390b14e6ebbb5742734ae6570773770ba6b1be22df", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "createChallenge", "source_mapping": {"start": 13339, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}, {"type": "node", "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", "source_mapping": {"start": 15882, "length": 398, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [375, 376, 377, 378, 379, 380, 381, 382, 383, 384], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 13339, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", "source_mapping": {"start": 16824, "length": 317, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410], "starting_column": 9, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallengeHelper", "source_mapping": {"start": 16476, "length": 672, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", "source_mapping": {"start": 16316, "length": 56, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [386], "starting_column": 9, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 13339, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 26207, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker1].currentChallenge = challenge", "source_mapping": {"start": 13618, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [384], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13491, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker2].currentChallenge = challenge", "source_mapping": {"start": 13676, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [385], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13491, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}], "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#316-389):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#375-384)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#400-410)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#386)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#385)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#379-386)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#393-399)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#508-512)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#489-501)\n", "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L316-L389):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L375-L384)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L400-L410)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L386)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L385)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L379-L386)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L393-L399)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L508-L512)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L489-L501)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L316-L389", "id": "0c968d1b20454d8fd452f65b003e0966ae923df9d1ef17996b29defd85f3dc9e", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", "source_mapping": {"start": 10156, "length": 399, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [87, 88, 89, 90, 91, 92, 93, 94, 95, 96], "starting_column": 13, "ending_column": 15}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#87-96)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L87-L96)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", "id": "58b5f7a8d77486bc6173862a853121ecdf5d9979f84cc2e05b66e0f0fd11218c", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "perform", "source_mapping": {"start": 10685, "length": 1095, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}, {"type": "node", "name": "address(msg.sender).transfer(address(this).balance)", "source_mapping": {"start": 11712, "length": 51, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [142], "starting_column": 13, "ending_column": 64}, "type_specific_fields": {"parent": {"type": "function", "name": "perform", "source_mapping": {"start": 10685, "length": 1095, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}}}], "description": "DeployHelper.perform(address,address,uint256) (src/rollup/DeployHelper.sol#102-144) sends eth to arbitrary user\n\tDangerous calls:\n\t- address(msg.sender).transfer(address(this).balance) (src/rollup/DeployHelper.sol#142)\n", "markdown": "[DeployHelper.perform(address,address,uint256)](src/rollup/DeployHelper.sol#L102-L144) sends eth to arbitrary user\n\tDangerous calls:\n\t- [address(msg.sender).transfer(address(this).balance)](src/rollup/DeployHelper.sol#L142)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L102-L144", "id": "ce5c492f55419016b34eb4e4de36fb8212599a42274960d6402d10a63f45ad40", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "anyTrustFastConfirmer", "source_mapping": {"start": 2460, "length": 36, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [80], "starting_column": 5, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "fastConfirmNextNode", "source_mapping": {"start": 6703, "length": 225, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [175, 176, 177, 178], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "fastConfirmNextNode(bytes32,bytes32)"}}], "description": "RollupCore.anyTrustFastConfirmer (src/rollup/RollupCore.sol#80) is never initialized. It is used in:\n\t- AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32) (src/rollup/RollupUserLogic.sol#175-178)\n", "markdown": "[RollupCore.anyTrustFastConfirmer](src/rollup/RollupCore.sol#L80) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.fastConfirmNextNode(bytes32,bytes32)](src/rollup/RollupUserLogic.sol#L175-L178)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L80", "id": "18d2bfd017f6e3f4e743eb058275a178a0fd6d2d88265a51e06df0a8d6cd6473", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}, {"type": "node", "name": "feeAmountNativeDenominated = feeAmount / (10 ** (18 - decimals))", "source_mapping": {"start": 9268, "length": 62, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [66], "starting_column": 17, "ending_column": 79}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}}}, {"type": "node", "name": "feeAmountNativeDenominated * (10 ** (18 - decimals)) < feeAmount", "source_mapping": {"start": 9393, "length": 62, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [68], "starting_column": 21, "ending_column": 83}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) performs a multiplication on the result of a division:\n\t- feeAmountNativeDenominated = feeAmount / (10 ** (18 - decimals)) (src/rollup/DeployHelper.sol#66)\n\t- feeAmountNativeDenominated * (10 ** (18 - decimals)) < feeAmount (src/rollup/DeployHelper.sol#68)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) performs a multiplication on the result of a division:\n\t- [feeAmountNativeDenominated = feeAmount / (10 ** (18 - decimals))](src/rollup/DeployHelper.sol#L66)\n\t- [feeAmountNativeDenominated * (10 ** (18 - decimals)) < feeAmount](src/rollup/DeployHelper.sol#L68)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", "id": "4fb20a676d1f3bfb16ac2bd8d3fe3bbb5a365c9934ae12d86b9b88967edde290", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_scaleDownToNativeDecimals", "source_mapping": {"start": 13092, "length": 449, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 12840, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334], "starting_column": 1, "ending_column": 2}}, "signature": "_scaleDownToNativeDecimals(uint256,uint8)"}}, {"type": "node", "name": "scaledAmount = amount / (10 ** (18 - decimals))", "source_mapping": {"start": 13302, "length": 45, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [326], "starting_column": 13, "ending_column": 58}, "type_specific_fields": {"parent": {"type": "function", "name": "_scaleDownToNativeDecimals", "source_mapping": {"start": 13092, "length": 449, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 12840, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334], "starting_column": 1, "ending_column": 2}}, "signature": "_scaleDownToNativeDecimals(uint256,uint8)"}}}}, {"type": "node", "name": "scaledAmount * (10 ** (18 - decimals)) < amount", "source_mapping": {"start": 13402, "length": 45, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [328], "starting_column": 17, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "_scaleDownToNativeDecimals", "source_mapping": {"start": 13092, "length": 449, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 12840, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334], "starting_column": 1, "ending_column": 2}}, "signature": "_scaleDownToNativeDecimals(uint256,uint8)"}}}}], "description": "RollupCreator._scaleDownToNativeDecimals(uint256,uint8) (src/rollup/RollupCreator.sol#319-333) performs a multiplication on the result of a division:\n\t- scaledAmount = amount / (10 ** (18 - decimals)) (src/rollup/RollupCreator.sol#326)\n\t- scaledAmount * (10 ** (18 - decimals)) < amount (src/rollup/RollupCreator.sol#328)\n", "markdown": "[RollupCreator._scaleDownToNativeDecimals(uint256,uint8)](src/rollup/RollupCreator.sol#L319-L333) performs a multiplication on the result of a division:\n\t- [scaledAmount = amount / (10 ** (18 - decimals))](src/rollup/RollupCreator.sol#L326)\n\t- [scaledAmount * (10 ** (18 - decimals)) < amount](src/rollup/RollupCreator.sol#L328)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L319-L333", "id": "dfee0ddb602c8f74926e48357bc4e6a51a2881e92e8dc12e111f59780c4affb8", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21012, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", "source_mapping": {"start": 22355, "length": 69, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [540], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21012, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}, {"type": "node", "name": "baseStake * multiplier", "source_mapping": {"start": 22503, "length": 29, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [544], "starting_column": 9, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21012, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#499-545) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#540)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#544)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L499-L545) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L540)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L544)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L499-L545", "id": "2803a8de725e2165f69c9445b653745db069a7cfd61b8cc7b16da012952dc7f5", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createNewNode", "source_mapping": {"start": 20694, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}, {"type": "node", "name": "require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)", "source_mapping": {"start": 21435, "length": 193, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [583, 584, 585, 586, 587], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20694, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}}}], "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#564-678) uses a dangerous strict equality:\n\t- require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH) (src/rollup/RollupCore.sol#583-587)\n", "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L564-L678) uses a dangerous strict equality:\n\t- [require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)](src/rollup/RollupCore.sol#L583-L587)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L564-L678", "id": "a6975dd3860f8b5f0ecafe0488b0b42245ca3c01b6eb97806a28024e4594f214", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "createNewNode", "source_mapping": {"start": 20694, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}, {"type": "node", "name": "require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)", "source_mapping": {"start": 23889, "length": 144, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [636, 637, 638, 639], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20694, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}}}], "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#564-678) uses a dangerous strict equality:\n\t- require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH) (src/rollup/RollupCore.sol#636-639)\n", "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L564-L678) uses a dangerous strict equality:\n\t- [require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)](src/rollup/RollupCore.sol#L636-L639)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L564-L678", "id": "3b3dac1beaad095c507198b6bb9f705f811752b33542b85f5e042f86bec5fb00", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21012, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier == 0", "source_mapping": {"start": 22438, "length": 15, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [541], "starting_column": 13, "ending_column": 28}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 21012, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#499-545) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#541)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L499-L545) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L541)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L499-L545", "id": "d6f41cb5c33b4595428f9030c7e4c9a13c4023ba81089f63456a41d8784bd753", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 26221, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [638, 639, 640, 641], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}, {"type": "node", "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", "source_mapping": {"start": 26358, "length": 68, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [640], "starting_column": 9, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 26221, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [638, 639, 640, 641], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}}}], "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#638-641) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#640)\n", "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L638-L641) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L640)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L638-L641", "id": "7bbbccc60c30858495f1002fa4f96507c8f35e5225b241a5dab5ec293383b044", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 7710, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}, {"type": "node", "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", "source_mapping": {"start": 8172, "length": 72, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [211], "starting_column": 9, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 7710, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}}}], "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#198-213) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#211)\n", "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L198-L213) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L211)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L198-L213", "id": "8e5cdf0b77d052567cdd55e34a5291c9b1e139a5df0033fdf1de430263047d89", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "node", "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)", "source_mapping": {"start": 10820, "length": 198, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [107, 108, 109, 110, 111, 112, 113, 114], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "perform", "source_mapping": {"start": 10685, "length": 1095, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}}}, {"type": "node", "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)", "source_mapping": {"start": 10820, "length": 198, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [107, 108, 109, 110, 111, 112, 113, 114], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "perform", "source_mapping": {"start": 10685, "length": 1095, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}}}], "description": "Multiple retryable tickets created in the same function:\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#107-114)\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#107-114)\n", "markdown": "Multiple retryable tickets created in the same function:\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L107-L114)\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,_nativeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L107-L114)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L107-L114", "id": "f31d620e4b82e77afe7ac6649042f283243e9582402f79ba35dacb2026ef6aa7", "check": "out-of-order-retryable", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createChallenge", "source_mapping": {"start": 13066, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}, {"type": "node", "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", "source_mapping": {"start": 15609, "length": 398, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 13066, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", "source_mapping": {"start": 16551, "length": 317, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407], "starting_column": 9, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallengeHelper", "source_mapping": {"start": 16203, "length": 672, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", "source_mapping": {"start": 16043, "length": 56, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [383], "starting_column": 9, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 13066, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25934, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker1].currentChallenge = challenge", "source_mapping": {"start": 13618, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [384], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13491, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker2].currentChallenge = challenge", "source_mapping": {"start": 13676, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [385], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13491, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}], "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#313-386):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#372-381)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#397-407)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#383)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#385)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#379-386)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#393-399)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#508-512)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#489-501)\n", "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L313-L386):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L372-L381)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L397-L407)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L383)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L385)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L379-L386)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L393-L399)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L508-L512)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L489-L501)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L313-L386", "id": "c426748e54bb463a55d94c54cd2dffbe8b77ffd98bce03600799e5fe749a7b1d", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransactionImpl", "source_mapping": {"start": 7336, "length": 1225, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 12161, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)"}}, {"type": "node", "name": "executeBridgeCall(to,amountToUnlock,data)", "source_mapping": {"start": 8479, "length": 43, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [226], "starting_column": 9, "ending_column": 52}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransactionImpl", "source_mapping": {"start": 7336, "length": 1225, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 12161, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "(success,returndata) = bridge.executeCall(to,value,data)", "source_mapping": {"start": 10189, "length": 77, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [279], "starting_column": 9, "ending_column": 86}, "type_specific_fields": {"parent": {"type": "function", "name": "executeBridgeCall", "source_mapping": {"start": 10067, "length": 594, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 12161, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335], "starting_column": 1, "ending_column": 2}}, "signature": "executeBridgeCall(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "context = prevContext", "source_mapping": {"start": 8533, "length": 21, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [228], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransactionImpl", "source_mapping": {"start": 7336, "length": 1225, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 12161, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "context"}}], "description": "Reentrancy in AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-229):\n\tExternal calls:\n\t- executeBridgeCall(to,amountToUnlock,data) (src/bridge/AbsOutbox.sol#226)\n\t\t- (success,returndata) = bridge.executeCall(to,value,data) (src/bridge/AbsOutbox.sol#279)\n\tState variables written after the call(s):\n\t- context = prevContext (src/bridge/AbsOutbox.sol#228)\n\tAbsOutbox.context (src/bridge/AbsOutbox.sol#51) can be used in cross function reentrancies:\n\t- AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-229)\n\t- AbsOutbox.initialize(IBridge) (src/bridge/AbsOutbox.sol#63-79)\n\t- AbsOutbox.l2ToL1Block() (src/bridge/AbsOutbox.sol#118-123)\n\t- AbsOutbox.l2ToL1EthBlock() (src/bridge/AbsOutbox.sol#126-131)\n\t- AbsOutbox.l2ToL1OutputId() (src/bridge/AbsOutbox.sol#147-152)\n\t- AbsOutbox.l2ToL1Sender() (src/bridge/AbsOutbox.sol#110-115)\n\t- AbsOutbox.l2ToL1Timestamp() (src/bridge/AbsOutbox.sol#134-139)\n\t- AbsOutbox.postUpgradeInit() (src/bridge/AbsOutbox.sol#81-92)\n", "markdown": "Reentrancy in [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L229):\n\tExternal calls:\n\t- [executeBridgeCall(to,amountToUnlock,data)](src/bridge/AbsOutbox.sol#L226)\n\t\t- [(success,returndata) = bridge.executeCall(to,value,data)](src/bridge/AbsOutbox.sol#L279)\n\tState variables written after the call(s):\n\t- [context = prevContext](src/bridge/AbsOutbox.sol#L228)\n\t[AbsOutbox.context](src/bridge/AbsOutbox.sol#L51) can be used in cross function reentrancies:\n\t- [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L229)\n\t- [AbsOutbox.initialize(IBridge)](src/bridge/AbsOutbox.sol#L63-L79)\n\t- [AbsOutbox.l2ToL1Block()](src/bridge/AbsOutbox.sol#L118-L123)\n\t- [AbsOutbox.l2ToL1EthBlock()](src/bridge/AbsOutbox.sol#L126-L131)\n\t- [AbsOutbox.l2ToL1OutputId()](src/bridge/AbsOutbox.sol#L147-L152)\n\t- [AbsOutbox.l2ToL1Sender()](src/bridge/AbsOutbox.sol#L110-L115)\n\t- [AbsOutbox.l2ToL1Timestamp()](src/bridge/AbsOutbox.sol#L134-L139)\n\t- [AbsOutbox.postUpgradeInit()](src/bridge/AbsOutbox.sol#L81-L92)\n", "first_markdown_element": "src/bridge/AbsOutbox.sol#L196-L229", "id": "b42ba1855895a9ed1833beaf1f3c481a846ec27a28578623d5aca757932249c1", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 15056, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}, {"type": "node", "name": "challengeManager.clearChallenge(chall)", "source_mapping": {"start": 10950, "length": 38, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [271], "starting_column": 13, "ending_column": 51}, "type_specific_fields": {"parent": {"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 15056, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "clearChallenge(stakerA[i])", "source_mapping": {"start": 10870, "length": 26, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [269], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 15056, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "staker.currentChallenge = NO_CHAL_INDEX", "source_mapping": {"start": 13178, "length": 39, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [370], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "clearChallenge", "source_mapping": {"start": 13053, "length": 171, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [368, 369, 370, 371], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "clearChallenge(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "clearChallenge(stakerB[i])", "source_mapping": {"start": 10910, "length": 26, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [270], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 15056, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "staker.currentChallenge = NO_CHAL_INDEX", "source_mapping": {"start": 13178, "length": 39, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [370], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "clearChallenge", "source_mapping": {"start": 13053, "length": 171, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [368, 369, 370, 371], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24629, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 1, "ending_column": 2}}, "signature": "clearChallenge(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}], "description": "Reentrancy in RollupAdminLogic.forceResolveChallenge(address[],address[]) (src/rollup/RollupAdminLogic.sol#258-274):\n\tExternal calls:\n\t- challengeManager.clearChallenge(chall) (src/rollup/RollupAdminLogic.sol#271)\n\tState variables written after the call(s):\n\t- clearChallenge(stakerA[i]) (src/rollup/RollupAdminLogic.sol#269)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#370)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n\t- clearChallenge(stakerB[i]) (src/rollup/RollupAdminLogic.sol#270)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#370)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#186-188)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#368-371)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#177-179)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#543-551)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#195-197)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#351-362)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#149-151)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#159-161)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#168-170)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#407-416)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#422-426)\n", "markdown": "Reentrancy in [RollupAdminLogic.forceResolveChallenge(address[],address[])](src/rollup/RollupAdminLogic.sol#L258-L274):\n\tExternal calls:\n\t- [challengeManager.clearChallenge(chall)](src/rollup/RollupAdminLogic.sol#L271)\n\tState variables written after the call(s):\n\t- [clearChallenge(stakerA[i])](src/rollup/RollupAdminLogic.sol#L269)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L370)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n\t- [clearChallenge(stakerB[i])](src/rollup/RollupAdminLogic.sol#L270)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L370)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L186-L188)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L368-L371)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L177-L179)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L543-L551)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L195-L197)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L351-L362)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L149-L151)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L159-L161)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L168-L170)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L407-L416)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L422-L426)\n", "first_markdown_element": "src/rollup/RollupAdminLogic.sol#L258-L274", "id": "3a149381278a1de4529bcf77f84d92625154d32ad83406ea2d17142b95cb4a53", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}, {"type": "node", "name": "IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmountNativeDenominated,data:})", "source_mapping": {"start": 9674, "length": 451, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85], "starting_column": 13, "ending_column": 15}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) ignores return value by IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmountNativeDenominated,data:}) (src/rollup/DeployHelper.sol#75-85)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) ignores return value by [IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmountNativeDenominated,data:})](src/rollup/DeployHelper.sol#L75-L85)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", "id": "bc3bd802cf43553ebdde2f5a650bd37e2ba8471fe3f9de0d0bdbfad1fced1d00", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", "source_mapping": {"start": 10156, "length": 399, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [87, 88, 89, 90, 91, 92, 93, 94, 95, 96], "starting_column": 13, "ending_column": 15}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) ignores return value by IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#87-96)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) ignores return value by [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L87-L96)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", "id": "fb1bf81f56dbacb484c41b74ff6b97327ed3ab06f9599b6d9c236b51f9a320ad", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}, {"type": "node", "name": "IInboxBase(inbox).sendL2Message(payload)", "source_mapping": {"start": 10632, "length": 40, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [99], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8525, "length": 2154, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 525, "length": 11692, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,address,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256) (src/rollup/DeployHelper.sol#46-100) ignores return value by IInboxBase(inbox).sendL2Message(payload) (src/rollup/DeployHelper.sol#99)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,address,uint256)](src/rollup/DeployHelper.sol#L46-L100) ignores return value by [IInboxBase(inbox).sendL2Message(payload)](src/rollup/DeployHelper.sol#L99)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L100", "id": "1c1cb22c16963df7619b9d485774b3c8fbd70bb511ebd2becbfca1ad7bd77e50", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deploy", "source_mapping": {"start": 660, "length": 435, "filename_relative": "src/rollup/FactoryDeployerHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", "filename_short": "src/rollup/FactoryDeployerHelper.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "FactoryDeployerHelper", "source_mapping": {"start": 373, "length": 724, "filename_relative": "src/rollup/FactoryDeployerHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", "filename_short": "src/rollup/FactoryDeployerHelper.sol", "is_dependency": false, "lines": [9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], "starting_column": 1, "ending_column": 2}}, "signature": "deploy(address,uint256)"}}, {"type": "node", "name": "IERC20(feeToken).transferFrom(msg.sender,inbox,amount)", "source_mapping": {"start": 955, "length": 56, "filename_relative": "src/rollup/FactoryDeployerHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", "filename_short": "src/rollup/FactoryDeployerHelper.sol", "is_dependency": false, "lines": [22], "starting_column": 9, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "function", "name": "deploy", "source_mapping": {"start": 660, "length": 435, "filename_relative": "src/rollup/FactoryDeployerHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", "filename_short": "src/rollup/FactoryDeployerHelper.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "FactoryDeployerHelper", "source_mapping": {"start": 373, "length": 724, "filename_relative": "src/rollup/FactoryDeployerHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/FactoryDeployerHelper.sol", "filename_short": "src/rollup/FactoryDeployerHelper.sol", "is_dependency": false, "lines": [9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], "starting_column": 1, "ending_column": 2}}, "signature": "deploy(address,uint256)"}}}}], "description": "FactoryDeployerHelper.deploy(address,uint256) (src/rollup/FactoryDeployerHelper.sol#17-24) ignores return value by IERC20(feeToken).transferFrom(msg.sender,inbox,amount) (src/rollup/FactoryDeployerHelper.sol#22)\n", "markdown": "[FactoryDeployerHelper.deploy(address,uint256)](src/rollup/FactoryDeployerHelper.sol#L17-L24) ignores return value by [IERC20(feeToken).transferFrom(msg.sender,inbox,amount)](src/rollup/FactoryDeployerHelper.sol#L22)\n", "first_markdown_element": "src/rollup/FactoryDeployerHelper.sol#L17-L24", "id": "b61f6cd7e1b9dac16bde231f4604f5082f9d2bb1141b083d7b0c790237076ce2", "check": "unchecked-transfer", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}, {"type": "node", "name": "index == entries.length", "source_mapping": {"start": 9123, "length": 23, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [255], "starting_column": 13, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}}], "description": "CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261) uses a dangerous strict equality:\n\t- index == entries.length (src/chain/CacheManager.sol#255)\n", "markdown": "[CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261) uses a dangerous strict equality:\n\t- [index == entries.length](src/chain/CacheManager.sol#L255)\n", "first_markdown_element": "src/chain/CacheManager.sol#L240-L261", "id": "d628a546b26bab7d17e51242113a300dee8b63d78108aa14fa547838f7c984b2", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}, {"type": "node", "name": "ARB_WASM_CACHE.cacheProgram(program)", "source_mapping": {"start": 9005, "length": 36, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [252], "starting_column": 9, "ending_column": 45}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "queueSize += size", "source_mapping": {"start": 9092, "length": 17, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}], "description": "Reentrancy in CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261):\n\tExternal calls:\n\t- ARB_WASM_CACHE.cacheProgram(program) (src/chain/CacheManager.sol#252)\n\tState variables written after the call(s):\n\t- queueSize += size (src/chain/CacheManager.sol#254)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#196-205)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", "markdown": "Reentrancy in [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.cacheProgram(program)](src/chain/CacheManager.sol#L252)\n\tState variables written after the call(s):\n\t- [queueSize += size](src/chain/CacheManager.sol#L254)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L196-L205)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", "first_markdown_element": "src/chain/CacheManager.sol#L240-L261", "id": "e3c59613b5f55bcaed6f72836989cdf48eec69a17bd181502982fefee7611e78", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 9356, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [264, 265, 266, 267, 268, 269, 270], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 9469, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [266], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 9356, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [264, 265, 266, 267, 268, 269, 270], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "delete entries[index]", "source_mapping": {"start": 9605, "length": 21, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [269], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 9356, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [264, 265, 266, 267, 268, 269, 270], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}], "description": "Reentrancy in CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270):\n\tExternal calls:\n\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#266)\n\tState variables written after the call(s):\n\t- delete entries[index] (src/chain/CacheManager.sol#269)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", "markdown": "Reentrancy in [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L266)\n\tState variables written after the call(s):\n\t- [delete entries[index]](src/chain/CacheManager.sol#L269)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", "first_markdown_element": "src/chain/CacheManager.sol#L264-L270", "id": "da879b6db94b2d7e9b0b7ac41852a5d4daca51e4947137749f0329b126127352", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "evictAll", "source_mapping": {"start": 2880, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}, {"type": "node", "name": "evictPrograms(type()(uint256).max)", "source_mapping": {"start": 2929, "length": 32, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [90], "starting_column": 9, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "function", "name": "evictAll", "source_mapping": {"start": 2880, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 9469, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [266], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 9356, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [264, 265, 266, 267, 268, 269, 270], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "delete entries", "source_mapping": {"start": 2971, "length": 14, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [91], "starting_column": 9, "ending_column": 23}, "type_specific_fields": {"parent": {"type": "function", "name": "evictAll", "source_mapping": {"start": 2880, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}], "description": "Reentrancy in CacheManager.evictAll() (src/chain/CacheManager.sol#89-92):\n\tExternal calls:\n\t- evictPrograms(type()(uint256).max) (src/chain/CacheManager.sol#90)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#266)\n\tState variables written after the call(s):\n\t- delete entries (src/chain/CacheManager.sol#91)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", "markdown": "Reentrancy in [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92):\n\tExternal calls:\n\t- [evictPrograms(type()(uint256).max)](src/chain/CacheManager.sol#L90)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L266)\n\tState variables written after the call(s):\n\t- [delete entries](src/chain/CacheManager.sol#L91)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", "first_markdown_element": "src/chain/CacheManager.sol#L89-L92", "id": "02366c421ff860e2f8a1d8cd1d277a7c7b74585fbb7afb043f28e6cf527b3d68", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "placeBid", "source_mapping": {"start": 6437, "length": 420, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(address)"}}, {"type": "node", "name": "(bid,index) = _makeSpace(asm)", "source_mapping": {"start": 6745, "length": 45, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [189], "starting_column": 9, "ending_column": 54}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6437, "length": 420, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 9469, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [266], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 9356, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [264, 265, 266, 267, 268, 269, 270], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_addBid(bid,program,codehash,asm,index)", "source_mapping": {"start": 6800, "length": 50, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [190], "starting_column": 9, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6437, "length": 420, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.cacheProgram(program)", "source_mapping": {"start": 9005, "length": 36, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [252], "starting_column": 9, "ending_column": 45}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_addBid(bid,program,codehash,asm,index)", "source_mapping": {"start": 6800, "length": 50, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [190], "starting_column": 9, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6437, "length": 420, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "entries.push(entry)", "source_mapping": {"start": 9162, "length": 19, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256], "starting_column": 13, "ending_column": 32}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "entries[index] = entry", "source_mapping": {"start": 9212, "length": 22, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [258], "starting_column": 13, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "_addBid(bid,program,codehash,asm,index)", "source_mapping": {"start": 6800, "length": 50, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [190], "starting_column": 9, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6437, "length": 420, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}, {"type": "node", "name": "queueSize += size", "source_mapping": {"start": 9092, "length": 17, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8665, "length": 636, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 10045, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/user/src/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,address,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}], "description": "Reentrancy in CacheManager.placeBid(address) (src/chain/CacheManager.sol#179-191):\n\tExternal calls:\n\t- (bid,index) = _makeSpace(asm) (src/chain/CacheManager.sol#189)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#266)\n\t- _addBid(bid,program,codehash,asm,index) (src/chain/CacheManager.sol#190)\n\t\t- ARB_WASM_CACHE.cacheProgram(program) (src/chain/CacheManager.sol#252)\n\tState variables written after the call(s):\n\t- _addBid(bid,program,codehash,asm,index) (src/chain/CacheManager.sol#190)\n\t\t- entries.push(entry) (src/chain/CacheManager.sol#256)\n\t\t- entries[index] = entry (src/chain/CacheManager.sol#258)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n\t- _addBid(bid,program,codehash,asm,index) (src/chain/CacheManager.sol#190)\n\t\t- queueSize += size (src/chain/CacheManager.sol#254)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,address,bytes32,uint64,uint64) (src/chain/CacheManager.sol#240-261)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#264-270)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#222-237)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#196-205)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", "markdown": "Reentrancy in [CacheManager.placeBid(address)](src/chain/CacheManager.sol#L179-L191):\n\tExternal calls:\n\t- [(bid,index) = _makeSpace(asm)](src/chain/CacheManager.sol#L189)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L266)\n\t- [_addBid(bid,program,codehash,asm,index)](src/chain/CacheManager.sol#L190)\n\t\t- [ARB_WASM_CACHE.cacheProgram(program)](src/chain/CacheManager.sol#L252)\n\tState variables written after the call(s):\n\t- [_addBid(bid,program,codehash,asm,index)](src/chain/CacheManager.sol#L190)\n\t\t- [entries.push(entry)](src/chain/CacheManager.sol#L256)\n\t\t- [entries[index] = entry](src/chain/CacheManager.sol#L258)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n\t- [_addBid(bid,program,codehash,asm,index)](src/chain/CacheManager.sol#L190)\n\t\t- [queueSize += size](src/chain/CacheManager.sol#L254)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,address,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L240-L261)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L264-L270)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L222-L237)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L196-L205)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", "first_markdown_element": "src/chain/CacheManager.sol#L179-L191", "id": "0c16e4db0a475c13c57a12b678c8c00c11806c69f841246d0fbbc7448bde8935", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}, {"type": "node", "name": "index == entries.length", "source_mapping": {"start": 8731, "length": 23, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [247], "starting_column": 13, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}}], "description": "CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253) uses a dangerous strict equality:\n\t- index == entries.length (src/chain/CacheManager.sol#247)\n", "markdown": "[CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253) uses a dangerous strict equality:\n\t- [index == entries.length](src/chain/CacheManager.sol#L247)\n", "first_markdown_element": "src/chain/CacheManager.sol#L233-L253", "id": "4c098b01c2961dc5b2294e0f72e7cf015b9600b3d18b28ada01a3659da0d5e6f", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}, {"type": "node", "name": "ARB_WASM_CACHE.cacheCodehash(code)", "source_mapping": {"start": 8615, "length": 34, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [244], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "queueSize += size", "source_mapping": {"start": 8700, "length": 17, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [246], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}], "description": "Reentrancy in CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253):\n\tExternal calls:\n\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#244)\n\tState variables written after the call(s):\n\t- queueSize += size (src/chain/CacheManager.sol#246)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#189-198)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", "markdown": "Reentrancy in [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L244)\n\tState variables written after the call(s):\n\t- [queueSize += size](src/chain/CacheManager.sol#L246)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L189-L198)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", "first_markdown_element": "src/chain/CacheManager.sol#L233-L253", "id": "b9f6ea80a6accee7014dea8d7e8b56ddc8f2ed2255b688758266f20c2bbf230e", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8955, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256, 257, 258, 259, 260, 261, 262], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 9068, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [258], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8955, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256, 257, 258, 259, 260, 261, 262], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "delete entries[index]", "source_mapping": {"start": 9204, "length": 21, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [261], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8955, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256, 257, 258, 259, 260, 261, 262], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}], "description": "Reentrancy in CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262):\n\tExternal calls:\n\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#258)\n\tState variables written after the call(s):\n\t- delete entries[index] (src/chain/CacheManager.sol#261)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", "markdown": "Reentrancy in [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L258)\n\tState variables written after the call(s):\n\t- [delete entries[index]](src/chain/CacheManager.sol#L261)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", "first_markdown_element": "src/chain/CacheManager.sol#L256-L262", "id": "4848413594e9f06020a2a4a3b7755e0ac5f0d7f7c22946958b361b50e6ce4a52", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "evictAll", "source_mapping": {"start": 2863, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}, {"type": "node", "name": "evictPrograms(type()(uint256).max)", "source_mapping": {"start": 2912, "length": 32, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [90], "starting_column": 9, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "function", "name": "evictAll", "source_mapping": {"start": 2863, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 9068, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [258], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8955, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256, 257, 258, 259, 260, 261, 262], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "delete entries", "source_mapping": {"start": 2954, "length": 14, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [91], "starting_column": 9, "ending_column": 23}, "type_specific_fields": {"parent": {"type": "function", "name": "evictAll", "source_mapping": {"start": 2863, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}], "description": "Reentrancy in CacheManager.evictAll() (src/chain/CacheManager.sol#89-92):\n\tExternal calls:\n\t- evictPrograms(type()(uint256).max) (src/chain/CacheManager.sol#90)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#258)\n\tState variables written after the call(s):\n\t- delete entries (src/chain/CacheManager.sol#91)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n", "markdown": "Reentrancy in [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92):\n\tExternal calls:\n\t- [evictPrograms(type()(uint256).max)](src/chain/CacheManager.sol#L90)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L258)\n\tState variables written after the call(s):\n\t- [delete entries](src/chain/CacheManager.sol#L91)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n", "first_markdown_element": "src/chain/CacheManager.sol#L89-L92", "id": "bf120df8d715208381d983040d42897d8dcac47177e732ee5496cde132d2f231", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "placeBid", "source_mapping": {"start": 6125, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}, {"type": "node", "name": "(bid,index) = _makeSpace(asm)", "source_mapping": {"start": 6389, "length": 45, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [182], "starting_column": 9, "ending_column": 54}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6125, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 9068, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [258], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8955, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256, 257, 258, 259, 260, 261, 262], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_addBid(bid,codehash,asm,index)", "source_mapping": {"start": 6444, "length": 41, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [183], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6125, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.cacheCodehash(code)", "source_mapping": {"start": 8615, "length": 34, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [244], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_addBid(bid,codehash,asm,index)", "source_mapping": {"start": 6444, "length": 41, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [183], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6125, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "entries.push(entry)", "source_mapping": {"start": 8770, "length": 19, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [248], "starting_column": 13, "ending_column": 32}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "entries[index] = entry", "source_mapping": {"start": 8820, "length": 22, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [250], "starting_column": 13, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "_addBid(bid,codehash,asm,index)", "source_mapping": {"start": 6444, "length": 41, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [183], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 6125, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}, {"type": "node", "name": "queueSize += size", "source_mapping": {"start": 8700, "length": 17, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [246], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8300, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 471, "length": 9644, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/home/chris/lab/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}], "description": "Reentrancy in CacheManager.placeBid(bytes32) (src/chain/CacheManager.sol#173-184):\n\tExternal calls:\n\t- (bid,index) = _makeSpace(asm) (src/chain/CacheManager.sol#182)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#258)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#183)\n\t\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#244)\n\tState variables written after the call(s):\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#183)\n\t\t- entries.push(entry) (src/chain/CacheManager.sol#248)\n\t\t- entries[index] = entry (src/chain/CacheManager.sol#250)\n\tCacheManager.entries (src/chain/CacheManager.sol#24) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.entries (src/chain/CacheManager.sol#24)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#89-92)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#104-106)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#110-120)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#183)\n\t\t- queueSize += size (src/chain/CacheManager.sol#246)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#27) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#233-253)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#256-262)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#215-230)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#124-152)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#189-198)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#27)\n", "markdown": "Reentrancy in [CacheManager.placeBid(bytes32)](src/chain/CacheManager.sol#L173-L184):\n\tExternal calls:\n\t- [(bid,index) = _makeSpace(asm)](src/chain/CacheManager.sol#L182)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L258)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L183)\n\t\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L244)\n\tState variables written after the call(s):\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L183)\n\t\t- [entries.push(entry)](src/chain/CacheManager.sol#L248)\n\t\t- [entries[index] = entry](src/chain/CacheManager.sol#L250)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L24) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L24)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L89-L92)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L104-L106)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L110-L120)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L183)\n\t\t- [queueSize += size](src/chain/CacheManager.sol#L246)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L27) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L233-L253)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L256-L262)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L215-L230)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L124-L152)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L189-L198)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L27)\n", "first_markdown_element": "src/chain/CacheManager.sol#L173-L184", "id": "436212c386c26726839a1cf3068734d839e7b01aab9f4594d2df94fcad8587cf", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployFactories", "source_mapping": {"start": 10566, "length": 1163, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "_deployFactories(address,address,uint256)"}}, {"type": "node", "name": "l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)", "source_mapping": {"start": 10973, "length": 77, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [268], "starting_column": 13, "ending_column": 90}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployFactories", "source_mapping": {"start": 10566, "length": 1163, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "_deployFactories(address,address,uint256)"}}}}, {"type": "node", "name": "(sent,None) = msg.sender.call{value: address(this).balance}()", "source_mapping": {"start": 11161, "length": 65, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [272], "starting_column": 13, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployFactories", "source_mapping": {"start": 10566, "length": 1163, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "_deployFactories(address,address,uint256)"}}}}], "description": "RollupCreator._deployFactories(address,address,uint256) (src/rollup/RollupCreator.sol#255-285) sends eth to arbitrary user\n\tDangerous calls:\n\t- l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas) (src/rollup/RollupCreator.sol#268)\n\t- (sent,None) = msg.sender.call{value: address(this).balance}() (src/rollup/RollupCreator.sol#272)\n", "markdown": "[RollupCreator._deployFactories(address,address,uint256)](src/rollup/RollupCreator.sol#L255-L285) sends eth to arbitrary user\n\tDangerous calls:\n\t- [l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)](src/rollup/RollupCreator.sol#L268)\n\t- [(sent,None) = msg.sender.call{value: address(this).balance}()](src/rollup/RollupCreator.sol#L272)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L255-L285", "id": "33e46ab503ffc67db10a32c76db44b3d71085e8ccabf978afab4963ab79410b7", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}, {"type": "node", "name": "index == entries.length", "source_mapping": {"start": 8531, "length": 23, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [245], "starting_column": 13, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}}], "description": "CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251) uses a dangerous strict equality:\n\t- index == entries.length (src/chain/CacheManager.sol#245)\n", "markdown": "[CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251) uses a dangerous strict equality:\n\t- [index == entries.length](src/chain/CacheManager.sol#L245)\n", "first_markdown_element": "src/chain/CacheManager.sol#L231-L251", "id": "3a781781186cbb842796b829845aa7945c024854a5354a602603028bf3bf838a", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "executeLinkModule", "source_mapping": {"start": 16420, "length": 1090, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "(userMod,offset,None) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)", "source_mapping": {"start": 16918, "length": 141, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [448, 449, 450, 451, 452], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "executeLinkModule", "source_mapping": {"start": 16420, "length": 1090, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#433-464) ignores return value by (userMod,offset,None) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0) (src/osp/OneStepProverHostIo.sol#448-452)\n", "markdown": "[OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L433-L464) ignores return value by [(userMod,offset,None) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)](src/osp/OneStepProverHostIo.sol#L448-L452)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L433-L464", "id": "92ac837d702aee6d12fc38548f7f338739ba47bacbb9aa683450dead6b522b68", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1168, "length": 3662, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 10198, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "(err,value,None) = mod.moduleMemory.load(index,readBytes,proof,0)", "source_mapping": {"start": 3641, "length": 79, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [106], "starting_column": 9, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1168, "length": 3662, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 10198, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes) (src/osp/OneStepProverMemory.sol#36-131) ignores return value by (err,value,None) = mod.moduleMemory.load(index,readBytes,proof,0) (src/osp/OneStepProverMemory.sol#106)\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes)](src/osp/OneStepProverMemory.sol#L36-L131) ignores return value by [(err,value,None) = mod.moduleMemory.load(index,readBytes,proof,0)](src/osp/OneStepProverMemory.sol#L106)\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L36-L131", "id": "b002aa15c2eafad3b5923f9ca2204b8ea235c930c19b94647b519331fc1abc4c", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}, {"type": "node", "name": "(None,ethSequencerInbox,ethInbox,None,None) = bridgeCreator.ethBasedTemplates()", "source_mapping": {"start": 5121, "length": 115, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [117, 118], "starting_column": 13, "ending_column": 37}, "type_specific_fields": {"parent": {"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}}}], "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (None,ethSequencerInbox,ethInbox,None,None) = bridgeCreator.ethBasedTemplates() (src/rollup/RollupCreator.sol#117-118)\n", "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(None,ethSequencerInbox,ethInbox,None,None) = bridgeCreator.ethBasedTemplates()](src/rollup/RollupCreator.sol#L117-L118)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", "id": "6ac2b9112a4ee35d3925d1fe7a7ff08b6979520c84e24a42eba70d56c25bfb49", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}, {"type": "node", "name": "(None,erc20SequencerInbox,erc20Inbox,None,None) = bridgeCreator.erc20BasedTemplates()", "source_mapping": {"start": 5509, "length": 121, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [125, 126], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}}}], "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (None,erc20SequencerInbox,erc20Inbox,None,None) = bridgeCreator.erc20BasedTemplates() (src/rollup/RollupCreator.sol#125-126)\n", "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(None,erc20SequencerInbox,erc20Inbox,None,None) = bridgeCreator.erc20BasedTemplates()](src/rollup/RollupCreator.sol#L125-L126)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", "id": "a4a7309cfe7707c52e24933155fba88b888f432e0f2bd5db4106b9577b09fab3", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "lastProvedLeafContents", "source_mapping": {"start": 7133, "length": 30, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [192], "starting_column": 9, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryStore", "source_mapping": {"start": 4836, "length": 3663, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 10198, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedLeafContents (src/osp/OneStepProverMemory.sol#192) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedLeafContents](src/osp/OneStepProverMemory.sol#L192) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L192", "id": "00c7e5f6fcc242a5d65ca8b940bee5979b1e5fae2dfaad3a0f8f2ba6c6cd7a99", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "extractChallengeSegment", "source_mapping": {"start": 1364, "length": 682, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 2649, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88], "starting_column": 1, "ending_column": 2}}, "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)"}}, {"type": "node", "name": "segmentLength = selection.oldSegmentsLength / oldChallengeDegree", "source_mapping": {"start": 1611, "length": 64, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [57], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "extractChallengeSegment", "source_mapping": {"start": 1364, "length": 682, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 2649, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88], "starting_column": 1, "ending_column": 2}}, "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)"}}}}, {"type": "node", "name": "segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition", "source_mapping": {"start": 1784, "length": 87, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [59], "starting_column": 9, "ending_column": 96}, "type_specific_fields": {"parent": {"type": "function", "name": "extractChallengeSegment", "source_mapping": {"start": 1364, "length": 682, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 2649, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88], "starting_column": 1, "ending_column": 2}}, "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)"}}}}], "description": "ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection) (src/challenge/ChallengeLib.sol#51-63) performs a multiplication on the result of a division:\n\t- segmentLength = selection.oldSegmentsLength / oldChallengeDegree (src/challenge/ChallengeLib.sol#57)\n\t- segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition (src/challenge/ChallengeLib.sol#59)\n", "markdown": "[ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection)](src/challenge/ChallengeLib.sol#L51-L63) performs a multiplication on the result of a division:\n\t- [segmentLength = selection.oldSegmentsLength / oldChallengeDegree](src/challenge/ChallengeLib.sol#L57)\n\t- [segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition](src/challenge/ChallengeLib.sol#L59)\n", "first_markdown_element": "src/challenge/ChallengeLib.sol#L51-L63", "id": "a4b93976a94b1cf6b99dc623ae954b79e816fc108466f521511aaa71a571ee62", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4469, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "rootOfUnityPower = (1 << 32) / fieldElementsPerBlob", "source_mapping": {"start": 9247, "length": 59, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [229], "starting_column": 17, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4469, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}, {"type": "node", "name": "rootOfUnityPower *= bitReversedIndex", "source_mapping": {"start": 9474, "length": 36, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [232], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4469, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#128-250) performs a multiplication on the result of a division:\n\t- rootOfUnityPower = (1 << 32) / fieldElementsPerBlob (src/osp/OneStepProverHostIo.sol#229)\n\t- rootOfUnityPower *= bitReversedIndex (src/osp/OneStepProverHostIo.sol#232)\n", "markdown": "[OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L128-L250) performs a multiplication on the result of a division:\n\t- [rootOfUnityPower = (1 << 32) / fieldElementsPerBlob](src/osp/OneStepProverHostIo.sol#L229)\n\t- [rootOfUnityPower *= bitReversedIndex](src/osp/OneStepProverHostIo.sol#L232)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L128-L250", "id": "f0b43f8c42c636a0a6c208ac9bd013cf20177f73df6cf1ea5ab40b7aec7a50ca", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}, {"type": "node", "name": "ARB_WASM_CACHE.cacheCodehash(code)", "source_mapping": {"start": 8415, "length": 34, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [242], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "queueSize += size", "source_mapping": {"start": 8500, "length": 17, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [244], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}], "description": "Reentrancy in CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251):\n\tExternal calls:\n\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#242)\n\tState variables written after the call(s):\n\t- queueSize += size (src/chain/CacheManager.sol#244)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#25) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#122-150)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#187-196)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#25)\n", "markdown": "Reentrancy in [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L242)\n\tState variables written after the call(s):\n\t- [queueSize += size](src/chain/CacheManager.sol#L244)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L25) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L122-L150)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L187-L196)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L25)\n", "first_markdown_element": "src/chain/CacheManager.sol#L231-L251", "id": "7cafef621b24ce7927bcb6c53b9a6c824466abcd138ed1f43bd4a38e07637b19", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8755, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254, 255, 256, 257, 258, 259, 260], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 8868, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8755, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254, 255, 256, 257, 258, 259, 260], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "delete entries[index]", "source_mapping": {"start": 9004, "length": 21, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [259], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8755, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254, 255, 256, 257, 258, 259, 260], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}], "description": "Reentrancy in CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260):\n\tExternal calls:\n\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#256)\n\tState variables written after the call(s):\n\t- delete entries[index] (src/chain/CacheManager.sol#259)\n\tCacheManager.entries (src/chain/CacheManager.sol#22) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.entries (src/chain/CacheManager.sol#22)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#87-90)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#102-104)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#108-118)\n", "markdown": "Reentrancy in [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260):\n\tExternal calls:\n\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L256)\n\tState variables written after the call(s):\n\t- [delete entries[index]](src/chain/CacheManager.sol#L259)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L22) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L22)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L102-L104)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L108-L118)\n", "first_markdown_element": "src/chain/CacheManager.sol#L254-L260", "id": "1400e2c01607b2bdf7010ad99c436ef2db92c4122f6340a3ca3e5664bc80c983", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "evictAll", "source_mapping": {"start": 2663, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [87, 88, 89, 90], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}, {"type": "node", "name": "evictPrograms(type()(uint256).max)", "source_mapping": {"start": 2712, "length": 32, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [88], "starting_column": 9, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "function", "name": "evictAll", "source_mapping": {"start": 2663, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [87, 88, 89, 90], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 8868, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8755, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254, 255, 256, 257, 258, 259, 260], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "delete entries", "source_mapping": {"start": 2754, "length": 14, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [89], "starting_column": 9, "ending_column": 23}, "type_specific_fields": {"parent": {"type": "function", "name": "evictAll", "source_mapping": {"start": 2663, "length": 112, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [87, 88, 89, 90], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "evictAll()"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}], "description": "Reentrancy in CacheManager.evictAll() (src/chain/CacheManager.sol#87-90):\n\tExternal calls:\n\t- evictPrograms(type()(uint256).max) (src/chain/CacheManager.sol#88)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#256)\n\tState variables written after the call(s):\n\t- delete entries (src/chain/CacheManager.sol#89)\n\tCacheManager.entries (src/chain/CacheManager.sol#22) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.entries (src/chain/CacheManager.sol#22)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#87-90)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#102-104)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#108-118)\n", "markdown": "Reentrancy in [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90):\n\tExternal calls:\n\t- [evictPrograms(type()(uint256).max)](src/chain/CacheManager.sol#L88)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L256)\n\tState variables written after the call(s):\n\t- [delete entries](src/chain/CacheManager.sol#L89)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L22) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L22)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L102-L104)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L108-L118)\n", "first_markdown_element": "src/chain/CacheManager.sol#L87-L90", "id": "e453de7fb42e742ec25db94618c0bc9d52db23aecc625992da375d6e46e61fa8", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "placeBid", "source_mapping": {"start": 5925, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}, {"type": "node", "name": "(bid,index) = _makeSpace(asm)", "source_mapping": {"start": 6189, "length": 45, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [180], "starting_column": 9, "ending_column": 54}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 5925, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.evictCodehash(entry.code)", "source_mapping": {"start": 8868, "length": 40, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [256], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_deleteEntry", "source_mapping": {"start": 8755, "length": 277, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [254, 255, 256, 257, 258, 259, 260], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_deleteEntry(uint192,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_addBid(bid,codehash,asm,index)", "source_mapping": {"start": 6244, "length": 41, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [181], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 5925, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ARB_WASM_CACHE.cacheCodehash(code)", "source_mapping": {"start": 8415, "length": 34, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [242], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_addBid(bid,codehash,asm,index)", "source_mapping": {"start": 6244, "length": 41, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [181], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 5925, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "entries.push(entry)", "source_mapping": {"start": 8570, "length": 19, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [246], "starting_column": 13, "ending_column": 32}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "entries[index] = entry", "source_mapping": {"start": 8620, "length": 22, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [248], "starting_column": 13, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "entries"}}, {"type": "node", "name": "_addBid(bid,codehash,asm,index)", "source_mapping": {"start": 6244, "length": 41, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [181], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "placeBid", "source_mapping": {"start": 5925, "length": 367, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "placeBid(bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}, {"type": "node", "name": "queueSize += size", "source_mapping": {"start": 8500, "length": 17, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [244], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "_addBid", "source_mapping": {"start": 8100, "length": 600, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_addBid(uint192,bytes32,uint64,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "queueSize"}}], "description": "Reentrancy in CacheManager.placeBid(bytes32) (src/chain/CacheManager.sol#171-182):\n\tExternal calls:\n\t- (bid,index) = _makeSpace(asm) (src/chain/CacheManager.sol#180)\n\t\t- ARB_WASM_CACHE.evictCodehash(entry.code) (src/chain/CacheManager.sol#256)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#181)\n\t\t- ARB_WASM_CACHE.cacheCodehash(code) (src/chain/CacheManager.sol#242)\n\tState variables written after the call(s):\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#181)\n\t\t- entries.push(entry) (src/chain/CacheManager.sol#246)\n\t\t- entries[index] = entry (src/chain/CacheManager.sol#248)\n\tCacheManager.entries (src/chain/CacheManager.sol#22) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.entries (src/chain/CacheManager.sol#22)\n\t- CacheManager.evictAll() (src/chain/CacheManager.sol#87-90)\n\t- CacheManager.getEntries() (src/chain/CacheManager.sol#102-104)\n\t- CacheManager.getSmallestEntries(uint256) (src/chain/CacheManager.sol#108-118)\n\t- _addBid(bid,codehash,asm,index) (src/chain/CacheManager.sol#181)\n\t\t- queueSize += size (src/chain/CacheManager.sol#244)\n\tCacheManager.queueSize (src/chain/CacheManager.sol#25) can be used in cross function reentrancies:\n\t- CacheManager._addBid(uint192,bytes32,uint64,uint64) (src/chain/CacheManager.sol#231-251)\n\t- CacheManager._deleteEntry(uint192,uint64) (src/chain/CacheManager.sol#254-260)\n\t- CacheManager._makeSpace(uint64) (src/chain/CacheManager.sol#213-228)\n\t- CacheManager.getMinBid(uint64) (src/chain/CacheManager.sol#122-150)\n\t- CacheManager.makeSpace(uint64) (src/chain/CacheManager.sol#187-196)\n\t- CacheManager.queueSize (src/chain/CacheManager.sol#25)\n", "markdown": "Reentrancy in [CacheManager.placeBid(bytes32)](src/chain/CacheManager.sol#L171-L182):\n\tExternal calls:\n\t- [(bid,index) = _makeSpace(asm)](src/chain/CacheManager.sol#L180)\n\t\t- [ARB_WASM_CACHE.evictCodehash(entry.code)](src/chain/CacheManager.sol#L256)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L181)\n\t\t- [ARB_WASM_CACHE.cacheCodehash(code)](src/chain/CacheManager.sol#L242)\n\tState variables written after the call(s):\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L181)\n\t\t- [entries.push(entry)](src/chain/CacheManager.sol#L246)\n\t\t- [entries[index] = entry](src/chain/CacheManager.sol#L248)\n\t[CacheManager.entries](src/chain/CacheManager.sol#L22) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.entries](src/chain/CacheManager.sol#L22)\n\t- [CacheManager.evictAll()](src/chain/CacheManager.sol#L87-L90)\n\t- [CacheManager.getEntries()](src/chain/CacheManager.sol#L102-L104)\n\t- [CacheManager.getSmallestEntries(uint256)](src/chain/CacheManager.sol#L108-L118)\n\t- [_addBid(bid,codehash,asm,index)](src/chain/CacheManager.sol#L181)\n\t\t- [queueSize += size](src/chain/CacheManager.sol#L244)\n\t[CacheManager.queueSize](src/chain/CacheManager.sol#L25) can be used in cross function reentrancies:\n\t- [CacheManager._addBid(uint192,bytes32,uint64,uint64)](src/chain/CacheManager.sol#L231-L251)\n\t- [CacheManager._deleteEntry(uint192,uint64)](src/chain/CacheManager.sol#L254-L260)\n\t- [CacheManager._makeSpace(uint64)](src/chain/CacheManager.sol#L213-L228)\n\t- [CacheManager.getMinBid(uint64)](src/chain/CacheManager.sol#L122-L150)\n\t- [CacheManager.makeSpace(uint64)](src/chain/CacheManager.sol#L187-L196)\n\t- [CacheManager.queueSize](src/chain/CacheManager.sol#L25)\n", "first_markdown_element": "src/chain/CacheManager.sol#L171-L182", "id": "1e0701041bd439420af2077b392bf8fa2ccd25ae29d0d785daec5e92d76ecbb8", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "internalStack", "source_mapping": {"start": 1753, "length": 31, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [52], "starting_column": 9, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "getStartMachineHash", "source_mapping": {"start": 1158, "length": 1300, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProofEntry", "source_mapping": {"start": 407, "length": 7601, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "getStartMachineHash(bytes32,bytes32)"}}}}], "description": "OneStepProofEntry.getStartMachineHash(bytes32,bytes32).internalStack (src/osp/OneStepProofEntry.sol#52) is a local variable never initialized\n", "markdown": "[OneStepProofEntry.getStartMachineHash(bytes32,bytes32).internalStack](src/osp/OneStepProofEntry.sol#L52) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProofEntry.sol#L52", "id": "fb3b9ad9a22662ab3a9d3f187478b9833041da23c79103d4346a16da071526e9", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "frameStack", "source_mapping": {"start": 1794, "length": 34, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [53], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "getStartMachineHash", "source_mapping": {"start": 1158, "length": 1300, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProofEntry", "source_mapping": {"start": 407, "length": 7601, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "getStartMachineHash(bytes32,bytes32)"}}}}], "description": "OneStepProofEntry.getStartMachineHash(bytes32,bytes32).frameStack (src/osp/OneStepProofEntry.sol#53) is a local variable never initialized\n", "markdown": "[OneStepProofEntry.getStartMachineHash(bytes32,bytes32).frameStack](src/osp/OneStepProofEntry.sol#L53) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProofEntry.sol#L53", "id": "2dd21e12ec5d5965b5bd41d82bb252991172e100ac1f78846fb692a07fd06c26", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "lastProvedLeafContents", "source_mapping": {"start": 2178, "length": 30, "filename_relative": "src/state/ModuleMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/ModuleMemory.sol", "filename_short": "src/state/ModuleMemory.sol", "is_dependency": false, "lines": [73], "starting_column": 9, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 1729, "length": 1164, "filename_relative": "src/state/ModuleMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/ModuleMemory.sol", "filename_short": "src/state/ModuleMemory.sol", "is_dependency": false, "lines": [53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ModuleMemoryLib", "source_mapping": {"start": 298, "length": 2597, "filename_relative": "src/state/ModuleMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/ModuleMemory.sol", "filename_short": "src/state/ModuleMemory.sol", "is_dependency": false, "lines": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92], "starting_column": 1, "ending_column": 2}}, "signature": "load(ModuleMemory,uint256,uint256,bytes,uint256)"}}}}], "description": "ModuleMemoryLib.load(ModuleMemory,uint256,uint256,bytes,uint256).lastProvedLeafContents (src/state/ModuleMemory.sol#73) is a local variable never initialized\n", "markdown": "[ModuleMemoryLib.load(ModuleMemory,uint256,uint256,bytes,uint256).lastProvedLeafContents](src/state/ModuleMemory.sol#L73) is a local variable never initialized\n", "first_markdown_element": "src/state/ModuleMemory.sol#L73", "id": "ddf8f7daccaffa622915e6d24c5497c3801c89f4969af443509e576747d091fe", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "emptyMultiStack", "source_mapping": {"start": 1838, "length": 33, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [54], "starting_column": 9, "ending_column": 42}, "type_specific_fields": {"parent": {"type": "function", "name": "getStartMachineHash", "source_mapping": {"start": 1158, "length": 1300, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProofEntry", "source_mapping": {"start": 407, "length": 7601, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "getStartMachineHash(bytes32,bytes32)"}}}}], "description": "OneStepProofEntry.getStartMachineHash(bytes32,bytes32).emptyMultiStack (src/osp/OneStepProofEntry.sol#54) is a local variable never initialized\n", "markdown": "[OneStepProofEntry.getStartMachineHash(bytes32,bytes32).emptyMultiStack](src/osp/OneStepProofEntry.sol#L54) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProofEntry.sol#L54", "id": "5c6acbea6429303780ccb1049265a5d97162a57ddda1d6d332f3201bff526332", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "min", "source_mapping": {"start": 7701, "length": 11, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [218], "starting_column": 9, "ending_column": 20}, "type_specific_fields": {"parent": {"type": "function", "name": "_makeSpace", "source_mapping": {"start": 7478, "length": 592, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "CacheManager", "source_mapping": {"start": 350, "length": 9565, "filename_relative": "src/chain/CacheManager.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/chain/CacheManager.sol", "filename_short": "src/chain/CacheManager.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 1, "ending_column": 2}}, "signature": "_makeSpace(uint64)"}}}}], "description": "CacheManager._makeSpace(uint64).min (src/chain/CacheManager.sol#218) is a local variable never initialized\n", "markdown": "[CacheManager._makeSpace(uint64).min](src/chain/CacheManager.sol#L218) is a local variable never initialized\n", "first_markdown_element": "src/chain/CacheManager.sol#L218", "id": "73850e9ef891d5f054eb989dce18e9362ba7349b4f2237be464bcaeab7c4fe54", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "proveOneStep", "source_mapping": {"start": 3092, "length": 4914, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProofEntry", "source_mapping": {"start": 407, "length": 7601, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "proveOneStep(ExecutionContext,uint256,bytes32,bytes)"}}, {"type": "node", "name": "mach.setPcFromRecovery()", "source_mapping": {"start": 7887, "length": 24, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [197], "starting_column": 13, "ending_column": 37}, "type_specific_fields": {"parent": {"type": "function", "name": "proveOneStep", "source_mapping": {"start": 3092, "length": 4914, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProofEntry", "source_mapping": {"start": 407, "length": 7601, "filename_relative": "src/osp/OneStepProofEntry.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProofEntry.sol", "filename_short": "src/osp/OneStepProofEntry.sol", "is_dependency": false, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "proveOneStep(ExecutionContext,uint256,bytes32,bytes)"}}}}], "description": "OneStepProofEntry.proveOneStep(ExecutionContext,uint256,bytes32,bytes) (src/osp/OneStepProofEntry.sol#91-202) ignores return value by mach.setPcFromRecovery() (src/osp/OneStepProofEntry.sol#197)\n", "markdown": "[OneStepProofEntry.proveOneStep(ExecutionContext,uint256,bytes32,bytes)](src/osp/OneStepProofEntry.sol#L91-L202) ignores return value by [mach.setPcFromRecovery()](src/osp/OneStepProofEntry.sol#L197)\n", "first_markdown_element": "src/osp/OneStepProofEntry.sol#L91-L202", "id": "1e2dda001e02cbbabef97b698cc66ccc8052b4444a6785554ba4d649b6511550", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeDrop", "source_mapping": {"start": 1726, "length": 185, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [61, 62, 63, 64, 65, 66, 67, 68], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 18300, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538], "starting_column": 1, "ending_column": 2}}, "signature": "executeDrop(Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "mach.valueStack.pop()", "source_mapping": {"start": 1883, "length": 21, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [67], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "executeDrop", "source_mapping": {"start": 1726, "length": 185, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [61, 62, 63, 64, 65, 66, 67, 68], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 18300, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538], "starting_column": 1, "ending_column": 2}}, "signature": "executeDrop(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeDrop(Machine,Module,Instruction,bytes) (src/osp/OneStepProver0.sol#61-68) ignores return value by mach.valueStack.pop() (src/osp/OneStepProver0.sol#67)\n", "markdown": "[OneStepProver0.executeDrop(Machine,Module,Instruction,bytes)](src/osp/OneStepProver0.sol#L61-L68) ignores return value by [mach.valueStack.pop()](src/osp/OneStepProver0.sol#L67)\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L61-L68", "id": "eba4f716555f696a91fc8ad9e049846421a7a6ad85a83865fb641cf1b9b27c54", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "validateSequencerInbox", "source_mapping": {"start": 10247, "length": 884, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)"}}, {"type": "node", "name": "(afterDelayedMsg,None) = Deserialize.u64(message,32)", "source_mapping": {"start": 10532, "length": 50, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [260], "starting_column": 9, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "validateSequencerInbox", "source_mapping": {"start": 10247, "length": 884, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#252-274) ignores return value by (afterDelayedMsg,None) = Deserialize.u64(message,32) (src/osp/OneStepProverHostIo.sol#260)\n", "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L252-L274) ignores return value by [(afterDelayedMsg,None) = Deserialize.u64(message,32)](src/osp/OneStepProverHostIo.sol#L260)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L252-L274", "id": "7a935ab3d3995d6dce7a8ceebf4df0c402dd5ffa259ff05c1b75422e65f9a5ed", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "validateDelayedInbox", "source_mapping": {"start": 11137, "length": 916, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)"}}, {"type": "node", "name": "(sender,None) = Deserialize.u256(message,1)", "source_mapping": {"start": 11660, "length": 41, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [292], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "validateDelayedInbox", "source_mapping": {"start": 11137, "length": 916, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#276-301) ignores return value by (sender,None) = Deserialize.u256(message,1) (src/osp/OneStepProverHostIo.sol#292)\n", "markdown": "[OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L276-L301) ignores return value by [(sender,None) = Deserialize.u256(message,1)](src/osp/OneStepProverHostIo.sol#L292)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L276-L301", "id": "81ff5b93f212262122b563d7d9aa8ed5b61e0fe74edfe59c06accd2ae77a46ca", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeLinkModule", "source_mapping": {"start": 16420, "length": 1090, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "(userMod,offset) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)", "source_mapping": {"start": 16918, "length": 141, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [448, 449, 450, 451, 452], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "executeLinkModule", "source_mapping": {"start": 16420, "length": 1090, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#433-464) ignores return value by (userMod,offset) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0) (src/osp/OneStepProverHostIo.sol#448-452)\n", "markdown": "[OneStepProverHostIo.executeLinkModule(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L433-L464) ignores return value by [(userMod,offset) = mod.moduleMemory.proveLeaf(pointer / LEAF_SIZE,proof,0)](src/osp/OneStepProverHostIo.sol#L448-L452)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L433-L464", "id": "ca4b4a9a8f6f270a10c0e390a10831708cbcfc0bfa398fc3f21331bfbd5fc479", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeSwitchCoThread", "source_mapping": {"start": 21302, "length": 1074, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "mach.setRecoveryFromPc(uint32(inst.argumentData))", "source_mapping": {"start": 22273, "length": 49, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [597], "starting_column": 13, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "executeSwitchCoThread", "source_mapping": {"start": 21302, "length": 1074, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 502, "length": 23583, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649], "starting_column": 1, "ending_column": 2}}, "signature": "executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#572-600) ignores return value by mach.setRecoveryFromPc(uint32(inst.argumentData)) (src/osp/OneStepProverHostIo.sol#597)\n", "markdown": "[OneStepProverHostIo.executeSwitchCoThread(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L572-L600) ignores return value by [mach.setRecoveryFromPc(uint32(inst.argumentData))](src/osp/OneStepProverHostIo.sol#L597)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L572-L600", "id": "ac3b6c8d13d7ed575d28aeae91d5e7c25757469f13c56cd8ec10843535deca31", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1168, "length": 3662, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 10198, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "(err,value) = mod.moduleMemory.load(index,readBytes,proof,0)", "source_mapping": {"start": 3641, "length": 79, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [106], "starting_column": 9, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1168, "length": 3662, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 10198, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes) (src/osp/OneStepProverMemory.sol#36-131) ignores return value by (err,value) = mod.moduleMemory.load(index,readBytes,proof,0) (src/osp/OneStepProverMemory.sol#106)\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes)](src/osp/OneStepProverMemory.sol#L36-L131) ignores return value by [(err,value) = mod.moduleMemory.load(index,readBytes,proof,0)](src/osp/OneStepProverMemory.sol#L106)\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L36-L131", "id": "df6a63edce47eb17310486af71173d172b59ec0187bd5f84df01a3e0bbd022c2", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "offset", "source_mapping": {"start": 7752, "length": 18, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [241], "starting_column": 13, "ending_column": 31}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 7332, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 18300, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}, {"type": "node", "name": "(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)", "source_mapping": {"start": 9359, "length": 59, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [277], "starting_column": 13, "ending_column": 72}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 7332, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 18300, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}, {"type": "node", "name": "(functionPointer,offset) = Deserialize.value(proof,offset)", "source_mapping": {"start": 9432, "length": 60, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [278], "starting_column": 13, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 7332, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 18300, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset (src/osp/OneStepProver0.sol#241) is written in both\n\t(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset) (src/osp/OneStepProver0.sol#277)\n\t(functionPointer,offset) = Deserialize.value(proof,offset) (src/osp/OneStepProver0.sol#278)\n", "markdown": "[OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset](src/osp/OneStepProver0.sol#L241) is written in both\n\t[(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)](src/osp/OneStepProver0.sol#L277)\n\t[(functionPointer,offset) = Deserialize.value(proof,offset)](src/osp/OneStepProver0.sol#L278)\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L241", "id": "d6a42f778bdb10ec1cc4e3ae5bd1d2a66edf8c14085e20de930344608bd29bd2", "check": "write-after-write", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "refundsGas", "source_mapping": {"start": 721, "length": 2143, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefundEnabled", "source_mapping": {"start": 309, "length": 2557, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "starting_column": 1, "ending_column": 2}}, "signature": "refundsGas(IGasRefunder,IReader4844)"}}, {"type": "node", "name": "calldataWords = (calldataSize + 31) / 32", "source_mapping": {"start": 960, "length": 48, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [22], "starting_column": 13, "ending_column": 61}, "type_specific_fields": {"parent": {"type": "function", "name": "refundsGas", "source_mapping": {"start": 721, "length": 2143, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefundEnabled", "source_mapping": {"start": 309, "length": 2557, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "starting_column": 1, "ending_column": 2}}, "signature": "refundsGas(IGasRefunder,IReader4844)"}}}}, {"type": "node", "name": "startGasLeft += calldataWords * 6 + (calldataWords ** 2) / 512", "source_mapping": {"start": 1130, "length": 60, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [24], "starting_column": 13, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "refundsGas", "source_mapping": {"start": 721, "length": 2143, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefundEnabled", "source_mapping": {"start": 309, "length": 2557, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "starting_column": 1, "ending_column": 2}}, "signature": "refundsGas(IGasRefunder,IReader4844)"}}}}], "description": "GasRefundEnabled.refundsGas(IGasRefunder,IReader4844) (src/libraries/GasRefundEnabled.sol#17-51) performs a multiplication on the result of a division:\n\t- calldataWords = (calldataSize + 31) / 32 (src/libraries/GasRefundEnabled.sol#22)\n\t- startGasLeft += calldataWords * 6 + (calldataWords ** 2) / 512 (src/libraries/GasRefundEnabled.sol#24)\n", "markdown": "[GasRefundEnabled.refundsGas(IGasRefunder,IReader4844)](src/libraries/GasRefundEnabled.sol#L17-L51) performs a multiplication on the result of a division:\n\t- [calldataWords = (calldataSize + 31) / 32](src/libraries/GasRefundEnabled.sol#L22)\n\t- [startGasLeft += calldataWords * 6 + (calldataWords ** 2) / 512](src/libraries/GasRefundEnabled.sol#L24)\n", "first_markdown_element": "src/libraries/GasRefundEnabled.sol#L17-L51", "id": "bb26256ad08f6833c6e0395d78c4b8a1182860d966d17803ac727cde7719e8b6", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "node", "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)", "source_mapping": {"start": 10207, "length": 201, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [96, 97, 98, 99, 100, 101, 102, 103], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "perform", "source_mapping": {"start": 10012, "length": 1157, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}}}, {"type": "node", "name": "_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)", "source_mapping": {"start": 10207, "length": 201, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [96, 97, 98, 99, 100, 101, 102, 103], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "perform", "source_mapping": {"start": 10012, "length": 1157, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}}}], "description": "Multiple retryable tickets created in the same function:\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#96-103)\n\t -_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas) (src/rollup/DeployHelper.sol#96-103)\n", "markdown": "Multiple retryable tickets created in the same function:\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L96-L103)\n\t -[_fundAndDeploy(_inbox,NICK_CREATE2_VALUE,NICK_CREATE2_DEPLOYER,NICK_CREATE2_PAYLOAD,isUsingFeeToken,_maxFeePerGas)](src/rollup/DeployHelper.sol#L96-L103)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L96-L103", "id": "5d40acc11dbb925c7e8ac930729d7231aea71007192a71ca36b451cad7a17520", "check": "out-of-order-retryable", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_executeLowLevelCall", "source_mapping": {"start": 1379, "length": 299, "filename_relative": "src/bridge/Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", "filename_short": "src/bridge/Bridge.sol", "is_dependency": false, "lines": [42, 43, 44, 45, 46, 47, 48, 49], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Bridge", "source_mapping": {"start": 702, "length": 1090, "filename_relative": "src/bridge/Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", "filename_short": "src/bridge/Bridge.sol", "is_dependency": false, "lines": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54], "starting_column": 1, "ending_column": 2}}, "signature": "_executeLowLevelCall(address,uint256,bytes)"}}, {"type": "node", "name": "(success,returnData) = to.call{value: value}(data)", "source_mapping": {"start": 1620, "length": 51, "filename_relative": "src/bridge/Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", "filename_short": "src/bridge/Bridge.sol", "is_dependency": false, "lines": [48], "starting_column": 9, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "_executeLowLevelCall", "source_mapping": {"start": 1379, "length": 299, "filename_relative": "src/bridge/Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", "filename_short": "src/bridge/Bridge.sol", "is_dependency": false, "lines": [42, 43, 44, 45, 46, 47, 48, 49], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Bridge", "source_mapping": {"start": 702, "length": 1090, "filename_relative": "src/bridge/Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/Bridge.sol", "filename_short": "src/bridge/Bridge.sol", "is_dependency": false, "lines": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54], "starting_column": 1, "ending_column": 2}}, "signature": "_executeLowLevelCall(address,uint256,bytes)"}}}}], "description": "Bridge._executeLowLevelCall(address,uint256,bytes) (src/bridge/Bridge.sol#42-49) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success,returnData) = to.call{value: value}(data) (src/bridge/Bridge.sol#48)\n", "markdown": "[Bridge._executeLowLevelCall(address,uint256,bytes)](src/bridge/Bridge.sol#L42-L49) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success,returnData) = to.call{value: value}(data)](src/bridge/Bridge.sol#L48)\n", "first_markdown_element": "src/bridge/Bridge.sol#L42-L49", "id": "52aa149e251bcbda3478032a3845253462c6d80e50cde35746a072dd6dd226a6", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", "source_mapping": {"start": 9483, "length": 399, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [74, 75, 76, 77, 78, 79, 80, 81, 82, 83], "starting_column": 13, "ending_column": 15}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#74-83)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L74-L83)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", "id": "e0479a62ad4830e7fe86da8c84b5e23beb3117b4fad5a10981cccab1ed4d7fef", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "perform", "source_mapping": {"start": 10012, "length": 1157, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}, {"type": "node", "name": "address(msg.sender).transfer(address(this).balance)", "source_mapping": {"start": 11101, "length": 51, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [131], "starting_column": 13, "ending_column": 64}, "type_specific_fields": {"parent": {"type": "function", "name": "perform", "source_mapping": {"start": 10012, "length": 1157, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "perform(address,address,uint256)"}}}}], "description": "DeployHelper.perform(address,address,uint256) (src/rollup/DeployHelper.sol#89-133) sends eth to arbitrary user\n\tDangerous calls:\n\t- address(msg.sender).transfer(address(this).balance) (src/rollup/DeployHelper.sol#131)\n", "markdown": "[DeployHelper.perform(address,address,uint256)](src/rollup/DeployHelper.sol#L89-L133) sends eth to arbitrary user\n\tDangerous calls:\n\t- [address(msg.sender).transfer(address(this).balance)](src/rollup/DeployHelper.sol#L131)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L89-L133", "id": "9ffb800c52b7ebc92a4117369762770d49beb52d8f7f0c4c53742745d88e75c4", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployFactories", "source_mapping": {"start": 10566, "length": 1163, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "_deployFactories(address,address,uint256)"}}, {"type": "node", "name": "l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)", "source_mapping": {"start": 10973, "length": 77, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [268], "starting_column": 13, "ending_column": 90}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployFactories", "source_mapping": {"start": 10566, "length": 1163, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "_deployFactories(address,address,uint256)"}}}}, {"type": "node", "name": "(sent) = msg.sender.call{value: address(this).balance}()", "source_mapping": {"start": 11161, "length": 65, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [272], "starting_column": 13, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployFactories", "source_mapping": {"start": 10566, "length": 1163, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "_deployFactories(address,address,uint256)"}}}}], "description": "RollupCreator._deployFactories(address,address,uint256) (src/rollup/RollupCreator.sol#255-285) sends eth to arbitrary user\n\tDangerous calls:\n\t- l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas) (src/rollup/RollupCreator.sol#268)\n\t- (sent) = msg.sender.call{value: address(this).balance}() (src/rollup/RollupCreator.sol#272)\n", "markdown": "[RollupCreator._deployFactories(address,address,uint256)](src/rollup/RollupCreator.sol#L255-L285) sends eth to arbitrary user\n\tDangerous calls:\n\t- [l2FactoriesDeployer.perform{value: cost}(_inbox,_nativeToken,_maxFeePerGas)](src/rollup/RollupCreator.sol#L268)\n\t- [(sent) = msg.sender.call{value: address(this).balance}()](src/rollup/RollupCreator.sol#L272)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L255-L285", "id": "76dc4e58fa8c5850af786b5521aa4b4047660ca4b5cfdc3ec6d2b34a27bf414d", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "calculateRoot", "source_mapping": {"start": 987, "length": 872, "filename_relative": "src/libraries/MerkleLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", "filename_short": "src/libraries/MerkleLib.sol", "is_dependency": false, "lines": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MerkleLib", "source_mapping": {"start": 254, "length": 1607, "filename_relative": "src/libraries/MerkleLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", "filename_short": "src/libraries/MerkleLib.sol", "is_dependency": false, "lines": [9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57], "starting_column": 1, "ending_column": 2}}, "signature": "calculateRoot(bytes32[],uint256,bytes32)"}}, {"type": "node", "name": "(route & (1 << i)) == 0", "source_mapping": {"start": 1371, "length": 23, "filename_relative": "src/libraries/MerkleLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", "filename_short": "src/libraries/MerkleLib.sol", "is_dependency": false, "lines": [38], "starting_column": 17, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "calculateRoot", "source_mapping": {"start": 987, "length": 872, "filename_relative": "src/libraries/MerkleLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", "filename_short": "src/libraries/MerkleLib.sol", "is_dependency": false, "lines": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "MerkleLib", "source_mapping": {"start": 254, "length": 1607, "filename_relative": "src/libraries/MerkleLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/MerkleLib.sol", "filename_short": "src/libraries/MerkleLib.sol", "is_dependency": false, "lines": [9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57], "starting_column": 1, "ending_column": 2}}, "signature": "calculateRoot(bytes32[],uint256,bytes32)"}}}}], "description": "MerkleLib.calculateRoot(bytes32[],uint256,bytes32) (src/libraries/MerkleLib.sol#28-56) contains an incorrect shift operation: (route & (1 << i)) == 0 (src/libraries/MerkleLib.sol#38)\n", "markdown": "[MerkleLib.calculateRoot(bytes32[],uint256,bytes32)](src/libraries/MerkleLib.sol#L28-L56) contains an incorrect shift operation: [(route & (1 << i)) == 0](src/libraries/MerkleLib.sol#L38)\n", "first_markdown_element": "src/libraries/MerkleLib.sol#L28-L56", "id": "5c3db261bcf096a853ed1cbf065868696b577e437b35616c25ee3da2af6bc0d7", "check": "incorrect-shift", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "confirmPeriodBlocks", "source_mapping": {"start": 848, "length": 33, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [30], "starting_column": 5, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "_validatorIsAfk", "source_mapping": {"start": 1426, "length": 349, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [47, 48, 49, 50, 51, 52, 53, 54], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "_validatorIsAfk()"}}, {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "function", "name": "addStaker", "source_mapping": {"start": 16226, "length": 666, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "addStaker(uint64,address)"}}, {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}], "description": "RollupCore.confirmPeriodBlocks (src/rollup/RollupCore.sol#30) is never initialized. It is used in:\n\t- AbsRollupUserLogic._validatorIsAfk() (src/rollup/RollupUserLogic.sol#47-54)\n\t- AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523)\n\t- RollupCore.addStaker(uint64,address) (src/rollup/RollupCore.sol#449-465)\n\t- RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677)\n", "markdown": "[RollupCore.confirmPeriodBlocks](src/rollup/RollupCore.sol#L30) is never initialized. It is used in:\n\t- [AbsRollupUserLogic._validatorIsAfk()](src/rollup/RollupUserLogic.sol#L47-L54)\n\t- [AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523)\n\t- [RollupCore.addStaker(uint64,address)](src/rollup/RollupCore.sol#L449-L465)\n\t- [RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L30", "id": "a4b24bce5aba1839e99647d1a79bb6ee736796ffa0b26da1ff6de3bf0cad25a2", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "extraChallengeTimeBlocks", "source_mapping": {"start": 887, "length": 38, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [31], "starting_column": 5, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "createChallenge", "source_mapping": {"start": 12264, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}], "description": "RollupCore.extraChallengeTimeBlocks (src/rollup/RollupCore.sol#31) is never initialized. It is used in:\n\t- AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#291-364)\n", "markdown": "[RollupCore.extraChallengeTimeBlocks](src/rollup/RollupCore.sol#L31) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L291-L364)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L31", "id": "da3953abca5cd200b13fe48850b6aa7652681e329be2738fada97e811ccf823c", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "baseStake", "source_mapping": {"start": 959, "length": 24, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [33], "starting_column": 5, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}], "description": "RollupCore.baseStake (src/rollup/RollupCore.sol#33) is never initialized. It is used in:\n\t- AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523)\n", "markdown": "[RollupCore.baseStake](src/rollup/RollupCore.sol#L33) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L33", "id": "e38524abb8244a635c7bb2fbd1c2e3be4f6f4c45b66589d5c431018eaec19736", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "wasmModuleRoot", "source_mapping": {"start": 989, "length": 29, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [34], "starting_column": 5, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}], "description": "RollupCore.wasmModuleRoot (src/rollup/RollupCore.sol#34) is never initialized. It is used in:\n\t- RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677)\n", "markdown": "[RollupCore.wasmModuleRoot](src/rollup/RollupCore.sol#L34) is never initialized. It is used in:\n\t- [RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L34", "id": "ba1b0a9663907f65e34f85d9522781abdfd536250f5ca9c3ce00e5d5fd99e0e5", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "bridge", "source_mapping": {"start": 1054, "length": 21, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [37], "starting_column": 5, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}], "description": "RollupCore.bridge (src/rollup/RollupCore.sol#37) is never initialized. It is used in:\n\t- RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677)\n", "markdown": "[RollupCore.bridge](src/rollup/RollupCore.sol#L37) is never initialized. It is used in:\n\t- [RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L37", "id": "083aba2c7a6498e3f6b62bd57041243e85867ce1e7deb7e73af230c8a3fda57c", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "outbox", "source_mapping": {"start": 1081, "length": 21, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [38], "starting_column": 5, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "confirmNode", "source_mapping": {"start": 10760, "length": 573, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "confirmNode(uint64,bytes32,bytes32)"}}], "description": "RollupCore.outbox (src/rollup/RollupCore.sol#38) is never initialized. It is used in:\n\t- RollupCore.confirmNode(uint64,bytes32,bytes32) (src/rollup/RollupCore.sol#306-322)\n", "markdown": "[RollupCore.outbox](src/rollup/RollupCore.sol#L38) is never initialized. It is used in:\n\t- [RollupCore.confirmNode(uint64,bytes32,bytes32)](src/rollup/RollupCore.sol#L306-L322)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L38", "id": "0e386868f4529a31d9469b3b0f8148977860a53590d8f94171666883bbbe4c3d", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "challengeManager", "source_mapping": {"start": 1198, "length": 50, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [41], "starting_column": 5, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "createChallengeHelper", "source_mapping": {"start": 15401, "length": 672, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)"}}, {"type": "function", "name": "completeChallenge", "source_mapping": {"start": 16300, "length": 484, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [393, 394, 395, 396, 397, 398, 399, 400, 401, 402], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "completeChallenge(uint256,address,address)"}}], "description": "RollupCore.challengeManager (src/rollup/RollupCore.sol#41) is never initialized. It is used in:\n\t- AbsRollupUserLogic.createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256) (src/rollup/RollupUserLogic.sol#366-386)\n\t- AbsRollupUserLogic.completeChallenge(uint256,address,address) (src/rollup/RollupUserLogic.sol#393-402)\n", "markdown": "[RollupCore.challengeManager](src/rollup/RollupCore.sol#L41) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)](src/rollup/RollupUserLogic.sol#L366-L386)\n\t- [AbsRollupUserLogic.completeChallenge(uint256,address,address)](src/rollup/RollupUserLogic.sol#L393-L402)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L41", "id": "22c612a6037a18832e2adecba9cb92ae47a8af1b6ad06cd807e2930e95704f7f", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "loserStakeEscrow", "source_mapping": {"start": 1485, "length": 31, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [48], "starting_column": 5, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "completeChallengeImpl", "source_mapping": {"start": 16790, "length": 1104, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "completeChallengeImpl(address,address)"}}], "description": "RollupCore.loserStakeEscrow (src/rollup/RollupCore.sol#48) is never initialized. It is used in:\n\t- AbsRollupUserLogic.completeChallengeImpl(address,address) (src/rollup/RollupUserLogic.sol#404-423)\n", "markdown": "[RollupCore.loserStakeEscrow](src/rollup/RollupCore.sol#L48) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.completeChallengeImpl(address,address)](src/rollup/RollupUserLogic.sol#L404-L423)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L48", "id": "c7bcdadad2017983801efa1f09090e62d03f763f4327a3ff8eae213d33849120", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "stakeToken", "source_mapping": {"start": 1522, "length": 25, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [49], "starting_column": 5, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "isERC20Enabled", "source_mapping": {"start": 2244, "length": 110, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [68, 69, 70], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "isERC20Enabled()"}}], "description": "RollupCore.stakeToken (src/rollup/RollupCore.sol#49) is never initialized. It is used in:\n\t- AbsRollupUserLogic.isERC20Enabled() (src/rollup/RollupUserLogic.sol#68-70)\n", "markdown": "[RollupCore.stakeToken](src/rollup/RollupCore.sol#L49) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.isERC20Enabled()](src/rollup/RollupUserLogic.sol#L68-L70)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L49", "id": "762ea8af9375f2dee07c120ca7a44b367b72fbd357f74ed8397e8540a17d87b6", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "minimumAssertionPeriod", "source_mapping": {"start": 1553, "length": 37, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [50], "starting_column": 5, "ending_column": 42}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "stakeOnNewNode", "source_mapping": {"start": 7704, "length": 1684, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnNewNode(Assertion,bytes32,uint256)"}}], "description": "RollupCore.minimumAssertionPeriod (src/rollup/RollupCore.sol#50) is never initialized. It is used in:\n\t- AbsRollupUserLogic.stakeOnNewNode(Assertion,bytes32,uint256) (src/rollup/RollupUserLogic.sol#198-233)\n", "markdown": "[RollupCore.minimumAssertionPeriod](src/rollup/RollupCore.sol#L50) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.stakeOnNewNode(Assertion,bytes32,uint256)](src/rollup/RollupUserLogic.sol#L198-L233)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L50", "id": "01fe9c1889403593f4723665fd7724b4e31b63dd3689c5816cb6d147d16dbf42", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "isValidator", "source_mapping": {"start": 1597, "length": 43, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [52], "starting_column": 5, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}], "description": "RollupCore.isValidator (src/rollup/RollupCore.sol#52) is never initialized. It is used in:\n", "markdown": "[RollupCore.isValidator](src/rollup/RollupCore.sol#L52) is never initialized. It is used in:\n", "first_markdown_element": "src/rollup/RollupCore.sol#L52", "id": "f316200e22d3febd4d78fe211de5d864b1b65169f67e03191ea884e8b60055ae", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "stakeToken", "source_mapping": {"start": 1522, "length": 25, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [49], "starting_column": 5, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "isERC20Enabled", "source_mapping": {"start": 2244, "length": 110, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [68, 69, 70], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "isERC20Enabled()"}}, {"type": "function", "name": "withdrawStakerFunds", "source_mapping": {"start": 30568, "length": 400, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20RollupUserLogic", "source_mapping": {"start": 28020, "length": 3167, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769], "starting_column": 1, "ending_column": 2}}, "signature": "withdrawStakerFunds()"}}, {"type": "function", "name": "receiveTokens", "source_mapping": {"start": 30974, "length": 211, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [763, 764, 765, 766, 767, 768], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20RollupUserLogic", "source_mapping": {"start": 28020, "length": 3167, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769], "starting_column": 1, "ending_column": 2}}, "signature": "receiveTokens(uint256)"}}], "description": "RollupCore.stakeToken (src/rollup/RollupCore.sol#49) is never initialized. It is used in:\n\t- AbsRollupUserLogic.isERC20Enabled() (src/rollup/RollupUserLogic.sol#68-70)\n\t- ERC20RollupUserLogic.withdrawStakerFunds() (src/rollup/RollupUserLogic.sol#750-761)\n\t- ERC20RollupUserLogic.receiveTokens(uint256) (src/rollup/RollupUserLogic.sol#763-768)\n", "markdown": "[RollupCore.stakeToken](src/rollup/RollupCore.sol#L49) is never initialized. It is used in:\n\t- [AbsRollupUserLogic.isERC20Enabled()](src/rollup/RollupUserLogic.sol#L68-L70)\n\t- [ERC20RollupUserLogic.withdrawStakerFunds()](src/rollup/RollupUserLogic.sol#L750-L761)\n\t- [ERC20RollupUserLogic.receiveTokens(uint256)](src/rollup/RollupUserLogic.sol#L763-L768)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L49", "id": "388304453678fb7cb187225ae4a8eef1f46c80d072185688bad31640b221fb6d", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "extractChallengeSegment", "source_mapping": {"start": 3040, "length": 682, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 4325, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 1, "ending_column": 2}}, "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)"}}, {"type": "node", "name": "segmentLength = selection.oldSegmentsLength / oldChallengeDegree", "source_mapping": {"start": 3287, "length": 64, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [102], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "extractChallengeSegment", "source_mapping": {"start": 3040, "length": 682, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 4325, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 1, "ending_column": 2}}, "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)"}}}}, {"type": "node", "name": "segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition", "source_mapping": {"start": 3460, "length": 87, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [104], "starting_column": 9, "ending_column": 96}, "type_specific_fields": {"parent": {"type": "function", "name": "extractChallengeSegment", "source_mapping": {"start": 3040, "length": 682, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 4325, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 1, "ending_column": 2}}, "signature": "extractChallengeSegment(ChallengeLib.SegmentSelection)"}}}}], "description": "ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection) (src/challenge/ChallengeLib.sol#96-108) performs a multiplication on the result of a division:\n\t- segmentLength = selection.oldSegmentsLength / oldChallengeDegree (src/challenge/ChallengeLib.sol#102)\n\t- segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition (src/challenge/ChallengeLib.sol#104)\n", "markdown": "[ChallengeLib.extractChallengeSegment(ChallengeLib.SegmentSelection)](src/challenge/ChallengeLib.sol#L96-L108) performs a multiplication on the result of a division:\n\t- [segmentLength = selection.oldSegmentsLength / oldChallengeDegree](src/challenge/ChallengeLib.sol#L102)\n\t- [segmentStart = selection.oldSegmentsStart + segmentLength * selection.challengePosition](src/challenge/ChallengeLib.sol#L104)\n", "first_markdown_element": "src/challenge/ChallengeLib.sol#L96-L108", "id": "e1c80d5388c10fc3c7985b252a3988308fb524570c5772733ff6da1f68ae3665", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4302, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "rootOfUnityPower = (1 << 32) / fieldElementsPerBlob", "source_mapping": {"start": 9080, "length": 59, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [224], "starting_column": 17, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4302, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}, {"type": "node", "name": "rootOfUnityPower *= bitReversedIndex", "source_mapping": {"start": 9307, "length": 36, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [227], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4302, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes) (src/osp/OneStepProverHostIo.sol#123-245) performs a multiplication on the result of a division:\n\t- rootOfUnityPower = (1 << 32) / fieldElementsPerBlob (src/osp/OneStepProverHostIo.sol#224)\n\t- rootOfUnityPower *= bitReversedIndex (src/osp/OneStepProverHostIo.sol#227)\n", "markdown": "[OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)](src/osp/OneStepProverHostIo.sol#L123-L245) performs a multiplication on the result of a division:\n\t- [rootOfUnityPower = (1 << 32) / fieldElementsPerBlob](src/osp/OneStepProverHostIo.sol#L224)\n\t- [rootOfUnityPower *= bitReversedIndex](src/osp/OneStepProverHostIo.sol#L227)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L123-L245", "id": "544b092c0dd6ff4838cb1cbaa7af3a7e9ba4011548b519524ea1c0f49488ba8a", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier = withNumerator / denominators[periodsPassed % 10]", "source_mapping": {"start": 21553, "length": 69, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [518], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}, {"type": "node", "name": "baseStake * multiplier", "source_mapping": {"start": 21701, "length": 29, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [522], "starting_column": 9, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523) performs a multiplication on the result of a division:\n\t- multiplier = withNumerator / denominators[periodsPassed % 10] (src/rollup/RollupUserLogic.sol#518)\n\t- baseStake * multiplier (src/rollup/RollupUserLogic.sol#522)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523) performs a multiplication on the result of a division:\n\t- [multiplier = withNumerator / denominators[periodsPassed % 10]](src/rollup/RollupUserLogic.sol#L518)\n\t- [baseStake * multiplier](src/rollup/RollupUserLogic.sol#L522)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L477-L523", "id": "d8acf03a6b7c6bb0b8a091fbcc3c5657b15d7180c1edc798c1b2b66b27895d5d", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "onGasSpent", "source_mapping": {"start": 5994, "length": 3002, "filename_relative": "src/bridge/GasRefunder.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", "filename_short": "src/bridge/GasRefunder.sol", "is_dependency": false, "lines": [174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefunder", "source_mapping": {"start": 916, "length": 8082, "filename_relative": "src/bridge/GasRefunder.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", "filename_short": "src/bridge/GasRefunder.sol", "is_dependency": false, "lines": [29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257], "starting_column": 1, "ending_column": 2}}, "signature": "onGasSpent(address,uint256,uint256)"}}, {"type": "node", "name": "ownBalance == 0", "source_mapping": {"start": 6260, "length": 15, "filename_relative": "src/bridge/GasRefunder.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", "filename_short": "src/bridge/GasRefunder.sol", "is_dependency": false, "lines": [183], "starting_column": 13, "ending_column": 28}, "type_specific_fields": {"parent": {"type": "function", "name": "onGasSpent", "source_mapping": {"start": 5994, "length": 3002, "filename_relative": "src/bridge/GasRefunder.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", "filename_short": "src/bridge/GasRefunder.sol", "is_dependency": false, "lines": [174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefunder", "source_mapping": {"start": 916, "length": 8082, "filename_relative": "src/bridge/GasRefunder.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/GasRefunder.sol", "filename_short": "src/bridge/GasRefunder.sol", "is_dependency": false, "lines": [29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257], "starting_column": 1, "ending_column": 2}}, "signature": "onGasSpent(address,uint256,uint256)"}}}}], "description": "GasRefunder.onGasSpent(address,uint256,uint256) (src/bridge/GasRefunder.sol#174-256) uses a dangerous strict equality:\n\t- ownBalance == 0 (src/bridge/GasRefunder.sol#183)\n", "markdown": "[GasRefunder.onGasSpent(address,uint256,uint256)](src/bridge/GasRefunder.sol#L174-L256) uses a dangerous strict equality:\n\t- [ownBalance == 0](src/bridge/GasRefunder.sol#L183)\n", "first_markdown_element": "src/bridge/GasRefunder.sol#L174-L256", "id": "7130559f3bef7fa36dc1a06a74ba5036fede4a8f9a9b7aa15356ff38ae92691a", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "getKeysetCreationBlock", "source_mapping": {"start": 30911, "length": 262, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [800, 801, 802, 803, 804], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "SequencerInbox", "source_mapping": {"start": 1909, "length": 29266, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805], "starting_column": 1, "ending_column": 2}}, "signature": "getKeysetCreationBlock(bytes32)"}}, {"type": "node", "name": "ksInfo.creationBlock == 0", "source_mapping": {"start": 31066, "length": 25, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [802], "starting_column": 13, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "getKeysetCreationBlock", "source_mapping": {"start": 30911, "length": 262, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [800, 801, 802, 803, 804], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "SequencerInbox", "source_mapping": {"start": 1909, "length": 29266, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805], "starting_column": 1, "ending_column": 2}}, "signature": "getKeysetCreationBlock(bytes32)"}}}}], "description": "SequencerInbox.getKeysetCreationBlock(bytes32) (src/bridge/SequencerInbox.sol#800-804) uses a dangerous strict equality:\n\t- ksInfo.creationBlock == 0 (src/bridge/SequencerInbox.sol#802)\n", "markdown": "[SequencerInbox.getKeysetCreationBlock(bytes32)](src/bridge/SequencerInbox.sol#L800-L804) uses a dangerous strict equality:\n\t- [ksInfo.creationBlock == 0](src/bridge/SequencerInbox.sol#L802)\n", "first_markdown_element": "src/bridge/SequencerInbox.sol#L800-L804", "id": "8d08f988c853ddc93c73c73c2ffb4eab98ae44f427249e22931a28dd9e0d9616", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}, {"type": "node", "name": "require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)", "source_mapping": {"start": 21393, "length": 193, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [582, 583, 584, 585, 586], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}}}], "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677) uses a dangerous strict equality:\n\t- require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH) (src/rollup/RollupCore.sol#582-586)\n", "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677) uses a dangerous strict equality:\n\t- [require(bool,string)(RollupLib.stateHash(assertion.beforeState,prevNodeInboxMaxCount) == memoryFrame.prevNode.stateHash,PREV_STATE_HASH)](src/rollup/RollupCore.sol#L582-L586)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L563-L677", "id": "d127dddc177369c36ad1c5bef7eb43c1a61fc683b55406bc72a59dc5596e864b", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}, {"type": "node", "name": "require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)", "source_mapping": {"start": 23847, "length": 144, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [635, 636, 637, 638], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}}}], "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32) (src/rollup/RollupCore.sol#563-677) uses a dangerous strict equality:\n\t- require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH) (src/rollup/RollupCore.sol#635-638)\n", "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32)](src/rollup/RollupCore.sol#L563-L677) uses a dangerous strict equality:\n\t- [require(bool,string)(newNodeHash == expectedNodeHash || expectedNodeHash == bytes32(0),UNEXPECTED_NODE_HASH)](src/rollup/RollupCore.sol#L635-L638)\n", "first_markdown_element": "src/rollup/RollupCore.sol#L563-L677", "id": "dfac2423a21baf2a37b1dd8b95efc0128475cfb15a4f40d0cc542e69ff413c79", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "_validatorIsAfk", "source_mapping": {"start": 1426, "length": 349, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [47, 48, 49, 50, 51, 52, 53, 54], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "_validatorIsAfk()"}}, {"type": "node", "name": "latestNode.createdAtBlock == 0", "source_mapping": {"start": 1566, "length": 30, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [49], "starting_column": 13, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "_validatorIsAfk", "source_mapping": {"start": 1426, "length": 349, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [47, 48, 49, 50, 51, 52, 53, 54], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "_validatorIsAfk()"}}}}], "description": "AbsRollupUserLogic._validatorIsAfk() (src/rollup/RollupUserLogic.sol#47-54) uses a dangerous strict equality:\n\t- latestNode.createdAtBlock == 0 (src/rollup/RollupUserLogic.sol#49)\n", "markdown": "[AbsRollupUserLogic._validatorIsAfk()](src/rollup/RollupUserLogic.sol#L47-L54) uses a dangerous strict equality:\n\t- [latestNode.createdAtBlock == 0](src/rollup/RollupUserLogic.sol#L49)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L47-L54", "id": "27da8dd2563854302dbb23b92013f4ff6bae23b8f09a7843b7bd073905bc04e7", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}, {"type": "node", "name": "multiplier == 0", "source_mapping": {"start": 21636, "length": 15, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [519], "starting_column": 13, "ending_column": 28}, "type_specific_fields": {"parent": {"type": "function", "name": "currentRequiredStake", "source_mapping": {"start": 20210, "length": 1527, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "currentRequiredStake(uint256,uint64,uint256)"}}}}], "description": "AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256) (src/rollup/RollupUserLogic.sol#477-523) uses a dangerous strict equality:\n\t- multiplier == 0 (src/rollup/RollupUserLogic.sol#519)\n", "markdown": "[AbsRollupUserLogic.currentRequiredStake(uint256,uint64,uint256)](src/rollup/RollupUserLogic.sol#L477-L523) uses a dangerous strict equality:\n\t- [multiplier == 0](src/rollup/RollupUserLogic.sol#L519)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L477-L523", "id": "46c10604345612b1526f352cacc87cc039daedff5beba654f8f07a5fdc228a45", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 25419, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [616, 617, 618, 619], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}, {"type": "node", "name": "require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)", "source_mapping": {"start": 25556, "length": 68, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [618], "starting_column": 9, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "requireUnchallengedStaker", "source_mapping": {"start": 25419, "length": 212, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [616, 617, 618, 619], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "requireUnchallengedStaker(address)"}}}}], "description": "AbsRollupUserLogic.requireUnchallengedStaker(address) (src/rollup/RollupUserLogic.sol#616-619) uses a dangerous strict equality:\n\t- require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL) (src/rollup/RollupUserLogic.sol#618)\n", "markdown": "[AbsRollupUserLogic.requireUnchallengedStaker(address)](src/rollup/RollupUserLogic.sol#L616-L619) uses a dangerous strict equality:\n\t- [require(bool,string)(currentChallenge(stakerAddress) == NO_CHAL_INDEX,IN_CHAL)](src/rollup/RollupUserLogic.sol#L618)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L616-L619", "id": "1e95eacfdcf4026b8e9c94f14922ed3f0a0ec1b366b7d354316a8dbcdb09add8", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 6908, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}, {"type": "node", "name": "require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)", "source_mapping": {"start": 7370, "length": 72, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [189], "starting_column": 9, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "function", "name": "stakeOnExistingNode", "source_mapping": {"start": 6908, "length": 583, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "stakeOnExistingNode(uint64,bytes32)"}}}}], "description": "AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32) (src/rollup/RollupUserLogic.sol#176-191) uses a dangerous strict equality:\n\t- require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV) (src/rollup/RollupUserLogic.sol#189)\n", "markdown": "[AbsRollupUserLogic.stakeOnExistingNode(uint64,bytes32)](src/rollup/RollupUserLogic.sol#L176-L191) uses a dangerous strict equality:\n\t- [require(bool,string)(latestStakedNode(msg.sender) == node.prevNum,NOT_STAKED_PREV)](src/rollup/RollupUserLogic.sol#L189)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L176-L191", "id": "4507b4ce50a7c39ed1ba1cdbee0a87e257d071a80d56ccf457734f2c8f166b64", "check": "incorrect-equality", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "function", "name": "addSequencerL2BatchImpl", "source_mapping": {"start": 26211, "length": 1103, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "SequencerInbox", "source_mapping": {"start": 1909, "length": 29266, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805], "starting_column": 1, "ending_column": 2}}, "signature": "addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)"}}, {"type": "node", "name": "(seqMessageIndex,beforeAcc,delayedAcc,acc) = bridge.enqueueSequencerMessage(dataHash,afterDelayedMessagesRead,prevMessageCount,newMessageCount)", "source_mapping": {"start": 26792, "length": 207, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [692, 693, 694, 695, 696, 697], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "addSequencerL2BatchImpl", "source_mapping": {"start": 26211, "length": 1103, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "SequencerInbox", "source_mapping": {"start": 1909, "length": 29266, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805], "starting_column": 1, "ending_column": 2}}, "signature": "addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "totalDelayedMessagesRead = afterDelayedMessagesRead", "source_mapping": {"start": 27010, "length": 51, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [699], "starting_column": 9, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "addSequencerL2BatchImpl", "source_mapping": {"start": 26211, "length": 1103, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "SequencerInbox", "source_mapping": {"start": 1909, "length": 29266, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805], "starting_column": 1, "ending_column": 2}}, "signature": "addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "totalDelayedMessagesRead"}}], "description": "Reentrancy in SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256) (src/bridge/SequencerInbox.sol#674-705):\n\tExternal calls:\n\t- (seqMessageIndex,beforeAcc,delayedAcc,acc) = bridge.enqueueSequencerMessage(dataHash,afterDelayedMessagesRead,prevMessageCount,newMessageCount) (src/bridge/SequencerInbox.sol#692-697)\n\tState variables written after the call(s):\n\t- totalDelayedMessagesRead = afterDelayedMessagesRead (src/bridge/SequencerInbox.sol#699)\n\tSequencerInbox.totalDelayedMessagesRead (src/bridge/SequencerInbox.sol#58) can be used in cross function reentrancies:\n\t- SequencerInbox.addSequencerL2Batch(uint256,bytes,uint256,IGasRefunder,uint256,uint256) (src/bridge/SequencerInbox.sol#468-519)\n\t- SequencerInbox.addSequencerL2BatchFromBlobs(uint256,uint256,IGasRefunder,uint256,uint256) (src/bridge/SequencerInbox.sol#407-466)\n\t- SequencerInbox.addSequencerL2BatchFromOrigin(uint256,bytes,uint256,IGasRefunder,uint256,uint256) (src/bridge/SequencerInbox.sol#355-405)\n\t- SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256) (src/bridge/SequencerInbox.sol#674-705)\n\t- SequencerInbox.forceInclusion(uint256,uint8,uint64[2],uint256,address,bytes32) (src/bridge/SequencerInbox.sol#284-343)\n\t- SequencerInbox.totalDelayedMessagesRead (src/bridge/SequencerInbox.sol#58)\n", "markdown": "Reentrancy in [SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)](src/bridge/SequencerInbox.sol#L674-L705):\n\tExternal calls:\n\t- [(seqMessageIndex,beforeAcc,delayedAcc,acc) = bridge.enqueueSequencerMessage(dataHash,afterDelayedMessagesRead,prevMessageCount,newMessageCount)](src/bridge/SequencerInbox.sol#L692-L697)\n\tState variables written after the call(s):\n\t- [totalDelayedMessagesRead = afterDelayedMessagesRead](src/bridge/SequencerInbox.sol#L699)\n\t[SequencerInbox.totalDelayedMessagesRead](src/bridge/SequencerInbox.sol#L58) can be used in cross function reentrancies:\n\t- [SequencerInbox.addSequencerL2Batch(uint256,bytes,uint256,IGasRefunder,uint256,uint256)](src/bridge/SequencerInbox.sol#L468-L519)\n\t- [SequencerInbox.addSequencerL2BatchFromBlobs(uint256,uint256,IGasRefunder,uint256,uint256)](src/bridge/SequencerInbox.sol#L407-L466)\n\t- [SequencerInbox.addSequencerL2BatchFromOrigin(uint256,bytes,uint256,IGasRefunder,uint256,uint256)](src/bridge/SequencerInbox.sol#L355-L405)\n\t- [SequencerInbox.addSequencerL2BatchImpl(bytes32,uint256,uint256,uint256,uint256)](src/bridge/SequencerInbox.sol#L674-L705)\n\t- [SequencerInbox.forceInclusion(uint256,uint8,uint64[2],uint256,address,bytes32)](src/bridge/SequencerInbox.sol#L284-L343)\n\t- [SequencerInbox.totalDelayedMessagesRead](src/bridge/SequencerInbox.sol#L58)\n", "first_markdown_element": "src/bridge/SequencerInbox.sol#L674-L705", "id": "b38d9bf0df554a08cf1b8bb6d468b87dd156690f340b399262fff373086c5825", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createChallenge", "source_mapping": {"start": 12264, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}, {"type": "node", "name": "challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)", "source_mapping": {"start": 14807, "length": 398, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [350, 351, 352, 353, 354, 355, 356, 357, 358, 359], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 12264, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)", "source_mapping": {"start": 15749, "length": 317, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385], "starting_column": 9, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallengeHelper", "source_mapping": {"start": 15401, "length": 672, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "createChallengeHelper(address[2],MachineStatus[2],GlobalState[2],uint64,bytes32[2],uint256,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "challengeStarted(stakers[0],stakers[1],challengeIndex)", "source_mapping": {"start": 15241, "length": 56, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [361], "starting_column": 9, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "function", "name": "createChallenge", "source_mapping": {"start": 12264, "length": 3131, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsRollupUserLogic", "source_mapping": {"start": 501, "length": 25132, "filename_relative": "src/rollup/RollupUserLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupUserLogic.sol", "filename_short": "src/rollup/RollupUserLogic.sol", "is_dependency": false, "lines": [16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620], "starting_column": 1, "ending_column": 2}}, "signature": "createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker1].currentChallenge = challenge", "source_mapping": {"start": 13576, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [383], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13449, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [378, 379, 380, 381, 382, 383, 384, 385], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "_stakerMap[staker2].currentChallenge = challenge", "source_mapping": {"start": 13634, "length": 48, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [384], "starting_column": 9, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "function", "name": "challengeStarted", "source_mapping": {"start": 13449, "length": 240, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [378, 379, 380, 381, 382, 383, 384, 385], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "challengeStarted(address,address,uint64)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}], "description": "Reentrancy in AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2]) (src/rollup/RollupUserLogic.sol#291-364):\n\tExternal calls:\n\t- challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME) (src/rollup/RollupUserLogic.sol#350-359)\n\t\t- challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft) (src/rollup/RollupUserLogic.sol#375-385)\n\tState variables written after the call(s):\n\t- challengeStarted(stakers[0],stakers[1],challengeIndex) (src/rollup/RollupUserLogic.sol#361)\n\t\t- _stakerMap[staker1].currentChallenge = challenge (src/rollup/RollupCore.sol#383)\n\t\t- _stakerMap[staker2].currentChallenge = challenge (src/rollup/RollupCore.sol#384)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#185-187)\n\t- RollupCore.challengeStarted(address,address,uint64) (src/rollup/RollupCore.sol#378-385)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#367-370)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#176-178)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#542-550)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#194-196)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#350-361)\n\t- RollupCore.increaseStakeBy(address,uint256) (src/rollup/RollupCore.sol#392-398)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#148-150)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#158-160)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#167-169)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#406-415)\n\t- RollupCore.stakeOnNode(address,uint64) (src/rollup/RollupCore.sol#507-511)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#421-425)\n\t- RollupCore.withdrawStaker(address) (src/rollup/RollupCore.sol#488-500)\n", "markdown": "Reentrancy in [AbsRollupUserLogic.createChallenge(address[2],uint64[2],MachineStatus[2],GlobalState[2],uint64,bytes32,uint256[2],bytes32[2])](src/rollup/RollupUserLogic.sol#L291-L364):\n\tExternal calls:\n\t- [challengeIndex = createChallengeHelper(stakers,machineStatuses,globalStates,numBlocks,wasmModuleRoots,(commonEndBlock - proposedBlocks[0]) * ETH_POS_BLOCK_TIME,(commonEndBlock - proposedBlocks[1]) * ETH_POS_BLOCK_TIME)](src/rollup/RollupUserLogic.sol#L350-L359)\n\t\t- [challengeManager.createChallenge(wasmModuleRoots[0],machineStatuses,globalStates,numBlocks,stakers[0],stakers[1],asserterTimeLeft,challengerTimeLeft)](src/rollup/RollupUserLogic.sol#L375-L385)\n\tState variables written after the call(s):\n\t- [challengeStarted(stakers[0],stakers[1],challengeIndex)](src/rollup/RollupUserLogic.sol#L361)\n\t\t- [_stakerMap[staker1].currentChallenge = challenge](src/rollup/RollupCore.sol#L383)\n\t\t- [_stakerMap[staker2].currentChallenge = challenge](src/rollup/RollupCore.sol#L384)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L185-L187)\n\t- [RollupCore.challengeStarted(address,address,uint64)](src/rollup/RollupCore.sol#L378-L385)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L367-L370)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L176-L178)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L542-L550)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L194-L196)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L350-L361)\n\t- [RollupCore.increaseStakeBy(address,uint256)](src/rollup/RollupCore.sol#L392-L398)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L148-L150)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L158-L160)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L167-L169)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L406-L415)\n\t- [RollupCore.stakeOnNode(address,uint64)](src/rollup/RollupCore.sol#L507-L511)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L421-L425)\n\t- [RollupCore.withdrawStaker(address)](src/rollup/RollupCore.sol#L488-L500)\n", "first_markdown_element": "src/rollup/RollupUserLogic.sol#L291-L364", "id": "af65892a907a109b6f58d5895c29425a5794647abc20793593b6461989e07fb6", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransactionImpl", "source_mapping": {"start": 7336, "length": 990, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 11504, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)"}}, {"type": "node", "name": "executeBridgeCall(to,value,data)", "source_mapping": {"start": 8253, "length": 34, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [222], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransactionImpl", "source_mapping": {"start": 7336, "length": 990, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 11504, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "(success,returndata) = bridge.executeCall(to,value,data)", "source_mapping": {"start": 9954, "length": 77, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [275], "starting_column": 9, "ending_column": 86}, "type_specific_fields": {"parent": {"type": "function", "name": "executeBridgeCall", "source_mapping": {"start": 9832, "length": 594, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 11504, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326], "starting_column": 1, "ending_column": 2}}, "signature": "executeBridgeCall(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "context = prevContext", "source_mapping": {"start": 8298, "length": 21, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [224], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransactionImpl", "source_mapping": {"start": 7336, "length": 990, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsOutbox", "source_mapping": {"start": 698, "length": 11504, "filename_relative": "src/bridge/AbsOutbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsOutbox.sol", "filename_short": "src/bridge/AbsOutbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "context"}}], "description": "Reentrancy in AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-225):\n\tExternal calls:\n\t- executeBridgeCall(to,value,data) (src/bridge/AbsOutbox.sol#222)\n\t\t- (success,returndata) = bridge.executeCall(to,value,data) (src/bridge/AbsOutbox.sol#275)\n\tState variables written after the call(s):\n\t- context = prevContext (src/bridge/AbsOutbox.sol#224)\n\tAbsOutbox.context (src/bridge/AbsOutbox.sol#51) can be used in cross function reentrancies:\n\t- AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes) (src/bridge/AbsOutbox.sol#196-225)\n\t- AbsOutbox.initialize(IBridge) (src/bridge/AbsOutbox.sol#63-79)\n\t- AbsOutbox.l2ToL1Block() (src/bridge/AbsOutbox.sol#118-123)\n\t- AbsOutbox.l2ToL1EthBlock() (src/bridge/AbsOutbox.sol#126-131)\n\t- AbsOutbox.l2ToL1OutputId() (src/bridge/AbsOutbox.sol#147-152)\n\t- AbsOutbox.l2ToL1Sender() (src/bridge/AbsOutbox.sol#110-115)\n\t- AbsOutbox.l2ToL1Timestamp() (src/bridge/AbsOutbox.sol#134-139)\n\t- AbsOutbox.postUpgradeInit() (src/bridge/AbsOutbox.sol#81-92)\n", "markdown": "Reentrancy in [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L225):\n\tExternal calls:\n\t- [executeBridgeCall(to,value,data)](src/bridge/AbsOutbox.sol#L222)\n\t\t- [(success,returndata) = bridge.executeCall(to,value,data)](src/bridge/AbsOutbox.sol#L275)\n\tState variables written after the call(s):\n\t- [context = prevContext](src/bridge/AbsOutbox.sol#L224)\n\t[AbsOutbox.context](src/bridge/AbsOutbox.sol#L51) can be used in cross function reentrancies:\n\t- [AbsOutbox.executeTransactionImpl(uint256,address,address,uint256,uint256,uint256,uint256,bytes)](src/bridge/AbsOutbox.sol#L196-L225)\n\t- [AbsOutbox.initialize(IBridge)](src/bridge/AbsOutbox.sol#L63-L79)\n\t- [AbsOutbox.l2ToL1Block()](src/bridge/AbsOutbox.sol#L118-L123)\n\t- [AbsOutbox.l2ToL1EthBlock()](src/bridge/AbsOutbox.sol#L126-L131)\n\t- [AbsOutbox.l2ToL1OutputId()](src/bridge/AbsOutbox.sol#L147-L152)\n\t- [AbsOutbox.l2ToL1Sender()](src/bridge/AbsOutbox.sol#L110-L115)\n\t- [AbsOutbox.l2ToL1Timestamp()](src/bridge/AbsOutbox.sol#L134-L139)\n\t- [AbsOutbox.postUpgradeInit()](src/bridge/AbsOutbox.sol#L81-L92)\n", "first_markdown_element": "src/bridge/AbsOutbox.sol#L196-L225", "id": "426e61b097c321e642232d0d55da1f37bdf8bba9a4d0f425a61dc187192ef9ed", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 14555, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}, {"type": "node", "name": "challengeManager.clearChallenge(chall)", "source_mapping": {"start": 10950, "length": 38, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [271], "starting_column": 13, "ending_column": 51}, "type_specific_fields": {"parent": {"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 14555, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "clearChallenge(stakerA[i])", "source_mapping": {"start": 10870, "length": 26, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [269], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 14555, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "staker.currentChallenge = NO_CHAL_INDEX", "source_mapping": {"start": 13136, "length": 39, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [369], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "clearChallenge", "source_mapping": {"start": 13011, "length": 171, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [367, 368, 369, 370], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "clearChallenge(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "clearChallenge(stakerB[i])", "source_mapping": {"start": 10910, "length": 26, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [270], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "forceResolveChallenge", "source_mapping": {"start": 10412, "length": 631, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 14555, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382], "starting_column": 1, "ending_column": 2}}, "signature": "forceResolveChallenge(address[],address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}, {"type": "node", "name": "staker.currentChallenge = NO_CHAL_INDEX", "source_mapping": {"start": 13136, "length": 39, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [369], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "clearChallenge", "source_mapping": {"start": 13011, "length": 171, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [367, 368, 369, 370], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "clearChallenge(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_stakerMap"}}], "description": "Reentrancy in RollupAdminLogic.forceResolveChallenge(address[],address[]) (src/rollup/RollupAdminLogic.sol#258-274):\n\tExternal calls:\n\t- challengeManager.clearChallenge(chall) (src/rollup/RollupAdminLogic.sol#271)\n\tState variables written after the call(s):\n\t- clearChallenge(stakerA[i]) (src/rollup/RollupAdminLogic.sol#269)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#369)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#185-187)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#367-370)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#176-178)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#542-550)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#194-196)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#350-361)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#148-150)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#158-160)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#167-169)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#406-415)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#421-425)\n\t- clearChallenge(stakerB[i]) (src/rollup/RollupAdminLogic.sol#270)\n\t\t- staker.currentChallenge = NO_CHAL_INDEX (src/rollup/RollupCore.sol#369)\n\tRollupCore._stakerMap (src/rollup/RollupCore.sol#68) can be used in cross function reentrancies:\n\t- RollupCore._stakerMap (src/rollup/RollupCore.sol#68)\n\t- RollupCore.amountStaked(address) (src/rollup/RollupCore.sol#185-187)\n\t- RollupCore.clearChallenge(address) (src/rollup/RollupCore.sol#367-370)\n\t- RollupCore.currentChallenge(address) (src/rollup/RollupCore.sol#176-178)\n\t- RollupCore.deleteStaker(address) (src/rollup/RollupCore.sol#542-550)\n\t- RollupAdminLogic.forceRefundStaker(address[]) (src/rollup/RollupAdminLogic.sol#276-284)\n\t- RollupCore.getStaker(address) (src/rollup/RollupCore.sol#194-196)\n\t- RollupCore.inChallenge(address,address) (src/rollup/RollupCore.sol#350-361)\n\t- RollupCore.isStaked(address) (src/rollup/RollupCore.sol#148-150)\n\t- RollupCore.isStakedOnLatestConfirmed(address) (src/rollup/RollupCore.sol#158-160)\n\t- RollupCore.latestStakedNode(address) (src/rollup/RollupCore.sol#167-169)\n\t- RollupCore.reduceStakeTo(address,uint256) (src/rollup/RollupCore.sol#406-415)\n\t- RollupCore.turnIntoZombie(address) (src/rollup/RollupCore.sol#421-425)\n", "markdown": "Reentrancy in [RollupAdminLogic.forceResolveChallenge(address[],address[])](src/rollup/RollupAdminLogic.sol#L258-L274):\n\tExternal calls:\n\t- [challengeManager.clearChallenge(chall)](src/rollup/RollupAdminLogic.sol#L271)\n\tState variables written after the call(s):\n\t- [clearChallenge(stakerA[i])](src/rollup/RollupAdminLogic.sol#L269)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L369)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L185-L187)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L367-L370)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L176-L178)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L542-L550)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L194-L196)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L350-L361)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L148-L150)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L158-L160)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L167-L169)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L406-L415)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L421-L425)\n\t- [clearChallenge(stakerB[i])](src/rollup/RollupAdminLogic.sol#L270)\n\t\t- [staker.currentChallenge = NO_CHAL_INDEX](src/rollup/RollupCore.sol#L369)\n\t[RollupCore._stakerMap](src/rollup/RollupCore.sol#L68) can be used in cross function reentrancies:\n\t- [RollupCore._stakerMap](src/rollup/RollupCore.sol#L68)\n\t- [RollupCore.amountStaked(address)](src/rollup/RollupCore.sol#L185-L187)\n\t- [RollupCore.clearChallenge(address)](src/rollup/RollupCore.sol#L367-L370)\n\t- [RollupCore.currentChallenge(address)](src/rollup/RollupCore.sol#L176-L178)\n\t- [RollupCore.deleteStaker(address)](src/rollup/RollupCore.sol#L542-L550)\n\t- [RollupAdminLogic.forceRefundStaker(address[])](src/rollup/RollupAdminLogic.sol#L276-L284)\n\t- [RollupCore.getStaker(address)](src/rollup/RollupCore.sol#L194-L196)\n\t- [RollupCore.inChallenge(address,address)](src/rollup/RollupCore.sol#L350-L361)\n\t- [RollupCore.isStaked(address)](src/rollup/RollupCore.sol#L148-L150)\n\t- [RollupCore.isStakedOnLatestConfirmed(address)](src/rollup/RollupCore.sol#L158-L160)\n\t- [RollupCore.latestStakedNode(address)](src/rollup/RollupCore.sol#L167-L169)\n\t- [RollupCore.reduceStakeTo(address,uint256)](src/rollup/RollupCore.sol#L406-L415)\n\t- [RollupCore.turnIntoZombie(address)](src/rollup/RollupCore.sol#L421-L425)\n", "first_markdown_element": "src/rollup/RollupAdminLogic.sol#L258-L274", "id": "2e21893be44131693ea2dfb272622853fa44deea082e4c78e0bbd132c84af93e", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "u64Vals", "source_mapping": {"start": 6924, "length": 24, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [226], "starting_column": 9, "ending_column": 33}, "type_specific_fields": {"parent": {"type": "function", "name": "globalState", "source_mapping": {"start": 6617, "length": 684, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Deserialize", "source_mapping": {"start": 450, "length": 9161, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302], "starting_column": 1, "ending_column": 2}}, "signature": "globalState(bytes,uint256)"}}}}], "description": "Deserialize.globalState(bytes,uint256).u64Vals (src/state/Deserialize.sol#226) is a local variable never initialized\n", "markdown": "[Deserialize.globalState(bytes,uint256).u64Vals](src/state/Deserialize.sol#L226) is a local variable never initialized\n", "first_markdown_element": "src/state/Deserialize.sol#L226", "id": "b49e20832cf227724d4b048fc859ce00efa36bda00bb2d354df6861b1e5b65c8", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "funcIdx", "source_mapping": {"start": 6151, "length": 14, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [194], "starting_column": 9, "ending_column": 23}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 5971, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).funcIdx (src/osp/OneStepProver0.sol#194) is a local variable never initialized\n", "markdown": "[OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).funcIdx](src/osp/OneStepProver0.sol#L194) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L194", "id": "0b3ea27e34dd552b3d33e544c7732699f56da1be9d675526040264c6f35cf115", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "sourceBits", "source_mapping": {"start": 12021, "length": 16, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [400], "starting_column": 9, "ending_column": 25}, "type_specific_fields": {"parent": {"type": "function", "name": "executeExtendSameType", "source_mapping": {"start": 11827, "length": 1476, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMath", "source_mapping": {"start": 362, "length": 16325, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524], "starting_column": 1, "ending_column": 2}}, "signature": "executeExtendSameType(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).sourceBits (src/osp/OneStepProverMath.sol#400) is a local variable never initialized\n", "markdown": "[OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).sourceBits](src/osp/OneStepProverMath.sol#L400) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMath.sol#L400", "id": "7e6b4db4655b21a377a13a4c03fdcc62f8c4e56c5ecdf979c82afb0985a1fac5", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "part", "source_mapping": {"start": 1123, "length": 17, "filename_relative": "src/osp/HashProofHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", "filename_short": "src/osp/HashProofHelper.sol", "is_dependency": false, "lines": [38], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "proveWithFullPreimage", "source_mapping": {"start": 954, "length": 572, "filename_relative": "src/osp/HashProofHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", "filename_short": "src/osp/HashProofHelper.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "HashProofHelper", "source_mapping": {"start": 388, "length": 5264, "filename_relative": "src/osp/HashProofHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", "filename_short": "src/osp/HashProofHelper.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154], "starting_column": 1, "ending_column": 2}}, "signature": "proveWithFullPreimage(bytes,uint64)"}}}}], "description": "HashProofHelper.proveWithFullPreimage(bytes,uint64).part (src/osp/HashProofHelper.sol#38) is a local variable never initialized\n", "markdown": "[HashProofHelper.proveWithFullPreimage(bytes,uint64).part](src/osp/HashProofHelper.sol#L38) is a local variable never initialized\n", "first_markdown_element": "src/osp/HashProofHelper.sol#L38", "id": "9f6b190b96895f4cfb0f3db956545a55f4132aa16c8af057e7257d7fd2c5de43", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "ty", "source_mapping": {"start": 1685, "length": 12, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [49], "starting_column": 9, "ending_column": 21}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1507, "length": 4594, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProverMemory.sol#49) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProverMemory.sol#L49) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L49", "id": "d44b109a885f9f18431fcbd810bf7f45b9f86b4749430739056c0786ab2d150e", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "impl", "source_mapping": {"start": 11151, "length": 120, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [296, 297, 298], "starting_column": 9, "ending_column": 22}, "type_specific_fields": {"parent": {"type": "function", "name": "executeOneStep", "source_mapping": {"start": 10780, "length": 1055, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProverMemory.sol#296-298) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProverMemory.sol#L296-L298) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L296-L298", "id": "c0081c68be4899b530be0e0720e9713a3d42b71364ad4392c42fd165ec162d1e", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "beforeAcc", "source_mapping": {"start": 11222, "length": 17, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [278], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "validateDelayedInbox", "source_mapping": {"start": 10970, "length": 916, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes).beforeAcc (src/osp/OneStepProverHostIo.sol#278) is a local variable never initialized\n", "markdown": "[OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes).beforeAcc](src/osp/OneStepProverHostIo.sol#L278) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L278", "id": "dab8df6b27e88ad0e415842d20e13cd455e0d5f0c84fa74d2906eefd6d1e06f0", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "impl", "source_mapping": {"start": 14734, "length": 120, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [477, 478, 479], "starting_column": 9, "ending_column": 22}, "type_specific_fields": {"parent": {"type": "function", "name": "executeOneStep", "source_mapping": {"start": 14363, "length": 2322, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMath", "source_mapping": {"start": 362, "length": 16325, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524], "starting_column": 1, "ending_column": 2}}, "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMath.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProverMath.sol#477-479) is a local variable never initialized\n", "markdown": "[OneStepProverMath.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProverMath.sol#L477-L479) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMath.sol#L477-L479", "id": "7bb129f3bd93db0e9c1579c8ab353fe86d0d54b40d421f4a568ab9279ce8b6cb", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "internalStack", "source_mapping": {"start": 1959, "length": 31, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [63], "starting_column": 9, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "getStartMachineHash", "source_mapping": {"start": 1364, "length": 1078, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 4325, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 1, "ending_column": 2}}, "signature": "getStartMachineHash(bytes32,bytes32)"}}}}], "description": "ChallengeLib.getStartMachineHash(bytes32,bytes32).internalStack (src/challenge/ChallengeLib.sol#63) is a local variable never initialized\n", "markdown": "[ChallengeLib.getStartMachineHash(bytes32,bytes32).internalStack](src/challenge/ChallengeLib.sol#L63) is a local variable never initialized\n", "first_markdown_element": "src/challenge/ChallengeLib.sol#L63", "id": "2b6e1af0735464f525ca02dac16210c75f5e60fdd4f5020e646e82eccdf94e2a", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "frameStack", "source_mapping": {"start": 2000, "length": 34, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [64], "starting_column": 9, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "getStartMachineHash", "source_mapping": {"start": 1364, "length": 1078, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ChallengeLib", "source_mapping": {"start": 272, "length": 4325, "filename_relative": "src/challenge/ChallengeLib.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/challenge/ChallengeLib.sol", "filename_short": "src/challenge/ChallengeLib.sol", "is_dependency": false, "lines": [10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133], "starting_column": 1, "ending_column": 2}}, "signature": "getStartMachineHash(bytes32,bytes32)"}}}}], "description": "ChallengeLib.getStartMachineHash(bytes32,bytes32).frameStack (src/challenge/ChallengeLib.sol#64) is a local variable never initialized\n", "markdown": "[ChallengeLib.getStartMachineHash(bytes32,bytes32).frameStack](src/challenge/ChallengeLib.sol#L64) is a local variable never initialized\n", "first_markdown_element": "src/challenge/ChallengeLib.sol#L64", "id": "e2c13e88a674b7d15f66c38811493b28e3d768158293153c3761365faf8e45c7", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "signed", "source_mapping": {"start": 1734, "length": 11, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [51], "starting_column": 9, "ending_column": 20}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1507, "length": 4594, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).signed (src/osp/OneStepProverMemory.sol#51) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).signed](src/osp/OneStepProverMemory.sol#L51) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L51", "id": "494ad26e42522ed318b7143deadf6e22863a94ac35e1bc7e431f680c09e99249", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "extracted", "source_mapping": {"start": 5123, "length": 22, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [147], "starting_column": 9, "ending_column": 31}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReadPreImage", "source_mapping": {"start": 4302, "length": 5772, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes).extracted (src/osp/OneStepProverHostIo.sol#147) is a local variable never initialized\n", "markdown": "[OneStepProverHostIo.executeReadPreImage(ExecutionContext,Machine,Module,Instruction,bytes).extracted](src/osp/OneStepProverHostIo.sol#L147) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L147", "id": "b8f149ef07d9b5bf6a4fd2772d951ef00e1136d5728509097c74a6d35fb7419a", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "delayedAcc", "source_mapping": {"start": 10502, "length": 18, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [258], "starting_column": 9, "ending_column": 27}, "type_specific_fields": {"parent": {"type": "function", "name": "validateSequencerInbox", "source_mapping": {"start": 10080, "length": 884, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).delayedAcc (src/osp/OneStepProverHostIo.sol#258) is a local variable never initialized\n", "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).delayedAcc](src/osp/OneStepProverHostIo.sol#L258) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L258", "id": "a4af275d7732b756f493da186504395ee7b6705d359094ed504be4cb2382a71f", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "state256", "source_mapping": {"start": 4683, "length": 27, "filename_relative": "src/osp/HashProofHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", "filename_short": "src/osp/HashProofHelper.sol", "is_dependency": false, "lines": [127], "starting_column": 13, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "keccakUpdate", "source_mapping": {"start": 3663, "length": 1486, "filename_relative": "src/osp/HashProofHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", "filename_short": "src/osp/HashProofHelper.sol", "is_dependency": false, "lines": [99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "HashProofHelper", "source_mapping": {"start": 388, "length": 5264, "filename_relative": "src/osp/HashProofHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/HashProofHelper.sol", "filename_short": "src/osp/HashProofHelper.sol", "is_dependency": false, "lines": [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154], "starting_column": 1, "ending_column": 2}}, "signature": "keccakUpdate(HashProofHelper.KeccakState,bytes,bool)"}}}}], "description": "HashProofHelper.keccakUpdate(HashProofHelper.KeccakState,bytes,bool).state256 (src/osp/HashProofHelper.sol#127) is a local variable never initialized\n", "markdown": "[HashProofHelper.keccakUpdate(HashProofHelper.KeccakState,bytes,bool).state256](src/osp/HashProofHelper.sol#L127) is a local variable never initialized\n", "first_markdown_element": "src/osp/HashProofHelper.sol#L127", "id": "b10eafcd668276e8f081740d67fa003ef0534d1520e371c18e96833214fc3ff2", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "beforeAcc", "source_mapping": {"start": 10475, "length": 17, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [257], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "validateSequencerInbox", "source_mapping": {"start": 10080, "length": 884, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).beforeAcc (src/osp/OneStepProverHostIo.sol#257) is a local variable never initialized\n", "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes).beforeAcc](src/osp/OneStepProverHostIo.sol#L257) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L257", "id": "93458ecce4030168b57a5b4b9bddf11e556bda0b87b21572901703776f8a4a4d", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "memoryFrame", "source_mapping": {"start": 21082, "length": 38, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [575], "starting_column": 9, "ending_column": 47}, "type_specific_fields": {"parent": {"type": "function", "name": "createNewNode", "source_mapping": {"start": 20652, "length": 4618, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCore", "source_mapping": {"start": 685, "length": 24587, "filename_relative": "src/rollup/RollupCore.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCore.sol", "filename_short": "src/rollup/RollupCore.sol", "is_dependency": false, "lines": [25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678], "starting_column": 1, "ending_column": 2}}, "signature": "createNewNode(Assertion,uint64,uint256,bytes32)"}}}}], "description": "RollupCore.createNewNode(Assertion,uint64,uint256,bytes32).memoryFrame (src/rollup/RollupCore.sol#575) is a local variable never initialized\n", "markdown": "[RollupCore.createNewNode(Assertion,uint64,uint256,bytes32).memoryFrame](src/rollup/RollupCore.sol#L575) is a local variable never initialized\n", "first_markdown_element": "src/rollup/RollupCore.sol#L575", "id": "22d3572f5fd9e44b1a0e455ebf3a57c571e31a392c713a5313ed78cdb5bdd79d", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "bounds", "source_mapping": {"start": 7906, "length": 32, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [214], "starting_column": 9, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "function", "name": "getTimeBounds", "source_mapping": {"start": 7813, "length": 740, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "SequencerInbox", "source_mapping": {"start": 1909, "length": 29266, "filename_relative": "src/bridge/SequencerInbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/SequencerInbox.sol", "filename_short": "src/bridge/SequencerInbox.sol", "is_dependency": false, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805], "starting_column": 1, "ending_column": 2}}, "signature": "getTimeBounds()"}}}}], "description": "SequencerInbox.getTimeBounds().bounds (src/bridge/SequencerInbox.sol#214) is a local variable never initialized\n", "markdown": "[SequencerInbox.getTimeBounds().bounds](src/bridge/SequencerInbox.sol#L214) is a local variable never initialized\n", "first_markdown_element": "src/bridge/SequencerInbox.sol#L214", "id": "a9ab2d44723c17809429f069881bb97a07e53966e1c848cc3083baebb7d26ceb", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "ty", "source_mapping": {"start": 6351, "length": 12, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [171], "starting_column": 13, "ending_column": 25}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryStore", "source_mapping": {"start": 6107, "length": 3663, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProverMemory.sol#171) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProverMemory.sol#L171) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L171", "id": "565f5e19fbe1a69065e4ef47ec789739a56008570ac09324d5995e298652f2be", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "ty", "source_mapping": {"start": 1158, "length": 12, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [44], "starting_column": 9, "ending_column": 21}, "type_specific_fields": {"parent": {"type": "function", "name": "executeConstPush", "source_mapping": {"start": 954, "length": 732, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeConstPush(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeConstPush(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProver0.sol#44) is a local variable never initialized\n", "markdown": "[OneStepProver0.executeConstPush(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProver0.sol#L44) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L44", "id": "f3a4bd8740f9565ecd548a3027588ef6a9ab1fab50a47ee9989dff0a450c0d81", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "emptyGlobalState", "source_mapping": {"start": 3120, "length": 35, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [78], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "createInitialNode", "source_mapping": {"start": 3046, "length": 662, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupAdminLogic", "source_mapping": {"start": 590, "length": 14555, "filename_relative": "src/rollup/RollupAdminLogic.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupAdminLogic.sol", "filename_short": "src/rollup/RollupAdminLogic.sol", "is_dependency": false, "lines": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382], "starting_column": 1, "ending_column": 2}}, "signature": "createInitialNode()"}}}}], "description": "RollupAdminLogic.createInitialNode().emptyGlobalState (src/rollup/RollupAdminLogic.sol#78) is a local variable never initialized\n", "markdown": "[RollupAdminLogic.createInitialNode().emptyGlobalState](src/rollup/RollupAdminLogic.sol#L78) is a local variable never initialized\n", "first_markdown_element": "src/rollup/RollupAdminLogic.sol#L78", "id": "b104a1c9b21db741f0eff33cad88bcd28b01251cf7cb2ac69372f55f19cc56b2", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "lastProvedLeafContents", "source_mapping": {"start": 4304, "length": 30, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [121], "starting_column": 9, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1507, "length": 4594, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).lastProvedLeafContents (src/osp/OneStepProverMemory.sol#121) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).lastProvedLeafContents](src/osp/OneStepProverMemory.sol#L121) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L121", "id": "162cb33b9534bc21104309b21e51a798ebe240718727aed3b174e3802daec4c1", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "bytes32Vals", "source_mapping": {"start": 6885, "length": 29, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [225], "starting_column": 9, "ending_column": 38}, "type_specific_fields": {"parent": {"type": "function", "name": "globalState", "source_mapping": {"start": 6617, "length": 684, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Deserialize", "source_mapping": {"start": 450, "length": 9161, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302], "starting_column": 1, "ending_column": 2}}, "signature": "globalState(bytes,uint256)"}}}}], "description": "Deserialize.globalState(bytes,uint256).bytes32Vals (src/state/Deserialize.sol#225) is a local variable never initialized\n", "markdown": "[Deserialize.globalState(bytes,uint256).bytes32Vals](src/state/Deserialize.sol#L225) is a local variable never initialized\n", "first_markdown_element": "src/state/Deserialize.sol#L225", "id": "347c23c28d92854b0181184cb13878043e27048bb6b0d14e6f9f24d733477f80", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "status", "source_mapping": {"start": 7495, "length": 20, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [243], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "machine", "source_mapping": {"start": 7307, "length": 1811, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Deserialize", "source_mapping": {"start": 450, "length": 9161, "filename_relative": "src/state/Deserialize.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/state/Deserialize.sol", "filename_short": "src/state/Deserialize.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302], "starting_column": 1, "ending_column": 2}}, "signature": "machine(bytes,uint256)"}}}}], "description": "Deserialize.machine(bytes,uint256).status (src/state/Deserialize.sol#243) is a local variable never initialized\n", "markdown": "[Deserialize.machine(bytes,uint256).status](src/state/Deserialize.sol#L243) is a local variable never initialized\n", "first_markdown_element": "src/state/Deserialize.sol#L243", "id": "b0bb66b3aaa5e859564fcf69ddd9c518a2dff55461b2e23469e57954ece88023", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "sourceTy", "source_mapping": {"start": 13504, "length": 18, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [443], "starting_column": 9, "ending_column": 27}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReinterpret", "source_mapping": {"start": 13309, "length": 1048, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMath", "source_mapping": {"start": 362, "length": 16325, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524], "starting_column": 1, "ending_column": 2}}, "signature": "executeReinterpret(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).sourceTy (src/osp/OneStepProverMath.sol#443) is a local variable never initialized\n", "markdown": "[OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).sourceTy](src/osp/OneStepProverMath.sol#L443) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMath.sol#L443", "id": "19cc2967641f968047d8174e2ba3152038af798b63c42b1bb55dd59287a923a7", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "writeBytes", "source_mapping": {"start": 6286, "length": 17, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [168], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryStore", "source_mapping": {"start": 6107, "length": 3663, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).writeBytes (src/osp/OneStepProverMemory.sol#168) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).writeBytes](src/osp/OneStepProverMemory.sol#L168) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L168", "id": "f573681c354f3fdccf310c43fad70c2f0994cf3b3de20432e01071bd6a3981de", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "destTy", "source_mapping": {"start": 13478, "length": 16, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [442], "starting_column": 9, "ending_column": 25}, "type_specific_fields": {"parent": {"type": "function", "name": "executeReinterpret", "source_mapping": {"start": 13309, "length": 1048, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMath", "source_mapping": {"start": 362, "length": 16325, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524], "starting_column": 1, "ending_column": 2}}, "signature": "executeReinterpret(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).destTy (src/osp/OneStepProverMath.sol#442) is a local variable never initialized\n", "markdown": "[OneStepProverMath.executeReinterpret(Machine,Module,Instruction,bytes).destTy](src/osp/OneStepProverMath.sol#L442) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMath.sol#L442", "id": "0c40a87502e42085a3fc0a61f202e687aed2386c6fe161376f0f0b2f16a4c9c5", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "ty", "source_mapping": {"start": 11999, "length": 12, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [399], "starting_column": 9, "ending_column": 21}, "type_specific_fields": {"parent": {"type": "function", "name": "executeExtendSameType", "source_mapping": {"start": 11827, "length": 1476, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMath", "source_mapping": {"start": 362, "length": 16325, "filename_relative": "src/osp/OneStepProverMath.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMath.sol", "filename_short": "src/osp/OneStepProverMath.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524], "starting_column": 1, "ending_column": 2}}, "signature": "executeExtendSameType(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).ty (src/osp/OneStepProverMath.sol#399) is a local variable never initialized\n", "markdown": "[OneStepProverMath.executeExtendSameType(Machine,Module,Instruction,bytes).ty](src/osp/OneStepProverMath.sol#L399) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMath.sol#L399", "id": "d5801e7c2f23eb0d6bc004590ab2e75879037d149be714c34ab3b066e1c4b819", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "readBytes", "source_mapping": {"start": 1707, "length": 17, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [50], "starting_column": 9, "ending_column": 26}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1507, "length": 4594, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).readBytes (src/osp/OneStepProverMemory.sol#50) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes).readBytes](src/osp/OneStepProverMemory.sol#L50) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L50", "id": "09c1e38d961440cc644e890e7e165ecd2073dd96901441ae9b2b9c939257cc6f", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "frame", "source_mapping": {"start": 1824, "length": 28, "filename_relative": "src/rollup/BridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/BridgeCreator.sol", "filename_short": "src/rollup/BridgeCreator.sol", "is_dependency": false, "lines": [58], "starting_column": 9, "ending_column": 37}, "type_specific_fields": {"parent": {"type": "function", "name": "_createBridge", "source_mapping": {"start": 1674, "length": 1017, "filename_relative": "src/rollup/BridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/BridgeCreator.sol", "filename_short": "src/rollup/BridgeCreator.sol", "is_dependency": false, "lines": [54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "BridgeCreator", "source_mapping": {"start": 676, "length": 3074, "filename_relative": "src/rollup/BridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/BridgeCreator.sol", "filename_short": "src/rollup/BridgeCreator.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106], "starting_column": 1, "ending_column": 2}}, "signature": "_createBridge(address,BridgeCreator.BridgeContracts)"}}}}], "description": "BridgeCreator._createBridge(address,BridgeCreator.BridgeContracts).frame (src/rollup/BridgeCreator.sol#58) is a local variable never initialized\n", "markdown": "[BridgeCreator._createBridge(address,BridgeCreator.BridgeContracts).frame](src/rollup/BridgeCreator.sol#L58) is a local variable never initialized\n", "first_markdown_element": "src/rollup/BridgeCreator.sol#L58", "id": "4c4998aea345771ab95ff74b35dc261d24cfbcc254dff7368e71dcded4e6b088", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "impl", "source_mapping": {"start": 14921, "length": 120, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [444, 445, 446], "starting_column": 9, "ending_column": 22}, "type_specific_fields": {"parent": {"type": "function", "name": "executeOneStep", "source_mapping": {"start": 14550, "length": 2514, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProver0.sol#444-446) is a local variable never initialized\n", "markdown": "[OneStepProver0.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProver0.sol#L444-L446) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L444-L446", "id": "bf9df19313618417269a105ecd5b4cf0c22530264701877ed554d77b7886b033", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "impl", "source_mapping": {"start": 16165, "length": 193, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [425, 426, 427, 428, 429, 430, 431], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "executeOneStep", "source_mapping": {"start": 15786, "length": 1210, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverHostIo.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl (src/osp/OneStepProverHostIo.sol#425-431) is a local variable never initialized\n", "markdown": "[OneStepProverHostIo.executeOneStep(ExecutionContext,Machine,Module,Instruction,bytes).impl](src/osp/OneStepProverHostIo.sol#L425-L431) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L425-L431", "id": "fd4baa84dfad7402f9c850b2abb8c959fa89f0a0f27d7a4d985504eafa596460", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "node", "source_mapping": {"start": 2394, "length": 16, "filename_relative": "src/rollup/Node.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/Node.sol", "filename_short": "src/rollup/Node.sol", "is_dependency": false, "lines": [69], "starting_column": 9, "ending_column": 25}, "type_specific_fields": {"parent": {"type": "function", "name": "createNode", "source_mapping": {"start": 2149, "length": 636, "filename_relative": "src/rollup/Node.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/Node.sol", "filename_short": "src/rollup/Node.sol", "is_dependency": false, "lines": [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "NodeLib", "source_mapping": {"start": 1752, "length": 2186, "filename_relative": "src/rollup/Node.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/Node.sol", "filename_short": "src/rollup/Node.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113], "starting_column": 1, "ending_column": 2}}, "signature": "createNode(bytes32,bytes32,bytes32,uint64,uint64,bytes32)"}}}}], "description": "NodeLib.createNode(bytes32,bytes32,bytes32,uint64,uint64,bytes32).node (src/rollup/Node.sol#69) is a local variable never initialized\n", "markdown": "[NodeLib.createNode(bytes32,bytes32,bytes32,uint64,uint64,bytes32).node](src/rollup/Node.sol#L69) is a local variable never initialized\n", "first_markdown_element": "src/rollup/Node.sol#L69", "id": "2fbc6226a17bd364563caa94e1c97858f74f9cd682e6c1096bb46cf3ce114daf", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "lastProvedMerkle", "source_mapping": {"start": 8359, "length": 35, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [220], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryStore", "source_mapping": {"start": 6107, "length": 3663, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryStore(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedMerkle (src/osp/OneStepProverMemory.sol#220) is a local variable never initialized\n", "markdown": "[OneStepProverMemory.executeMemoryStore(Machine,Module,Instruction,bytes).lastProvedMerkle](src/osp/OneStepProverMemory.sol#L220) is a local variable never initialized\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L220", "id": "970df6569838c064f8c23181f94aa7553a41b5a23c53e802d29cd0162f7d4f2b", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "initialize", "source_mapping": {"start": 969, "length": 447, "filename_relative": "src/bridge/ERC20Inbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", "filename_short": "src/bridge/ERC20Inbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Inbox", "source_mapping": {"start": 789, "length": 4172, "filename_relative": "src/bridge/ERC20Inbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", "filename_short": "src/bridge/ERC20Inbox.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(IBridge,ISequencerInbox)"}}, {"type": "node", "name": "IERC20(nativeToken).approve(address(bridge),type()(uint256).max)", "source_mapping": {"start": 1346, "length": 63, "filename_relative": "src/bridge/ERC20Inbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", "filename_short": "src/bridge/ERC20Inbox.sol", "is_dependency": false, "lines": [36], "starting_column": 9, "ending_column": 72}, "type_specific_fields": {"parent": {"type": "function", "name": "initialize", "source_mapping": {"start": 969, "length": 447, "filename_relative": "src/bridge/ERC20Inbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", "filename_short": "src/bridge/ERC20Inbox.sol", "is_dependency": false, "lines": [27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Inbox", "source_mapping": {"start": 789, "length": 4172, "filename_relative": "src/bridge/ERC20Inbox.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/ERC20Inbox.sol", "filename_short": "src/bridge/ERC20Inbox.sol", "is_dependency": false, "lines": [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144], "starting_column": 1, "ending_column": 2}}, "signature": "initialize(IBridge,ISequencerInbox)"}}}}], "description": "ERC20Inbox.initialize(IBridge,ISequencerInbox) (src/bridge/ERC20Inbox.sol#27-37) ignores return value by IERC20(nativeToken).approve(address(bridge),type()(uint256).max) (src/bridge/ERC20Inbox.sol#36)\n", "markdown": "[ERC20Inbox.initialize(IBridge,ISequencerInbox)](src/bridge/ERC20Inbox.sol#L27-L37) ignores return value by [IERC20(nativeToken).approve(address(bridge),type()(uint256).max)](src/bridge/ERC20Inbox.sol#L36)\n", "first_markdown_element": "src/bridge/ERC20Inbox.sol#L27-L37", "id": "02a7ce9e0718ec474776a6c6466ec2120335f60d5d537c682d2d0b48b02e328e", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "refundsGas", "source_mapping": {"start": 721, "length": 2143, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefundEnabled", "source_mapping": {"start": 309, "length": 2557, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "starting_column": 1, "ending_column": 2}}, "signature": "refundsGas(IGasRefunder,IReader4844)"}}, {"type": "node", "name": "gasRefunder.onGasSpent(address(msg.sender),startGasLeft - gasleft()(),calldataSize)", "source_mapping": {"start": 2764, "length": 83, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [49], "starting_column": 13, "ending_column": 96}, "type_specific_fields": {"parent": {"type": "function", "name": "refundsGas", "source_mapping": {"start": 721, "length": 2143, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "GasRefundEnabled", "source_mapping": {"start": 309, "length": 2557, "filename_relative": "src/libraries/GasRefundEnabled.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/GasRefundEnabled.sol", "filename_short": "src/libraries/GasRefundEnabled.sol", "is_dependency": false, "lines": [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52], "starting_column": 1, "ending_column": 2}}, "signature": "refundsGas(IGasRefunder,IReader4844)"}}}}], "description": "GasRefundEnabled.refundsGas(IGasRefunder,IReader4844) (src/libraries/GasRefundEnabled.sol#17-51) ignores return value by gasRefunder.onGasSpent(address(msg.sender),startGasLeft - gasleft()(),calldataSize) (src/libraries/GasRefundEnabled.sol#49)\n", "markdown": "[GasRefundEnabled.refundsGas(IGasRefunder,IReader4844)](src/libraries/GasRefundEnabled.sol#L17-L51) ignores return value by [gasRefunder.onGasSpent(address(msg.sender),startGasLeft - gasleft()(),calldataSize)](src/libraries/GasRefundEnabled.sol#L49)\n", "first_markdown_element": "src/libraries/GasRefundEnabled.sol#L17-L51", "id": "dd7d7f9070537fa235923aa2a3f52a440202d201a28033828f3cfb6418df3676", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeDrop", "source_mapping": {"start": 1692, "length": 185, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [60, 61, 62, 63, 64, 65, 66, 67], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeDrop(Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "mach.valueStack.pop()", "source_mapping": {"start": 1849, "length": 21, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [66], "starting_column": 9, "ending_column": 30}, "type_specific_fields": {"parent": {"type": "function", "name": "executeDrop", "source_mapping": {"start": 1692, "length": 185, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [60, 61, 62, 63, 64, 65, 66, 67], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeDrop(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeDrop(Machine,Module,Instruction,bytes) (src/osp/OneStepProver0.sol#60-67) ignores return value by mach.valueStack.pop() (src/osp/OneStepProver0.sol#66)\n", "markdown": "[OneStepProver0.executeDrop(Machine,Module,Instruction,bytes)](src/osp/OneStepProver0.sol#L60-L67) ignores return value by [mach.valueStack.pop()](src/osp/OneStepProver0.sol#L66)\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L60-L67", "id": "12bf5611aeaa1ce8c4037f42705c38eef1245905dff7bc27604a5c8290de634b", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "validateSequencerInbox", "source_mapping": {"start": 10080, "length": 884, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)"}}, {"type": "node", "name": "(afterDelayedMsg,None) = Deserialize.u64(message,32)", "source_mapping": {"start": 10365, "length": 50, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [255], "starting_column": 9, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "validateSequencerInbox", "source_mapping": {"start": 10080, "length": 884, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateSequencerInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#247-269) ignores return value by (afterDelayedMsg,None) = Deserialize.u64(message,32) (src/osp/OneStepProverHostIo.sol#255)\n", "markdown": "[OneStepProverHostIo.validateSequencerInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L247-L269) ignores return value by [(afterDelayedMsg,None) = Deserialize.u64(message,32)](src/osp/OneStepProverHostIo.sol#L255)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L247-L269", "id": "8e9dac288df9bcd5afd57ce5afd7d08f223411c09b70bf9486fbdce8c99e8a4e", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "validateDelayedInbox", "source_mapping": {"start": 10970, "length": 916, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)"}}, {"type": "node", "name": "(sender,None) = Deserialize.u256(message,1)", "source_mapping": {"start": 11493, "length": 41, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [287], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "validateDelayedInbox", "source_mapping": {"start": 10970, "length": 916, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverHostIo", "source_mapping": {"start": 433, "length": 16565, "filename_relative": "src/osp/OneStepProverHostIo.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverHostIo.sol", "filename_short": "src/osp/OneStepProverHostIo.sol", "is_dependency": false, "lines": [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450], "starting_column": 1, "ending_column": 2}}, "signature": "validateDelayedInbox(ExecutionContext,uint64,bytes)"}}}}], "description": "OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes) (src/osp/OneStepProverHostIo.sol#271-296) ignores return value by (sender,None) = Deserialize.u256(message,1) (src/osp/OneStepProverHostIo.sol#287)\n", "markdown": "[OneStepProverHostIo.validateDelayedInbox(ExecutionContext,uint64,bytes)](src/osp/OneStepProverHostIo.sol#L271-L296) ignores return value by [(sender,None) = Deserialize.u256(message,1)](src/osp/OneStepProverHostIo.sol#L287)\n", "first_markdown_element": "src/osp/OneStepProverHostIo.sol#L271-L296", "id": "06e60ad1cf7b2c761d007d2174aab9de589f5fb917c2547582fac31386b8bf17", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1507, "length": 4594, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}, {"type": "node", "name": "(lastProvedLeafContents,proofOffset,None) = ModuleMemoryLib.proveLeaf(mod.moduleMemory,leafIdx,proof,proofOffset)", "source_mapping": {"start": 4658, "length": 212, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [128, 129, 130, 131, 132, 133], "starting_column": 17, "ending_column": 18}, "type_specific_fields": {"parent": {"type": "function", "name": "executeMemoryLoad", "source_mapping": {"start": 1507, "length": 4594, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProverMemory", "source_mapping": {"start": 368, "length": 11469, "filename_relative": "src/osp/OneStepProverMemory.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProverMemory.sol", "filename_short": "src/osp/OneStepProverMemory.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313], "starting_column": 1, "ending_column": 2}}, "signature": "executeMemoryLoad(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes) (src/osp/OneStepProverMemory.sol#43-160) ignores return value by (lastProvedLeafContents,proofOffset,None) = ModuleMemoryLib.proveLeaf(mod.moduleMemory,leafIdx,proof,proofOffset) (src/osp/OneStepProverMemory.sol#128-133)\n", "markdown": "[OneStepProverMemory.executeMemoryLoad(Machine,Module,Instruction,bytes)](src/osp/OneStepProverMemory.sol#L43-L160) ignores return value by [(lastProvedLeafContents,proofOffset,None) = ModuleMemoryLib.proveLeaf(mod.moduleMemory,leafIdx,proof,proofOffset)](src/osp/OneStepProverMemory.sol#L128-L133)\n", "first_markdown_element": "src/osp/OneStepProverMemory.sol#L43-L160", "id": "ab8910cb7fbab9ad8b4fcabf66567df3327f36c637f318ceaf3df0ea258b2a1d", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}, {"type": "node", "name": "IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmount,data:})", "source_mapping": {"start": 9018, "length": 434, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72], "starting_column": 13, "ending_column": 15}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) ignores return value by IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmount,data:}) (src/rollup/DeployHelper.sol#62-72)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) ignores return value by [IERC20Inbox(inbox).createRetryableTicket({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,tokenTotalFeeAmount:feeAmount,data:})](src/rollup/DeployHelper.sol#L62-L72)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", "id": "b577066c87e9c3fd8db423a41c6f80870945020f8f55d5dd38041b1894b9af5a", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})", "source_mapping": {"start": 9483, "length": 399, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [74, 75, 76, 77, 78, 79, 80, 81, 82, 83], "starting_column": 13, "ending_column": 15}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) ignores return value by IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:}) (src/rollup/DeployHelper.sol#74-83)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) ignores return value by [IInbox(inbox).createRetryableTicket{value: feeAmount}({to:_l2Address,l2CallValue:_value,maxSubmissionCost:submissionCost,excessFeeRefundAddress:msg.sender,callValueRefundAddress:msg.sender,gasLimit:GASLIMIT,maxFeePerGas:maxFeePerGas,data:})](src/rollup/DeployHelper.sol#L74-L83)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", "id": "08d31a6c6d79a1ee2e015f8b5e35c4ed5b9293c91824de95a577f6e382ac73bd", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}, {"type": "node", "name": "IInboxBase(inbox).sendL2Message(payload)", "source_mapping": {"start": 9959, "length": 40, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [86], "starting_column": 9, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "_fundAndDeploy", "source_mapping": {"start": 8513, "length": 1493, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DeployHelper", "source_mapping": {"start": 513, "length": 11093, "filename_relative": "src/rollup/DeployHelper.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/DeployHelper.sol", "filename_short": "src/rollup/DeployHelper.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], "starting_column": 1, "ending_column": 2}}, "signature": "_fundAndDeploy(address,uint256,address,bytes,bool,uint256)"}}}}], "description": "DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256) (src/rollup/DeployHelper.sol#46-87) ignores return value by IInboxBase(inbox).sendL2Message(payload) (src/rollup/DeployHelper.sol#86)\n", "markdown": "[DeployHelper._fundAndDeploy(address,uint256,address,bytes,bool,uint256)](src/rollup/DeployHelper.sol#L46-L87) ignores return value by [IInboxBase(inbox).sendL2Message(payload)](src/rollup/DeployHelper.sol#L86)\n", "first_markdown_element": "src/rollup/DeployHelper.sol#L46-L87", "id": "b4a84cbb13a9ec2260cb5bdf5bf9641492e27e04195d23e819c7abac1a906e14", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_upgradeSecondaryToAndCall", "source_mapping": {"start": 2306, "length": 313, "filename_relative": "src/libraries/AdminFallbackProxy.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", "filename_short": "src/libraries/AdminFallbackProxy.sol", "is_dependency": false, "lines": [60, 61, 62, 63, 64, 65, 66, 67, 68, 69], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DoubleLogicERC1967Upgrade", "source_mapping": {"start": 525, "length": 3364, "filename_relative": "src/libraries/AdminFallbackProxy.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", "filename_short": "src/libraries/AdminFallbackProxy.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98], "starting_column": 1, "ending_column": 2}}, "signature": "_upgradeSecondaryToAndCall(address,bytes,bool)"}}, {"type": "node", "name": "Address.functionDelegateCall(newImplementation,data)", "source_mapping": {"start": 2549, "length": 53, "filename_relative": "src/libraries/AdminFallbackProxy.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", "filename_short": "src/libraries/AdminFallbackProxy.sol", "is_dependency": false, "lines": [67], "starting_column": 13, "ending_column": 66}, "type_specific_fields": {"parent": {"type": "function", "name": "_upgradeSecondaryToAndCall", "source_mapping": {"start": 2306, "length": 313, "filename_relative": "src/libraries/AdminFallbackProxy.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", "filename_short": "src/libraries/AdminFallbackProxy.sol", "is_dependency": false, "lines": [60, 61, 62, 63, 64, 65, 66, 67, 68, 69], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "DoubleLogicERC1967Upgrade", "source_mapping": {"start": 525, "length": 3364, "filename_relative": "src/libraries/AdminFallbackProxy.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/libraries/AdminFallbackProxy.sol", "filename_short": "src/libraries/AdminFallbackProxy.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98], "starting_column": 1, "ending_column": 2}}, "signature": "_upgradeSecondaryToAndCall(address,bytes,bool)"}}}}], "description": "DoubleLogicERC1967Upgrade._upgradeSecondaryToAndCall(address,bytes,bool) (src/libraries/AdminFallbackProxy.sol#60-69) ignores return value by Address.functionDelegateCall(newImplementation,data) (src/libraries/AdminFallbackProxy.sol#67)\n", "markdown": "[DoubleLogicERC1967Upgrade._upgradeSecondaryToAndCall(address,bytes,bool)](src/libraries/AdminFallbackProxy.sol#L60-L69) ignores return value by [Address.functionDelegateCall(newImplementation,data)](src/libraries/AdminFallbackProxy.sol#L67)\n", "first_markdown_element": "src/libraries/AdminFallbackProxy.sol#L60-L69", "id": "47e0b452924c566df231e1282a84ce0091600869b7eac2442aebf277bfcb6455", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}, {"type": "node", "name": "(ethSequencerInbox,ethInbox) = bridgeCreator.ethBasedTemplates()", "source_mapping": {"start": 5121, "length": 115, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [117, 118], "starting_column": 13, "ending_column": 37}, "type_specific_fields": {"parent": {"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}}}], "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (ethSequencerInbox,ethInbox) = bridgeCreator.ethBasedTemplates() (src/rollup/RollupCreator.sol#117-118)\n", "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(ethSequencerInbox,ethInbox) = bridgeCreator.ethBasedTemplates()](src/rollup/RollupCreator.sol#L117-L118)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", "id": "ab1f7532bdfa2da03ac0035addb1594f2610bdbf697232a9b6207e2345bfd5a7", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}, {"type": "node", "name": "(erc20SequencerInbox,erc20Inbox) = bridgeCreator.erc20BasedTemplates()", "source_mapping": {"start": 5509, "length": 121, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [125, 126], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "createRollup", "source_mapping": {"start": 4904, "length": 5018, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RollupCreator", "source_mapping": {"start": 703, "length": 11028, "filename_relative": "src/rollup/RollupCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/rollup/RollupCreator.sol", "filename_short": "src/rollup/RollupCreator.sol", "is_dependency": false, "lines": [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286], "starting_column": 1, "ending_column": 2}}, "signature": "createRollup(RollupCreator.RollupDeploymentParams)"}}}}], "description": "RollupCreator.createRollup(RollupCreator.RollupDeploymentParams) (src/rollup/RollupCreator.sol#110-233) ignores return value by (erc20SequencerInbox,erc20Inbox) = bridgeCreator.erc20BasedTemplates() (src/rollup/RollupCreator.sol#125-126)\n", "markdown": "[RollupCreator.createRollup(RollupCreator.RollupDeploymentParams)](src/rollup/RollupCreator.sol#L110-L233) ignores return value by [(erc20SequencerInbox,erc20Inbox) = bridgeCreator.erc20BasedTemplates()](src/rollup/RollupCreator.sol#L125-L126)\n", "first_markdown_element": "src/rollup/RollupCreator.sol#L110-L233", "id": "66c2e2cbe1d68bc0695a2c75ad2b2ad0c7a15d7d1455bb4ae31a64aeece91d52", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "_activeOutbox", "source_mapping": {"start": 1410, "length": 30, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [45], "starting_column": 5, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsBridge", "source_mapping": {"start": 995, "length": 9716, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308], "starting_column": 1, "ending_column": 2}}}}, {"type": "node", "name": "_activeOutbox = msg.sender", "source_mapping": {"start": 6961, "length": 26, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [218], "starting_column": 9, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCall", "source_mapping": {"start": 6606, "length": 870, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsBridge", "source_mapping": {"start": 995, "length": 9716, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308], "starting_column": 1, "ending_column": 2}}, "signature": "executeCall(address,uint256,bytes)"}}}}, {"type": "node", "name": "_activeOutbox = prevOutbox", "source_mapping": {"start": 7380, "length": 26, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [225], "starting_column": 9, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCall", "source_mapping": {"start": 6606, "length": 870, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "AbsBridge", "source_mapping": {"start": 995, "length": 9716, "filename_relative": "src/bridge/AbsBridge.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/bridge/AbsBridge.sol", "filename_short": "src/bridge/AbsBridge.sol", "is_dependency": false, "lines": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308], "starting_column": 1, "ending_column": 2}}, "signature": "executeCall(address,uint256,bytes)"}}}}], "description": "AbsBridge._activeOutbox (src/bridge/AbsBridge.sol#45) is written in both\n\t_activeOutbox = msg.sender (src/bridge/AbsBridge.sol#218)\n\t_activeOutbox = prevOutbox (src/bridge/AbsBridge.sol#225)\n", "markdown": "[AbsBridge._activeOutbox](src/bridge/AbsBridge.sol#L45) is written in both\n\t[_activeOutbox = msg.sender](src/bridge/AbsBridge.sol#L218)\n\t[_activeOutbox = prevOutbox](src/bridge/AbsBridge.sol#L225)\n", "first_markdown_element": "src/bridge/AbsBridge.sol#L45", "id": "b37c58023a3ec214b040ae7619219597fa970084995f29f74c24648d6f1ba59f", "check": "write-after-write", "impact": "Medium", "confidence": "High"}, {"elements": [{"type": "variable", "name": "offset", "source_mapping": {"start": 6391, "length": 18, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [201], "starting_column": 13, "ending_column": 31}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 5971, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}, {"type": "node", "name": "(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)", "source_mapping": {"start": 7998, "length": 59, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [237], "starting_column": 13, "ending_column": 72}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 5971, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}, {"type": "node", "name": "(functionPointer,offset) = Deserialize.value(proof,offset)", "source_mapping": {"start": 8071, "length": 60, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [238], "starting_column": 13, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "executeCallIndirect", "source_mapping": {"start": 5971, "length": 3565, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "OneStepProver0", "source_mapping": {"start": 362, "length": 16704, "filename_relative": "src/osp/OneStepProver0.sol", "filename_absolute": "/Users/goran/repos/offchain/nitro-contracts/src/osp/OneStepProver0.sol", "filename_short": "src/osp/OneStepProver0.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494], "starting_column": 1, "ending_column": 2}}, "signature": "executeCallIndirect(Machine,Module,Instruction,bytes)"}}}}], "description": "OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset (src/osp/OneStepProver0.sol#201) is written in both\n\t(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset) (src/osp/OneStepProver0.sol#237)\n\t(functionPointer,offset) = Deserialize.value(proof,offset) (src/osp/OneStepProver0.sol#238)\n", "markdown": "[OneStepProver0.executeCallIndirect(Machine,Module,Instruction,bytes).offset](src/osp/OneStepProver0.sol#L201) is written in both\n\t[(elemFuncTypeHash,offset) = Deserialize.b32(proof,offset)](src/osp/OneStepProver0.sol#L237)\n\t[(functionPointer,offset) = Deserialize.value(proof,offset)](src/osp/OneStepProver0.sol#L238)\n", "first_markdown_element": "src/osp/OneStepProver0.sol#L201", "id": "a2b254b166a5aad9092374dafd67aae05d0d84bd0d8079074f9addfc91926e56", "check": "write-after-write", "impact": "Medium", "confidence": "High"}] \ No newline at end of file diff --git a/src/bridge/SequencerInbox.sol b/src/bridge/SequencerInbox.sol index d3d78915..21e14fe1 100644 --- a/src/bridge/SequencerInbox.sol +++ b/src/bridge/SequencerInbox.sol @@ -17,7 +17,6 @@ import { IncorrectMessagePreimage, NotBatchPoster, BadSequencerNumber, - ExpiredEigenDACert, AlreadyValidDASKeyset, NoSuchKeyset, NotForked, @@ -89,7 +88,7 @@ contract SequencerInbox is DelegateCallAware, GasRefundEnabled, ISequencerInbox // GAS_PER_BLOB from EIP-4844 uint256 internal constant GAS_PER_BLOB = 1 << 17; - uint256 internal constant MAX_CERTIFICATE_DRIFT = 100; + uint256 internal constant GAS_PER_SYMBOL_EIGENDA = 1; IOwnable public rollup; @@ -480,21 +479,6 @@ contract SequencerInbox is DelegateCallAware, GasRefundEnabled, ISequencerInbox if (!isBatchPoster[msg.sender]) revert NotBatchPoster(); // Verify that the blob was actually included before continuing rollupManager.verifyBlob(cert.blobHeader, cert.blobVerificationProof); - - // Verify that the certificate is less than 2 epochs old from the L1 reference block number - // This is to prevent timing attacks where the sequencer could submit an expired or close to expired - // certificate which could impact liveness of full nodes as well as the safety of the bridge - if ( - (cert.blobVerificationProof.batchMetadata.batchHeader.referenceBlockNumber + - MAX_CERTIFICATE_DRIFT) < block.number - ) { - revert ExpiredEigenDACert( - block.number, - cert.blobVerificationProof.batchMetadata.confirmationBlockNumber + - MAX_CERTIFICATE_DRIFT - ); - } - // Form the EigenDA data hash and get the time bounds (bytes32 dataHash, IBridge.TimeBounds memory timeBounds) = formEigenDADataHash( cert, diff --git a/src/libraries/Error.sol b/src/libraries/Error.sol index 63e5f63d..3cebad52 100644 --- a/src/libraries/Error.sol +++ b/src/libraries/Error.sol @@ -161,9 +161,6 @@ error NotBatchPoster(); /// @dev The sequence number provided to this message was inconsistent with the number of batches already included error BadSequencerNumber(uint256 stored, uint256 received); -/// @dev The EigenDA certificate provided to the inbox was stale -error ExpiredEigenDACert(uint256 currentBlock, uint256 l1ReferenceBlock); - /// @dev The sequence message number provided to this message was inconsistent with the previous one error BadSequencerMessageNumber(uint256 stored, uint256 received); diff --git a/src/rollup/RollupUserLogic.sol b/src/rollup/RollupUserLogic.sol index 95df077b..9443f090 100644 --- a/src/rollup/RollupUserLogic.sol +++ b/src/rollup/RollupUserLogic.sol @@ -159,7 +159,10 @@ abstract contract AbsRollupUserLogic is * @param blockHash The block hash at the end of the assertion * @param sendRoot The send root at the end of the assertion */ - function confirmNextNode(bytes32 blockHash, bytes32 sendRoot) external onlyValidator { + function confirmNextNode(bytes32 blockHash, bytes32 sendRoot) + external + onlyValidator + { _confirmNextNode(blockHash, sendRoot, false); } diff --git a/test/foundry/CacheManager.t.sol b/test/foundry/CacheManager.t.sol index 4eb1be8a..686a75b2 100644 --- a/test/foundry/CacheManager.t.sol +++ b/test/foundry/CacheManager.t.sol @@ -18,7 +18,11 @@ contract CacheManagerTest is Test { CacheManager cacheManagerImpl = new CacheManager(); cacheManager = CacheManager( address( - new TransparentUpgradeableProxy(address(cacheManagerImpl), address(proxyAdmin), "") + new TransparentUpgradeableProxy( + address(cacheManagerImpl), + address(proxyAdmin), + "" + ) ) ); uint64 cacheSize = 1_000_000; @@ -44,11 +48,7 @@ contract CacheManagerTest is Test { // Deploy bytes(bytes32(i)) as code to a sample program // PUSH32 i PUSH1 0 MSTORE PUSH1 32 PUSH1 0 RETURN // at the time of writing this our forge version or config doesn't have PUSH0 support - bytes memory bytecode = bytes.concat( - hex"7F", - abi.encodePacked(i), - hex"60005260206000F3" - ); + bytes memory bytecode = bytes.concat(hex"7F", abi.encodePacked(i), hex"60005260206000F3"); address program; assembly { program := create(0, add(bytecode, 32), mload(bytecode)) @@ -65,9 +65,7 @@ contract CacheManagerTest is Test { for (uint256 epoch = 0; epoch < 4; epoch++) { for (uint256 round = 0; round < 512; round++) { // roll one of 256 random programs - address program = programs[ - uint256(keccak256(abi.encodePacked("code", epoch, round))) % programs.length - ]; + address program = programs[uint256(keccak256(abi.encodePacked("code", epoch, round))) % programs.length]; bytes32 codehash = program.codehash; // roll a random bid @@ -120,7 +118,7 @@ contract CacheManagerTest is Test { cacheManager.placeBid{value: pay}(program); - if (mustCache) { + if(mustCache) { require( ARB_WASM_CACHE.codehashIsCached(codehash), "must cache codehash not cached" diff --git a/test/foundry/ChallengeManager.t.sol b/test/foundry/ChallengeManager.t.sol index 1e9622e2..88557db9 100644 --- a/test/foundry/ChallengeManager.t.sol +++ b/test/foundry/ChallengeManager.t.sol @@ -24,14 +24,10 @@ contract ChallengeManagerTest is Test { ); chalman.initialize(resultReceiver, sequencerInbox, bridge, osp); assertEq( - address(chalman.resultReceiver()), - address(resultReceiver), - "Result receiver not set" + address(chalman.resultReceiver()), address(resultReceiver), "Result receiver not set" ); assertEq( - address(chalman.sequencerInbox()), - address(sequencerInbox), - "Sequencer inbox not set" + address(chalman.sequencerInbox()), address(sequencerInbox), "Sequencer inbox not set" ); assertEq(address(chalman.bridge()), address(bridge), "Bridge not set"); assertEq(address(chalman.osp()), address(osp), "OSP not set"); @@ -56,12 +52,10 @@ contract ChallengeManagerTest is Test { // legacy hashes bytes32 legacySegment0 = legacyOSP.getStartMachineHash( - keccak256(abi.encodePacked("globalStateHash[0]")), - legacyRoot + keccak256(abi.encodePacked("globalStateHash[0]")), legacyRoot ); bytes32 legacySegment1 = legacyOSP.getEndMachineHash( - MachineStatus.FINISHED, - keccak256(abi.encodePacked("globalStateHashes[1]")) + MachineStatus.FINISHED, keccak256(abi.encodePacked("globalStateHashes[1]")) ); /// new OSP @@ -78,12 +72,10 @@ contract ChallengeManagerTest is Test { // new hashes bytes32 newSegment0 = _newOSP.getStartMachineHash( - keccak256(abi.encodePacked("globalStateHash[0]")), - randomRoot + keccak256(abi.encodePacked("globalStateHash[0]")), randomRoot ); bytes32 newSegment1 = _newOSP.getEndMachineHash( - MachineStatus.FINISHED, - keccak256(abi.encodePacked("new_globalStateHashes[1]")) + MachineStatus.FINISHED, keccak256(abi.encodePacked("new_globalStateHashes[1]")) ); /// do upgrade @@ -91,10 +83,7 @@ contract ChallengeManagerTest is Test { TransparentUpgradeableProxy(payable(address(chalman))).upgradeToAndCall( address(chalmanImpl), abi.encodeWithSelector( - ChallengeManager.postUpgradeInit.selector, - _newOSP, - legacyRoot, - legacyOSP + ChallengeManager.postUpgradeInit.selector, _newOSP, legacyRoot, legacyOSP ) ); @@ -103,16 +92,14 @@ contract ChallengeManagerTest is Test { assertEq(address(_condOsp), address(legacyOSP), "Legacy osp not set"); assertEq( _condOsp.getStartMachineHash( - keccak256(abi.encodePacked("globalStateHash[0]")), - legacyRoot + keccak256(abi.encodePacked("globalStateHash[0]")), legacyRoot ), legacySegment0, "Unexpected start machine hash" ); assertEq( _condOsp.getEndMachineHash( - MachineStatus.FINISHED, - keccak256(abi.encodePacked("globalStateHashes[1]")) + MachineStatus.FINISHED, keccak256(abi.encodePacked("globalStateHashes[1]")) ), legacySegment1, "Unexpected end machine hash" @@ -123,16 +110,14 @@ contract ChallengeManagerTest is Test { assertEq(address(_newOsp), address(_newOSP), "New osp not set"); assertEq( _newOsp.getStartMachineHash( - keccak256(abi.encodePacked("globalStateHash[0]")), - randomRoot + keccak256(abi.encodePacked("globalStateHash[0]")), randomRoot ), newSegment0, "Unexpected start machine hash" ); assertEq( _newOsp.getEndMachineHash( - MachineStatus.FINISHED, - keccak256(abi.encodePacked("new_globalStateHashes[1]")) + MachineStatus.FINISHED, keccak256(abi.encodePacked("new_globalStateHashes[1]")) ), newSegment1, "Unexpected end machine hash" @@ -150,10 +135,7 @@ contract ChallengeManagerTest is Test { TransparentUpgradeableProxy(payable(address(chalman))).upgradeToAndCall( address(chalmanImpl), abi.encodeWithSelector( - ChallengeManager.postUpgradeInit.selector, - newOsp, - randomRoot, - condOsp + ChallengeManager.postUpgradeInit.selector, newOsp, randomRoot, condOsp ) ); diff --git a/test/foundry/ERC20Bridge.t.sol b/test/foundry/ERC20Bridge.t.sol index 876c49c4..1d2d82aa 100644 --- a/test/foundry/ERC20Bridge.t.sol +++ b/test/foundry/ERC20Bridge.t.sol @@ -60,6 +60,7 @@ contract ERC20BridgeTest is AbsBridgeTest { noTokenBridge.initialize(IOwnable(rollup), address(0)); } + function test_initialize_ERC20_LessThan18Decimals() public { ERC20 _nativeToken = new ERC20_6Decimals(); ERC20Bridge _bridge = ERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); @@ -80,7 +81,7 @@ contract ERC20BridgeTest is AbsBridgeTest { ERC20_37Decimals _nativeToken = new ERC20_37Decimals(); ERC20Bridge _bridge = ERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - vm.expectRevert(abi.encodeWithSelector(NativeTokenDecimalsTooLarge.selector, 37)); + vm.expectRevert(abi.encodeWithSelector(NativeTokenDecimalsTooLarge.selector,37)); _bridge.initialize(IOwnable(makeAddr("_rollup")), address(_nativeToken)); } diff --git a/test/foundry/ERC20Inbox.t.sol b/test/foundry/ERC20Inbox.t.sol index 7d418106..80596a10 100644 --- a/test/foundry/ERC20Inbox.t.sol +++ b/test/foundry/ERC20Inbox.t.sol @@ -87,9 +87,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -99,9 +97,9 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); - uint256 depositAmount = 300 * 10**decimals; + uint256 depositAmount = 300 * 10 ** decimals; uint256 bridgeTokenBalanceBefore = _nativeToken.balanceOf(address(_bridge)); uint256 userTokenBalanceBefore = _nativeToken.balanceOf(address(user)); @@ -112,7 +110,7 @@ contract ERC20InboxTest is AbsInboxTest { _nativeToken.approve(address(_inbox), depositAmount); // expect event - uint256 expectedAmountToMintOnL2 = depositAmount * 10**(18 - decimals); + uint256 expectedAmountToMintOnL2 = depositAmount * 10 ** (18 - decimals); vm.expectEmit(true, true, true, true); emit InboxMessageDelivered(0, abi.encodePacked(user, expectedAmountToMintOnL2)); @@ -145,9 +143,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_20Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -157,9 +153,9 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); - uint256 depositAmount = 300 * 10**decimals; + uint256 depositAmount = 300 * 10 ** decimals; uint256 bridgeTokenBalanceBefore = _nativeToken.balanceOf(address(_bridge)); uint256 userTokenBalanceBefore = _nativeToken.balanceOf(address(user)); @@ -170,7 +166,7 @@ contract ERC20InboxTest is AbsInboxTest { _nativeToken.approve(address(_inbox), depositAmount); // expect event - uint256 expectedAmountToMintOnL2 = depositAmount / (10**(decimals - 18)); + uint256 expectedAmountToMintOnL2 = depositAmount / (10 ** (decimals - 18)); vm.expectEmit(true, true, true, true); emit InboxMessageDelivered(0, abi.encodePacked(user, expectedAmountToMintOnL2)); @@ -202,9 +198,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20NoDecimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -227,7 +221,7 @@ contract ERC20InboxTest is AbsInboxTest { _nativeToken.approve(address(_inbox), depositAmount); // expect event - uint256 expectedAmountToMintOnL2 = depositAmount * 10**18; + uint256 expectedAmountToMintOnL2 = depositAmount * 10 ** 18; vm.expectEmit(true, true, true, true); emit InboxMessageDelivered(0, abi.encodePacked(user, expectedAmountToMintOnL2)); @@ -335,9 +329,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -351,7 +343,9 @@ contract ERC20InboxTest is AbsInboxTest { uint256 depositAmountTooHigh = type(uint256).max / 10; - vm.expectRevert(abi.encodeWithSelector(AmountTooLarge.selector, depositAmountTooHigh)); + vm.expectRevert( + abi.encodeWithSelector(AmountTooLarge.selector, depositAmountTooHigh) + ); vm.prank(user, user); _inbox.depositERC20(depositAmountTooHigh); } @@ -452,9 +446,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -464,20 +456,20 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); // snapshot uint256 bridgeTokenBalanceBefore = _nativeToken.balanceOf(address(_bridge)); uint256 userTokenBalanceBefore = _nativeToken.balanceOf(address(user)); - uint256 tokenTotalFeeAmount = 300 * 10**decimals; + uint256 tokenTotalFeeAmount = 300 * 10 ** decimals; // approve inbox to fetch tokens vm.prank(user); _nativeToken.approve(address(_inbox), tokenTotalFeeAmount); // retyrable params - uint256 l2CallValue = 20 * 10**decimals; + uint256 l2CallValue = 20 * 10 ** decimals; uint256 maxSubmissionCost = 0; uint256 gasLimit = 100; uint256 maxFeePerGas = 2; @@ -485,7 +477,7 @@ contract ERC20InboxTest is AbsInboxTest { { // expect event - uint256 expectedTokenTotalFeeAmount18Dec = tokenTotalFeeAmount * 10**(18 - decimals); + uint256 expectedTokenTotalFeeAmount18Dec = tokenTotalFeeAmount * 10 ** (18 - decimals); vm.expectEmit(true, true, true, true); emit InboxMessageDelivered( 0, @@ -542,9 +534,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_20Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -554,20 +544,20 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); // snapshot uint256 bridgeTokenBalanceBefore = _nativeToken.balanceOf(address(_bridge)); uint256 userTokenBalanceBefore = _nativeToken.balanceOf(address(user)); - uint256 tokenTotalFeeAmount = 235 * 10**decimals; + uint256 tokenTotalFeeAmount = 235 * 10 ** decimals; // approve inbox to fetch tokens vm.prank(user); _nativeToken.approve(address(_inbox), tokenTotalFeeAmount); // retyrable params - uint256 l2CallValue = 20 * 10**18; + uint256 l2CallValue = 20 * 10 ** 18; uint256 maxSubmissionCost = 0; uint256 gasLimit = 100; uint256 maxFeePerGas = 2; @@ -575,7 +565,7 @@ contract ERC20InboxTest is AbsInboxTest { { // expect event - uint256 expectedTokenTotalFeeAmount18Dec = tokenTotalFeeAmount / 10**(decimals - 18); + uint256 expectedTokenTotalFeeAmount18Dec = tokenTotalFeeAmount / 10 ** (decimals - 18); vm.expectEmit(true, true, true, true); emit InboxMessageDelivered( 0, @@ -769,9 +759,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -781,16 +769,16 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_6Decimals(address(_nativeToken)).mint(user, 1_000_000 * 10**decimals); + ERC20_6Decimals(address(_nativeToken)).mint(user, 1_000_000 * 10 ** decimals); //// create ticket - uint256 tooSmallTokenTotalFeeAmount = 2 * 10**6; // 2 USDC becomes 2*10^18 on child chain + uint256 tooSmallTokenTotalFeeAmount = 2 * 10 ** 6; // 2 USDC becomes 2*10^18 on child chain - uint256 l2CallValue = 2 * 10**18; + uint256 l2CallValue = 2 * 10 ** 18; uint256 maxSubmissionCost = 0; uint256 gasLimit = 80_000; - uint256 maxFeePerGas = 10**9; //1 gwei + uint256 maxFeePerGas = 10 ** 9; //1 gwei /// provided: 2USDC on parent chain = 2*10^18 on child chain /// needed: 2.00008*10^18 on child chain @@ -799,7 +787,7 @@ contract ERC20InboxTest is AbsInboxTest { abi.encodeWithSelector( InsufficientValue.selector, maxSubmissionCost + l2CallValue + gasLimit * maxFeePerGas, - tooSmallTokenTotalFeeAmount * 10**(18 - decimals) + tooSmallTokenTotalFeeAmount * 10 ** (18 - decimals) ) ); _inbox.createRetryableTicket({ @@ -820,9 +808,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_20Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -832,16 +818,16 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_20Decimals(address(_nativeToken)).mint(user, 1_000_000 * 10**decimals); + ERC20_20Decimals(address(_nativeToken)).mint(user, 1_000_000 * 10 ** decimals); //// create ticket - uint256 tooSmallTokenTotalFeeAmount = 2 * 10**20; + uint256 tooSmallTokenTotalFeeAmount = 2 * 10 ** 20; - uint256 l2CallValue = 2 * 10**18; + uint256 l2CallValue = 2 * 10 ** 18; uint256 maxSubmissionCost = 0; uint256 gasLimit = 80_000; - uint256 maxFeePerGas = 10**9; //1 gwei + uint256 maxFeePerGas = 10 ** 9; //1 gwei /// provided: 2 * 10 ** 20 on parent chain = 2*10^18 on child chain /// needed: 2.00008*10^18 on child chain @@ -850,7 +836,7 @@ contract ERC20InboxTest is AbsInboxTest { abi.encodeWithSelector( InsufficientValue.selector, maxSubmissionCost + l2CallValue + gasLimit * maxFeePerGas, - tooSmallTokenTotalFeeAmount / 10**(decimals - 18) + tooSmallTokenTotalFeeAmount / 10 ** (decimals - 18) ) ); _inbox.createRetryableTicket({ @@ -1149,9 +1135,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -1161,13 +1145,13 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); // L2 msg params uint256 maxFeePerGas = 0; uint256 gasLimit = 10; uint256 nonce = 3; - uint256 l2CallValue = 15 * 10**decimals; + uint256 l2CallValue = 15 * 10 ** decimals; bytes memory data = abi.encodePacked("7"); // expect event @@ -1187,14 +1171,8 @@ contract ERC20InboxTest is AbsInboxTest { // send TX vm.prank(user, user); - uint256 msgNum = _inbox.sendUnsignedTransaction( - gasLimit, - maxFeePerGas, - nonce, - user, - l2CallValue, - data - ); + uint256 msgNum = + _inbox.sendUnsignedTransaction(gasLimit, maxFeePerGas, nonce, user, l2CallValue, data); //// checks assertEq(msgNum, 0, "Invalid msgNum"); @@ -1207,9 +1185,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_20Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -1219,13 +1195,13 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); // L2 msg params uint256 maxFeePerGas = 0; uint256 gasLimit = 10; uint256 nonce = 3; - uint256 l2CallValue = 15 * 10**decimals; + uint256 l2CallValue = 15 * 10 ** decimals; bytes memory data = abi.encodePacked("7"); // expect event @@ -1245,14 +1221,8 @@ contract ERC20InboxTest is AbsInboxTest { // send TX vm.prank(user, user); - uint256 msgNum = _inbox.sendUnsignedTransaction( - gasLimit, - maxFeePerGas, - nonce, - user, - l2CallValue, - data - ); + uint256 msgNum = + _inbox.sendUnsignedTransaction(gasLimit, maxFeePerGas, nonce, user, l2CallValue, data); //// checks assertEq(msgNum, 0, "Invalid msgNum"); @@ -1265,9 +1235,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -1277,12 +1245,12 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_6Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); // L2 msg params uint256 maxFeePerGas = 0; uint256 gasLimit = 10; - uint256 l2CallValue = 72 * 10**decimals; + uint256 l2CallValue = 72 * 10 ** decimals; bytes memory data = abi.encodePacked("test data"); // expect event @@ -1301,13 +1269,8 @@ contract ERC20InboxTest is AbsInboxTest { // send TX vm.prank(user); - uint256 msgNum = _inbox.sendContractTransaction( - gasLimit, - maxFeePerGas, - user, - l2CallValue, - data - ); + uint256 msgNum = + _inbox.sendContractTransaction(gasLimit, maxFeePerGas, user, l2CallValue, data); //// checks assertEq(msgNum, 0, "Invalid msgNum"); @@ -1320,9 +1283,7 @@ contract ERC20InboxTest is AbsInboxTest { ERC20 _nativeToken = new ERC20_20Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); // init bridge and inbox address _rollup = makeAddr("_rollup"); @@ -1332,12 +1293,12 @@ contract ERC20InboxTest is AbsInboxTest { _bridge.setDelayedInbox(address(_inbox), true); // fund user account - ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10**decimals); + ERC20_20Decimals(address(_nativeToken)).mint(user, 1000 * 10 ** decimals); // L2 msg params uint256 maxFeePerGas = 0; uint256 gasLimit = 10; - uint256 l2CallValue = 72 * 10**decimals; + uint256 l2CallValue = 72 * 10 ** decimals; bytes memory data = abi.encodePacked("test data"); // expect event @@ -1356,13 +1317,8 @@ contract ERC20InboxTest is AbsInboxTest { // send TX vm.prank(user); - uint256 msgNum = _inbox.sendContractTransaction( - gasLimit, - maxFeePerGas, - user, - l2CallValue, - data - ); + uint256 msgNum = + _inbox.sendContractTransaction(gasLimit, maxFeePerGas, user, l2CallValue, data); //// checks assertEq(msgNum, 0, "Invalid msgNum"); diff --git a/test/foundry/ERC20Outbox.t.sol b/test/foundry/ERC20Outbox.t.sol index 07a78ccc..52ca49f7 100644 --- a/test/foundry/ERC20Outbox.t.sol +++ b/test/foundry/ERC20Outbox.t.sol @@ -92,7 +92,10 @@ contract ERC20OutboxTest is AbsOutboxTest { bytes32 root = outbox.calculateMerkleRoot(proof, index, itemHash); // store root vm.prank(rollup); - outbox.updateSendRoot(root, bytes32(uint256(1))); + outbox.updateSendRoot( + root, + bytes32(uint256(1)) + ); outbox.executeTransaction({ proof: proof, @@ -173,7 +176,10 @@ contract ERC20OutboxTest is AbsOutboxTest { bytes32 root = outbox.calculateMerkleRoot(proof, index, itemHash); // store root vm.prank(rollup); - outbox.updateSendRoot(root, bytes32(uint256(1))); + outbox.updateSendRoot( + root, + bytes32(uint256(1)) + ); vm.expectRevert(abi.encodeWithSelector(CallTargetNotAllowed.selector, invalidTarget)); outbox.executeTransaction({ @@ -201,9 +207,7 @@ contract ERC20OutboxTest is AbsOutboxTest { ERC20 _nativeToken = new ERC20_6Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); ERC20Outbox _outbox = ERC20Outbox(TestUtil.deployProxy(address(new ERC20Outbox()))); // init bridge and inbox @@ -215,7 +219,7 @@ contract ERC20OutboxTest is AbsOutboxTest { _bridge.setOutbox(address(_outbox), true); // fund bridge with some tokens - ERC20_6Decimals(address(_nativeToken)).mint(address(_bridge), 1_000_000 * 10**decimals); + ERC20_6Decimals(address(_nativeToken)).mint(address(_bridge), 1_000_000 * 10 ** decimals); // create msg receiver on L1 ERC20L2ToL1Target target = new ERC20L2ToL1Target(); @@ -229,7 +233,7 @@ contract ERC20OutboxTest is AbsOutboxTest { proof[0] = bytes32(0); uint256 withdrawalAmount = 188_394_098_124_747_940; - uint256 expetedAmountToUnlock = withdrawalAmount / (10**(18 - decimals)); + uint256 expetedAmountToUnlock = withdrawalAmount / (10 ** (18 - decimals)); bytes memory data = abi.encodeWithSignature("receiveHook()"); @@ -247,7 +251,10 @@ contract ERC20OutboxTest is AbsOutboxTest { bytes32 root = _outbox.calculateMerkleRoot(proof, index, itemHash); // store root vm.prank(_rollup); - _outbox.updateSendRoot(root, bytes32(uint256(1))); + _outbox.updateSendRoot( + root, + bytes32(uint256(1)) + ); } _outbox.executeTransaction({ @@ -308,9 +315,7 @@ contract ERC20OutboxTest is AbsOutboxTest { ERC20 _nativeToken = new ERC20_20Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); ERC20Outbox _outbox = ERC20Outbox(TestUtil.deployProxy(address(new ERC20Outbox()))); // init bridge and inbox @@ -322,7 +327,7 @@ contract ERC20OutboxTest is AbsOutboxTest { _bridge.setOutbox(address(_outbox), true); // fund bridge with some tokens - ERC20_20Decimals(address(_nativeToken)).mint(address(_bridge), 1_000_000 * 10**decimals); + ERC20_20Decimals(address(_nativeToken)).mint(address(_bridge), 1_000_000 * 10 ** decimals); // create msg receiver on L1 ERC20L2ToL1Target target = new ERC20L2ToL1Target(); @@ -336,7 +341,7 @@ contract ERC20OutboxTest is AbsOutboxTest { proof[0] = bytes32(0); uint256 withdrawalAmount = 188_394_098_124_747_940; - uint256 expetedAmountToUnlock = withdrawalAmount * (10**(decimals - 18)); + uint256 expetedAmountToUnlock = withdrawalAmount * (10 ** (decimals - 18)); bytes memory data = abi.encodeWithSignature("receiveHook()"); @@ -354,7 +359,10 @@ contract ERC20OutboxTest is AbsOutboxTest { bytes32 root = _outbox.calculateMerkleRoot(proof, index, itemHash); // store root vm.prank(_rollup); - _outbox.updateSendRoot(root, bytes32(uint256(1))); + _outbox.updateSendRoot( + root, + bytes32(uint256(1)) + ); } _outbox.executeTransaction({ @@ -414,9 +422,7 @@ contract ERC20OutboxTest is AbsOutboxTest { ERC20 _nativeToken = new ERC20_36Decimals(); IERC20Bridge _bridge = IERC20Bridge(TestUtil.deployProxy(address(new ERC20Bridge()))); - IERC20Inbox _inbox = IERC20Inbox( - TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE))) - ); + IERC20Inbox _inbox = IERC20Inbox(TestUtil.deployProxy(address(new ERC20Inbox(MAX_DATA_SIZE)))); ERC20Outbox _outbox = ERC20Outbox(TestUtil.deployProxy(address(new ERC20Outbox()))); // init bridge and inbox @@ -438,7 +444,7 @@ contract ERC20OutboxTest is AbsOutboxTest { bytes32[] memory proof = new bytes32[](1); proof[0] = bytes32(0); - uint256 tooLargeWithdrawalAmount = type(uint256).max / 10**18 + 1; + uint256 tooLargeWithdrawalAmount = type(uint256).max / 10 ** 18 + 1; bytes memory data = abi.encodeWithSignature("receiveHook()"); @@ -456,7 +462,10 @@ contract ERC20OutboxTest is AbsOutboxTest { bytes32 root = _outbox.calculateMerkleRoot(proof, index, itemHash); // store root vm.prank(_rollup); - _outbox.updateSendRoot(root, bytes32(uint256(1))); + _outbox.updateSendRoot( + root, + bytes32(uint256(1)) + ); } vm.expectRevert(stdError.arithmeticError); // overflow diff --git a/test/foundry/ERC20RollupEventInbox.t.sol b/test/foundry/ERC20RollupEventInbox.t.sol index a526a377..2608db98 100644 --- a/test/foundry/ERC20RollupEventInbox.t.sol +++ b/test/foundry/ERC20RollupEventInbox.t.sol @@ -5,15 +5,13 @@ import "./AbsRollupEventInbox.t.sol"; import {TestUtil} from "./util/TestUtil.sol"; import {ERC20RollupEventInbox} from "../../src/rollup/ERC20RollupEventInbox.sol"; import {ERC20Bridge, IERC20Bridge, IOwnable} from "../../src/bridge/ERC20Bridge.sol"; -import { - ERC20PresetMinterPauser -} from "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol"; +import {ERC20PresetMinterPauser} from + "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol"; contract ERC20RollupEventInboxTest is AbsRollupEventInboxTest { function setUp() public { - rollupEventInbox = IRollupEventInbox( - TestUtil.deployProxy(address(new ERC20RollupEventInbox())) - ); + rollupEventInbox = + IRollupEventInbox(TestUtil.deployProxy(address(new ERC20RollupEventInbox()))); bridge = IBridge(TestUtil.deployProxy(address(new ERC20Bridge()))); address nativeToken = address(new ERC20PresetMinterPauser("Appchain Token", "App")); IERC20Bridge(address(bridge)).initialize(IOwnable(rollup), nativeToken); @@ -26,9 +24,8 @@ contract ERC20RollupEventInboxTest is AbsRollupEventInboxTest { /* solhint-disable func-name-mixedcase */ function test_initialize_revert_ZeroInit() public { - ERC20RollupEventInbox rollupEventInbox = ERC20RollupEventInbox( - TestUtil.deployProxy(address(new ERC20RollupEventInbox())) - ); + ERC20RollupEventInbox rollupEventInbox = + ERC20RollupEventInbox(TestUtil.deployProxy(address(new ERC20RollupEventInbox()))); vm.expectRevert(HadZeroInit.selector); rollupEventInbox.initialize(IBridge(address(0))); @@ -40,12 +37,8 @@ contract ERC20RollupEventInboxTest is AbsRollupEventInboxTest { uint8 expectedInitMsgVersion = 1; uint256 expectedCurrentDataCost = 0; - bytes memory expectedInitMsg = abi.encodePacked( - chainId, - expectedInitMsgVersion, - expectedCurrentDataCost, - chainConfig - ); + bytes memory expectedInitMsg = + abi.encodePacked(chainId, expectedInitMsgVersion, expectedCurrentDataCost, chainConfig); // expect event vm.expectEmit(true, true, true, true); @@ -80,12 +73,8 @@ contract ERC20RollupEventInboxTest is AbsRollupEventInboxTest { uint8 expectedInitMsgVersion = 1; uint256 expectedCurrentDataCost = 0; - bytes memory expectedInitMsg = abi.encodePacked( - chainId, - expectedInitMsgVersion, - expectedCurrentDataCost, - chainConfig - ); + bytes memory expectedInitMsg = + abi.encodePacked(chainId, expectedInitMsgVersion, expectedCurrentDataCost, chainConfig); // expect event vm.expectEmit(true, true, true, true); diff --git a/test/foundry/KZGbn254.t.sol b/test/foundry/KZGbn254.t.sol index 35f3986c..26d0296e 100644 --- a/test/foundry/KZGbn254.t.sol +++ b/test/foundry/KZGbn254.t.sol @@ -1,5 +1,5 @@ // SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.4; +pragma solidity ^0.8.12; import "../../src/osp/OneStepProverHostIo.sol"; import "forge-std/Test.sol"; diff --git a/test/foundry/Outbox.t.sol b/test/foundry/Outbox.t.sol index 83eaba8c..8d38deb8 100644 --- a/test/foundry/Outbox.t.sol +++ b/test/foundry/Outbox.t.sol @@ -61,7 +61,10 @@ contract OutboxTest is AbsOutboxTest { bytes32 root = outbox.calculateMerkleRoot(proof, index, itemHash); // store root vm.prank(rollup); - outbox.updateSendRoot(root, bytes32(uint256(1))); + outbox.updateSendRoot( + root, + bytes32(uint256(1)) + ); outbox.executeTransaction({ proof: proof, @@ -77,16 +80,12 @@ contract OutboxTest is AbsOutboxTest { uint256 bridgeBalanceAfter = address(bridge).balance; assertEq( - bridgeBalanceBefore - bridgeBalanceAfter, - withdrawalAmount, - "Invalid bridge balance" + bridgeBalanceBefore - bridgeBalanceAfter, withdrawalAmount, "Invalid bridge balance" ); uint256 targetBalanceAfter = address(target).balance; assertEq( - targetBalanceAfter - targetBalanceBefore, - withdrawalAmount, - "Invalid target balance" + targetBalanceAfter - targetBalanceBefore, withdrawalAmount, "Invalid target balance" ); /// check context was properly set during execution diff --git a/test/foundry/RollupEventInbox.t.sol b/test/foundry/RollupEventInbox.t.sol index 5dca3167..47bfa9ec 100644 --- a/test/foundry/RollupEventInbox.t.sol +++ b/test/foundry/RollupEventInbox.t.sol @@ -22,9 +22,8 @@ contract RollupEventInboxTest is AbsRollupEventInboxTest { /* solhint-disable func-name-mixedcase */ function test_initialize_revert_ZeroInit() public { - RollupEventInbox rollupEventInbox = RollupEventInbox( - TestUtil.deployProxy(address(new RollupEventInbox())) - ); + RollupEventInbox rollupEventInbox = + RollupEventInbox(TestUtil.deployProxy(address(new RollupEventInbox()))); vm.expectRevert(HadZeroInit.selector); rollupEventInbox.initialize(IBridge(address(0))); @@ -40,12 +39,8 @@ contract RollupEventInboxTest is AbsRollupEventInboxTest { uint8 expectedInitMsgVersion = 1; uint256 expectedCurrentDataCost = basefee; - bytes memory expectedInitMsg = abi.encodePacked( - chainId, - expectedInitMsgVersion, - expectedCurrentDataCost, - chainConfig - ); + bytes memory expectedInitMsg = + abi.encodePacked(chainId, expectedInitMsgVersion, expectedCurrentDataCost, chainConfig); // expect event vm.expectEmit(true, true, true, true); @@ -78,19 +73,13 @@ contract RollupEventInboxTest is AbsRollupEventInboxTest { // 50 gwei L1 basefee uint256 l1Fee = 50_000_000_000; vm.mockCall( - address(0x6c), - abi.encodeWithSignature("getL1BaseFeeEstimate()"), - abi.encode(l1Fee) + address(0x6c), abi.encodeWithSignature("getL1BaseFeeEstimate()"), abi.encode(l1Fee) ); uint8 expectedInitMsgVersion = 1; uint256 expectedCurrentDataCost = l2Fee + l1Fee; - bytes memory expectedInitMsg = abi.encodePacked( - chainId, - expectedInitMsgVersion, - expectedCurrentDataCost, - chainConfig - ); + bytes memory expectedInitMsg = + abi.encodePacked(chainId, expectedInitMsgVersion, expectedCurrentDataCost, chainConfig); /// this will result in 'hostChainIsArbitrum = true' vm.mockCall( diff --git a/test/foundry/SequencerInbox.t.sol b/test/foundry/SequencerInbox.t.sol index 7f3c4512..1a0e7fda 100644 --- a/test/foundry/SequencerInbox.t.sol +++ b/test/foundry/SequencerInbox.t.sol @@ -565,52 +565,6 @@ contract SequencerInboxTest is Test { ); } - function testAddSequencerL2BatchFromEigenDARevertsWithInvalidTimeStamp() public { - DummyEigenDABlobVerifier rollupManagerImpl = new DummyEigenDABlobVerifier(); - (SequencerInbox seqInbox, Bridge bridge) = deployRollup(false); - // update the dummyEigenDAServiceManager to use the holesky serviceManager contract - - vm.startPrank(rollupOwner); - // deploy rollup - seqInbox.setEigenDARollupManager(address(rollupManagerImpl)); - vm.stopPrank(); - - address delayedInboxSender = address(140); - uint8 delayedInboxKind = 3; - bytes32 messageDataHash = RAND.Bytes32(); - - vm.prank(dummyInbox); - bridge.enqueueDelayedMessage(delayedInboxKind, delayedInboxSender, messageDataHash); - - ( - IEigenDAServiceManager.BlobHeader memory blobHeader, - EigenDARollupUtils.BlobVerificationProof memory blobVerificationProof - ) = readAndParseBlobInfo(); - ISequencerInbox.EigenDACert memory cert = ISequencerInbox.EigenDACert({ - blobHeader: blobHeader, - blobVerificationProof: blobVerificationProof - }); - - cert.blobVerificationProof.batchMetadata.batchHeader.referenceBlockNumber = 0; - - uint256 subMessageCount = bridge.sequencerReportedSubMessageCount(); - uint256 sequenceNumber = bridge.sequencerMessageCount(); - uint256 delayedMessagesRead = bridge.delayedMessageCount(); - - vm.roll(101); - vm.prank(tx.origin); - - vm.expectRevert(); - seqInbox.addSequencerL2BatchFromEigenDA( - sequenceNumber, - cert, - IGasRefunder(address(0)), - delayedMessagesRead, - subMessageCount, - subMessageCount + 1 - ); - } - function testAddSequencerL2BatchFromEigenDA() public { DummyEigenDABlobVerifier rollupManagerImpl = new DummyEigenDABlobVerifier(); (SequencerInbox seqInbox, Bridge bridge) = deployRollup(false); @@ -691,7 +645,7 @@ contract SequencerInboxTest is Test { quorumIndices: bytes("") }); - function testAddSequencerL2BatchFromEigenDARevertsOnInvalidCertificate() public { + function testAddSequencerL2BatchFrom() public { // finish filling out the illegalBlobHeader illegalBlobHeader.commitment = illegalCommitment; illegalBlobHeader.dataLength = 20; diff --git a/test/storage/CacheManager b/test/storage/CacheManager index 99acb5ae..199a48d0 100644 --- a/test/storage/CacheManager +++ b/test/storage/CacheManager @@ -1,6 +1,6 @@ | Name | Type | Slot | Offset | Bytes | Contract | |---------------|-----------------------------|------|--------|-------|-----------------------------------------| -| _initialized | uint8 | 0 | 0 | 1 | src/chain/CacheManager.sol:CacheManager | +| _initialized | bool | 0 | 0 | 1 | src/chain/CacheManager.sol:CacheManager | | _initializing | bool | 0 | 1 | 1 | src/chain/CacheManager.sol:CacheManager | | bids | struct MinHeapLib.Heap | 1 | 0 | 32 | src/chain/CacheManager.sol:CacheManager | | entries | struct CacheManager.Entry[] | 2 | 0 | 32 | src/chain/CacheManager.sol:CacheManager |