{
  "contractName": "WitnetRequestFactoryData",
  "abi": [],
  "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/data/WitnetRequestFactoryData.sol\":\"WitnetRequestFactoryData\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/WitnetOracle.sol\":{\"keccak256\":\"0x84ef8d2ebcba273e4bc23a5ee414a1213df55d1b4e496197a146031fea3a4874\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c4a6e31964ed08c4c9dfe5279b4ffe9eeba6e759f15901e080e174e98e96a7f5\",\"dweb:/ipfs/QmTghzVFf2EHnfnHejgFGRBjanXYcstK9ftVaYmHWJfk8w\"]},\"project:/contracts/WitnetRequest.sol\":{\"keccak256\":\"0x5b5e8e9744de10fe86adf97826e3db5c5bcbf357d179a532ef4d7073c7c3af88\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://25bed2c86e46beb6f59024b731b9f3d1ab176312a28b090ad149ddea48841c32\",\"dweb:/ipfs/QmT3aAXfKQ2MTHo4dK1pCyhdvaLYf5TJtgcim5DfbWHjp4\"]},\"project:/contracts/WitnetRequestBytecodes.sol\":{\"keccak256\":\"0x2a79d919dd79c0e3f857e6bee08368ad0b463188aced4a52de29270ed0f5f3d2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://290d6013ee9f75fedbbb7726527a637ea2ae7a5da0ad118ecc43b298846f0bb0\",\"dweb:/ipfs/QmU8AZtPyctrrvxdmH297p595ZMS6DgcD6djSFKNxAqYMs\"]},\"project:/contracts/WitnetRequestFactory.sol\":{\"keccak256\":\"0x3c66f27d7c1db0e662c37d98005c4cbd871ceb75e97079d7bf673fb75d59c858\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://52adb318b870d0825718125e94fdbdd0e968ced09926420e2543b0ca4c6eb579\",\"dweb:/ipfs/QmYack87Q2UTfQb8KLLEPFBrMJgN2o6PaPqPNSc95McPVH\"]},\"project:/contracts/WitnetRequestTemplate.sol\":{\"keccak256\":\"0x10084f4f493f87d0acd9937fa786bf9e92512bf3670ee0427445d43c2cae973e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2491b8a6ec8f01a53f35f6aa602df8630955000f3dc67e7dc8b61b0b25a71657\",\"dweb:/ipfs/QmXEuPy6pVnSQpbg8G1DuVMKQyVfbTdtsDUrPYCbZNHARD\"]},\"project:/contracts/data/WitnetRequestFactoryData.sol\":{\"keccak256\":\"0xb3528c3284a976fb0a16612099f32210bdbda911864c3c8eaac5c6080ac48c5d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://480ba9c2845d017fd3f9e629b09847ae541a9051f6a1f7fdc44d4b3cb48ec527\",\"dweb:/ipfs/Qmew29QFLgNSfC74qFP5TbitnvzfC7hMRyehNqkxmjtexX\"]},\"project:/contracts/interfaces/IWitnetOracle.sol\":{\"keccak256\":\"0x5dbb04fce5e05675325232a735c46617378982b48dac2138aca0c6cc95e6e4d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7447a70455478239500e16aebe5dce6676dc86307d22f662761d8e9f7c5d1276\",\"dweb:/ipfs/QmVkvA4Mt6G1JXxE8ebxKGAjT1WvNbp5QMKg9sUKdrJjhv\"]},\"project:/contracts/interfaces/IWitnetOracleEvents.sol\":{\"keccak256\":\"0x0442f474f253dc1f6bd6a4f153c3adb2abe5f6f0f24c76d1baf666185e61e659\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://535e8efcfc5693669d9bd2b6f62e6fc65aca19b7de355a27152e4362b410540d\",\"dweb:/ipfs/QmVZRXgku1cZewhoucebaiBKAyUjF2dmEzYrzGvjPzbwN9\"]},\"project:/contracts/interfaces/IWitnetRequestBytecodes.sol\":{\"keccak256\":\"0x8da168bee9a78442216965976b1f29087f760f37dcb09337283242599ed1cbca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e120623262ee0559913bdae56c0a7921147dfe08ada7ea81061b14e2fc38c5e1\",\"dweb:/ipfs/Qmbxe8XRrH6ZjJHiR6YYzcZV1jnSWwo9iBYz5r6GJ6To5G\"]},\"project:/contracts/interfaces/IWitnetRequestFactory.sol\":{\"keccak256\":\"0x3b19ec4a976745ba2646e7e1886d647ef30ad678460a712c93bbfb4405b57f1f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa759ae15b7d4da622a81d50933474910959ac490d8b63ea2e7ed8608859a9c9\",\"dweb:/ipfs/QmRckCu7eBBP5fn9ff6djs7VbdhFc7sxYb2yqDr4go66jV\"]},\"project:/contracts/libs/Witnet.sol\":{\"keccak256\":\"0x65a87375dd79d63a83fb454b7199b6c999bd59c50b3b59d521c5c4d45a7d3cc3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca865b681d810c2fc5c3672ea6343c3bdf6fd71764ab824d25994744dc85866b\",\"dweb:/ipfs/QmPGcP3xGTNZfsQ9GSKdujNLRVs8dWDdubyUko1rbQqJNv\"]},\"project:/contracts/libs/WitnetBuffer.sol\":{\"keccak256\":\"0xa14570492eb5a313ddbacae0185c850ec99c67211eb33989a5e21d31bf06a150\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e83c11edb49cab6a767c0b685825bc22ece0d3d2897e0d54fe1923df5cc76ba5\",\"dweb:/ipfs/QmdLDgCc3tnKbgRrXwfNzsg6uUDirNmjvBB8V3iMmnD69a\"]},\"project:/contracts/libs/WitnetCBOR.sol\":{\"keccak256\":\"0xb346547ff731163beea2c657c52675cdf7936691d566a76a045577cf9c34ade0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d4b5b6424a033584b41f1204d635db98fda9ca9bd2a614c9d82539a3e4e6529\",\"dweb:/ipfs/QmW6Qy3wWpzHSECYaCPaf9LWGfPqWDKVoP2kPSNNQu7LMQ\"]},\"project:/contracts/libs/WitnetV2.sol\":{\"keccak256\":\"0xb276a6da373bfbe9cd942dd7e59979cda898215d1e36ab3df95a6d6cc6ff770f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc4890876b9bc64f501ccdd48408bb63724865cb2ce8d2057f6b318540adce7c\",\"dweb:/ipfs/QmPMHPdbCsKBavhiLcaDgQ9EjNSvwwzv8TKffotcCv1ctP\"]}},\"version\":1}",
  "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220dfbeae2cb45966047d845a14de034c53f53aba7e5cddc90b5508c236beb0a37164736f6c63430008190033",
  "deployedBytecode": "0x6080604052600080fdfea2646970667358221220dfbeae2cb45966047d845a14de034c53f53aba7e5cddc90b5508c236beb0a37164736f6c63430008190033",
  "immutableReferences": {},
  "generatedSources": [],
  "deployedGeneratedSources": [],
  "sourceMap": "139:2324:44:-:0;;;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "139:2324:44:-:0;;;;;",
  "source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity >=0.7.0 <0.9.0;\r\npragma experimental ABIEncoderV2;\r\n\r\nimport \"../WitnetRequest.sol\";\r\n\r\ncontract WitnetRequestFactoryData {\r\n\r\n    bytes32 internal constant _WITNET_REQUEST_SLOTHASH =\r\n        /* keccak256(\"io.witnet.data.request\") */\r\n        0xbf9e297db5f64cdb81cd821e7ad085f56008e0c6100f4ebf5e41ef6649322034;\r\n\r\n    bytes32 internal constant _WITNET_REQUEST_FACTORY_SLOTHASH =\r\n        /* keccak256(\"io.witnet.data.request.factory\") */\r\n        0xfaf45a8ecd300851b566566df52ca7611b7a56d24a3449b86f4e21c71638e642;\r\n\r\n    bytes32 internal constant _WITNET_REQUEST_TEMPLATE_SLOTHASH =\r\n        /* keccak256(\"io.witnet.data.request.template\") */\r\n        0x50402db987be01ecf619cd3fb022cf52f861d188e7b779dd032a62d082276afb;\r\n\r\n    struct Slot {\r\n        address owner;\r\n        address pendingOwner;\r\n    }\r\n\r\n    struct WitnetRequestSlot {\r\n        /// Array of string arguments passed upon initialization.\r\n        string[][] args;\r\n        /// Radon RAD hash.\r\n        bytes32 radHash;\r\n        /// Parent WitnetRequestTemplate contract.\r\n        WitnetRequestTemplate template;\r\n    }\r\n\r\n    struct WitnetRequestTemplateSlot {\r\n        /// @notice Aggregator reducer hash.\r\n        bytes32 aggregator;\r\n        /// @notice Parent IWitnetRequestFactory from which this template was built.\r\n        WitnetRequestFactory factory;\r\n        /// Whether any of the sources is parameterized.\r\n        bool parameterized;\r\n        /// @notice Tally reducer hash.\r\n        bytes32 tally;\r\n        /// @notice Array of retrievals hashes passed upon construction.\r\n        bytes32[] retrievals;\r\n        /// @notice Result data type.\r\n        Witnet.RadonDataTypes resultDataType;\r\n        /// @notice Result max size or rank (if variable type).\r\n        uint16 resultDataMaxSize; \r\n    }\r\n\r\n    function __witnetRequestFactory()\r\n        internal pure\r\n        returns (Slot storage ptr)\r\n    {\r\n        assembly {\r\n            ptr.slot := _WITNET_REQUEST_FACTORY_SLOTHASH\r\n        }\r\n    }\r\n\r\n    function __witnetRequest()\r\n        internal pure\r\n        returns (WitnetRequestSlot storage ptr)\r\n    {\r\n        assembly {\r\n            ptr.slot := _WITNET_REQUEST_SLOTHASH\r\n        }\r\n    }\r\n\r\n    function __witnetRequestTemplate()\r\n        internal pure\r\n        returns (WitnetRequestTemplateSlot storage ptr)\r\n    {\r\n        assembly {\r\n            ptr.slot := _WITNET_REQUEST_TEMPLATE_SLOTHASH\r\n        }\r\n    }\r\n}",
  "sourcePath": "C:\\Users\\guill\\github\\witnet\\witnet-solidity-bridge\\contracts\\data\\WitnetRequestFactoryData.sol",
  "ast": {
    "absolutePath": "project:/contracts/data/WitnetRequestFactoryData.sol",
    "exportedSymbols": {
      "IWitnetOracle": [
        13265
      ],
      "IWitnetOracleEvents": [
        13315
      ],
      "IWitnetRequestBytecodes": [
        13979
      ],
      "IWitnetRequestFactory": [
        14002
      ],
      "Witnet": [
        17557
      ],
      "WitnetBuffer": [
        19191
      ],
      "WitnetCBOR": [
        20734
      ],
      "WitnetOracle": [
        749
      ],
      "WitnetRequest": [
        826
      ],
      "WitnetRequestBytecodes": [
        849
      ],
      "WitnetRequestFactory": [
        880
      ],
      "WitnetRequestFactoryData": [
        12738
      ],
      "WitnetRequestTemplate": [
        1005
      ],
      "WitnetV2": [
        23640
      ]
    },
    "id": 12739,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 12659,
        "literals": [
          "solidity",
          ">=",
          "0.7",
          ".0",
          "<",
          "0.9",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "35:31:44"
      },
      {
        "id": 12660,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "68:33:44"
      },
      {
        "absolutePath": "project:/contracts/WitnetRequest.sol",
        "file": "../WitnetRequest.sol",
        "id": 12661,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 12739,
        "sourceUnit": 827,
        "src": "105:30:44",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "canonicalName": "WitnetRequestFactoryData",
        "contractDependencies": [],
        "contractKind": "contract",
        "fullyImplemented": true,
        "id": 12738,
        "linearizedBaseContracts": [
          12738
        ],
        "name": "WitnetRequestFactoryData",
        "nameLocation": "148:24:44",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 12664,
            "mutability": "constant",
            "name": "_WITNET_REQUEST_SLOTHASH",
            "nameLocation": "208:24:44",
            "nodeType": "VariableDeclaration",
            "scope": 12738,
            "src": "182:179:44",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes32",
              "typeString": "bytes32"
            },
            "typeName": {
              "id": 12662,
              "name": "bytes32",
              "nodeType": "ElementaryTypeName",
              "src": "182:7:44",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes32",
                "typeString": "bytes32"
              }
            },
            "value": {
              "hexValue": "307862663965323937646235663634636462383163643832316537616430383566353630303865306336313030663465626635653431656636363439333232303334",
              "id": 12663,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "295:66:44",
              "typeDescriptions": {
                "typeIdentifier": "t_rational_86671202276395263537767838035455311591025520240360819179123320078683383930932_by_1",
                "typeString": "int_const 8667...(69 digits omitted)...0932"
              },
              "value": "0xbf9e297db5f64cdb81cd821e7ad085f56008e0c6100f4ebf5e41ef6649322034"
            },
            "visibility": "internal"
          },
          {
            "constant": true,
            "id": 12667,
            "mutability": "constant",
            "name": "_WITNET_REQUEST_FACTORY_SLOTHASH",
            "nameLocation": "396:32:44",
            "nodeType": "VariableDeclaration",
            "scope": 12738,
            "src": "370:195:44",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes32",
              "typeString": "bytes32"
            },
            "typeName": {
              "id": 12665,
              "name": "bytes32",
              "nodeType": "ElementaryTypeName",
              "src": "370:7:44",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes32",
                "typeString": "bytes32"
              }
            },
            "value": {
              "hexValue": "307866616634356138656364333030383531623536363536366466353263613736313162376135366432346133343439623836663465323163373136333865363432",
              "id": 12666,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "499:66:44",
              "typeDescriptions": {
                "typeIdentifier": "t_rational_113509947836714939971020666074838264605579073880365265301483566127074166498882_by_1",
                "typeString": "int_const 1135...(70 digits omitted)...8882"
              },
              "value": "0xfaf45a8ecd300851b566566df52ca7611b7a56d24a3449b86f4e21c71638e642"
            },
            "visibility": "internal"
          },
          {
            "constant": true,
            "id": 12670,
            "mutability": "constant",
            "name": "_WITNET_REQUEST_TEMPLATE_SLOTHASH",
            "nameLocation": "600:33:44",
            "nodeType": "VariableDeclaration",
            "scope": 12738,
            "src": "574:197:44",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes32",
              "typeString": "bytes32"
            },
            "typeName": {
              "id": 12668,
              "name": "bytes32",
              "nodeType": "ElementaryTypeName",
              "src": "574:7:44",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes32",
                "typeString": "bytes32"
              }
            },
            "value": {
              "hexValue": "307835303430326462393837626530316563663631396364336662303232636635326638363164313838653762373739646430333261363264303832323736616662",
              "id": 12669,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "705:66:44",
              "typeDescriptions": {
                "typeIdentifier": "t_rational_36298421679278190601294465499959172571562157027663423502717068842388001614587_by_1",
                "typeString": "int_const 3629...(69 digits omitted)...4587"
              },
              "value": "0x50402db987be01ecf619cd3fb022cf52f861d188e7b779dd032a62d082276afb"
            },
            "visibility": "internal"
          },
          {
            "canonicalName": "WitnetRequestFactoryData.Slot",
            "id": 12675,
            "members": [
              {
                "constant": false,
                "id": 12672,
                "mutability": "mutable",
                "name": "owner",
                "nameLocation": "811:5:44",
                "nodeType": "VariableDeclaration",
                "scope": 12675,
                "src": "803:13:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 12671,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "803:7:44",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12674,
                "mutability": "mutable",
                "name": "pendingOwner",
                "nameLocation": "835:12:44",
                "nodeType": "VariableDeclaration",
                "scope": 12675,
                "src": "827:20:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 12673,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "827:7:44",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "Slot",
            "nameLocation": "787:4:44",
            "nodeType": "StructDefinition",
            "scope": 12738,
            "src": "780:75:44",
            "visibility": "public"
          },
          {
            "canonicalName": "WitnetRequestFactoryData.WitnetRequestSlot",
            "id": 12688,
            "members": [
              {
                "constant": false,
                "id": 12680,
                "mutability": "mutable",
                "name": "args",
                "nameLocation": "977:4:44",
                "nodeType": "VariableDeclaration",
                "scope": 12688,
                "src": "966:15:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                  "typeString": "string[][]"
                },
                "typeName": {
                  "baseType": {
                    "baseType": {
                      "id": 12677,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "966:6:44",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12678,
                    "nodeType": "ArrayTypeName",
                    "src": "966:8:44",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "id": 12679,
                  "nodeType": "ArrayTypeName",
                  "src": "966:10:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                    "typeString": "string[][]"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12683,
                "mutability": "mutable",
                "name": "radHash",
                "nameLocation": "1029:7:44",
                "nodeType": "VariableDeclaration",
                "scope": 12688,
                "src": "1021:15:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                },
                "typeName": {
                  "id": 12682,
                  "name": "bytes32",
                  "nodeType": "ElementaryTypeName",
                  "src": "1021:7:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12687,
                "mutability": "mutable",
                "name": "template",
                "nameLocation": "1121:8:44",
                "nodeType": "VariableDeclaration",
                "scope": 12688,
                "src": "1099:30:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_contract$_WitnetRequestTemplate_$1005",
                  "typeString": "contract WitnetRequestTemplate"
                },
                "typeName": {
                  "id": 12686,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 12685,
                    "name": "WitnetRequestTemplate",
                    "nameLocations": [
                      "1099:21:44"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 1005,
                    "src": "1099:21:44"
                  },
                  "referencedDeclaration": 1005,
                  "src": "1099:21:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_WitnetRequestTemplate_$1005",
                    "typeString": "contract WitnetRequestTemplate"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "WitnetRequestSlot",
            "nameLocation": "870:17:44",
            "nodeType": "StructDefinition",
            "scope": 12738,
            "src": "863:274:44",
            "visibility": "public"
          },
          {
            "canonicalName": "WitnetRequestFactoryData.WitnetRequestTemplateSlot",
            "id": 12713,
            "members": [
              {
                "constant": false,
                "id": 12691,
                "mutability": "mutable",
                "name": "aggregator",
                "nameLocation": "1243:10:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1235:18:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                },
                "typeName": {
                  "id": 12690,
                  "name": "bytes32",
                  "nodeType": "ElementaryTypeName",
                  "src": "1235:7:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12695,
                "mutability": "mutable",
                "name": "factory",
                "nameLocation": "1371:7:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1350:28:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_contract$_WitnetRequestFactory_$880",
                  "typeString": "contract WitnetRequestFactory"
                },
                "typeName": {
                  "id": 12694,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 12693,
                    "name": "WitnetRequestFactory",
                    "nameLocations": [
                      "1350:20:44"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 880,
                    "src": "1350:20:44"
                  },
                  "referencedDeclaration": 880,
                  "src": "1350:20:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_WitnetRequestFactory_$880",
                    "typeString": "contract WitnetRequestFactory"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12698,
                "mutability": "mutable",
                "name": "parameterized",
                "nameLocation": "1452:13:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1447:18:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 12697,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1447:4:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12701,
                "mutability": "mutable",
                "name": "tally",
                "nameLocation": "1525:5:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1517:13:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                },
                "typeName": {
                  "id": 12700,
                  "name": "bytes32",
                  "nodeType": "ElementaryTypeName",
                  "src": "1517:7:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12705,
                "mutability": "mutable",
                "name": "retrievals",
                "nameLocation": "1625:10:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1615:20:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                  "typeString": "bytes32[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 12703,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1615:7:44",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 12704,
                  "nodeType": "ArrayTypeName",
                  "src": "1615:9:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                    "typeString": "bytes32[]"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12709,
                "mutability": "mutable",
                "name": "resultDataType",
                "nameLocation": "1707:14:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1685:36:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_enum$_RadonDataTypes_$16432",
                  "typeString": "enum Witnet.RadonDataTypes"
                },
                "typeName": {
                  "id": 12708,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 12707,
                    "name": "Witnet.RadonDataTypes",
                    "nameLocations": [
                      "1685:6:44",
                      "1692:14:44"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 16432,
                    "src": "1685:21:44"
                  },
                  "referencedDeclaration": 16432,
                  "src": "1685:21:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$16432",
                    "typeString": "enum Witnet.RadonDataTypes"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 12712,
                "mutability": "mutable",
                "name": "resultDataMaxSize",
                "nameLocation": "1804:17:44",
                "nodeType": "VariableDeclaration",
                "scope": 12713,
                "src": "1797:24:44",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint16",
                  "typeString": "uint16"
                },
                "typeName": {
                  "id": 12711,
                  "name": "uint16",
                  "nodeType": "ElementaryTypeName",
                  "src": "1797:6:44",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "WitnetRequestTemplateSlot",
            "nameLocation": "1152:25:44",
            "nodeType": "StructDefinition",
            "scope": 12738,
            "src": "1145:685:44",
            "visibility": "public"
          },
          {
            "body": {
              "id": 12720,
              "nodeType": "Block",
              "src": "1936:97:44",
              "statements": [
                {
                  "AST": {
                    "nativeSrc": "1956:70:44",
                    "nodeType": "YulBlock",
                    "src": "1956:70:44",
                    "statements": [
                      {
                        "nativeSrc": "1971:44:44",
                        "nodeType": "YulAssignment",
                        "src": "1971:44:44",
                        "value": {
                          "name": "_WITNET_REQUEST_FACTORY_SLOTHASH",
                          "nativeSrc": "1983:32:44",
                          "nodeType": "YulIdentifier",
                          "src": "1983:32:44"
                        },
                        "variableNames": [
                          {
                            "name": "ptr.slot",
                            "nativeSrc": "1971:8:44",
                            "nodeType": "YulIdentifier",
                            "src": "1971:8:44"
                          }
                        ]
                      }
                    ]
                  },
                  "evmVersion": "paris",
                  "externalReferences": [
                    {
                      "declaration": 12667,
                      "isOffset": false,
                      "isSlot": false,
                      "src": "1983:32:44",
                      "valueSize": 1
                    },
                    {
                      "declaration": 12717,
                      "isOffset": false,
                      "isSlot": true,
                      "src": "1971:8:44",
                      "suffix": "slot",
                      "valueSize": 1
                    }
                  ],
                  "id": 12719,
                  "nodeType": "InlineAssembly",
                  "src": "1947:79:44"
                }
              ]
            },
            "id": 12721,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "__witnetRequestFactory",
            "nameLocation": "1847:22:44",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12714,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1869:2:44"
            },
            "returnParameters": {
              "id": 12718,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12717,
                  "mutability": "mutable",
                  "name": "ptr",
                  "nameLocation": "1926:3:44",
                  "nodeType": "VariableDeclaration",
                  "scope": 12721,
                  "src": "1913:16:44",
                  "stateVariable": false,
                  "storageLocation": "storage",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_Slot_$12675_storage_ptr",
                    "typeString": "struct WitnetRequestFactoryData.Slot"
                  },
                  "typeName": {
                    "id": 12716,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 12715,
                      "name": "Slot",
                      "nameLocations": [
                        "1913:4:44"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 12675,
                      "src": "1913:4:44"
                    },
                    "referencedDeclaration": 12675,
                    "src": "1913:4:44",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Slot_$12675_storage_ptr",
                      "typeString": "struct WitnetRequestFactoryData.Slot"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1912:18:44"
            },
            "scope": 12738,
            "src": "1838:195:44",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 12728,
              "nodeType": "Block",
              "src": "2145:89:44",
              "statements": [
                {
                  "AST": {
                    "nativeSrc": "2165:62:44",
                    "nodeType": "YulBlock",
                    "src": "2165:62:44",
                    "statements": [
                      {
                        "nativeSrc": "2180:36:44",
                        "nodeType": "YulAssignment",
                        "src": "2180:36:44",
                        "value": {
                          "name": "_WITNET_REQUEST_SLOTHASH",
                          "nativeSrc": "2192:24:44",
                          "nodeType": "YulIdentifier",
                          "src": "2192:24:44"
                        },
                        "variableNames": [
                          {
                            "name": "ptr.slot",
                            "nativeSrc": "2180:8:44",
                            "nodeType": "YulIdentifier",
                            "src": "2180:8:44"
                          }
                        ]
                      }
                    ]
                  },
                  "evmVersion": "paris",
                  "externalReferences": [
                    {
                      "declaration": 12664,
                      "isOffset": false,
                      "isSlot": false,
                      "src": "2192:24:44",
                      "valueSize": 1
                    },
                    {
                      "declaration": 12725,
                      "isOffset": false,
                      "isSlot": true,
                      "src": "2180:8:44",
                      "suffix": "slot",
                      "valueSize": 1
                    }
                  ],
                  "id": 12727,
                  "nodeType": "InlineAssembly",
                  "src": "2156:71:44"
                }
              ]
            },
            "id": 12729,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "__witnetRequest",
            "nameLocation": "2050:15:44",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12722,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2065:2:44"
            },
            "returnParameters": {
              "id": 12726,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12725,
                  "mutability": "mutable",
                  "name": "ptr",
                  "nameLocation": "2135:3:44",
                  "nodeType": "VariableDeclaration",
                  "scope": 12729,
                  "src": "2109:29:44",
                  "stateVariable": false,
                  "storageLocation": "storage",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_WitnetRequestSlot_$12688_storage_ptr",
                    "typeString": "struct WitnetRequestFactoryData.WitnetRequestSlot"
                  },
                  "typeName": {
                    "id": 12724,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 12723,
                      "name": "WitnetRequestSlot",
                      "nameLocations": [
                        "2109:17:44"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 12688,
                      "src": "2109:17:44"
                    },
                    "referencedDeclaration": 12688,
                    "src": "2109:17:44",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_WitnetRequestSlot_$12688_storage_ptr",
                      "typeString": "struct WitnetRequestFactoryData.WitnetRequestSlot"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2108:31:44"
            },
            "scope": 12738,
            "src": "2041:193:44",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 12736,
              "nodeType": "Block",
              "src": "2362:98:44",
              "statements": [
                {
                  "AST": {
                    "nativeSrc": "2382:71:44",
                    "nodeType": "YulBlock",
                    "src": "2382:71:44",
                    "statements": [
                      {
                        "nativeSrc": "2397:45:44",
                        "nodeType": "YulAssignment",
                        "src": "2397:45:44",
                        "value": {
                          "name": "_WITNET_REQUEST_TEMPLATE_SLOTHASH",
                          "nativeSrc": "2409:33:44",
                          "nodeType": "YulIdentifier",
                          "src": "2409:33:44"
                        },
                        "variableNames": [
                          {
                            "name": "ptr.slot",
                            "nativeSrc": "2397:8:44",
                            "nodeType": "YulIdentifier",
                            "src": "2397:8:44"
                          }
                        ]
                      }
                    ]
                  },
                  "evmVersion": "paris",
                  "externalReferences": [
                    {
                      "declaration": 12670,
                      "isOffset": false,
                      "isSlot": false,
                      "src": "2409:33:44",
                      "valueSize": 1
                    },
                    {
                      "declaration": 12733,
                      "isOffset": false,
                      "isSlot": true,
                      "src": "2397:8:44",
                      "suffix": "slot",
                      "valueSize": 1
                    }
                  ],
                  "id": 12735,
                  "nodeType": "InlineAssembly",
                  "src": "2373:80:44"
                }
              ]
            },
            "id": 12737,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "__witnetRequestTemplate",
            "nameLocation": "2251:23:44",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12730,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2274:2:44"
            },
            "returnParameters": {
              "id": 12734,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12733,
                  "mutability": "mutable",
                  "name": "ptr",
                  "nameLocation": "2352:3:44",
                  "nodeType": "VariableDeclaration",
                  "scope": 12737,
                  "src": "2318:37:44",
                  "stateVariable": false,
                  "storageLocation": "storage",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_WitnetRequestTemplateSlot_$12713_storage_ptr",
                    "typeString": "struct WitnetRequestFactoryData.WitnetRequestTemplateSlot"
                  },
                  "typeName": {
                    "id": 12732,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 12731,
                      "name": "WitnetRequestTemplateSlot",
                      "nameLocations": [
                        "2318:25:44"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 12713,
                      "src": "2318:25:44"
                    },
                    "referencedDeclaration": 12713,
                    "src": "2318:25:44",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_WitnetRequestTemplateSlot_$12713_storage_ptr",
                      "typeString": "struct WitnetRequestFactoryData.WitnetRequestTemplateSlot"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2317:39:44"
            },
            "scope": 12738,
            "src": "2242:218:44",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "internal"
          }
        ],
        "scope": 12739,
        "src": "139:2324:44",
        "usedErrors": [],
        "usedEvents": []
      }
    ],
    "src": "35:2428:44"
  },
  "compiler": {
    "name": "solc",
    "version": "0.8.25+commit.b61c2a91.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.4.16",
  "updatedAt": "2024-12-05T09:36:04.492Z",
  "devdoc": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {},
    "version": 1
  }
}