witnet-solidity-bridge
Version:
Witnet Solidity Bridge contracts for EVM-compatible chains
858 lines • 203 kB
JSON
{
"contractName": "WitOracleBasePushOnlyTrustless",
"abi": [
{
"inputs": [],
"name": "InvalidDataReport",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"components": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "prevIndex",
"type": "uint32"
},
{
"internalType": "bytes24",
"name": "prevRoot",
"type": "bytes24"
},
{
"internalType": "bytes16",
"name": "ddrTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "bytes16",
"name": "droTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "uint256[4]",
"name": "nextCommitteeAggPubkey",
"type": "uint256[4]"
}
],
"indexed": false,
"internalType": "struct Witnet.Beacon",
"name": "head",
"type": "tuple"
}
],
"name": "Rollup",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "evmOrigin",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "evmConsumer",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "evmReporter",
"type": "address"
},
{
"indexed": false,
"internalType": "Witnet.TransactionHash",
"name": "witDrTxHash",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "Witnet.RadonHash",
"name": "queryRadHash",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint16",
"name": "witResultMaxSize",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "witCommitteeSize",
"type": "uint16"
},
{
"internalType": "uint64",
"name": "witUnitaryReward",
"type": "uint64"
}
],
"indexed": false,
"internalType": "struct Witnet.QuerySLA",
"name": "queryParams",
"type": "tuple"
},
{
"indexed": false,
"internalType": "Witnet.Timestamp",
"name": "resultTimestamp",
"type": "uint64"
},
{
"indexed": false,
"internalType": "bytes",
"name": "resultCborBytes",
"type": "bytes"
}
],
"name": "WitOracleReport",
"type": "event"
},
{
"inputs": [],
"name": "channel",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "class",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "registry",
"outputs": [
{
"internalType": "contract IWitOracleRadonRegistry",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "specs",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "Witnet.TransactionHash",
"name": "witDrTxHash",
"type": "bytes32"
},
{
"internalType": "Witnet.RadonHash",
"name": "queryRadHash",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint16",
"name": "witResultMaxSize",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "witCommitteeSize",
"type": "uint16"
},
{
"internalType": "uint64",
"name": "witUnitaryReward",
"type": "uint64"
}
],
"internalType": "struct Witnet.QuerySLA",
"name": "queryParams",
"type": "tuple"
},
{
"internalType": "Witnet.Timestamp",
"name": "resultTimestamp",
"type": "uint64"
},
{
"internalType": "bytes",
"name": "resultCborBytes",
"type": "bytes"
}
],
"internalType": "struct Witnet.DataPushReport",
"name": "_report",
"type": "tuple"
},
{
"internalType": "bytes",
"name": "_signature",
"type": "bytes"
}
],
"name": "parseDataReport",
"outputs": [
{
"components": [
{
"internalType": "enum Witnet.ResultStatus",
"name": "status",
"type": "uint8"
},
{
"internalType": "enum Witnet.RadonDataTypes",
"name": "dataType",
"type": "uint8"
},
{
"internalType": "Witnet.TransactionHash",
"name": "drTxHash",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "finality",
"type": "uint256"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"components": [
{
"components": [
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "cursor",
"type": "uint256"
}
],
"internalType": "struct WitnetBuffer.Buffer",
"name": "buffer",
"type": "tuple"
},
{
"internalType": "uint8",
"name": "initialByte",
"type": "uint8"
},
{
"internalType": "uint8",
"name": "majorType",
"type": "uint8"
},
{
"internalType": "uint8",
"name": "additionalInformation",
"type": "uint8"
},
{
"internalType": "uint64",
"name": "len",
"type": "uint64"
},
{
"internalType": "uint64",
"name": "tag",
"type": "uint64"
}
],
"internalType": "struct WitnetCBOR.CBOR",
"name": "value",
"type": "tuple"
}
],
"internalType": "struct Witnet.DataResult",
"name": "_result",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "Witnet.TransactionHash",
"name": "witDrTxHash",
"type": "bytes32"
},
{
"internalType": "Witnet.RadonHash",
"name": "queryRadHash",
"type": "bytes32"
},
{
"components": [
{
"internalType": "uint16",
"name": "witResultMaxSize",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "witCommitteeSize",
"type": "uint16"
},
{
"internalType": "uint64",
"name": "witUnitaryReward",
"type": "uint64"
}
],
"internalType": "struct Witnet.QuerySLA",
"name": "queryParams",
"type": "tuple"
},
{
"internalType": "Witnet.Timestamp",
"name": "resultTimestamp",
"type": "uint64"
},
{
"internalType": "bytes",
"name": "resultCborBytes",
"type": "bytes"
}
],
"internalType": "struct Witnet.DataPushReport",
"name": "_report",
"type": "tuple"
},
{
"internalType": "bytes",
"name": "_signature",
"type": "bytes"
}
],
"name": "pushDataReport",
"outputs": [
{
"components": [
{
"internalType": "enum Witnet.ResultStatus",
"name": "status",
"type": "uint8"
},
{
"internalType": "enum Witnet.RadonDataTypes",
"name": "dataType",
"type": "uint8"
},
{
"internalType": "Witnet.TransactionHash",
"name": "drTxHash",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "finality",
"type": "uint256"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"components": [
{
"components": [
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "uint256",
"name": "cursor",
"type": "uint256"
}
],
"internalType": "struct WitnetBuffer.Buffer",
"name": "buffer",
"type": "tuple"
},
{
"internalType": "uint8",
"name": "initialByte",
"type": "uint8"
},
{
"internalType": "uint8",
"name": "majorType",
"type": "uint8"
},
{
"internalType": "uint8",
"name": "additionalInformation",
"type": "uint8"
},
{
"internalType": "uint64",
"name": "len",
"type": "uint64"
},
{
"internalType": "uint64",
"name": "tag",
"type": "uint64"
}
],
"internalType": "struct WitnetCBOR.CBOR",
"name": "value",
"type": "tuple"
}
],
"internalType": "struct Witnet.DataResult",
"name": "",
"type": "tuple"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
}
],
"name": "determineBeaconIndexFromTimestamp",
"outputs": [
{
"internalType": "uint64",
"name": "",
"type": "uint64"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
}
],
"name": "determineEpochFromTimestamp",
"outputs": [
{
"internalType": "Witnet.BlockNumber",
"name": "",
"type": "uint64"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
}
],
"name": "getBeaconByIndex",
"outputs": [
{
"components": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "prevIndex",
"type": "uint32"
},
{
"internalType": "bytes24",
"name": "prevRoot",
"type": "bytes24"
},
{
"internalType": "bytes16",
"name": "ddrTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "bytes16",
"name": "droTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "uint256[4]",
"name": "nextCommitteeAggPubkey",
"type": "uint256[4]"
}
],
"internalType": "struct Witnet.Beacon",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getGenesisBeacon",
"outputs": [
{
"components": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "prevIndex",
"type": "uint32"
},
{
"internalType": "bytes24",
"name": "prevRoot",
"type": "bytes24"
},
{
"internalType": "bytes16",
"name": "ddrTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "bytes16",
"name": "droTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "uint256[4]",
"name": "nextCommitteeAggPubkey",
"type": "uint256[4]"
}
],
"internalType": "struct Witnet.Beacon",
"name": "",
"type": "tuple"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [],
"name": "getLastKnownBeacon",
"outputs": [
{
"components": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "prevIndex",
"type": "uint32"
},
{
"internalType": "bytes24",
"name": "prevRoot",
"type": "bytes24"
},
{
"internalType": "bytes16",
"name": "ddrTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "bytes16",
"name": "droTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "uint256[4]",
"name": "nextCommitteeAggPubkey",
"type": "uint256[4]"
}
],
"internalType": "struct Witnet.Beacon",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getLastKnownBeaconIndex",
"outputs": [
{
"internalType": "uint32",
"name": "",
"type": "uint32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"components": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "prevIndex",
"type": "uint32"
},
{
"internalType": "bytes24",
"name": "prevRoot",
"type": "bytes24"
},
{
"internalType": "bytes16",
"name": "ddrTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "bytes16",
"name": "droTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "uint256[4]",
"name": "nextCommitteeAggPubkey",
"type": "uint256[4]"
}
],
"internalType": "struct Witnet.Beacon",
"name": "beacon",
"type": "tuple"
},
{
"internalType": "uint256[2]",
"name": "committeeAggSignature",
"type": "uint256[2]"
},
{
"internalType": "uint256[4][]",
"name": "committeeMissingPubkeys",
"type": "uint256[4][]"
}
],
"internalType": "struct Witnet.FastForward[]",
"name": "_witOracleRollup",
"type": "tuple[]"
}
],
"name": "rollupBeacons",
"outputs": [
{
"components": [
{
"internalType": "uint32",
"name": "index",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "prevIndex",
"type": "uint32"
},
{
"internalType": "bytes24",
"name": "prevRoot",
"type": "bytes24"
},
{
"internalType": "bytes16",
"name": "ddrTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "bytes16",
"name": "droTalliesMerkleRoot",
"type": "bytes16"
},
{
"internalType": "uint256[4]",
"name": "nextCommitteeAggPubkey",
"type": "uint256[4]"
}
],
"internalType": "struct Witnet.Beacon",
"name": "",
"type": "tuple"
}
],
"stateMutability": "nonpayable",
"type": "function"
}
],
"metadata": "{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"InvalidDataReport\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"prevIndex\",\"type\":\"uint32\"},{\"internalType\":\"bytes24\",\"name\":\"prevRoot\",\"type\":\"bytes24\"},{\"internalType\":\"bytes16\",\"name\":\"ddrTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"droTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"uint256[4]\",\"name\":\"nextCommitteeAggPubkey\",\"type\":\"uint256[4]\"}],\"indexed\":false,\"internalType\":\"struct Witnet.Beacon\",\"name\":\"head\",\"type\":\"tuple\"}],\"name\":\"Rollup\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"evmOrigin\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"evmConsumer\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"evmReporter\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"Witnet.TransactionHash\",\"name\":\"witDrTxHash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"Witnet.RadonHash\",\"name\":\"queryRadHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint16\",\"name\":\"witResultMaxSize\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"witCommitteeSize\",\"type\":\"uint16\"},{\"internalType\":\"uint64\",\"name\":\"witUnitaryReward\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Witnet.QuerySLA\",\"name\":\"queryParams\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"Witnet.Timestamp\",\"name\":\"resultTimestamp\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"resultCborBytes\",\"type\":\"bytes\"}],\"name\":\"WitOracleReport\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"channel\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"class\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.Timestamp\",\"name\":\"timestamp\",\"type\":\"uint64\"}],\"name\":\"determineBeaconIndexFromTimestamp\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.Timestamp\",\"name\":\"timestamp\",\"type\":\"uint64\"}],\"name\":\"determineEpochFromTimestamp\",\"outputs\":[{\"internalType\":\"Witnet.BlockNumber\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"getBeaconByIndex\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"prevIndex\",\"type\":\"uint32\"},{\"internalType\":\"bytes24\",\"name\":\"prevRoot\",\"type\":\"bytes24\"},{\"internalType\":\"bytes16\",\"name\":\"ddrTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"droTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"uint256[4]\",\"name\":\"nextCommitteeAggPubkey\",\"type\":\"uint256[4]\"}],\"internalType\":\"struct Witnet.Beacon\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGenesisBeacon\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"prevIndex\",\"type\":\"uint32\"},{\"internalType\":\"bytes24\",\"name\":\"prevRoot\",\"type\":\"bytes24\"},{\"internalType\":\"bytes16\",\"name\":\"ddrTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"droTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"uint256[4]\",\"name\":\"nextCommitteeAggPubkey\",\"type\":\"uint256[4]\"}],\"internalType\":\"struct Witnet.Beacon\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLastKnownBeacon\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"prevIndex\",\"type\":\"uint32\"},{\"internalType\":\"bytes24\",\"name\":\"prevRoot\",\"type\":\"bytes24\"},{\"internalType\":\"bytes16\",\"name\":\"ddrTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"droTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"uint256[4]\",\"name\":\"nextCommitteeAggPubkey\",\"type\":\"uint256[4]\"}],\"internalType\":\"struct Witnet.Beacon\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLastKnownBeaconIndex\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"Witnet.TransactionHash\",\"name\":\"witDrTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"Witnet.RadonHash\",\"name\":\"queryRadHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint16\",\"name\":\"witResultMaxSize\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"witCommitteeSize\",\"type\":\"uint16\"},{\"internalType\":\"uint64\",\"name\":\"witUnitaryReward\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.QuerySLA\",\"name\":\"queryParams\",\"type\":\"tuple\"},{\"internalType\":\"Witnet.Timestamp\",\"name\":\"resultTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"resultCborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.DataPushReport\",\"name\":\"_report\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"_signature\",\"type\":\"bytes\"}],\"name\":\"parseDataReport\",\"outputs\":[{\"components\":[{\"internalType\":\"enum Witnet.ResultStatus\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"uint8\"},{\"internalType\":\"Witnet.TransactionHash\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"finality\",\"type\":\"uint256\"},{\"internalType\":\"Witnet.Timestamp\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"cursor\",\"type\":\"uint256\"}],\"internalType\":\"struct WitnetBuffer.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct WitnetCBOR.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.DataResult\",\"name\":\"_result\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"Witnet.TransactionHash\",\"name\":\"witDrTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"Witnet.RadonHash\",\"name\":\"queryRadHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint16\",\"name\":\"witResultMaxSize\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"witCommitteeSize\",\"type\":\"uint16\"},{\"internalType\":\"uint64\",\"name\":\"witUnitaryReward\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.QuerySLA\",\"name\":\"queryParams\",\"type\":\"tuple\"},{\"internalType\":\"Witnet.Timestamp\",\"name\":\"resultTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"bytes\",\"name\":\"resultCborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.DataPushReport\",\"name\":\"_report\",\"type\":\"tuple\"},{\"internalType\":\"bytes\",\"name\":\"_signature\",\"type\":\"bytes\"}],\"name\":\"pushDataReport\",\"outputs\":[{\"components\":[{\"internalType\":\"enum Witnet.ResultStatus\",\"name\":\"status\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"uint8\"},{\"internalType\":\"Witnet.TransactionHash\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"finality\",\"type\":\"uint256\"},{\"internalType\":\"Witnet.Timestamp\",\"name\":\"timestamp\",\"type\":\"uint64\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"cursor\",\"type\":\"uint256\"}],\"internalType\":\"struct WitnetBuffer.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct WitnetCBOR.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.DataResult\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IWitOracleRadonRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"prevIndex\",\"type\":\"uint32\"},{\"internalType\":\"bytes24\",\"name\":\"prevRoot\",\"type\":\"bytes24\"},{\"internalType\":\"bytes16\",\"name\":\"ddrTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"droTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"uint256[4]\",\"name\":\"nextCommitteeAggPubkey\",\"type\":\"uint256[4]\"}],\"internalType\":\"struct Witnet.Beacon\",\"name\":\"beacon\",\"type\":\"tuple\"},{\"internalType\":\"uint256[2]\",\"name\":\"committeeAggSignature\",\"type\":\"uint256[2]\"},{\"internalType\":\"uint256[4][]\",\"name\":\"committeeMissingPubkeys\",\"type\":\"uint256[4][]\"}],\"internalType\":\"struct Witnet.FastForward[]\",\"name\":\"_witOracleRollup\",\"type\":\"tuple[]\"}],\"name\":\"rollupBeacons\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"prevIndex\",\"type\":\"uint32\"},{\"internalType\":\"bytes24\",\"name\":\"prevRoot\",\"type\":\"bytes24\"},{\"internalType\":\"bytes16\",\"name\":\"ddrTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"bytes16\",\"name\":\"droTalliesMerkleRoot\",\"type\":\"bytes16\"},{\"internalType\":\"uint256[4]\",\"name\":\"nextCommitteeAggPubkey\",\"type\":\"uint256[4]\"}],\"internalType\":\"struct Witnet.Beacon\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"specs\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Push-only WitOracle \\\"trustless\\\" base implementation.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"channel()\":{\"notice\":\"Uniquely identifies the WitOracle instance and the chain on which it's deployed.\"},\"class()\":{\"notice\":\"Returns the name of the actual contract implementing the logic of this Witnet appliance.\"},\"registry()\":{\"notice\":\"Returns the WitOracleRadonRegistry in which Witnet-compliant Radon requestscan be formally verified and forever registered as a away to let smart contracts and users to track actual data sources and offchain computations applied on data updates safely reported from the Wit/Oracle blockchain. \"},\"specs()\":{\"notice\":\"Returns the ERC-165 id of the minimal functionality expected for this appliance.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/core/base/WitOracleBasePushOnlyTrustless.sol\":\"WitOracleBasePushOnlyTrustless\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x74ed01eb66b923d0d0cfe3be84604ac04b76482a55f9dd655e1ef4d367f95bc2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5282825a626cfe924e504274b864a652b0023591fa66f06a067b25b51ba9b303\",\"dweb:/ipfs/QmeCfPykghhMc81VJTrHTC7sF6CRvaA1FXVq2pJhwYp1dV\"]},\"project:/contracts/WitOraclePushOnly.sol\":{\"keccak256\":\"0x659b4746c5a773b554b7a94bea3f55a995a8f850d750108302a8face9d1c833c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://291c6b4cd5c0f223ee63cc8cee2e228f47e1344a935eb89b6ef8f993eb5ce18e\",\"dweb:/ipfs/QmeKNLaVURv4N5jz5z67WQ4wyUUucqMaYLZQ2NnuuNyyPS\"]},\"project:/contracts/WitOracleRadonRegistry.sol\":{\"keccak256\":\"0xc9bd0ab02e13b36fe4072868ae978a230c5132a702d6594f11270ec5e7926e09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8321305b131abec96c492302163d95f8777106f74a0d42f5f50fdf60d2b3a381\",\"dweb:/ipfs/QmRx7FGWPkC41afPuJpBTDQ85wjH95Dbi3qAxVNfNZUsWe\"]},\"project:/contracts/core/base/WitOracleBasePushOnly.sol\":{\"keccak256\":\"0xdf4be00f732674d6a1a83fbb5801571690623a17b7388613af3a3debadf9ce2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d9b4b8a611ed9186249e30fcaeecc1d7bbda50338e794d5b65865f885f20ec6e\",\"dweb:/ipfs/Qme8xqsdQqdyDuy1DYijquG6LGJHqRzyruZ1MR6hPJCxmY\"]},\"project:/contracts/core/base/WitOracleBasePushOnlyTrustless.sol\":{\"keccak256\":\"0x2429d61b79afa8ada733a6d6508fee4aff3b82dab8dd0ca8c41c513d2dbe8507\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://036ca07ef8a02a13ce8945293530b327472fc1255e767ec38ec983a785e57ba4\",\"dweb:/ipfs/QmUE4ZssSpeQzCA3d4aN7n2hcdzpaEu8DEBToyVKjQuokN\"]},\"project:/contracts/data/WitOracleDataLib.sol\":{\"keccak256\":\"0x879c513c3cac839300e954d5ffe61c14eaec3052b39898ec2402068169fddd55\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63f58f4aa26e2a174fb5cee2fd9c06a10c337e6766b804e38bb4bbb3c3d4682d\",\"dweb:/ipfs/QmTjS8hws4VAd3S8dpNmX3zyV7oCF7xJ7AZTRJwrmbhSmi\"]},\"project:/contracts/data/WitOracleTrustlessDataLib.sol\":{\"keccak256\":\"0xe8a7bc0ec65380336ceb381c56afa6a3aff93bca34b4380a6c6d6faaeab16ae2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e0a4f80c9cae5ba779b8baa9a85feb2a948dd6d945002859405fd1fada34f809\",\"dweb:/ipfs/QmWGYMduHTbuvNE4p7JuVEBQXPzi8fHs1x7Gvqse2Upssa\"]},\"project:/contracts/interfaces/IWitAppliance.sol\":{\"keccak256\":\"0xd207ca54a1049445a3d99eea497d9b34c6dbdd44d771eee825e4c031bd2f447e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f81de32d868ff2881ed6fe97cc897e40b4b11d23cbe53a0e23cf3e68f9c0f0a3\",\"dweb:/ipfs/QmeeXmzmK5MAzt7Hf5DB2L81efKtTzZg9VbQ8sUiTqEk5c\"]},\"project:/contracts/interfaces/IWitOracle.sol\":{\"keccak256\":\"0x26cbe2074c0b3f545a46d95fad5e2280b67edcd958e4ae0b88f3a018aa11b805\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5324bac61f65e3edb01c88b9b75ca17affd593be88da5753a93b3f5304d3f479\",\"dweb:/ipfs/QmcVmNV6smbFiPaxvuN8ShkqbDZsT1wfjnF7f3qs6ke7QG\"]},\"project:/contracts/interfaces/IWitOracleQueriable.sol\":{\"keccak256\":\"0xdb0da1e377a35a7d620f43cb583a876750a52d91da2b888f48042483ad9c4910\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://edfcdf3e96ec3c5de7438f82e3d5a1dc9af9eb29080044213dccb26ff978354c\",\"dweb:/ipfs/Qmap2FzSysh2fug88eortbsTM7itFygRzKc9HfV43ePMik\"]},\"project:/contracts/interfaces/IWitOracleQueriableConsumer.sol\":{\"keccak256\":\"0xe8143d2387d674022f453b57652998f53cbe4c21fe35e59421428142355c8ebf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e6c3e3d3e7168a3fb75b1eca23d078d5240e5b02dac8a449d1ddf79256a34d8\",\"dweb:/ipfs/QmbGk4tQzTogTBVYiT8t3Gqtk6qDs5nyp9Z53GryTjKAm5\"]},\"project:/contracts/interfaces/IWitOracleQueriableEvents.sol\":{\"keccak256\":\"0x47c283e931006d35bd2599524f86724e45eae6fad2fdd9cdecd1c85a90ff3f8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3ad0520f99ec9298536ae9434f58caeb470c10dd3eaab1e4c7ed4cae9a97e2a2\",\"dweb:/ipfs/QmSuYCsSPweZfQc5Fbf9jYDdx4u7gwYCUdjhpcrrxmWZy6\"]},\"project:/contracts/interfaces/IWitOracleQueriableExperimental.sol\":{\"keccak256\":\"0x57c0007d813ed3e6dd3e0bb128e6ca7a0324214962823c6456e2e37d78ab4070\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b5edc498ccc728327f1f3c80d2decd7ca64920a3aee4faaba08dd354f1256b66\",\"dweb:/ipfs/QmdEJWUtQqTVdFLCiNKUPSe3NwXzuHmG6XzA1VbHHHgdPy\"]},\"project:/contracts/interfaces/IWitOracleQueriableTrustableReporter.sol\":{\"keccak256\":\"0x043a719845d75dccc3c7c046fdd214bb252ab2b85400fbd139ed5cea9469becc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b1be7cbf990ff4d383b1c0695626af794442f9a48f02e13435793c4316ff011\",\"dweb:/ipfs/QmX3Lq17FMsN2T9K4fAYg6CRTYjwHd6hT1XKjEA2T7QeM5\"]},\"project:/contracts/interfaces/IWitOracleRadonRegistry.sol\":{\"keccak256\":\"0x437bbb89129311bd1cc8f6becd333df46109ec53b24d3159be942b225614071f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ef9bcdf4a73cb126885478c994821b7fe2b87d9221b767b4c9342b89b0d6550a\",\"dweb:/ipfs/QmXzZXPMxjSiFpcEnhg6CjLFNxGCpDZt22xpUh7VHxNTGd\"]},\"project:/contracts/interfaces/IWitOracleRadonRegistryEvents.sol\":{\"keccak256\":\"0x9bd30477aeb33de11c4f1df3cd7451452a90ffed1f6eabd9e643046bf1e60d66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18fb38c5528ed2e1bf90ff8d123bf5a9523d0dc49f448d6c39ddad1cd9048d0a\",\"dweb:/ipfs/QmQq1RUwFgnGTk3xDAmN6u2WMPBzvjZNJc7TPYtG6aZfRn\"]},\"project:/contracts/interfaces/IWitOracleTrustableAdmin.sol\":{\"keccak256\":\"0x94b69b5a460d1407746ac70d32a0c5d4fca564b16cbd1940b822dd0ecb5336e9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a773b9d963647a5591b95c8fb359efd461dc494d1e3a1754cc83343310e07605\",\"dweb:/ipfs/QmU77Zre43r5sVj4DK2FjTda31zWgNDr9sGPug1dRv4ih6\"]},\"project:/contracts/interfaces/IWitOracleTrustless.sol\":{\"keccak256\":\"0x9220a2dd4736b37d909af59603b3d125758deb5d1845650aaa7c92cabd75f75b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://65d224d9c72e077605427b87c1fa1b47de53b1835dd148a27c13e9eb5a620e6d\",\"dweb:/ipfs/Qmaz8y5E4c73Zw4y4Siy2J3oNuhw9M7v2s7uC9XLi6dZaw\"]},\"project:/contracts/interfaces/legacy/IWitOracleLegacy.sol\":{\"keccak256\":\"0xd2929c9aa5a02d261d6d1a068a6b7231ae58d8f81f081ba89f2d3267a31fbbb5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://956b26323a02cf400c32012586954fc5dbc98b4d5b7a8b0533401cbda8619059\",\"dweb:/ipfs/QmSWdCRwL5t3atFM8osdaohLTqEEmY1FbnR6xrRCmw1GDM\"]},\"project:/contracts/interfaces/legacy/IWitOracleRequest.sol\":{\"keccak256\":\"0x0fb3f0ba03f4f7a0214ecb36df26525564cf51a8a2176cba92c185af8a1d419e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://340b7bdb92c3259519fe120eb3061b393e7a5e9c1b576a2fe4eab020af466b64\",\"dweb:/ipfs/QmRt4wMX9WdxFwfdFMUZ3zKMAW1grS7qLk1x1PDMJdEAVU\"]},\"project:/contracts/interfaces/legacy/IWitOracleRequestTemplate.sol\":{\"keccak256\":\"0x9e065ef5880c64eefff5fcfb1347fde6684e0e311f8c2350a6aefdbd1f8b0f22\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://817de760c7cce9d00dcd4312aea6434d88abddf1c0e68ea7e8fb1e6c5165a445\",\"dweb:/ipfs/QmUNmtn85nFXbje2nRJQY2h65KJCVinDMMU6P2jQmo1Nij\"]},\"project:/contracts/libs/Bech32.sol\":{\"keccak256\":\"0x14618323a0efe7586c20906a2e9cee7ad63baa976ff231c57f7f2d7d3707fb8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a19f05fe84047a7a6d3d6fc39972b432e6e536aa70472386a9d7a6d9aab64a64\",\"dweb:/ipfs/QmcHwUY66yjiotRH4Q3kbRvSzcHyLQ1yHL3KbtQKiMhtZE\"]},\"project:/contracts/libs/Secp256k1.sol\":{\"keccak256\":\"0xbe686002da5004ff39dd70709f3820eba2afe9323ae9cb894009c161e4b1a666\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18fab91775216de0707cea9ad285b10be09127461a13432fea358bf9cb2a0c2e\",\"dweb:/ipfs/QmeRUGsgstnM4hxM9hpkBf3L6cE5btirEaowcMxmuw3utj\"]},\"project:/contracts/libs/Witnet.sol\":{\"keccak256\":\"0x1d446c3e534e40e676d1763bfb2897fadfac8afed904ab757843d7d6770b0a6c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://338fb1073f17d64e8d31bfe492d9475ce906788ee08e6489ce30413f91dc1328\",\"dweb:/ipfs/QmPe5QX2AGTnQFjse1Xttq4ZYWwYAiXoySb5VUui3PqPhk\"]},\"project:/contracts/libs/WitnetBuffer.sol\":{\"keccak256\":\"0x8e07aebe2954ab3e6f2d8eceedb12db7cf915c1f3e8630f4fa9999cecb1c78ec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed6c54cc901183d61546e8fd15bd5ea8ef238ebc915642946071d435dd7481ea\",\"dweb:/ipfs/Qmcaqta7YjUSBbBUGqoh44bsCS6UqqoyHjBuz4qnKBShXM\"]},\"project:/contracts/libs/WitnetCBOR.sol\":{\"keccak256\":\"0xd99308373575cc10fb7f2ceb0f6a8625f3911275c1fa27811fae498d98d03d97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4909a999d7b660a2dc54ca957b6eccfa523e2765fc4d6a2574dee7d5cd67b43\",\"dweb:/ipfs/QmWGQT4KDcfSFe1hcHVoWx6E4PhYMaod5iLpJCWBEeShzh\"]},\"project:/contracts/patterns/Escrowable.sol\":{\"keccak256\":\"0xf0fdb82142f66323a1d419839ddcf67b51ac2faa418a2b364e0b2e4b5fdfbc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f5123dc63b3d2f501eec6b9616db46833c155c1dca416bb58dbeb924558f8020\",\"dweb:/ipfs/QmakA3u4rqWpzeiKkUZxhnQotReaybCCDMkkJZFHyZVb1U\"]},\"project:/contracts/patterns/Payable.sol\":{\"keccak256\":\"0x29ce79b9329cc854ddb0ee546e5a17f3cedafa91c7d614f43e8d6537680b1734\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00d5ce85f66c3c32b8b69bfed2f07f40d14ac72c2f67d2de6601de0be16b5af1\",\"dweb:/ipfs/QmZogwLRBjFUJVSzR8YuMfo3mKg8WvYVbn2QvWXsCVP92V\"]}},\"version\":1}",
"bytecode": "0x",
"deployedBytecode": "0x",
"immutableReferences": {},
"generatedSources": [],
"deployedGeneratedSources": [],
"sourceMap": "",
"deployedSourceMap": "",
"source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity >=0.8.0 <0.9.0;\r\n\r\nimport \"./WitOracleBasePushOnly.sol\";\r\n\r\nimport \"../../data/WitOracleTrustlessDataLib.sol\";\r\nimport \"../../data/WitOracleDataLib.sol\";\r\n\r\n/// @title Push-only WitOracle \"trustless\" base implementation.\r\n/// @author The Witnet Foundation\r\nabstract contract WitOracleBasePushOnlyTrustless\r\n is \r\n WitOracleBasePushOnly,\r\n IWitOracleTrustless\r\n{\r\n using Witnet for Witnet.DataPushReport;\r\n\r\n constructor() {\r\n // store genesis beacon:\r\n WitOracleTrustlessDataLib.data().beacons[\r\n Witnet.WIT_2_GENESIS_BEACON_INDEX\r\n ] = Witnet.Beacon({\r\n index: Witnet.WIT_2_GENESIS_BEACON_INDEX,\r\n prevIndex: Witnet.WIT_2_GENESIS_BEACON_PREV_INDEX,\r\n prevRoot: Witnet.WIT_2_GENESIS_BEACON_PREV_ROOT,\r\n ddrTalliesMerkleRoot: Witnet.WIT_2_GENESIS_BEACON_DDR_TALLIES_MERKLE_ROOT,\r\n droTalliesMerkleRoot: Witnet.WIT_2_GENESIS_BEACON_DRO_TALLIES_MERKLE_ROOT,\r\n nextCommitteeAggPubkey: [\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_0,\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_1,\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_2,\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_3\r\n ]\r\n });\r\n }\r\n\r\n \r\n // ================================================================================================================\r\n // --- IWitOracle -------------------------------------------------------------------------------------------------\r\n\r\n function parseDataReport(Witnet.DataPushReport calldata _report, bytes calldata _signature)\r\n virtual override public view\r\n returns (Witnet.DataResult memory _result)\r\n {\r\n (, _result) = WitOracleDataLib.parseDataReport(_report, _signature);\r\n }\r\n\r\n function pushDataReport(Witnet.DataPushReport calldata _report, bytes calldata _signature)\r\n virtual override external\r\n returns (Witnet.DataResult memory)\r\n {\r\n (address _evmSigner, Witnet.DataResult memory _result) = WitOracleDataLib.parseDataReport(_report, _signature);\r\n emit WitOracleReport(\r\n tx.origin, \r\n msg.sender, \r\n _evmSigner, \r\n _report.witDrTxHash,\r\n _report.queryRadHash,\r\n _report.queryParams,\r\n _report.resultTimestamp,\r\n _report.resultCborBytes\r\n );\r\n return _result;\r\n }\r\n\r\n\r\n // ================================================================================================================\r\n // --- IWitOracleTrustless -------------------------------------------------------------------------------------------\r\n\r\n function determineBeaconIndexFromTimestamp(Witnet.Timestamp timestamp)\r\n virtual override\r\n external pure\r\n returns (uint64)\r\n {\r\n return Witnet.determineBeaconIndexFromTimestamp(timestamp);\r\n }\r\n \r\n function determineEpochFromTimestamp(Witnet.Timestamp timestamp)\r\n virtual override\r\n external pure\r\n returns (Witnet.BlockNumber)\r\n {\r\n return Witnet.determineEpochFromTimestamp(timestamp);\r\n }\r\n\r\n function getBeaconByIndex(uint32 index)\r\n virtual override\r\n public view\r\n returns (Witnet.Beacon memory)\r\n {\r\n return WitOracleTrustlessDataLib.seekBeacon(index);\r\n }\r\n\r\n function getGenesisBeacon() \r\n virtual override \r\n external pure\r\n returns (Witnet.Beacon memory)\r\n {\r\n return Witnet.Beacon({\r\n index: Witnet.WIT_2_GENESIS_BEACON_INDEX,\r\n prevIndex: Witnet.WIT_2_GENESIS_BEACON_PREV_INDEX,\r\n prevRoot: Witnet.WIT_2_GENESIS_BEACON_PREV_ROOT,\r\n ddrTalliesMerkleRoot: Witnet.WIT_2_GENESIS_BEACON_DDR_TALLIES_MERKLE_ROOT,\r\n droTalliesMerkleRoot: Witnet.WIT_2_GENESIS_BEACON_DRO_TALLIES_MERKLE_ROOT,\r\n nextCommitteeAggPubkey: [\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_0,\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_1,\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_2,\r\n Witnet.WIT_2_GENESIS_BEACON_NEXT_COMMITTEE_AGG_PUBKEY_3\r\n ]\r\n });\r\n }\r\n\r\n function getLastKnownBeacon() \r\n virtual override\r\n public view\r\n returns (Witnet.Beacon memory)\r\n {\r\n return WitOracleTrustlessDataLib.getLastKnownBeacon();\r\n }\r\n\r\n function getLastKnownBeaconIndex()\r\n virtual override\r\n public view\r\n returns (uint32)\r\n {\r\n return uint32(WitOracleTrustlessDataLib.getLastKnownBeaconIndex());\r\n }\r\n\r\n function rollupBeacons(Witnet.FastForward[] calldata _witOracleRollup)\r\n virtual override public \r\n returns (Witnet.Beacon memory)\r\n {\r\n try WitOracleTrustlessDataLib.rollupBeacons(\r\n _witOracleRollup\r\n ) returns (\r\n Witnet.Beacon memory _witOracleHead\r\n ) {\r\n return _witOracleHead;\r\n \r\n } catch Error(string memory _reason) {\r\n _revert(_reason);\r\n \r\n } catch (bytes memory) {\r\n _revertUnhandledException();\r\n }\r\n }\r\n \r\n\r\n\r\n // ================================================================================================================\r\n // --- Internal functions -----------------------------------------------------------------------------------------\r\n\r\n function _revertUnhandledExceptionReason() \r\n virtual override internal pure returns (string memory)\r\n {\r\n return string(abi.encodePacked(\r\n type(WitOracleTrustlessDataLib).name,\r\n \": unhandled assertion\"\r\n ));\r\n }\r\n\r\n // /// Returns storage pointer to contents of 'WitOracleDataLib.Storage' struct.\r\n // function __storage() virtual internal pure returns (WitOracleDataLib.Storage storage _ptr) {\r\n // return WitOracleDataLib.data();\r\n // }\r\n}\r\n",
"sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\core\\base\\WitOracleBasePushOnlyTrustless.sol",
"ast": {
"absolutePath": "project:/contracts/core/base/WitOracleBasePushOnlyTrustless.sol",
"exportedSymbols": {
"Bech32": [
31372
],
"Escrowable": [
45618
],
"IERC20": [
493
],
"IWitAppliance": [
26514
],
"IWitOracle": [
26581
],
"IWitOracleLegacy": [
28786
],
"IWitOracleQueriable": [
26795
],
"IWitOracleQueriableConsumer": [
26815
],
"IWitOracleQueriableEvents": [
26892
],
"IWitOracleQueriableExperimental": [
26964
],
"IWitOracleQueriableTrustableReporter": [
27056
],
"IWitOracleRadonRegistry": [
27394
],
"IWitOracleRadonRegistryEvents": [
27414
],
"IWitOracleRequest": [
28922
],
"IWitOracleRequestTemplate": [
29115
],
"IWitOracleTrustableAdmin": [
27628
],
"IWitOracleTrustless": [
27689
],
"Payable": [
45766
],
"Secp256k1": [
32535
],
"WitOracleBasePushOnly": [
9455
],
"WitOracleBasePushOnlyTrustless": [
9936
],
"WitOracleDataLib": [
20110
],
"WitOraclePushOnly": [
701
],
"WitOracleRadonRegistry": [
726
],
"WitOracleTrustlessDataLib": [
22249
],
"Witnet": [
40741
],
"WitnetBuffer": [
42631
],
"WitnetCBOR": [
44174
]
},
"id": 9937,
"license": "