{
  "contractName": "IWitOracleConsumerLegacy",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "queryId",
          "type": "uint256"
        },
        {
          "internalType": "uint64",
          "name": "resultTimestamp",
          "type": "uint64"
        },
        {
          "internalType": "bytes32",
          "name": "resultDrTxHash",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "resultEvmFinalityBlock",
          "type": "uint256"
        },
        {
          "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": "witnetResultCborValue",
          "type": "tuple"
        }
      ],
      "name": "reportWitOracleResultValue",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "queryId",
          "type": "uint256"
        },
        {
          "internalType": "uint64",
          "name": "resultTimestamp",
          "type": "uint64"
        },
        {
          "internalType": "bytes32",
          "name": "resultDrTxHash",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "resultEvmFinalityBlock",
          "type": "uint256"
        },
        {
          "internalType": "enum Witnet.ResultStatus",
          "name": "errorCode",
          "type": "uint8"
        },
        {
          "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": "errorArgs",
          "type": "tuple"
        }
      ],
      "name": "reportWitOracleResultError",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "reportableFrom",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"resultTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"resultDrTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"resultEvmFinalityBlock\",\"type\":\"uint256\"},{\"internalType\":\"enum Witnet.ResultStatus\",\"name\":\"errorCode\",\"type\":\"uint8\"},{\"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\":\"errorArgs\",\"type\":\"tuple\"}],\"name\":\"reportWitOracleResultError\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint64\",\"name\":\"resultTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"resultDrTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"resultEvmFinalityBlock\",\"type\":\"uint256\"},{\"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\":\"witnetResultCborValue\",\"type\":\"tuple\"}],\"name\":\"reportWitOracleResultValue\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"reportableFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"reportWitOracleResultError(uint256,uint64,bytes32,uint256,uint8,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))\":{\"details\":\"It should revert if called from any other address different to the WitOracle being usedby the data consumer contract. \",\"params\":{\"errorArgs\":\"Error arguments, if any. An empty buffer is to be passed if no error arguments apply.\",\"errorCode\":\"The error code enum identifying the error produced during resolution on the Witnet blockchain.\",\"queryId\":\"The unique identifier of the Witnet query being reported.\",\"resultDrTxHash\":\"Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.\",\"resultEvmFinalityBlock\":\"EVM block at which the provided data can be considered to be final.\",\"resultTimestamp\":\"Timestamp at which the reported value was captured by the Witnet blockchain. \"}},\"reportWitOracleResultValue(uint256,uint64,bytes32,uint256,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))\":{\"details\":\"It should revert if called from any other address different to the WitOracle being usedby the data consumer contract. \",\"params\":{\"queryId\":\"The unique identifier of the Witnet query being reported.\",\"resultDrTxHash\":\"Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.\",\"resultEvmFinalityBlock\":\"EVM block at which the provided data can be considered to be final.\",\"resultTimestamp\":\"Timestamp at which the reported value was captured by the Witnet blockchain. \",\"witnetResultCborValue\":\"The CBOR-encoded resulting value of the Witnet query being reported.\"}},\"reportableFrom(address)\":{\"details\":\"In practice, must only be true on the WitOracle address that's being used bythe data consumer contract to post queries. \"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"reportWitOracleResultError(uint256,uint64,bytes32,uint256,uint8,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Method to be called from the WitOracle contract as soon as the given Witnet `queryId`gets reported, if reported WITH errors.\"},\"reportWitOracleResultValue(uint256,uint64,bytes32,uint256,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Method to be called from the WitOracle contract as soon as the given Witnet `queryId`gets reported, if reported with no errors.\"},\"reportableFrom(address)\":{\"notice\":\"Determines if Witnet queries can be reported from given address.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/interfaces/legacy/IWitOracleConsumerLegacy.sol\":\"IWitOracleConsumerLegacy\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/interfaces/legacy/IWitOracleConsumerLegacy.sol\":{\"keccak256\":\"0xe8d2cb7d9ae7ab696b1628524145c68580f8eae3952cd6a38b8031cc7ad5c627\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://765945bed8be3f615b205c604e7043955505f8e3e85f4088063c78824dd1f0a5\",\"dweb:/ipfs/QmbJqz5K4eVMqk4hst7VzLBcTy4qL5U7i21HeTDDeQLYAX\"]},\"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\"]}},\"version\":1}",
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "immutableReferences": {},
  "generatedSources": [],
  "deployedGeneratedSources": [],
  "sourceMap": "",
  "deployedSourceMap": "",
  "source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity ^0.8.0;\r\n\r\nimport \"../../libs/Witnet.sol\";\r\n\r\ninterface IWitOracleConsumerLegacy {\r\n\r\n    /// @notice Method to be called from the WitOracle contract as soon as the given Witnet `queryId`\r\n    /// @notice gets reported, if reported with no errors.\r\n    /// @dev It should revert if called from any other address different to the WitOracle being used\r\n    /// @dev by the data consumer contract. \r\n    /// @param queryId The unique identifier of the Witnet query being reported.\r\n    /// @param resultDrTxHash Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.\r\n    /// @param resultTimestamp Timestamp at which the reported value was captured by the Witnet blockchain. \r\n    /// @param resultEvmFinalityBlock EVM block at which the provided data can be considered to be final.\r\n    /// @param witnetResultCborValue The CBOR-encoded resulting value of the Witnet query being reported.\r\n    function reportWitOracleResultValue(\r\n            uint256 queryId, \r\n            uint64  resultTimestamp,\r\n            bytes32 resultDrTxHash,\r\n            uint256 resultEvmFinalityBlock,\r\n            WitnetCBOR.CBOR calldata witnetResultCborValue\r\n        ) external;\r\n\r\n    /// @notice Method to be called from the WitOracle contract as soon as the given Witnet `queryId`\r\n    /// @notice gets reported, if reported WITH errors.\r\n    /// @dev It should revert if called from any other address different to the WitOracle being used\r\n    /// @dev by the data consumer contract. \r\n    /// @param queryId The unique identifier of the Witnet query being reported.\r\n    /// @param resultDrTxHash Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.\r\n    /// @param resultTimestamp Timestamp at which the reported value was captured by the Witnet blockchain. \r\n    /// @param resultEvmFinalityBlock EVM block at which the provided data can be considered to be final.\r\n    /// @param errorCode The error code enum identifying the error produced during resolution on the Witnet blockchain.\r\n    /// @param errorArgs Error arguments, if any. An empty buffer is to be passed if no error arguments apply.\r\n    function reportWitOracleResultError(\r\n            uint256 queryId, \r\n            uint64  resultTimestamp,\r\n            bytes32 resultDrTxHash,\r\n            uint256 resultEvmFinalityBlock,\r\n            Witnet.ResultStatus errorCode, \r\n            WitnetCBOR.CBOR calldata errorArgs\r\n        ) external;\r\n\r\n    /// @notice Determines if Witnet queries can be reported from given address.\r\n    /// @dev In practice, must only be true on the WitOracle address that's being used by\r\n    /// @dev the data consumer contract to post queries. \r\n    function reportableFrom(address) external view returns (bool);\r\n}",
  "sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\interfaces\\legacy\\IWitOracleConsumerLegacy.sol",
  "ast": {
    "absolutePath": "project:/contracts/interfaces/legacy/IWitOracleConsumerLegacy.sol",
    "exportedSymbols": {
      "Bech32": [
        31372
      ],
      "IWitOracleConsumerLegacy": [
        28569
      ],
      "Secp256k1": [
        32535
      ],
      "Witnet": [
        40741
      ],
      "WitnetBuffer": [
        42631
      ],
      "WitnetCBOR": [
        44174
      ]
    },
    "id": 28570,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 28526,
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "35:23:92"
      },
      {
        "absolutePath": "project:/contracts/libs/Witnet.sol",
        "file": "../../libs/Witnet.sol",
        "id": 28527,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 28570,
        "sourceUnit": 40742,
        "src": "62:31:92",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "canonicalName": "IWitOracleConsumerLegacy",
        "contractDependencies": [],
        "contractKind": "interface",
        "fullyImplemented": false,
        "id": 28569,
        "linearizedBaseContracts": [
          28569
        ],
        "name": "IWitOracleConsumerLegacy",
        "nameLocation": "107:24:92",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "documentation": {
              "id": 28528,
              "nodeType": "StructuredDocumentation",
              "src": "141:824:92",
              "text": "@notice Method to be called from the WitOracle contract as soon as the given Witnet `queryId`\n @notice gets reported, if reported with no errors.\n @dev It should revert if called from any other address different to the WitOracle being used\n @dev by the data consumer contract. \n @param queryId The unique identifier of the Witnet query being reported.\n @param resultDrTxHash Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.\n @param resultTimestamp Timestamp at which the reported value was captured by the Witnet blockchain. \n @param resultEvmFinalityBlock EVM block at which the provided data can be considered to be final.\n @param witnetResultCborValue The CBOR-encoded resulting value of the Witnet query being reported."
            },
            "functionSelector": "68d44229",
            "id": 28542,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reportWitOracleResultValue",
            "nameLocation": "980:26:92",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 28540,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 28530,
                  "mutability": "mutable",
                  "name": "queryId",
                  "nameLocation": "1029:7:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28542,
                  "src": "1021:15:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 28529,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1021:7:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28532,
                  "mutability": "mutable",
                  "name": "resultTimestamp",
                  "nameLocation": "1060:15:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28542,
                  "src": "1052:23:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 28531,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "1052:6:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28534,
                  "mutability": "mutable",
                  "name": "resultDrTxHash",
                  "nameLocation": "1098:14:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28542,
                  "src": "1090:22:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 28533,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1090:7:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28536,
                  "mutability": "mutable",
                  "name": "resultEvmFinalityBlock",
                  "nameLocation": "1135:22:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28542,
                  "src": "1127:30:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 28535,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1127:7:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28539,
                  "mutability": "mutable",
                  "name": "witnetResultCborValue",
                  "nameLocation": "1197:21:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28542,
                  "src": "1172:46:92",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_CBOR_$42658_calldata_ptr",
                    "typeString": "struct WitnetCBOR.CBOR"
                  },
                  "typeName": {
                    "id": 28538,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 28537,
                      "name": "WitnetCBOR.CBOR",
                      "nameLocations": [
                        "1172:10:92",
                        "1183:4:92"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 42658,
                      "src": "1172:15:92"
                    },
                    "referencedDeclaration": 42658,
                    "src": "1172:15:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                      "typeString": "struct WitnetCBOR.CBOR"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1006:223:92"
            },
            "returnParameters": {
              "id": 28541,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1238:0:92"
            },
            "scope": 28569,
            "src": "971:268:92",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "documentation": {
              "id": 28543,
              "nodeType": "StructuredDocumentation",
              "src": "1247:947:92",
              "text": "@notice Method to be called from the WitOracle contract as soon as the given Witnet `queryId`\n @notice gets reported, if reported WITH errors.\n @dev It should revert if called from any other address different to the WitOracle being used\n @dev by the data consumer contract. \n @param queryId The unique identifier of the Witnet query being reported.\n @param resultDrTxHash Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.\n @param resultTimestamp Timestamp at which the reported value was captured by the Witnet blockchain. \n @param resultEvmFinalityBlock EVM block at which the provided data can be considered to be final.\n @param errorCode The error code enum identifying the error produced during resolution on the Witnet blockchain.\n @param errorArgs Error arguments, if any. An empty buffer is to be passed if no error arguments apply."
            },
            "functionSelector": "713d2a0c",
            "id": 28560,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reportWitOracleResultError",
            "nameLocation": "2209:26:92",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 28558,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 28545,
                  "mutability": "mutable",
                  "name": "queryId",
                  "nameLocation": "2258:7:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28560,
                  "src": "2250:15:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 28544,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2250:7:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28547,
                  "mutability": "mutable",
                  "name": "resultTimestamp",
                  "nameLocation": "2289:15:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28560,
                  "src": "2281:23:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 28546,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "2281:6:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28549,
                  "mutability": "mutable",
                  "name": "resultDrTxHash",
                  "nameLocation": "2327:14:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28560,
                  "src": "2319:22:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 28548,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2319:7:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28551,
                  "mutability": "mutable",
                  "name": "resultEvmFinalityBlock",
                  "nameLocation": "2364:22:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28560,
                  "src": "2356:30:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 28550,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2356:7:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28554,
                  "mutability": "mutable",
                  "name": "errorCode",
                  "nameLocation": "2421:9:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28560,
                  "src": "2401:29:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_ResultStatus_$37698",
                    "typeString": "enum Witnet.ResultStatus"
                  },
                  "typeName": {
                    "id": 28553,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 28552,
                      "name": "Witnet.ResultStatus",
                      "nameLocations": [
                        "2401:6:92",
                        "2408:12:92"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37698,
                      "src": "2401:19:92"
                    },
                    "referencedDeclaration": 37698,
                    "src": "2401:19:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_ResultStatus_$37698",
                      "typeString": "enum Witnet.ResultStatus"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 28557,
                  "mutability": "mutable",
                  "name": "errorArgs",
                  "nameLocation": "2471:9:92",
                  "nodeType": "VariableDeclaration",
                  "scope": 28560,
                  "src": "2446:34:92",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_CBOR_$42658_calldata_ptr",
                    "typeString": "struct WitnetCBOR.CBOR"
                  },
                  "typeName": {
                    "id": 28556,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 28555,
                      "name": "WitnetCBOR.CBOR",
                      "nameLocations": [
                        "2446:10:92",
                        "2457:4:92"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 42658,
                      "src": "2446:15:92"
                    },
                    "referencedDeclaration": 42658,
                    "src": "2446:15:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                      "typeString": "struct WitnetCBOR.CBOR"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2235:256:92"
            },
            "returnParameters": {
              "id": 28559,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2500:0:92"
            },
            "scope": 28569,
            "src": "2200:301:92",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "documentation": {
              "id": 28561,
              "nodeType": "StructuredDocumentation",
              "src": "2509:226:92",
              "text": "@notice Determines if Witnet queries can be reported from given address.\n @dev In practice, must only be true on the WitOracle address that's being used by\n @dev the data consumer contract to post queries. "
            },
            "functionSelector": "47a10e56",
            "id": 28568,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "reportableFrom",
            "nameLocation": "2750:14:92",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 28564,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 28563,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 28568,
                  "src": "2765:7:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 28562,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2765:7:92",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2764:9:92"
            },
            "returnParameters": {
              "id": 28567,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 28566,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 28568,
                  "src": "2797:4:92",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 28565,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2797:4:92",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2796:6:92"
            },
            "scope": 28569,
            "src": "2741:62:92",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 28570,
        "src": "97:2709:92",
        "usedErrors": [],
        "usedEvents": []
      }
    ],
    "src": "35:2771:92"
  },
  "compiler": {
    "name": "solc",
    "version": "0.8.30+commit.73712a01.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.4.16",
  "updatedAt": "2025-10-15T14:34:45.922Z",
  "devdoc": {
    "kind": "dev",
    "methods": {
      "reportWitOracleResultError(uint256,uint64,bytes32,uint256,uint8,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))": {
        "details": "It should revert if called from any other address different to the WitOracle being usedby the data consumer contract. ",
        "params": {
          "errorArgs": "Error arguments, if any. An empty buffer is to be passed if no error arguments apply.",
          "errorCode": "The error code enum identifying the error produced during resolution on the Witnet blockchain.",
          "queryId": "The unique identifier of the Witnet query being reported.",
          "resultDrTxHash": "Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.",
          "resultEvmFinalityBlock": "EVM block at which the provided data can be considered to be final.",
          "resultTimestamp": "Timestamp at which the reported value was captured by the Witnet blockchain. "
        }
      },
      "reportWitOracleResultValue(uint256,uint64,bytes32,uint256,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))": {
        "details": "It should revert if called from any other address different to the WitOracle being usedby the data consumer contract. ",
        "params": {
          "queryId": "The unique identifier of the Witnet query being reported.",
          "resultDrTxHash": "Hash of the commit/reveal witnessing act that took place in the Witnet blockahin.",
          "resultEvmFinalityBlock": "EVM block at which the provided data can be considered to be final.",
          "resultTimestamp": "Timestamp at which the reported value was captured by the Witnet blockchain. ",
          "witnetResultCborValue": "The CBOR-encoded resulting value of the Witnet query being reported."
        }
      },
      "reportableFrom(address)": {
        "details": "In practice, must only be true on the WitOracle address that's being used bythe data consumer contract to post queries. "
      }
    },
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {
      "reportWitOracleResultError(uint256,uint64,bytes32,uint256,uint8,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))": {
        "notice": "Method to be called from the WitOracle contract as soon as the given Witnet `queryId`gets reported, if reported WITH errors."
      },
      "reportWitOracleResultValue(uint256,uint64,bytes32,uint256,((bytes,uint256),uint8,uint8,uint8,uint64,uint64))": {
        "notice": "Method to be called from the WitOracle contract as soon as the given Witnet `queryId`gets reported, if reported with no errors."
      },
      "reportableFrom(address)": {
        "notice": "Determines if Witnet queries can be reported from given address."
      }
    },
    "version": 1
  }
}