witnet-solidity-bridge
Version:
Witnet Solidity Bridge contracts for EVM-compatible chains
1,923 lines • 137 kB
JSON
{
"_format": "hh3-artifact-1",
"contractName": "WitPriceFeedsV3",
"sourceName": "contracts/apps/WitPriceFeedsV3.sol",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "_witOracle",
"type": "address"
},
{
"internalType": "address",
"name": "_operator",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "DeviantPrice",
"type": "error"
},
{
"inputs": [],
"name": "HotPrice",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "index",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "range",
"type": "uint256"
}
],
"name": "IndexOutOfBounds",
"type": "error"
},
{
"inputs": [],
"name": "InvalidArgument",
"type": "error"
},
{
"inputs": [],
"name": "InvalidGovernanceTarget",
"type": "error"
},
{
"inputs": [],
"name": "InvalidInitialization",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "length",
"type": "uint256"
}
],
"name": "InvalidLengthEncoding",
"type": "error"
},
{
"inputs": [],
"name": "InvalidUpdateData",
"type": "error"
},
{
"inputs": [],
"name": "InvalidUpdateDataSource",
"type": "error"
},
{
"inputs": [],
"name": "NoFreshUpdate",
"type": "error"
},
{
"inputs": [],
"name": "NotInitializing",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "OwnableInvalidOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "OwnableUnauthorizedAccount",
"type": "error"
},
{
"inputs": [],
"name": "PriceFeedNotFound",
"type": "error"
},
{
"inputs": [],
"name": "PriceFeedNotFoundWithinRange",
"type": "error"
},
{
"inputs": [],
"name": "StalePrice",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "read",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "expected",
"type": "uint256"
}
],
"name": "UnexpectedMajorType",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "by",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "master",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "clone",
"type": "address"
}
],
"name": "Cloned",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint64",
"name": "version",
"type": "uint64"
}
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferStarted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "id4",
"type": "bytes4"
},
{
"indexed": false,
"internalType": "string",
"name": "caption",
"type": "string"
},
{
"indexed": false,
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"indexed": false,
"internalType": "enum IWitPriceFeedsTypes.Mappers",
"name": "mapper",
"type": "uint8"
},
{
"indexed": false,
"internalType": "string[]",
"name": "dependencies",
"type": "string[]"
}
],
"name": "PriceFeedMapper",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "id4",
"type": "bytes4"
},
{
"indexed": false,
"internalType": "string",
"name": "caption",
"type": "string"
},
{
"indexed": false,
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"indexed": false,
"internalType": "enum IWitPriceFeedsTypes.Oracles",
"name": "oracle",
"type": "uint8"
},
{
"indexed": false,
"internalType": "address",
"name": "oracleAddress",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes32",
"name": "oracleSources",
"type": "bytes32"
}
],
"name": "PriceFeedOracle",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "id4",
"type": "bytes4"
},
{
"indexed": false,
"internalType": "string",
"name": "caption",
"type": "string"
}
],
"name": "PriceFeedRemoved",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "ID4",
"type": "bytes4"
},
{
"indexed": false,
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"indexed": false,
"internalType": "Witnet.TransactionHash",
"name": "trail",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint64",
"name": "price",
"type": "uint64"
},
{
"indexed": false,
"internalType": "int56",
"name": "deltaPrice",
"type": "int56"
},
{
"indexed": false,
"internalType": "int8",
"name": "exponent",
"type": "int8"
}
],
"name": "PriceFeedUpdate",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "id",
"type": "bytes32"
},
{
"indexed": false,
"internalType": "uint64",
"name": "publishTime",
"type": "uint64"
},
{
"indexed": false,
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"indexed": false,
"internalType": "uint64",
"name": "",
"type": "uint64"
}
],
"name": "PriceFeedUpdate",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": false,
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "id4",
"type": "bytes4"
},
{
"indexed": false,
"internalType": "string",
"name": "caption",
"type": "string"
},
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"indexed": false,
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "conditions",
"type": "tuple"
}
],
"name": "PriceFeedUpdateConditions",
"type": "event"
},
{
"inputs": [],
"name": "acceptOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "base",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "class",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_curator",
"type": "address"
}
],
"name": "clone",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "cloned",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "consumer",
"outputs": [
{
"internalType": "contract IWitPriceFeedsConsumer",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "symbol",
"type": "string"
}
],
"name": "createChainlinkAggregator",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "defaultUpdateConditions",
"outputs": [
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "footprint",
"outputs": [
{
"internalType": "bytes4",
"name": "_footprint",
"type": "bytes4"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPyth.ID",
"name": "_id",
"type": "bytes32"
}
],
"name": "getEmaPrice",
"outputs": [
{
"components": [
{
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"internalType": "uint64",
"name": "conf",
"type": "uint64"
},
{
"internalType": "int32",
"name": "expo",
"type": "int32"
},
{
"internalType": "uint256",
"name": "publishTime",
"type": "uint256"
}
],
"internalType": "struct IWitPyth.PythPrice",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPyth.ID",
"name": "_id",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "_age",
"type": "uint64"
}
],
"name": "getEmaPriceNotOlderThan",
"outputs": [
{
"components": [
{
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"internalType": "uint64",
"name": "conf",
"type": "uint64"
},
{
"internalType": "int32",
"name": "expo",
"type": "int32"
},
{
"internalType": "uint256",
"name": "publishTime",
"type": "uint256"
}
],
"internalType": "struct IWitPyth.PythPrice",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPyth.ID",
"name": "_id",
"type": "bytes32"
}
],
"name": "getEmaPriceUnsafe",
"outputs": [
{
"components": [
{
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"internalType": "uint64",
"name": "conf",
"type": "uint64"
},
{
"internalType": "int32",
"name": "expo",
"type": "int32"
},
{
"internalType": "uint256",
"name": "publishTime",
"type": "uint256"
}
],
"internalType": "struct IWitPyth.PythPrice",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPyth.ID",
"name": "_id",
"type": "bytes32"
}
],
"name": "getPrice",
"outputs": [
{
"components": [
{
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"internalType": "uint64",
"name": "conf",
"type": "uint64"
},
{
"internalType": "int32",
"name": "expo",
"type": "int32"
},
{
"internalType": "uint256",
"name": "publishTime",
"type": "uint256"
}
],
"internalType": "struct IWitPyth.PythPrice",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
}
],
"name": "getPrice",
"outputs": [
{
"components": [
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "uint64",
"name": "price",
"type": "uint64"
},
{
"internalType": "int56",
"name": "deltaPrice",
"type": "int56"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "Witnet.TransactionHash",
"name": "trail",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Price",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPyth.ID",
"name": "_id",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "_age",
"type": "uint64"
}
],
"name": "getPriceNotOlderThan",
"outputs": [
{
"components": [
{
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"internalType": "uint64",
"name": "conf",
"type": "uint64"
},
{
"internalType": "int32",
"name": "expo",
"type": "int32"
},
{
"internalType": "uint256",
"name": "publishTime",
"type": "uint256"
}
],
"internalType": "struct IWitPyth.PythPrice",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
},
{
"internalType": "uint24",
"name": "_age",
"type": "uint24"
}
],
"name": "getPriceNotOlderThan",
"outputs": [
{
"components": [
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "uint64",
"name": "price",
"type": "uint64"
},
{
"internalType": "int56",
"name": "deltaPrice",
"type": "int56"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "Witnet.TransactionHash",
"name": "trail",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Price",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPyth.ID",
"name": "_id",
"type": "bytes32"
}
],
"name": "getPriceUnsafe",
"outputs": [
{
"components": [
{
"internalType": "int64",
"name": "price",
"type": "int64"
},
{
"internalType": "uint64",
"name": "conf",
"type": "uint64"
},
{
"internalType": "int32",
"name": "expo",
"type": "int32"
},
{
"internalType": "uint256",
"name": "publishTime",
"type": "uint256"
}
],
"internalType": "struct IWitPyth.PythPrice",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
}
],
"name": "getPriceUnsafe",
"outputs": [
{
"components": [
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "uint64",
"name": "price",
"type": "uint64"
},
{
"internalType": "int56",
"name": "deltaPrice",
"type": "int56"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "Witnet.TransactionHash",
"name": "trail",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Price",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes",
"name": "",
"type": "bytes"
}
],
"name": "getUpdateFee",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
}
],
"name": "hash",
"outputs": [
{
"internalType": "IWitPyth.ID",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_curator",
"type": "address"
},
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "_defaultUpdateConditions",
"type": "tuple"
}
],
"name": "initializeClone",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "initialized",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
}
],
"name": "lookupPriceFeed",
"outputs": [
{
"components": [
{
"internalType": "IWitPyth.ID",
"name": "id",
"type": "bytes32"
},
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
},
{
"components": [
{
"internalType": "enum IWitPriceFeedsTypes.Mappers",
"name": "class",
"type": "uint8"
},
{
"internalType": "string[]",
"name": "deps",
"type": "string[]"
}
],
"internalType": "struct IWitPriceFeedsTypes.Mapper",
"name": "mapper",
"type": "tuple"
},
{
"components": [
{
"internalType": "enum IWitPriceFeedsTypes.Oracles",
"name": "class",
"type": "uint8"
},
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "bytes32",
"name": "sources",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Oracle",
"name": "oracle",
"type": "tuple"
},
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "updateConditions",
"type": "tuple"
},
{
"components": [
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "uint64",
"name": "price",
"type": "uint64"
},
{
"internalType": "int56",
"name": "deltaPrice",
"type": "int56"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "Witnet.TransactionHash",
"name": "trail",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Price",
"name": "lastUpdate",
"type": "tuple"
}
],
"internalType": "struct IWitPriceFeedsTypes.Info",
"name": "",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
}
],
"name": "lookupPriceFeedCaption",
"outputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
}
],
"name": "lookupPriceFeedExponent",
"outputs": [
{
"internalType": "int8",
"name": "",
"type": "int8"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "IWitPriceFeedsTypes.ID4",
"name": "_id4",
"type": "bytes4"
}
],
"name": "lookupPriceFeedID",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "lookupPriceFeeds",
"outputs": [
{
"components": [
{
"internalType": "IWitPyth.ID",
"name": "id",
"type": "bytes32"
},
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "string",
"name": "symbol",
"type": "string"
},
{
"components": [
{
"internalType": "enum IWitPriceFeedsTypes.Mappers",
"name": "class",
"type": "uint8"
},
{
"internalType": "string[]",
"name": "deps",
"type": "string[]"
}
],
"internalType": "struct IWitPriceFeedsTypes.Mapper",
"name": "mapper",
"type": "tuple"
},
{
"components": [
{
"internalType": "enum IWitPriceFeedsTypes.Oracles",
"name": "class",
"type": "uint8"
},
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "bytes32",
"name": "sources",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Oracle",
"name": "oracle",
"type": "tuple"
},
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "updateConditions",
"type": "tuple"
},
{
"components": [
{
"internalType": "int8",
"name": "exponent",
"type": "int8"
},
{
"internalType": "uint64",
"name": "price",
"type": "uint64"
},
{
"internalType": "int56",
"name": "deltaPrice",
"type": "int56"
},
{
"internalType": "Witnet.Timestamp",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "Witnet.TransactionHash",
"name": "trail",
"type": "bytes32"
}
],
"internalType": "struct IWitPriceFeedsTypes.Price",
"name": "lastUpdate",
"type": "tuple"
}
],
"internalType": "struct IWitPriceFeedsTypes.Info[]",
"name": "_infos",
"type": "tuple[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pendingOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"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": "proof",
"type": "bytes"
}
],
"name": "pushDataReport",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
},
{
"internalType": "bool",
"name": "_recursively",
"type": "bool"
}
],
"name": "removePriceFeed",
"outputs": [
{
"internalType": "bytes4",
"name": "_footprint",
"type": "bytes4"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_consumer",
"type": "address"
}
],
"name": "settleConsumer",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "_conditions",
"type": "tuple"
}
],
"name": "settleDefaultUpdateConditions",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
},
{
"internalType": "int8",
"name": "_exponent",
"type": "int8"
},
{
"internalType": "enum IWitPriceFeedsTypes.Mappers",
"name": "_mapper",
"type": "uint8"
},
{
"internalType": "string[]",
"name": "_deps",
"type": "string[]"
}
],
"name": "settlePriceFeedMapper",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
},
{
"internalType": "int8",
"name": "_exponent",
"type": "int8"
},
{
"internalType": "enum IWitPriceFeedsTypes.Oracles",
"name": "_oracle",
"type": "uint8"
},
{
"internalType": "address",
"name": "_oracleAddress",
"type": "address"
},
{
"internalType": "bytes32",
"name": "_oracleSources",
"type": "bytes32"
}
],
"name": "settlePriceFeedOracle",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
},
{
"internalType": "int8",
"name": "_exponent",
"type": "int8"
},
{
"internalType": "bytes",
"name": "_radonBytecode",
"type": "bytes"
}
],
"name": "settlePriceFeedRadonBytecode",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
},
{
"internalType": "int8",
"name": "_exponent",
"type": "int8"
},
{
"internalType": "Witnet.RadonHash",
"name": "_radonHash",
"type": "bytes32"
}
],
"name": "settlePriceFeedRadonHash",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_symbol",
"type": "string"
},
{
"components": [
{
"internalType": "uint24",
"name": "callbackGas",
"type": "uint24"
},
{
"internalType": "bool",
"name": "computeEma",
"type": "bool"
},
{
"internalType": "uint24",
"name": "cooldownSecs",
"type": "uint24"
},
{
"internalType": "uint24",
"name": "heartbeatSecs",
"type": "uint24"
},
{
"internalType": "uint16",
"name": "maxDeviation1000",
"type": "uint16"
},
{
"internalType": "uint16",
"name": "minWitnesses",
"type": "uint16"
}
],
"internalType": "struct IWitPriceFeedsTypes.UpdateConditions",
"name": "_conditions",
"type": "tuple"
}
],
"name": "settlePriceFeedUpdateConditions",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "specs",
"outputs": [
{
"internalType": "bytes4",
"name": "",
"type": "bytes4"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_caption",
"type": "string"
}
],
"name": "supportsCaption",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "_id",
"type": "bytes32"
}
],
"name": "valueFor",
"outputs": [
{
"internalType": "int256",
"name": "_value",
"type": "int256"
},
{
"internalType": "uint256",
"name": "_timestamp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_status",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "witOracle",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x60c060405230608052348015610013575f5ffd5b506040516157e53803806157e5833981016040819052610032916102c8565b6001600160a01b0381166100465733610048565b805b6001600160a01b03811661007657604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b61007f81610242565b505f826001600160a01b03163b116100d95760405162461bcd60e51b815260206004820152601560248201527f696e6578697374656e74207769742f6f7261636c650000000000000000000000604482015260640161006d565b5f826001600160a01b031663adb7c3f76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610116573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061013a91906102f9565b90506001600160e01b03198116636d11bc5160e11b148061016b57506001600160e01b031981166304722eaf60e31b145b6101b75760405162461bcd60e51b815260206004820152601660248201527f756e636f6d706c69616e74207769742f6f7261636c6500000000000000000000604482015260640161006d565b50506001600160a01b031660a09081526040805160c081018252620f424081525f6020820181905261038492820192909252620151806060820152608081019190915260039101527fc5354469a5d32189a18f5e79f9508d828fa089087c317bc89792b1c8dba5390480546001600160701b0319166c030000015180000384000f4240179055610327565b600180546001600160a01b031916905561025b8161025e565b50565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146102c3575f5ffd5b919050565b5f5f604083850312156102d9575f5ffd5b6102e2836102ad565b91506102f0602084016102ad565b90509250929050565b5f60208284031215610309575f5ffd5b81516001600160e01b031981168114610320575f5ffd5b9392505050565b60805160a05161546c6103795f395f818161029d01528181610fc0015281816112710152611c0b01525f81816103e90152818161175901528181611a880152818161297c0152612a29015261546c5ff3fe608060405234801561000f575f5ffd5b506004361061026b575f3560e01c8063974454091161014b578063c70f2f73116100bf578063e56bd31511610084578063e56bd31514610620578063e59a780814610633578063f2fde38b14610646578063f78eea8314610659578063fa78a97114610687578063fd91c0541461069a575f5ffd5b8063c70f2f73146105cc578063d9ea438f146105df578063e27b1088146105f2578063e30c397814610605578063e36a1d9e1461060d575f5ffd5b8063b411ee9411610110578063b411ee941461052f578063b4fd729614610542578063b5dcc911146103b4578063bff852fa14610572578063c5010d17146105a6578063c66f4c0a146105b9575f5ffd5b806397445409146104e75780639d61f28b1461034a578063a04daef014610507578063aba146ff1461050f578063adb7c3f714610522575f5ffd5b806367e559ac116101e25780638124b78e116101a75780638124b78e1461046b5780638a416ea91461047e5780638da5cb5b146104af5780639190795f146104bf5780639474f45b146104d457806396834ad3146104d4575f5ffd5b806367e559ac146104205780636d0d6a7e14610433578063715018a61461044857806379393a8b1461045057806379ba509714610463575f5ffd5b8063288b5e6711610233578063288b5e671461034a5780633108e1b81461039f57806331d98b3f146103b45780634c7510d0146103c75780635001f3b5146103e7578063608921931461040d575f5ffd5b80630683bcd21461026f5780631014d37514610298578063158ef93e146102d7578063238e0a8a14610304578063274d45db14610325575b5f5ffd5b61028261027d36600461332d565b6106ad565b60405161028f9190613555565b60405180910390f35b6102bf7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161028f565b5f5160206153f75f395f51905f5254600160601b900461ffff1615155b604051901515815260200161028f565b6103176103123660046135ab565b610a37565b60405190815260200161028f565b61033861033336600461332d565b610a3f565b6040515f9190910b815260200161028f565b61035d610358366004613608565b610a5c565b60405161028f9190815160070b81526020808301516001600160401b03169082015260408083015160030b908201526060918201519181019190915260800190565b6103a7610b69565b60405161028f9190613636565b61035d6103c2366004613699565b610c29565b6103da6103d53660046136bd565b610c87565b60405161028f919061370f565b7f00000000000000000000000000000000000000000000000000000000000000006102bf565b6103da61041b366004613731565b610e06565b6103da61042e3660046137f6565b610f96565b610446610441366004613876565b6111a2565b005b6104466116d1565b61044661045e3660046138f5565b6116e4565b61044661188e565b6102bf6104793660046138f5565b611896565b7fc5354469a5d32189a18f5e79f9508d828fa089087c317bc89792b1c8dba5390554600160a01b900460e01b6103da565b5f546001600160a01b03166102bf565b6104c761191c565b60405161028f9190613910565b61035d6104e2366004613699565b61199b565b6104fa6104f536600461332d565b6119e1565b60405161028f919061391e565b6102f4611a7d565b61044661051d366004613942565b611aad565b63