{
  "contractName": "WitOracleRadonRequestFactory",
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "name": "NewRadonReducer",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "Witnet.RadonHash",
          "name": "radonHash",
          "type": "bytes32"
        }
      ],
      "name": "NewRadonRequest",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "witOracleRadonRequestModal",
          "type": "address"
        }
      ],
      "name": "NewRadonRequestModal",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "witOracleRadonRequestTemplate",
          "type": "address"
        }
      ],
      "name": "NewRadonRequestTemplate",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "name": "NewRadonRetrieval",
      "type": "event"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "uint8"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "script",
              "type": "bytes"
            }
          ],
          "internalType": "struct IWitOracleRadonRequestFactory.DataSourceRequest",
          "name": "commonDataRequest",
          "type": "tuple"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "uint8"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "crowdAttestationTally",
          "type": "tuple"
        }
      ],
      "name": "buildRadonRequestModal",
      "outputs": [
        {
          "internalType": "contract IWitOracleRadonRequestModal",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonRetrievalMethods",
                  "name": "method",
                  "type": "uint8"
                },
                {
                  "internalType": "string",
                  "name": "body",
                  "type": "string"
                },
                {
                  "internalType": "string[2][]",
                  "name": "headers",
                  "type": "string[2][]"
                },
                {
                  "internalType": "bytes",
                  "name": "script",
                  "type": "bytes"
                }
              ],
              "internalType": "struct IWitOracleRadonRequestFactory.DataSourceRequest",
              "name": "request",
              "type": "tuple"
            }
          ],
          "internalType": "struct IWitOracleRadonRequestFactory.DataSource[]",
          "name": "dataSources",
          "type": "tuple[]"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "uint8"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "dataSourcesAggregator",
          "type": "tuple"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "uint8"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "crowdAttestationTally",
          "type": "tuple"
        }
      ],
      "name": "buildRadonRequestTemplate",
      "outputs": [
        {
          "internalType": "contract IWitOracleRadonRequestTemplate",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "dataRetrieveHashes",
          "type": "bytes32[]"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "uint8"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "dataSourcesAggregator",
          "type": "tuple"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "uint8"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "crowdAttestationTally",
          "type": "tuple"
        }
      ],
      "name": "buildRadonRequestTemplate",
      "outputs": [
        {
          "internalType": "contract IWitOracleRadonRequestTemplate",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "class",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "witOracle",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "specs",
      "outputs": [
        {
          "internalType": "bytes4",
          "name": "",
          "type": "bytes4"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"name\":\"NewRadonReducer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"Witnet.RadonHash\",\"name\":\"radonHash\",\"type\":\"bytes32\"}],\"name\":\"NewRadonRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"witOracleRadonRequestModal\",\"type\":\"address\"}],\"name\":\"NewRadonRequestModal\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"witOracleRadonRequestTemplate\",\"type\":\"address\"}],\"name\":\"NewRadonRequestTemplate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"name\":\"NewRadonRetrieval\",\"type\":\"event\"},{\"inputs\":[{\"components\":[{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitOracleRadonRequestFactory.DataSourceRequest\",\"name\":\"commonDataRequest\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"crowdAttestationTally\",\"type\":\"tuple\"}],\"name\":\"buildRadonRequestModal\",\"outputs\":[{\"internalType\":\"contract IWitOracleRadonRequestModal\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitOracleRadonRequestFactory.DataSourceRequest\",\"name\":\"request\",\"type\":\"tuple\"}],\"internalType\":\"struct IWitOracleRadonRequestFactory.DataSource[]\",\"name\":\"dataSources\",\"type\":\"tuple[]\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"dataSourcesAggregator\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"crowdAttestationTally\",\"type\":\"tuple\"}],\"name\":\"buildRadonRequestTemplate\",\"outputs\":[{\"internalType\":\"contract IWitOracleRadonRequestTemplate\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"dataRetrieveHashes\",\"type\":\"bytes32[]\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"dataSourcesAggregator\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"crowdAttestationTally\",\"type\":\"tuple\"}],\"name\":\"buildRadonRequestTemplate\",\"outputs\":[{\"internalType\":\"contract IWitOracleRadonRequestTemplate\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"class\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"specs\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witOracle\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"events\":{\"NewRadonReducer(bytes32)\":{\"notice\":\"Emitted every time a new Radon Reducer gets successfully verified and stored into the WitOracleRadonRegistry.\"},\"NewRadonRequest(bytes32)\":{\"notice\":\"Emitted every time a new Radon Request gets successfully verified and stored into the WitOracleRadonRegistry.\"},\"NewRadonRetrieval(bytes32)\":{\"notice\":\"Emitted every time a new Radon Retrieval gets successfully verified and stored into the WitOracleRadonRegistry.\"}},\"kind\":\"user\",\"methods\":{\"class()\":{\"notice\":\"Returns the name of the actual contract implementing the logic of this Witnet appliance.\"},\"specs()\":{\"notice\":\"Returns the ERC-165 id of the minimal functionality expected for this appliance.\"},\"witOracle()\":{\"notice\":\"Returns the WitOracle address that this appliance is bound to.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/WitOracleRadonRequestFactory.sol\":\"WitOracleRadonRequestFactory\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/WitOracleRadonRequestFactory.sol\":{\"keccak256\":\"0x7aa7a7f61c2e5a61a050a3e1819e7eed11f9e8a09b15b157e1bc1b298b6118c0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d75af90a732a14fb76cd043978e09bd1e53c378c54039b9e1c2f3fee5e071fd2\",\"dweb:/ipfs/QmSSDQxsi4CueiFnKHuCTHzscgt4TroRTBDYUBywPi8o3b\"]},\"project:/contracts/interfaces/IWitAppliance.sol\":{\"keccak256\":\"0xd207ca54a1049445a3d99eea497d9b34c6dbdd44d771eee825e4c031bd2f447e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f81de32d868ff2881ed6fe97cc897e40b4b11d23cbe53a0e23cf3e68f9c0f0a3\",\"dweb:/ipfs/QmeeXmzmK5MAzt7Hf5DB2L81efKtTzZg9VbQ8sUiTqEk5c\"]},\"project:/contracts/interfaces/IWitOracleAppliance.sol\":{\"keccak256\":\"0xcd8e57eca7f8042c85a83264e2ff6d1cd7a9f1521831736d7f57bcc7800642e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5c639668e9439d60770b5df77436088ae7bd0aeb1d1be446552a98b6c29138f0\",\"dweb:/ipfs/QmbN3f5YuKMSd2j9tjay3VEkiYibGWpbfbwRNyrxA8k4o4\"]},\"project:/contracts/interfaces/IWitOracleRadonRegistryEvents.sol\":{\"keccak256\":\"0x9bd30477aeb33de11c4f1df3cd7451452a90ffed1f6eabd9e643046bf1e60d66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18fb38c5528ed2e1bf90ff8d123bf5a9523d0dc49f448d6c39ddad1cd9048d0a\",\"dweb:/ipfs/QmQq1RUwFgnGTk3xDAmN6u2WMPBzvjZNJc7TPYtG6aZfRn\"]},\"project:/contracts/interfaces/IWitOracleRadonRequestFactory.sol\":{\"keccak256\":\"0x4484204bd9cb0f054dfe5120409e9da5ff7e4eca03917e3c0c4cef9a322ee98a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ecd34db48b011fc94c5132ff6fead4ca36b45a464e2342b65692cc4001cde0bb\",\"dweb:/ipfs/QmNPG3hM7XpMN3iGvR7UhGiSS3Kz5qNmEZKUQRjSPggKax\"]},\"project:/contracts/interfaces/IWitOracleRadonRequestModal.sol\":{\"keccak256\":\"0x60b777e63700ed42d7e4b88c8e12db4b5220adb10d2ecc618c8c2a99a09eccee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b70b584cba3caa113e95aef31dbf5d5ae78042907c159e3ca25e3420d3b5b3f\",\"dweb:/ipfs/QmRThmU5vd8aVX2iK33pfmp6SKgfqgnC9VpT6Ruk1EwyVB\"]},\"project:/contracts/interfaces/IWitOracleRadonRequestTemplate.sol\":{\"keccak256\":\"0xb3f8ec0cbd9cde19348cfd5f51480fb1a0ffe479bf38043ec385f9b4ef1a53f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90fa841ff07d95c96d2c0d0423845a49280fbbf287d3b00b56dfda8c7c8ea15c\",\"dweb:/ipfs/QmfD7cP4V4kuFjeNdXC8tDyrEJCbTAHCenJ7sC7f6cfxvP\"]},\"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 <0.9.0;\r\n\r\nimport \"./interfaces/IWitOracleAppliance.sol\";\r\nimport \"./interfaces/IWitOracleRadonRegistryEvents.sol\";\r\nimport \"./interfaces/IWitOracleRadonRequestFactory.sol\";\r\n\r\nabstract contract WitOracleRadonRequestFactory\r\n    is\r\n        IWitOracleAppliance, \r\n        IWitOracleRadonRegistryEvents,\r\n        IWitOracleRadonRequestFactory\r\n{\r\n    function specs() virtual override external pure returns (bytes4) {\r\n        return (\r\n            type(WitOracleRadonRequestFactory).interfaceId\r\n        );\r\n    }\r\n}\r\n",
  "sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\WitOracleRadonRequestFactory.sol",
  "ast": {
    "absolutePath": "project:/contracts/WitOracleRadonRequestFactory.sol",
    "exportedSymbols": {
      "Bech32": [
        31372
      ],
      "IWitAppliance": [
        26514
      ],
      "IWitOracleAppliance": [
        26593
      ],
      "IWitOracleRadonRegistryEvents": [
        27414
      ],
      "IWitOracleRadonRequestFactory": [
        27489
      ],
      "IWitOracleRadonRequestModal": [
        27541
      ],
      "IWitOracleRadonRequestTemplate": [
        27592
      ],
      "Secp256k1": [
        32535
      ],
      "WitOracleRadonRequestFactory": [
        751
      ],
      "Witnet": [
        40741
      ],
      "WitnetBuffer": [
        42631
      ],
      "WitnetCBOR": [
        44174
      ]
    },
    "id": 752,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 728,
        "literals": [
          "solidity",
          ">=",
          "0.8",
          ".0",
          "<",
          "0.9",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "35:31:11"
      },
      {
        "absolutePath": "project:/contracts/interfaces/IWitOracleAppliance.sol",
        "file": "./interfaces/IWitOracleAppliance.sol",
        "id": 729,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 752,
        "sourceUnit": 26594,
        "src": "70:46:11",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "project:/contracts/interfaces/IWitOracleRadonRegistryEvents.sol",
        "file": "./interfaces/IWitOracleRadonRegistryEvents.sol",
        "id": 730,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 752,
        "sourceUnit": 27415,
        "src": "118:56:11",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "project:/contracts/interfaces/IWitOracleRadonRequestFactory.sol",
        "file": "./interfaces/IWitOracleRadonRequestFactory.sol",
        "id": 731,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 752,
        "sourceUnit": 27490,
        "src": "176:56:11",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": true,
        "baseContracts": [
          {
            "baseName": {
              "id": 732,
              "name": "IWitOracleAppliance",
              "nameLocations": [
                "300:19:11"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 26593,
              "src": "300:19:11"
            },
            "id": 733,
            "nodeType": "InheritanceSpecifier",
            "src": "300:19:11"
          },
          {
            "baseName": {
              "id": 734,
              "name": "IWitOracleRadonRegistryEvents",
              "nameLocations": [
                "331:29:11"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 27414,
              "src": "331:29:11"
            },
            "id": 735,
            "nodeType": "InheritanceSpecifier",
            "src": "331:29:11"
          },
          {
            "baseName": {
              "id": 736,
              "name": "IWitOracleRadonRequestFactory",
              "nameLocations": [
                "371:29:11"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 27489,
              "src": "371:29:11"
            },
            "id": 737,
            "nodeType": "InheritanceSpecifier",
            "src": "371:29:11"
          }
        ],
        "canonicalName": "WitOracleRadonRequestFactory",
        "contractDependencies": [],
        "contractKind": "contract",
        "fullyImplemented": false,
        "id": 751,
        "linearizedBaseContracts": [
          751,
          27489,
          27414,
          26593,
          26514
        ],
        "name": "WitOracleRadonRequestFactory",
        "nameLocation": "254:28:11",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "baseFunctions": [
              26478
            ],
            "body": {
              "id": 749,
              "nodeType": "Block",
              "src": "474:98:11",
              "statements": [
                {
                  "expression": {
                    "components": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "id": 744,
                              "name": "WitOracleRadonRequestFactory",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 751,
                              "src": "512:28:11",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_WitOracleRadonRequestFactory_$751_$",
                                "typeString": "type(contract WitOracleRadonRequestFactory)"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_type$_t_contract$_WitOracleRadonRequestFactory_$751_$",
                                "typeString": "type(contract WitOracleRadonRequestFactory)"
                              }
                            ],
                            "id": 743,
                            "name": "type",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 4294967269,
                            "src": "507:4:11",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_metatype_pure$__$returns$__$",
                              "typeString": "function () pure"
                            }
                          },
                          "id": 745,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "507:34:11",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_meta_type_t_contract$_WitOracleRadonRequestFactory_$751",
                            "typeString": "type(contract WitOracleRadonRequestFactory)"
                          }
                        },
                        "id": 746,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "542:11:11",
                        "memberName": "interfaceId",
                        "nodeType": "MemberAccess",
                        "src": "507:46:11",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes4",
                          "typeString": "bytes4"
                        }
                      }
                    ],
                    "id": 747,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": true,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "492:72:11",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes4",
                      "typeString": "bytes4"
                    }
                  },
                  "functionReturnParameters": 742,
                  "id": 748,
                  "nodeType": "Return",
                  "src": "485:79:11"
                }
              ]
            },
            "functionSelector": "adb7c3f7",
            "id": 750,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "specs",
            "nameLocation": "418:5:11",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 739,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "434:8:11"
            },
            "parameters": {
              "id": 738,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "423:2:11"
            },
            "returnParameters": {
              "id": 742,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 741,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 750,
                  "src": "466:6:11",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes4",
                    "typeString": "bytes4"
                  },
                  "typeName": {
                    "id": 740,
                    "name": "bytes4",
                    "nodeType": "ElementaryTypeName",
                    "src": "466:6:11",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes4",
                      "typeString": "bytes4"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "465:8:11"
            },
            "scope": 751,
            "src": "409:163:11",
            "stateMutability": "pure",
            "virtual": true,
            "visibility": "external"
          }
        ],
        "scope": 752,
        "src": "236:339:11",
        "usedErrors": [],
        "usedEvents": [
          27402,
          27407,
          27413,
          27422,
          27426
        ]
      }
    ],
    "src": "35:542:11"
  },
  "compiler": {
    "name": "solc",
    "version": "0.8.30+commit.73712a01.Emscripten.clang"
  },
  "networks": {
    "1": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "1285": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "1287": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "4801": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "84532": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "11142220": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "11155111": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    },
    "11155420": {
      "events": {},
      "links": {},
      "address": "0x000FF9f888B1415Da64cc985f775380a94b40000"
    }
  },
  "schemaVersion": "3.4.16",
  "updatedAt": "2025-10-15T14:34:45.325Z",
  "devdoc": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "userdoc": {
    "events": {
      "NewRadonReducer(bytes32)": {
        "notice": "Emitted every time a new Radon Reducer gets successfully verified and stored into the WitOracleRadonRegistry."
      },
      "NewRadonRequest(bytes32)": {
        "notice": "Emitted every time a new Radon Request gets successfully verified and stored into the WitOracleRadonRegistry."
      },
      "NewRadonRetrieval(bytes32)": {
        "notice": "Emitted every time a new Radon Retrieval gets successfully verified and stored into the WitOracleRadonRegistry."
      }
    },
    "kind": "user",
    "methods": {
      "class()": {
        "notice": "Returns the name of the actual contract implementing the logic of this Witnet appliance."
      },
      "specs()": {
        "notice": "Returns the ERC-165 id of the minimal functionality expected for this appliance."
      },
      "witOracle()": {
        "notice": "Returns the WitOracle address that this appliance is bound to."
      }
    },
    "version": 1
  }
}