{
  "contractName": "WitOracleRadonRegistryBase",
  "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": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "name": "NewRadonRetrieval",
      "type": "event"
    },
    {
      "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"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_radonReducerHash",
          "type": "bytes32"
        }
      ],
      "name": "isVerifiedRadonReducer",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radonRequestHash",
          "type": "bytes32"
        }
      ],
      "name": "isVerifiedRadonRequest",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_radonRetrievalHash",
          "type": "bytes32"
        }
      ],
      "name": "isVerifiedRadonRetrieval",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "_radBytecode",
          "type": "bytes"
        }
      ],
      "name": "hashOf",
      "outputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_hash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonReducer",
      "outputs": [
        {
          "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": "_reducer",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestBytecode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestCrowdAttestationTally",
      "outputs": [
        {
          "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": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestRetrievals",
      "outputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "uint8"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval[]",
          "name": "_retrievals",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestRetrievalsAggregator",
      "outputs": [
        {
          "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": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestRetrievalsCount",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_hash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRetrieval",
      "outputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "uint8"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval",
          "name": "_source",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_hash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRetrievalArgsCount",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_hash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRetrievalResultDataType",
      "outputs": [
        {
          "internalType": "enum Witnet.RadonDataTypes",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestResultDataType",
      "outputs": [
        {
          "internalType": "enum Witnet.RadonDataTypes",
          "name": "_resultDataType",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "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": "_reducer",
          "type": "tuple"
        }
      ],
      "name": "verifyRadonReducer",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "enum Witnet.RadonRetrievalMethods",
          "name": "_requestMethod",
          "type": "uint8"
        },
        {
          "internalType": "string",
          "name": "_requestURL",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "_requestBody",
          "type": "string"
        },
        {
          "internalType": "string[2][]",
          "name": "_requestHeaders",
          "type": "string[2][]"
        },
        {
          "internalType": "bytes",
          "name": "_requestRadonScript",
          "type": "bytes"
        }
      ],
      "name": "verifyRadonRetrieval",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "bytecodeOf",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "_radBytecode",
          "type": "bytes"
        },
        {
          "components": [
            {
              "internalType": "uint16",
              "name": "witResultMaxSize",
              "type": "uint16"
            },
            {
              "internalType": "uint16",
              "name": "witCommitteeSize",
              "type": "uint16"
            },
            {
              "internalType": "uint64",
              "name": "witUnitaryReward",
              "type": "uint64"
            }
          ],
          "internalType": "struct Witnet.QuerySLA",
          "name": "_sla",
          "type": "tuple"
        }
      ],
      "name": "bytecodeOf",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        },
        {
          "components": [
            {
              "internalType": "uint16",
              "name": "witResultMaxSize",
              "type": "uint16"
            },
            {
              "internalType": "uint16",
              "name": "witCommitteeSize",
              "type": "uint16"
            },
            {
              "internalType": "uint64",
              "name": "witUnitaryReward",
              "type": "uint64"
            }
          ],
          "internalType": "struct Witnet.QuerySLA",
          "name": "_sla",
          "type": "tuple"
        }
      ],
      "name": "bytecodeOf",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequest",
      "outputs": [
        {
          "components": [
            {
              "components": [
                {
                  "internalType": "uint8",
                  "name": "argsCount",
                  "type": "uint8"
                },
                {
                  "internalType": "enum Witnet.RadonRetrievalMethods",
                  "name": "method",
                  "type": "uint8"
                },
                {
                  "internalType": "enum Witnet.RadonDataTypes",
                  "name": "dataType",
                  "type": "uint8"
                },
                {
                  "internalType": "string",
                  "name": "url",
                  "type": "string"
                },
                {
                  "internalType": "string",
                  "name": "body",
                  "type": "string"
                },
                {
                  "internalType": "string[2][]",
                  "name": "headers",
                  "type": "string[2][]"
                },
                {
                  "internalType": "bytes",
                  "name": "radonScript",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonRetrieval[]",
              "name": "retrieve",
              "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": "aggregate",
              "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": "tally",
              "type": "tuple"
            }
          ],
          "internalType": "struct Witnet.RadonRequest",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestAggregator",
      "outputs": [
        {
          "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": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestResultMaxSize",
      "outputs": [
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestSources",
      "outputs": [
        {
          "internalType": "bytes32[]",
          "name": "",
          "type": "bytes32[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestSourcesCount",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_retrieveHashes",
          "type": "bytes32[]"
        },
        {
          "internalType": "bytes32",
          "name": "_aggregateReducerHash",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_tallyReducerHash",
          "type": "bytes32"
        }
      ],
      "name": "verifyRadonRequest",
      "outputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "radHash",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_retrieveHashes",
          "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": "_aggregateReducer",
          "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": "_tallyReducer",
          "type": "tuple"
        }
      ],
      "name": "verifyRadonRequest",
      "outputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "radHash",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "modalRetrieveHash",
          "type": "bytes32"
        },
        {
          "internalType": "string[]",
          "name": "modalArgs",
          "type": "string[]"
        },
        {
          "internalType": "string[]",
          "name": "modalUrls",
          "type": "string[]"
        },
        {
          "internalType": "bytes32",
          "name": "dataSourcesAggregatorHash",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "crowdAttestationTallyHash",
          "type": "bytes32"
        }
      ],
      "name": "verifyRadonRequest",
      "outputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_retrieveHashes",
          "type": "bytes32[]"
        },
        {
          "internalType": "bytes32",
          "name": "_aggregateReducerHash",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_tallyReducerHash",
          "type": "bytes32"
        },
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        },
        {
          "internalType": "string[][]",
          "name": "_retrieveArgsValues",
          "type": "string[][]"
        }
      ],
      "name": "verifyRadonRequest",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_retrieveHashes",
          "type": "bytes32[]"
        },
        {
          "internalType": "string[][]",
          "name": "_retrieveArgsValues",
          "type": "string[][]"
        },
        {
          "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": "_aggregateReducer",
          "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": "_tallyReducer",
          "type": "tuple"
        }
      ],
      "name": "verifyRadonRequest",
      "outputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32[]",
          "name": "_retrieveHashes",
          "type": "bytes32[]"
        },
        {
          "internalType": "string[][]",
          "name": "_retrieveArgsValues",
          "type": "string[][]"
        },
        {
          "internalType": "bytes32",
          "name": "_aggregateReducerHash",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_tallyReducerHash",
          "type": "bytes32"
        }
      ],
      "name": "verifyRadonRequest",
      "outputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "Witnet.RadonHash",
          "name": "_radHash",
          "type": "bytes32"
        }
      ],
      "name": "lookupRadonRequestTally",
      "outputs": [
        {
          "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": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "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\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"name\":\"NewRadonRetrieval\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"bytecodeOf\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_radBytecode\",\"type\":\"bytes\"},{\"components\":[{\"internalType\":\"uint16\",\"name\":\"witResultMaxSize\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"witCommitteeSize\",\"type\":\"uint16\"},{\"internalType\":\"uint64\",\"name\":\"witUnitaryReward\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.QuerySLA\",\"name\":\"_sla\",\"type\":\"tuple\"}],\"name\":\"bytecodeOf\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint16\",\"name\":\"witResultMaxSize\",\"type\":\"uint16\"},{\"internalType\":\"uint16\",\"name\":\"witCommitteeSize\",\"type\":\"uint16\"},{\"internalType\":\"uint64\",\"name\":\"witUnitaryReward\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.QuerySLA\",\"name\":\"_sla\",\"type\":\"tuple\"}],\"name\":\"bytecodeOf\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"class\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_radBytecode\",\"type\":\"bytes\"}],\"name\":\"hashOf\",\"outputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_radonReducerHash\",\"type\":\"bytes32\"}],\"name\":\"isVerifiedRadonReducer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radonRequestHash\",\"type\":\"bytes32\"}],\"name\":\"isVerifiedRadonRequest\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_radonRetrievalHash\",\"type\":\"bytes32\"}],\"name\":\"isVerifiedRadonRetrieval\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonReducer\",\"outputs\":[{\"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\":\"_reducer\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequest\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval[]\",\"name\":\"retrieve\",\"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\":\"aggregate\",\"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\":\"tally\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.RadonRequest\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestAggregator\",\"outputs\":[{\"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\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestBytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestCrowdAttestationTally\",\"outputs\":[{\"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\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestResultDataType\",\"outputs\":[{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"_resultDataType\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestResultMaxSize\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestRetrievals\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval[]\",\"name\":\"_retrievals\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestRetrievalsAggregator\",\"outputs\":[{\"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\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestRetrievalsCount\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestSources\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestSourcesCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRequestTally\",\"outputs\":[{\"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\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRetrieval\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval\",\"name\":\"_source\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRetrievalArgsCount\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_hash\",\"type\":\"bytes32\"}],\"name\":\"lookupRadonRetrievalResultDataType\",\"outputs\":[{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"specs\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"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\":\"_reducer\",\"type\":\"tuple\"}],\"name\":\"verifyRadonReducer\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_retrieveHashes\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32\",\"name\":\"_aggregateReducerHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_tallyReducerHash\",\"type\":\"bytes32\"}],\"name\":\"verifyRadonRequest\",\"outputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"radHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_retrieveHashes\",\"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\":\"_aggregateReducer\",\"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\":\"_tallyReducer\",\"type\":\"tuple\"}],\"name\":\"verifyRadonRequest\",\"outputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"radHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"modalRetrieveHash\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"modalArgs\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"modalUrls\",\"type\":\"string[]\"},{\"internalType\":\"bytes32\",\"name\":\"dataSourcesAggregatorHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"crowdAttestationTallyHash\",\"type\":\"bytes32\"}],\"name\":\"verifyRadonRequest\",\"outputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"_radHash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_retrieveHashes\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32\",\"name\":\"_aggregateReducerHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_tallyReducerHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"},{\"internalType\":\"string[][]\",\"name\":\"_retrieveArgsValues\",\"type\":\"string[][]\"}],\"name\":\"verifyRadonRequest\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_retrieveHashes\",\"type\":\"bytes32[]\"},{\"internalType\":\"string[][]\",\"name\":\"_retrieveArgsValues\",\"type\":\"string[][]\"},{\"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\":\"_aggregateReducer\",\"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\":\"_tallyReducer\",\"type\":\"tuple\"}],\"name\":\"verifyRadonRequest\",\"outputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"_retrieveHashes\",\"type\":\"bytes32[]\"},{\"internalType\":\"string[][]\",\"name\":\"_retrieveArgsValues\",\"type\":\"string[][]\"},{\"internalType\":\"bytes32\",\"name\":\"_aggregateReducerHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_tallyReducerHash\",\"type\":\"bytes32\"}],\"name\":\"verifyRadonRequest\",\"outputs\":[{\"internalType\":\"Witnet.RadonHash\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"_requestMethod\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"_requestURL\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_requestBody\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"_requestHeaders\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"_requestRadonScript\",\"type\":\"bytes\"}],\"name\":\"verifyRadonRetrieval\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"The Witnet Foundation\",\"details\":\"This contract enables posting requests that Witnet bridges will insert into the Witnet network. The result of the requests will be posted back to this contract by the bridge nodes too.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Witnet Request Board EVM-default implementation contract.\",\"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.\"}},\"notice\":\"Contract to bridge requests to Witnet Decentralized Oracle Network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/core/base/WitOracleRadonRegistryBase.sol\":\"WitOracleRadonRegistryBase\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/WitOracleRadonRegistry.sol\":{\"keccak256\":\"0xc9bd0ab02e13b36fe4072868ae978a230c5132a702d6594f11270ec5e7926e09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8321305b131abec96c492302163d95f8777106f74a0d42f5f50fdf60d2b3a381\",\"dweb:/ipfs/QmRx7FGWPkC41afPuJpBTDQ85wjH95Dbi3qAxVNfNZUsWe\"]},\"project:/contracts/core/base/WitOracleRadonRegistryBase.sol\":{\"keccak256\":\"0xf919015b83e0329eddf7263f71990ef617b70ae6b28ef2b195c88e7a7f80f332\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4480d6a431c8c64d9d7e54712ac767bfbb9ded1edf00995d86412017165776bc\",\"dweb:/ipfs/QmQxUdvDzberB6BVC3asAHJxLdBL3mMw5h8dFi2NTT6aA7\"]},\"project:/contracts/data/WitOracleRadonRegistryData.sol\":{\"keccak256\":\"0x96a98990248a3e196567ffab81d96c575727ef026db84b7f1ee8df342eb13c34\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a7e051f4e6b2f5a6b4c7e70d3450f77ad47cba0ebb9dd731181281661c89705\",\"dweb:/ipfs/Qmf7Zq7BoCAHiGZKgwkDdbkBEDa3gEhzqx8wDUCTtvRNkQ\"]},\"project:/contracts/interfaces/IWitAppliance.sol\":{\"keccak256\":\"0xd207ca54a1049445a3d99eea497d9b34c6dbdd44d771eee825e4c031bd2f447e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f81de32d868ff2881ed6fe97cc897e40b4b11d23cbe53a0e23cf3e68f9c0f0a3\",\"dweb:/ipfs/QmeeXmzmK5MAzt7Hf5DB2L81efKtTzZg9VbQ8sUiTqEk5c\"]},\"project:/contracts/interfaces/IWitOracleRadonRegistry.sol\":{\"keccak256\":\"0x437bbb89129311bd1cc8f6becd333df46109ec53b24d3159be942b225614071f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ef9bcdf4a73cb126885478c994821b7fe2b87d9221b767b4c9342b89b0d6550a\",\"dweb:/ipfs/QmXzZXPMxjSiFpcEnhg6CjLFNxGCpDZt22xpUh7VHxNTGd\"]},\"project:/contracts/interfaces/IWitOracleRadonRegistryEvents.sol\":{\"keccak256\":\"0x9bd30477aeb33de11c4f1df3cd7451452a90ffed1f6eabd9e643046bf1e60d66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18fb38c5528ed2e1bf90ff8d123bf5a9523d0dc49f448d6c39ddad1cd9048d0a\",\"dweb:/ipfs/QmQq1RUwFgnGTk3xDAmN6u2WMPBzvjZNJc7TPYtG6aZfRn\"]},\"project:/contracts/interfaces/legacy/IWitOracleRadonRegistryLegacy.sol\":{\"keccak256\":\"0x65bdae6efdcc6418685dd0e9064b06239c4ef336a41eaf74a7a39edbf51c0db0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71fb7cafd03f88505935386207c259cf727de06164fd4a4f2c0784b6b0cd0ea5\",\"dweb:/ipfs/QmRfbjp6fpGcwGkam9viR9RNR1H6GiEUKmKZSDBjump9q9\"]},\"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/WitOracleRadonEncodingLib.sol\":{\"keccak256\":\"0x05b635d0b5b2c3648053a15f198278cc91cc13d9e221812b4c37e3f2392cd973\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e83b05c2c67d73747451c4a10e62d02d6096ace6eab4302f49812a47f3d50e49\",\"dweb:/ipfs/QmXiGDAniCynXSanoEQfzjxSUwMM2KQLZg4fuww7Pqc5Pz\"]},\"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.4 <0.9.0;\r\n\r\nimport \"../../WitOracleRadonRegistry.sol\";\r\nimport \"../../data/WitOracleRadonRegistryData.sol\";\r\nimport \"../../interfaces/legacy/IWitOracleRadonRegistryLegacy.sol\";\r\nimport \"../../libs/WitOracleRadonEncodingLib.sol\";\r\n\r\n/// @title Witnet Request Board EVM-default implementation contract.\r\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\r\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\r\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\r\n/// @author The Witnet Foundation\r\nabstract contract WitOracleRadonRegistryBase\r\n    is \r\n        WitOracleRadonRegistry,\r\n        WitOracleRadonRegistryData,\r\n        IWitOracleRadonRegistryLegacy\r\n{   \r\n    using Witnet for bytes;\r\n    using Witnet for string;\r\n    using Witnet for Witnet.QuerySLA;\r\n    using Witnet for Witnet.RadonHash;\r\n    \r\n    using WitOracleRadonEncodingLib for Witnet.RadonDataTypes;\r\n    using WitOracleRadonEncodingLib for Witnet.RadonReducer;\r\n    using WitOracleRadonEncodingLib for Witnet.RadonRetrieval;\r\n    using WitOracleRadonEncodingLib for Witnet.RadonRetrieval[];\r\n    using WitOracleRadonEncodingLib for Witnet.RadonRetrievalMethods;\r\n    using WitOracleRadonEncodingLib for Witnet.RadonSLAv1;\r\n\r\n    modifier radonRequestExists(Witnet.RadonHash _radHash) {\r\n        _require(\r\n            __database().radsBytecode[_radHash].length > 0,\r\n            \"unverified data request\"\r\n        ); _;\r\n    }\r\n    \r\n    modifier radonRetrievalExists(bytes32 _hash) {\r\n        _require(\r\n            __database().retrievals[_hash].method != Witnet.RadonRetrievalMethods.Unknown,\r\n            \"unverified data source\"\r\n        ); _;\r\n    }\r\n\r\n    function _witOracleHash(bytes memory chunk) virtual internal pure returns (Witnet.RadonHash) {\r\n        return Witnet.RadonHash.wrap(sha256(chunk));\r\n    }\r\n\r\n    receive() external payable {\r\n        _revert(\"no transfers\");\r\n    }\r\n\r\n\r\n    // ================================================================================================================\r\n    // --- Implementation of 'IWitOracleRadonRegistry' -----------------------------------------------------------------------\r\n\r\n    function bytecodeOf(Witnet.RadonHash _radHash, Witnet.QuerySLA calldata _sla)\r\n        override external view \r\n        returns (bytes memory)\r\n    {\r\n        bytes memory _radBytecode = lookupRadonRequestBytecode(_radHash);\r\n        return abi.encodePacked(\r\n            WitOracleRadonEncodingLib.encode(uint64(_radBytecode.length), 0x0a),\r\n            _radBytecode,\r\n            _sla.toV1().encode()\r\n        );\r\n    }\r\n\r\n    function bytecodeOf(bytes calldata _radBytecode, Witnet.QuerySLA calldata _sla)\r\n        override external pure\r\n        returns (bytes memory)\r\n    {\r\n        return abi.encodePacked(\r\n            WitOracleRadonEncodingLib.encode(uint64(_radBytecode.length), 0x0a),\r\n            _radBytecode,\r\n            _sla.toV1().encode()\r\n        );\r\n    }\r\n\r\n    function isVerifiedRadonReducer(bytes32 _radonReducerHash) external view override returns (bool) {\r\n        return (\r\n            uint8(__database().reducers[_radonReducerHash].opcode) != uint8(0)\r\n        );\r\n    }\r\n\r\n    function isVerifiedRadonRequest(Witnet.RadonHash _radonRequestHash) external view override returns (bool) {\r\n        return (\r\n            __database().radsBytecode[_radonRequestHash].length > 0\r\n        );\r\n    }\r\n\r\n    function isVerifiedRadonRetrieval(bytes32 _radonRetrievalHash) external view override returns (bool) {\r\n        return (\r\n            __database().retrievals[_radonRetrievalHash].method != Witnet.RadonRetrievalMethods.Unknown\r\n        );\r\n    }\r\n\r\n    function hashOf(bytes calldata _radBytecode) external pure override returns (Witnet.RadonHash) {\r\n        return _witOracleHash(_radBytecode);\r\n    }\r\n\r\n    function lookupRadonReducer(bytes32 _hash)\r\n        virtual override \r\n        public view\r\n        returns (Witnet.RadonReducer memory _reducer)\r\n    {   \r\n        _reducer = __database().reducers[_hash];\r\n        _require(uint8(_reducer.opcode) != 0, \"unverified data reducer\");\r\n    }\r\n\r\n    function lookupRadonRequestBytecode(Witnet.RadonHash _radHash)\r\n        public view override\r\n        radonRequestExists(_radHash)\r\n        returns (bytes memory)\r\n    {\r\n        return __database().radsBytecode[_radHash];\r\n    }\r\n\r\n    function lookupRadonRequestCrowdAttestationTally(Witnet.RadonHash _radHash)\r\n        override external view\r\n        radonRequestExists(_radHash)\r\n        returns (Witnet.RadonReducer memory)\r\n    {\r\n        return lookupRadonReducer(__database().radsInfo[_radHash].crowdAttestationTallyHash);\r\n    }\r\n\r\n    function lookupRadonRequestRetrievals(Witnet.RadonHash _radHash)\r\n        override public view \r\n        radonRequestExists(_radHash)\r\n        returns (Witnet.RadonRetrieval[] memory _retrievals)\r\n    {\r\n        // TODO: disassemble radon request's bytecode into array of Radon Retrievals,\r\n        // data structs need not to be saved in storage.\r\n        _retrievals = new Witnet.RadonRetrieval[](__requests(_radHash).retrievals.length);\r\n        for (uint _ix = 0; _ix < _retrievals.length; _ix ++) {\r\n            _retrievals[_ix] = __database().retrievals[\r\n                __requests(_radHash).retrievals[_ix]\r\n            ];\r\n        }\r\n    }\r\n\r\n    function lookupRadonRequestRetrievalsAggregator(Witnet.RadonHash _radHash)\r\n        override external view\r\n        radonRequestExists(_radHash)\r\n        returns (Witnet.RadonReducer memory)\r\n    {\r\n        return lookupRadonReducer(__database().radsInfo[_radHash].dataSourcesAggregatorHash);\r\n    }\r\n\r\n    function lookupRadonRequestRetrievalsCount(Witnet.RadonHash _radHash)\r\n        override external view\r\n        returns (uint8)\r\n    {\r\n        return __database().radsInfo[_radHash].dataSourcesCount;\r\n    }\r\n\r\n    function lookupRadonRetrieval(bytes32 _hash)\r\n        override public view\r\n        radonRetrievalExists(_hash)\r\n        returns (Witnet.RadonRetrieval memory _source)\r\n    {\r\n        return __database().retrievals[_hash];\r\n    }\r\n\r\n    function lookupRadonRetrievalArgsCount(bytes32 _hash)\r\n        override external view\r\n        radonRetrievalExists(_hash)\r\n        returns (uint8)\r\n    {\r\n        return __database().retrievals[_hash].argsCount;\r\n    }\r\n\r\n    function lookupRadonRetrievalResultDataType(bytes32 _hash)\r\n        override public view\r\n        radonRetrievalExists(_hash)\r\n        returns (Witnet.RadonDataTypes)\r\n    {\r\n        return __database().retrievals[_hash].dataType;\r\n    }\r\n\r\n    function lookupRadonRequestResultDataType(Witnet.RadonHash _radHash)\r\n        override external view\r\n        radonRequestExists(_radHash)\r\n        returns (Witnet.RadonDataTypes _resultDataType)\r\n    {\r\n        _resultDataType = __database().radsInfo[_radHash].resultDataType;\r\n        if (uint8(_resultDataType) == 0) {\r\n            _resultDataType = lookupRadonRetrievalResultDataType(\r\n                __database().legacyRequests[_radHash].retrievals[0]\r\n            );\r\n        }\r\n    }\r\n\r\n    function verifyRadonReducer(Witnet.RadonReducer memory _reducer)\r\n        virtual override public\r\n        returns (bytes32 hash)\r\n    {\r\n        hash = bytes32(bytes15(keccak256(abi.encode(_reducer))));\r\n        Witnet.RadonReducer storage __reducer = __database().reducers[hash];\r\n        if (\r\n            uint8(__reducer.opcode) == 0\r\n                // && __reducer.filters.length == 0\r\n        ) {\r\n            _reducer.validate();\r\n            __reducer.opcode = _reducer.opcode;\r\n            __pushRadonReducerFilters(__reducer, _reducer.filters);\r\n            emit NewRadonReducer(hash);\r\n        }\r\n    }\r\n    \r\n    function verifyRadonRequest(\r\n            bytes32[] calldata _retrieveHashes,\r\n            Witnet.RadonReducer calldata _aggregateReducer,\r\n            Witnet.RadonReducer calldata _tallyReducer\r\n        ) \r\n        override external \r\n        returns (Witnet.RadonHash radHash)\r\n    {\r\n        return __verifyRadonRequest(\r\n            _retrieveHashes,\r\n            new string[][](_retrieveHashes.length),\r\n            verifyRadonReducer(_aggregateReducer),\r\n            verifyRadonReducer(_tallyReducer)\r\n        );\r\n    }\r\n\r\n    function verifyRadonRequest(\r\n            bytes32[] calldata _retrieveHashes,\r\n            bytes32 _aggregateReducerHash,\r\n            bytes32 _tallyReducerHash\r\n        )\r\n        override external\r\n        returns (Witnet.RadonHash radHash)\r\n    {\r\n        return __verifyRadonRequest(\r\n            _retrieveHashes,\r\n            new string[][](_retrieveHashes.length),\r\n            _aggregateReducerHash,\r\n            _tallyReducerHash\r\n        );\r\n    }\r\n\r\n    function verifyRadonRequest(\r\n            bytes32[] calldata _retrieveHashes,\r\n            string[][] calldata _retrieveArgsValues,\r\n            Witnet.RadonReducer calldata _aggregateReducer,\r\n            Witnet.RadonReducer calldata _tallyReducer\r\n        ) \r\n        override external \r\n        returns (Witnet.RadonHash)\r\n    {\r\n        return __verifyRadonRequest(\r\n            _retrieveHashes, \r\n            _retrieveArgsValues, \r\n            verifyRadonReducer(_aggregateReducer), \r\n            verifyRadonReducer(_tallyReducer)\r\n        );\r\n    }\r\n\r\n    function verifyRadonRequest(\r\n            bytes32[] calldata _retrieveHashes,\r\n            string[][] calldata _retrieveArgsValues,\r\n            bytes32 _aggregateReducerHash,\r\n            bytes32 _tallyReducerHash\r\n        )\r\n        override external\r\n        returns (Witnet.RadonHash)\r\n    {\r\n        return __verifyRadonRequest(\r\n            _retrieveHashes,\r\n            _retrieveArgsValues,\r\n            _aggregateReducerHash,\r\n            _tallyReducerHash\r\n        );\r\n    }\r\n\r\n    function verifyRadonRequest(\r\n            bytes32 modalRetrieveHash,\r\n            string[] calldata modalArgs,\r\n            string[] calldata modalUrls,\r\n            bytes32 dataSourcesAggregatorHash,\r\n            bytes32 crowdAttestationTallyHash\r\n        )\r\n        override external \r\n        returns (Witnet.RadonHash _radHash)\r\n    {\r\n        bytes32 hash = keccak256(abi.encode(\r\n            modalRetrieveHash,\r\n            modalUrls,\r\n            modalArgs,\r\n            dataSourcesAggregatorHash,\r\n            crowdAttestationTallyHash\r\n        ));\r\n        _radHash = __database().rads[hash];\r\n        if (__database().rads[hash].isZero()) {\r\n            Witnet.RadonRetrieval[] memory _retrievals = new Witnet.RadonRetrieval[](modalUrls.length);\r\n            for (uint _ix = 0; _ix < modalUrls.length; ++ _ix) {\r\n                if (_ix == 0) {\r\n                    _retrievals[0] = lookupRadonRetrieval(modalRetrieveHash);\r\n                } else {\r\n                    _retrievals[_ix] = _retrievals[0];\r\n                }\r\n                _retrievals[_ix].url = modalUrls[_ix];\r\n            }\r\n\r\n            // Compose radon request bytecode:\r\n            bytes memory _radBytecode = _retrievals.encode(\r\n                modalArgs,\r\n                __database().reducers[dataSourcesAggregatorHash].encode(),\r\n                __database().reducers[crowdAttestationTallyHash].encode()\r\n            );\r\n            _require(\r\n                _radBytecode.length <= 65535,\r\n                \"too big request\"\r\n            );\r\n            \r\n            // Compute radhash \r\n            _radHash = _witOracleHash(_radBytecode);\r\n            __database().rads[hash] = _radHash;\r\n            // Add request metadata and rad bytecode to storage:\r\n            __database().radsBytecode[_radHash] = _radBytecode;\r\n            __database().radsInfo[_radHash] = RadonRequestInfo({\r\n                crowdAttestationTallyHash: bytes15(crowdAttestationTallyHash),\r\n                dataSourcesCount: uint8(modalUrls.length),\r\n                dataSourcesAggregatorHash: bytes15(dataSourcesAggregatorHash),\r\n                resultDataType: _retrievals[0].dataType\r\n            });\r\n            \r\n            // Emit event\r\n            emit NewRadonRequest(_radHash);\r\n        }\r\n    }\r\n\r\n    function verifyRadonRetrieval(\r\n            Witnet.RadonRetrievalMethods _requestMethod,\r\n            string memory _requestURL,\r\n            string memory _requestBody,\r\n            string[2][] memory  _requestHeaders,\r\n            bytes memory _requestRadonScript\r\n        )\r\n        virtual override public\r\n        returns (bytes32 hash)\r\n    {\r\n        // validate data source params\r\n        hash = _requestMethod.validate(\r\n            _requestURL, \r\n            _requestBody, \r\n            _requestHeaders, \r\n            _requestRadonScript\r\n        );\r\n\r\n        // should it be a new data source:\r\n        if (\r\n            __database().retrievals[hash].method == Witnet.RadonRetrievalMethods.Unknown\r\n        ) {\r\n            // compose data source and save it in storage:\r\n            __database().retrievals[hash] = Witnet.RadonRetrieval({\r\n                argsCount:\r\n                    WitnetBuffer.argsCountOf(\r\n                        abi.encode(\r\n                            _requestURL, bytes(\" \"),\r\n                            _requestBody, bytes(\" \"),\r\n                            _requestHeaders, bytes(\" \"),\r\n                            _requestRadonScript\r\n                        )\r\n                    ),\r\n\r\n                method:\r\n                    _requestMethod,\r\n\r\n                dataType:\r\n                    WitOracleRadonEncodingLib.verifyRadonScriptResultDataType(_requestRadonScript),\r\n\r\n                url:\r\n                    _requestURL,\r\n\r\n                body:\r\n                    _requestBody,\r\n\r\n                headers:\r\n                    _requestHeaders,\r\n\r\n                radonScript:\r\n                    _requestRadonScript\r\n            });\r\n            emit NewRadonRetrieval(hash);\r\n        }\r\n    }\r\n\r\n    // function verifyRadonRetrieval(\r\n    //         bytes32 _baseRetrieveHash,\r\n    //         string calldata _lastArgValue\r\n    //     )\r\n    //     override external\r\n    //     returns (bytes32)\r\n    // {\r\n    //     Witnet.RadonRetrieval memory _retrieval = lookupRadonRetrieval(_baseRetrieveHash);\r\n    //     _require(\r\n    //         _retrieval.argsCount > 0,\r\n    //         \"non-parameterized radon retrieval\"\r\n    //     );\r\n    //     _retrieval = _retrieval.replaceWildcards(\r\n    //         _retrieval.argsCount - 1, \r\n    //         _lastArgValue\r\n    //     );\r\n    //     return verifyRadonRetrieval(\r\n    //         _retrieval.method,\r\n    //         _retrieval.url,\r\n    //         _retrieval.body,\r\n    //         _retrieval.headers,\r\n    //         _retrieval.radonScript\r\n    //     );\r\n    // }\r\n\r\n\r\n    // ================================================================================================================\r\n    // --- IWitOracleRadonRegistryLegacy ---------------------------------------------------------------------------------\r\n\r\n    function bytecodeOf(Witnet.RadonHash _radHash)\r\n        external view override\r\n        radonRequestExists(_radHash)\r\n        returns (bytes memory)\r\n    {\r\n        return lookupRadonRequestBytecode(_radHash);\r\n    }\r\n\r\n    function lookupRadonRequest(Witnet.RadonHash _radHash)\r\n        override external view\r\n        returns (Witnet.RadonRequest memory)\r\n    {\r\n        return Witnet.RadonRequest({\r\n            retrieve:  lookupRadonRequestRetrievals(_radHash),\r\n            aggregate: lookupRadonRequestAggregator(_radHash),\r\n            tally:     lookupRadonRequestTally(_radHash)\r\n        });\r\n    }\r\n\r\n    function lookupRadonRequestAggregator(Witnet.RadonHash _radHash)\r\n        override public view\r\n        radonRequestExists(_radHash)\r\n        returns (Witnet.RadonReducer memory)\r\n    {\r\n        if (__requests(_radHash).legacyTallyHash != bytes32(0)) {\r\n            return lookupRadonReducer(__requests(_radHash).aggregateTallyHashes);\r\n        } else {\r\n            return lookupRadonReducer(bytes16(__requests(_radHash).aggregateTallyHashes));\r\n        }\r\n    }\r\n\r\n    function lookupRadonRequestResultMaxSize(bytes32 _radHash) \r\n        override external view\r\n        radonRequestExists(Witnet.RadonHash.wrap(_radHash)) \r\n        returns (uint16)\r\n    {\r\n        return 32;\r\n    }\r\n\r\n    // function lookupRadonRequestRetrievalByIndex(Witnet.RadonHash _radHash, uint256 _index) \r\n    //     override external view \r\n    //     radonRequestExists(_radHash)\r\n    //     returns (Witnet.RadonRetrieval memory)\r\n    // {\r\n    //     _require(_index < __requests(_radHash).retrievals.length, \"out of range\");\r\n    //     return __database().retrievals[\r\n    //         __requests(_radHash).retrievals[_index]\r\n    //     ];\r\n    // }\r\n\r\n    function lookupRadonRequestSources(bytes32 _radHash) \r\n        override external view \r\n        radonRequestExists(Witnet.RadonHash.wrap(_radHash))\r\n        returns (bytes32[] memory)\r\n    {\r\n        return __requests(Witnet.RadonHash.wrap(_radHash)).retrievals;\r\n    }\r\n\r\n    function lookupRadonRequestSourcesCount(bytes32 _radHash)\r\n        override external view \r\n        radonRequestExists(Witnet.RadonHash.wrap(_radHash))\r\n        returns (uint)\r\n    {\r\n        return __requests(Witnet.RadonHash.wrap(_radHash)).retrievals.length;\r\n    }\r\n\r\n    function verifyRadonRequest(\r\n            bytes32[] calldata _retrieveHashes,\r\n            bytes32 _aggregateReducerHash,\r\n            bytes32 _tallyReducerHash,\r\n            uint16,\r\n            string[][] calldata _retrieveArgsValues\r\n        )\r\n        virtual override public\r\n        returns (bytes32)\r\n    {\r\n        return Witnet.RadonHash.unwrap(__verifyRadonRequest(\r\n            _retrieveHashes,\r\n            _retrieveArgsValues,\r\n            _aggregateReducerHash,\r\n            _tallyReducerHash\r\n        ));\r\n    }\r\n\r\n    function lookupRadonRequestTally(Witnet.RadonHash _radHash)\r\n        override public view\r\n        radonRequestExists(_radHash)\r\n        returns (Witnet.RadonReducer memory)\r\n    {\r\n        if (__requests(_radHash).legacyTallyHash != bytes32(0)) {\r\n            return lookupRadonReducer(__requests(_radHash).legacyTallyHash);\r\n        } else {\r\n            return lookupRadonReducer(bytes16(__requests(_radHash).aggregateTallyHashes << 128));\r\n        }\r\n    }\r\n\r\n    \r\n    // ================================================================================================================\r\n    // --- Internal methods -------------------------------------------------------------------------------------------\r\n\r\n    function __verifyRadonRequest(\r\n            bytes32[] calldata _retrieveHashes,\r\n            string[][] memory _retrieveArgsValues,\r\n            bytes32 _aggregateReducerHash,\r\n            bytes32 _tallyReducerHash\r\n        )\r\n        virtual internal\r\n        returns (Witnet.RadonHash _radHash)\r\n    {\r\n        // calculate unique hash:\r\n        bytes32 hash = keccak256(abi.encode(\r\n            _retrieveHashes,\r\n            _retrieveArgsValues,\r\n            _aggregateReducerHash, \r\n            _tallyReducerHash\r\n        ));\r\n        \r\n        // verify, compose and register only if hash is not yet known:\r\n        _radHash = __database().rads[hash];\r\n        if (__database().rads[hash].isZero()) {\r\n        \r\n            // Check that at least one source is provided;\r\n            _require(\r\n                _retrieveHashes.length > 0 && _retrieveHashes.length < 256,\r\n                \"no retrievals\"\r\n            );\r\n            \r\n            // Check that number of args arrays matches the number of sources:\r\n            _require(\r\n                _retrieveHashes.length == _retrieveArgsValues.length,\r\n                \"args mismatch\"\r\n            );\r\n            \r\n            // Check result type consistency among all sources:\r\n            Witnet.RadonDataTypes _resultDataType;\r\n            Witnet.RadonRetrieval[] memory _retrievals = new Witnet.RadonRetrieval[](_retrieveHashes.length);\r\n            for (uint _ix = 0; _ix < _retrieveHashes.length; _ix ++) {\r\n                _retrievals[_ix] = __database().retrievals[_retrieveHashes[_ix]];\r\n                _require(\r\n                    _retrievals[_ix].method != Witnet.RadonRetrievalMethods.Unknown,\r\n                    \"unknown retrieval\"\r\n                );\r\n                // Check all sources return same Radon data type:\r\n                if (_ix == 0) {\r\n                    _resultDataType = _retrievals[0].dataType;\r\n                } else if (_resultDataType != _retrievals[_ix].dataType) {\r\n                    _revert(\"mismatching retrievals\");\r\n                }\r\n                // check enough args are provided for each source\r\n                if (_retrieveArgsValues[_ix].length != uint(_retrievals[_ix].argsCount)) {\r\n                    _revert(string(abi.encodePacked(\r\n                        \"mismatching args count on retrieval #\",\r\n                        Witnet.toString(_ix + 1)\r\n                    )));\r\n                }\r\n            }\r\n            \r\n            // Compose radon request bytecode:\r\n            bytes memory _bytecode = _retrievals.encode(\r\n                _retrieveArgsValues, \r\n                __database().reducers[_aggregateReducerHash].encode(),\r\n                __database().reducers[_tallyReducerHash].encode(),\r\n                0\r\n            );\r\n            _require(\r\n                _bytecode.length <= 65535,\r\n                \"too big request\"\r\n            );\r\n        \r\n            // Calculate radhash and add request metadata and rad bytecode to storage:\r\n            _radHash = _witOracleHash(_bytecode);\r\n            __database().rads[hash] = _radHash;\r\n            __database().radsBytecode[_radHash] = _bytecode;\r\n            __database().radsInfo[_radHash] = RadonRequestInfo({\r\n                crowdAttestationTallyHash: bytes15(_tallyReducerHash),\r\n                dataSourcesCount: uint8(_retrieveHashes.length),\r\n                dataSourcesAggregatorHash: bytes15(_aggregateReducerHash),\r\n                resultDataType: _resultDataType\r\n            });\r\n\r\n            // Emit event\r\n            emit NewRadonRequest(_radHash);\r\n        }\r\n    }\r\n\r\n    function __pushRadonReducerFilters(\r\n            Witnet.RadonReducer storage __reducer,\r\n            Witnet.RadonFilter[] memory _filters\r\n        )\r\n        internal\r\n    {\r\n        for (uint _ix = 0; _ix < _filters.length; _ix ++) {\r\n            __reducer.filters.push(_filters[_ix]);\r\n        }\r\n    }\r\n}\r\n",
  "sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\core\\base\\WitOracleRadonRegistryBase.sol",
  "ast": {
    "absolutePath": "project:/contracts/core/base/WitOracleRadonRegistryBase.sol",
    "exportedSymbols": {
      "Bech32": [
        31372
      ],
      "IWitAppliance": [
        26514
      ],
      "IWitOracleRadonRegistry": [
        27394
      ],
      "IWitOracleRadonRegistryEvents": [
        27414
      ],
      "IWitOracleRadonRegistryLegacy": [
        28865
      ],
      "Secp256k1": [
        32535
      ],
      "WitOracleRadonEncodingLib": [
        36466
      ],
      "WitOracleRadonRegistry": [
        726
      ],
      "WitOracleRadonRegistryBase": [
        15238
      ],
      "WitOracleRadonRegistryData": [
        20253
      ],
      "Witnet": [
        40741
      ],
      "WitnetBuffer": [
        42631
      ],
      "WitnetCBOR": [
        44174
      ]
    },
    "id": 15239,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 13718,
        "literals": [
          "solidity",
          ">=",
          "0.8",
          ".4",
          "<",
          "0.9",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "35:31:35"
      },
      {
        "absolutePath": "project:/contracts/WitOracleRadonRegistry.sol",
        "file": "../../WitOracleRadonRegistry.sol",
        "id": 13719,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 15239,
        "sourceUnit": 727,
        "src": "70:42:35",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "project:/contracts/data/WitOracleRadonRegistryData.sol",
        "file": "../../data/WitOracleRadonRegistryData.sol",
        "id": 13720,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 15239,
        "sourceUnit": 20254,
        "src": "114:51:35",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "project:/contracts/interfaces/legacy/IWitOracleRadonRegistryLegacy.sol",
        "file": "../../interfaces/legacy/IWitOracleRadonRegistryLegacy.sol",
        "id": 13721,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 15239,
        "sourceUnit": 28866,
        "src": "167:67:35",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "project:/contracts/libs/WitOracleRadonEncodingLib.sol",
        "file": "../../libs/WitOracleRadonEncodingLib.sol",
        "id": 13722,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 15239,
        "sourceUnit": 36467,
        "src": "236:50:35",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": true,
        "baseContracts": [
          {
            "baseName": {
              "id": 13724,
              "name": "WitOracleRadonRegistry",
              "nameLocations": [
                "739:22:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 726,
              "src": "739:22:35"
            },
            "id": 13725,
            "nodeType": "InheritanceSpecifier",
            "src": "739:22:35"
          },
          {
            "baseName": {
              "id": 13726,
              "name": "WitOracleRadonRegistryData",
              "nameLocations": [
                "772:26:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 20253,
              "src": "772:26:35"
            },
            "id": 13727,
            "nodeType": "InheritanceSpecifier",
            "src": "772:26:35"
          },
          {
            "baseName": {
              "id": 13728,
              "name": "IWitOracleRadonRegistryLegacy",
              "nameLocations": [
                "809:29:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 28865,
              "src": "809:29:35"
            },
            "id": 13729,
            "nodeType": "InheritanceSpecifier",
            "src": "809:29:35"
          }
        ],
        "canonicalName": "WitOracleRadonRegistryBase",
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": {
          "id": 13723,
          "nodeType": "StructuredDocumentation",
          "src": "290:386:35",
          "text": "@title Witnet Request Board EVM-default implementation contract.\n @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\n @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\n The result of the requests will be posted back to this contract by the bridge nodes too.\n @author The Witnet Foundation"
        },
        "fullyImplemented": false,
        "id": 15238,
        "linearizedBaseContracts": [
          15238,
          28865,
          20253,
          726,
          27414,
          27394,
          26514
        ],
        "name": "WitOracleRadonRegistryBase",
        "nameLocation": "694:26:35",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "global": false,
            "id": 13732,
            "libraryName": {
              "id": 13730,
              "name": "Witnet",
              "nameLocations": [
                "856:6:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 40741,
              "src": "856:6:35"
            },
            "nodeType": "UsingForDirective",
            "src": "850:23:35",
            "typeName": {
              "id": 13731,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "867:5:35",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            }
          },
          {
            "global": false,
            "id": 13735,
            "libraryName": {
              "id": 13733,
              "name": "Witnet",
              "nameLocations": [
                "885:6:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 40741,
              "src": "885:6:35"
            },
            "nodeType": "UsingForDirective",
            "src": "879:24:35",
            "typeName": {
              "id": 13734,
              "name": "string",
              "nodeType": "ElementaryTypeName",
              "src": "896:6:35",
              "typeDescriptions": {
                "typeIdentifier": "t_string_storage_ptr",
                "typeString": "string"
              }
            }
          },
          {
            "global": false,
            "id": 13739,
            "libraryName": {
              "id": 13736,
              "name": "Witnet",
              "nameLocations": [
                "915:6:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 40741,
              "src": "915:6:35"
            },
            "nodeType": "UsingForDirective",
            "src": "909:33:35",
            "typeName": {
              "id": 13738,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13737,
                "name": "Witnet.QuerySLA",
                "nameLocations": [
                  "926:6:35",
                  "933:8:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37373,
                "src": "926:15:35"
              },
              "referencedDeclaration": 37373,
              "src": "926:15:35",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_QuerySLA_$37373_storage_ptr",
                "typeString": "struct Witnet.QuerySLA"
              }
            }
          },
          {
            "global": false,
            "id": 13743,
            "libraryName": {
              "id": 13740,
              "name": "Witnet",
              "nameLocations": [
                "954:6:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 40741,
              "src": "954:6:35"
            },
            "nodeType": "UsingForDirective",
            "src": "948:34:35",
            "typeName": {
              "id": 13742,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13741,
                "name": "Witnet.RadonHash",
                "nameLocations": [
                  "965:6:35",
                  "972:9:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37153,
                "src": "965:16:35"
              },
              "referencedDeclaration": 37153,
              "src": "965:16:35",
              "typeDescriptions": {
                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                "typeString": "Witnet.RadonHash"
              }
            }
          },
          {
            "global": false,
            "id": 13747,
            "libraryName": {
              "id": 13744,
              "name": "WitOracleRadonEncodingLib",
              "nameLocations": [
                "1000:25:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 36466,
              "src": "1000:25:35"
            },
            "nodeType": "UsingForDirective",
            "src": "994:58:35",
            "typeName": {
              "id": 13746,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13745,
                "name": "Witnet.RadonDataTypes",
                "nameLocations": [
                  "1030:6:35",
                  "1037:14:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37720,
                "src": "1030:21:35"
              },
              "referencedDeclaration": 37720,
              "src": "1030:21:35",
              "typeDescriptions": {
                "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                "typeString": "enum Witnet.RadonDataTypes"
              }
            }
          },
          {
            "global": false,
            "id": 13751,
            "libraryName": {
              "id": 13748,
              "name": "WitOracleRadonEncodingLib",
              "nameLocations": [
                "1064:25:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 36466,
              "src": "1064:25:35"
            },
            "nodeType": "UsingForDirective",
            "src": "1058:56:35",
            "typeName": {
              "id": 13750,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13749,
                "name": "Witnet.RadonReducer",
                "nameLocations": [
                  "1094:6:35",
                  "1101:12:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37748,
                "src": "1094:19:35"
              },
              "referencedDeclaration": 37748,
              "src": "1094:19:35",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                "typeString": "struct Witnet.RadonReducer"
              }
            }
          },
          {
            "global": false,
            "id": 13755,
            "libraryName": {
              "id": 13752,
              "name": "WitOracleRadonEncodingLib",
              "nameLocations": [
                "1126:25:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 36466,
              "src": "1126:25:35"
            },
            "nodeType": "UsingForDirective",
            "src": "1120:58:35",
            "typeName": {
              "id": 13754,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13753,
                "name": "Witnet.RadonRetrieval",
                "nameLocations": [
                  "1156:6:35",
                  "1163:14:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37795,
                "src": "1156:21:35"
              },
              "referencedDeclaration": 37795,
              "src": "1156:21:35",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                "typeString": "struct Witnet.RadonRetrieval"
              }
            }
          },
          {
            "global": false,
            "id": 13760,
            "libraryName": {
              "id": 13756,
              "name": "WitOracleRadonEncodingLib",
              "nameLocations": [
                "1190:25:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 36466,
              "src": "1190:25:35"
            },
            "nodeType": "UsingForDirective",
            "src": "1184:60:35",
            "typeName": {
              "baseType": {
                "id": 13758,
                "nodeType": "UserDefinedTypeName",
                "pathNode": {
                  "id": 13757,
                  "name": "Witnet.RadonRetrieval",
                  "nameLocations": [
                    "1220:6:35",
                    "1227:14:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 37795,
                  "src": "1220:21:35"
                },
                "referencedDeclaration": 37795,
                "src": "1220:21:35",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                  "typeString": "struct Witnet.RadonRetrieval"
                }
              },
              "id": 13759,
              "nodeType": "ArrayTypeName",
              "src": "1220:23:35",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                "typeString": "struct Witnet.RadonRetrieval[]"
              }
            }
          },
          {
            "global": false,
            "id": 13764,
            "libraryName": {
              "id": 13761,
              "name": "WitOracleRadonEncodingLib",
              "nameLocations": [
                "1256:25:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 36466,
              "src": "1256:25:35"
            },
            "nodeType": "UsingForDirective",
            "src": "1250:65:35",
            "typeName": {
              "id": 13763,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13762,
                "name": "Witnet.RadonRetrievalMethods",
                "nameLocations": [
                  "1286:6:35",
                  "1293:21:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37802,
                "src": "1286:28:35"
              },
              "referencedDeclaration": 37802,
              "src": "1286:28:35",
              "typeDescriptions": {
                "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                "typeString": "enum Witnet.RadonRetrievalMethods"
              }
            }
          },
          {
            "global": false,
            "id": 13768,
            "libraryName": {
              "id": 13765,
              "name": "WitOracleRadonEncodingLib",
              "nameLocations": [
                "1327:25:35"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 36466,
              "src": "1327:25:35"
            },
            "nodeType": "UsingForDirective",
            "src": "1321:54:35",
            "typeName": {
              "id": 13767,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 13766,
                "name": "Witnet.RadonSLAv1",
                "nameLocations": [
                  "1357:6:35",
                  "1364:10:35"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 37814,
                "src": "1357:17:35"
              },
              "referencedDeclaration": 37814,
              "src": "1357:17:35",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_RadonSLAv1_$37814_storage_ptr",
                "typeString": "struct Witnet.RadonSLAv1"
              }
            }
          },
          {
            "body": {
              "id": 13786,
              "nodeType": "Block",
              "src": "1438:142:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 13781,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "expression": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 13774,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "1472:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 13775,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "1472:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 13776,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "1485:12:35",
                              "memberName": "radsBytecode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20195,
                              "src": "1472:25:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_bytes_storage_$",
                                "typeString": "mapping(Witnet.RadonHash => bytes storage ref)"
                              }
                            },
                            "id": 13778,
                            "indexExpression": {
                              "id": 13777,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13771,
                              "src": "1498:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1472:35:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_storage",
                              "typeString": "bytes storage ref"
                            }
                          },
                          "id": 13779,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "1508:6:35",
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "src": "1472:42:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">",
                        "rightExpression": {
                          "hexValue": "30",
                          "id": 13780,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "1517:1:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        "src": "1472:46:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "hexValue": "756e766572696669656420646174612072657175657374",
                        "id": 13782,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "1533:25:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_b49558f3eaa6a83c2a85c1bba926b9e6e91355f097f75bd9e569fe1016be531c",
                          "typeString": "literal_string \"unverified data request\""
                        },
                        "value": "unverified data request"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_b49558f3eaa6a83c2a85c1bba926b9e6e91355f097f75bd9e569fe1016be531c",
                          "typeString": "literal_string \"unverified data request\""
                        }
                      ],
                      "id": 13773,
                      "name": "_require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26494,
                      "src": "1449:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) view"
                      }
                    },
                    "id": 13783,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1449:120:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 13784,
                  "nodeType": "ExpressionStatement",
                  "src": "1449:120:35"
                },
                {
                  "id": 13785,
                  "nodeType": "PlaceholderStatement",
                  "src": "1571:1:35"
                }
              ]
            },
            "id": 13787,
            "name": "radonRequestExists",
            "nameLocation": "1392:18:35",
            "nodeType": "ModifierDefinition",
            "parameters": {
              "id": 13772,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13771,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "1428:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13787,
                  "src": "1411:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 13770,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13769,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "1411:6:35",
                        "1418:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "1411:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "1411:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1410:27:35"
            },
            "src": "1383:197:35",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 13806,
              "nodeType": "Block",
              "src": "1637:172:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                          "typeString": "enum Witnet.RadonRetrievalMethods"
                        },
                        "id": 13801,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "expression": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 13792,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "1671:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 13793,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "1671:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 13794,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "1684:10:35",
                              "memberName": "retrievals",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20179,
                              "src": "1671:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                                "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                              }
                            },
                            "id": 13796,
                            "indexExpression": {
                              "id": 13795,
                              "name": "_hash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13789,
                              "src": "1695:5:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1671:30:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                              "typeString": "struct Witnet.RadonRetrieval storage ref"
                            }
                          },
                          "id": 13797,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "1702:6:35",
                          "memberName": "method",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37780,
                          "src": "1671:37:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                            "typeString": "enum Witnet.RadonRetrievalMethods"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "expression": {
                            "expression": {
                              "id": 13798,
                              "name": "Witnet",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 40741,
                              "src": "1712:6:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                "typeString": "type(library Witnet)"
                              }
                            },
                            "id": 13799,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "1719:21:35",
                            "memberName": "RadonRetrievalMethods",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37802,
                            "src": "1712:28:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                              "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                            }
                          },
                          "id": 13800,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "1741:7:35",
                          "memberName": "Unknown",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37797,
                          "src": "1712:36:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                            "typeString": "enum Witnet.RadonRetrievalMethods"
                          }
                        },
                        "src": "1671:77:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "hexValue": "756e7665726966696564206461746120736f75726365",
                        "id": 13802,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "1763:24:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_a5de198aa4488e83c2c1d79535c5fd459a5ac4337b0ab3491e3a4847a33a33da",
                          "typeString": "literal_string \"unverified data source\""
                        },
                        "value": "unverified data source"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_a5de198aa4488e83c2c1d79535c5fd459a5ac4337b0ab3491e3a4847a33a33da",
                          "typeString": "literal_string \"unverified data source\""
                        }
                      ],
                      "id": 13791,
                      "name": "_require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26494,
                      "src": "1648:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) view"
                      }
                    },
                    "id": 13803,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1648:150:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 13804,
                  "nodeType": "ExpressionStatement",
                  "src": "1648:150:35"
                },
                {
                  "id": 13805,
                  "nodeType": "PlaceholderStatement",
                  "src": "1800:1:35"
                }
              ]
            },
            "id": 13807,
            "name": "radonRetrievalExists",
            "nameLocation": "1601:20:35",
            "nodeType": "ModifierDefinition",
            "parameters": {
              "id": 13790,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13789,
                  "mutability": "mutable",
                  "name": "_hash",
                  "nameLocation": "1630:5:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13807,
                  "src": "1622:13:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13788,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1622:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1621:15:35"
            },
            "src": "1592:217:35",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 13823,
              "nodeType": "Block",
              "src": "1910:62:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 13819,
                            "name": "chunk",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 13809,
                            "src": "1957:5:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          ],
                          "id": 13818,
                          "name": "sha256",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 4294967274,
                          "src": "1950:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
                            "typeString": "function (bytes memory) pure returns (bytes32)"
                          }
                        },
                        "id": 13820,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1950:13:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "expression": {
                          "id": 13815,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "1928:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 13816,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "1935:9:35",
                        "memberName": "RadonHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37153,
                        "src": "1928:16:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "type(Witnet.RadonHash)"
                        }
                      },
                      "id": 13817,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "1945:4:35",
                      "memberName": "wrap",
                      "nodeType": "MemberAccess",
                      "src": "1928:21:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32) pure returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 13821,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1928:36:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "functionReturnParameters": 13814,
                  "id": 13822,
                  "nodeType": "Return",
                  "src": "1921:43:35"
                }
              ]
            },
            "id": 13824,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "_witOracleHash",
            "nameLocation": "1826:14:35",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13810,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13809,
                  "mutability": "mutable",
                  "name": "chunk",
                  "nameLocation": "1854:5:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13824,
                  "src": "1841:18:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13808,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1841:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1840:20:35"
            },
            "returnParameters": {
              "id": 13814,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13813,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13824,
                  "src": "1892:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 13812,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13811,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "1892:6:35",
                        "1899:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "1892:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "1892:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1891:18:35"
            },
            "scope": 15238,
            "src": "1817:155:35",
            "stateMutability": "pure",
            "virtual": true,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 13831,
              "nodeType": "Block",
              "src": "2007:42:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "hexValue": "6e6f207472616e7366657273",
                        "id": 13828,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "2026:14:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_02aaa93344ce36827919ee7613bf5a0bbdbf5bab3149312b44f785458d9f24c4",
                          "typeString": "literal_string \"no transfers\""
                        },
                        "value": "no transfers"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_stringliteral_02aaa93344ce36827919ee7613bf5a0bbdbf5bab3149312b44f785458d9f24c4",
                          "typeString": "literal_string \"no transfers\""
                        }
                      ],
                      "id": 13827,
                      "name": "_revert",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26513,
                      "src": "2018:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (string memory) view"
                      }
                    },
                    "id": 13829,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2018:23:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 13830,
                  "nodeType": "ExpressionStatement",
                  "src": "2018:23:35"
                }
              ]
            },
            "id": 13832,
            "implemented": true,
            "kind": "receive",
            "modifiers": [],
            "name": "",
            "nameLocation": "-1:-1:-1",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13825,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1987:2:35"
            },
            "returnParameters": {
              "id": 13826,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2007:0:35"
            },
            "scope": 15238,
            "src": "1980:69:35",
            "stateMutability": "payable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27140
            ],
            "body": {
              "id": 13869,
              "nodeType": "Block",
              "src": "2458:272:35",
              "statements": [
                {
                  "assignments": [
                    13845
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 13845,
                      "mutability": "mutable",
                      "name": "_radBytecode",
                      "nameLocation": "2482:12:35",
                      "nodeType": "VariableDeclaration",
                      "scope": 13869,
                      "src": "2469:25:35",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 13844,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "2469:5:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 13849,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 13847,
                        "name": "_radHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13835,
                        "src": "2524:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      ],
                      "id": 13846,
                      "name": "lookupRadonRequestBytecode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14029,
                      "src": "2497:26:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function (Witnet.RadonHash) view returns (bytes memory)"
                      }
                    },
                    "id": 13848,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2497:36:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2469:64:35"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 13856,
                                  "name": "_radBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 13845,
                                  "src": "2622:12:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 13857,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "2635:6:35",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "2622:19:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 13855,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "2615:6:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 13854,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "2615:6:35",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 13858,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2615:27:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "hexValue": "30783061",
                            "id": 13859,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2644:4:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_10_by_1",
                              "typeString": "int_const 10"
                            },
                            "value": "0x0a"
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_rational_10_by_1",
                              "typeString": "int_const 10"
                            }
                          ],
                          "expression": {
                            "id": 13852,
                            "name": "WitOracleRadonEncodingLib",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 36466,
                            "src": "2582:25:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_WitOracleRadonEncodingLib_$36466_$",
                              "typeString": "type(library WitOracleRadonEncodingLib)"
                            }
                          },
                          "id": 13853,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "2608:6:35",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 34740,
                          "src": "2582:32:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_delegatecall_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 13860,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2582:67:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 13861,
                        "name": "_radBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13845,
                        "src": "2664:12:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 13862,
                                "name": "_sla",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 13838,
                                "src": "2691:4:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_QuerySLA_$37373_calldata_ptr",
                                  "typeString": "struct Witnet.QuerySLA calldata"
                                }
                              },
                              "id": 13863,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "2696:4:35",
                              "memberName": "toV1",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 38839,
                              "src": "2691:9:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_struct$_QuerySLA_$37373_calldata_ptr_$returns$_t_struct$_RadonSLAv1_$37814_memory_ptr_$attached_to$_t_struct$_QuerySLA_$37373_calldata_ptr_$",
                                "typeString": "function (struct Witnet.QuerySLA calldata) pure returns (struct Witnet.RadonSLAv1 memory)"
                              }
                            },
                            "id": 13864,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2691:11:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                              "typeString": "struct Witnet.RadonSLAv1 memory"
                            }
                          },
                          "id": 13865,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "2703:6:35",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 35403,
                          "src": "2691:18:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonSLAv1_$37814_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RadonSLAv1_$37814_memory_ptr_$",
                            "typeString": "function (struct Witnet.RadonSLAv1 memory) pure returns (bytes memory)"
                          }
                        },
                        "id": 13866,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2691:20:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 13850,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "2551:3:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 13851,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "2555:12:35",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "2551:16:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 13867,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2551:171:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 13843,
                  "id": 13868,
                  "nodeType": "Return",
                  "src": "2544:178:35"
                }
              ]
            },
            "functionSelector": "dcf3f972",
            "id": 13870,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "bytecodeOf",
            "nameLocation": "2319:10:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13840,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "2397:8:35"
            },
            "parameters": {
              "id": 13839,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13835,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "2347:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13870,
                  "src": "2330:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 13834,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13833,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "2330:6:35",
                        "2337:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "2330:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "2330:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13838,
                  "mutability": "mutable",
                  "name": "_sla",
                  "nameLocation": "2382:4:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13870,
                  "src": "2357:29:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_QuerySLA_$37373_calldata_ptr",
                    "typeString": "struct Witnet.QuerySLA"
                  },
                  "typeName": {
                    "id": 13837,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13836,
                      "name": "Witnet.QuerySLA",
                      "nameLocations": [
                        "2357:6:35",
                        "2364:8:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37373,
                      "src": "2357:15:35"
                    },
                    "referencedDeclaration": 37373,
                    "src": "2357:15:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_QuerySLA_$37373_storage_ptr",
                      "typeString": "struct Witnet.QuerySLA"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2329:58:35"
            },
            "returnParameters": {
              "id": 13843,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13842,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13870,
                  "src": "2439:12:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13841,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "2439:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2438:14:35"
            },
            "scope": 15238,
            "src": "2310:420:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27151
            ],
            "body": {
              "id": 13900,
              "nodeType": "Block",
              "src": "2887:197:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 13887,
                                  "name": "_radBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 13872,
                                  "src": "2976:12:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_calldata_ptr",
                                    "typeString": "bytes calldata"
                                  }
                                },
                                "id": 13888,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "2989:6:35",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "2976:19:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 13886,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "2969:6:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 13885,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "2969:6:35",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 13889,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "2969:27:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "hexValue": "30783061",
                            "id": 13890,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2998:4:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_10_by_1",
                              "typeString": "int_const 10"
                            },
                            "value": "0x0a"
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_rational_10_by_1",
                              "typeString": "int_const 10"
                            }
                          ],
                          "expression": {
                            "id": 13883,
                            "name": "WitOracleRadonEncodingLib",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 36466,
                            "src": "2936:25:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_WitOracleRadonEncodingLib_$36466_$",
                              "typeString": "type(library WitOracleRadonEncodingLib)"
                            }
                          },
                          "id": 13884,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "2962:6:35",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 34740,
                          "src": "2936:32:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_delegatecall_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 13891,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "2936:67:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 13892,
                        "name": "_radBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13872,
                        "src": "3018:12:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_calldata_ptr",
                          "typeString": "bytes calldata"
                        }
                      },
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 13893,
                                "name": "_sla",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 13875,
                                "src": "3045:4:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_QuerySLA_$37373_calldata_ptr",
                                  "typeString": "struct Witnet.QuerySLA calldata"
                                }
                              },
                              "id": 13894,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "3050:4:35",
                              "memberName": "toV1",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 38839,
                              "src": "3045:9:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_struct$_QuerySLA_$37373_calldata_ptr_$returns$_t_struct$_RadonSLAv1_$37814_memory_ptr_$attached_to$_t_struct$_QuerySLA_$37373_calldata_ptr_$",
                                "typeString": "function (struct Witnet.QuerySLA calldata) pure returns (struct Witnet.RadonSLAv1 memory)"
                              }
                            },
                            "id": 13895,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "3045:11:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                              "typeString": "struct Witnet.RadonSLAv1 memory"
                            }
                          },
                          "id": 13896,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "3057:6:35",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 35403,
                          "src": "3045:18:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonSLAv1_$37814_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RadonSLAv1_$37814_memory_ptr_$",
                            "typeString": "function (struct Witnet.RadonSLAv1 memory) pure returns (bytes memory)"
                          }
                        },
                        "id": 13897,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "3045:20:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_calldata_ptr",
                          "typeString": "bytes calldata"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 13881,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "2905:3:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 13882,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "2909:12:35",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "2905:16:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 13898,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2905:171:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 13880,
                  "id": 13899,
                  "nodeType": "Return",
                  "src": "2898:178:35"
                }
              ]
            },
            "functionSelector": "9a7af84e",
            "id": 13901,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "bytecodeOf",
            "nameLocation": "2747:10:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13877,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "2827:8:35"
            },
            "parameters": {
              "id": 13876,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13872,
                  "mutability": "mutable",
                  "name": "_radBytecode",
                  "nameLocation": "2773:12:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13901,
                  "src": "2758:27:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13871,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "2758:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13875,
                  "mutability": "mutable",
                  "name": "_sla",
                  "nameLocation": "2812:4:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13901,
                  "src": "2787:29:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_QuerySLA_$37373_calldata_ptr",
                    "typeString": "struct Witnet.QuerySLA"
                  },
                  "typeName": {
                    "id": 13874,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13873,
                      "name": "Witnet.QuerySLA",
                      "nameLocations": [
                        "2787:6:35",
                        "2794:8:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37373,
                      "src": "2787:15:35"
                    },
                    "referencedDeclaration": 37373,
                    "src": "2787:15:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_QuerySLA_$37373_storage_ptr",
                      "typeString": "struct Witnet.QuerySLA"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2757:60:35"
            },
            "returnParameters": {
              "id": 13880,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13879,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13901,
                  "src": "2868:12:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13878,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "2868:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2867:14:35"
            },
            "scope": 15238,
            "src": "2738:346:35",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27168
            ],
            "body": {
              "id": 13925,
              "nodeType": "Block",
              "src": "3189:118:35",
              "statements": [
                {
                  "expression": {
                    "components": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        },
                        "id": 13922,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "arguments": [
                            {
                              "expression": {
                                "baseExpression": {
                                  "expression": {
                                    "arguments": [],
                                    "expression": {
                                      "argumentTypes": [],
                                      "id": 13911,
                                      "name": "__database",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 20236,
                                      "src": "3228:10:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                        "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                      }
                                    },
                                    "id": 13912,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "3228:12:35",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                      "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                    }
                                  },
                                  "id": 13913,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "3241:8:35",
                                  "memberName": "reducers",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 20174,
                                  "src": "3228:21:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                                    "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                                  }
                                },
                                "id": 13915,
                                "indexExpression": {
                                  "id": 13914,
                                  "name": "_radonReducerHash",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 13903,
                                  "src": "3250:17:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "3228:40:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                                  "typeString": "struct Witnet.RadonReducer storage ref"
                                }
                              },
                              "id": 13916,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "3269:6:35",
                              "memberName": "opcode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37743,
                              "src": "3228:47:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            ],
                            "id": 13910,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "3222:5:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_uint8_$",
                              "typeString": "type(uint8)"
                            },
                            "typeName": {
                              "id": 13909,
                              "name": "uint8",
                              "nodeType": "ElementaryTypeName",
                              "src": "3222:5:35",
                              "typeDescriptions": {}
                            }
                          },
                          "id": 13917,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "3222:54:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "arguments": [
                            {
                              "hexValue": "30",
                              "id": 13920,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "3286:1:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "id": 13919,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "3280:5:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_uint8_$",
                              "typeString": "type(uint8)"
                            },
                            "typeName": {
                              "id": 13918,
                              "name": "uint8",
                              "nodeType": "ElementaryTypeName",
                              "src": "3280:5:35",
                              "typeDescriptions": {}
                            }
                          },
                          "id": 13921,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "3280:8:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        "src": "3222:66:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "id": 13923,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "3207:92:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 13908,
                  "id": 13924,
                  "nodeType": "Return",
                  "src": "3200:99:35"
                }
              ]
            },
            "functionSelector": "2229e86e",
            "id": 13926,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "isVerifiedRadonReducer",
            "nameLocation": "3101:22:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13905,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "3165:8:35"
            },
            "parameters": {
              "id": 13904,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13903,
                  "mutability": "mutable",
                  "name": "_radonReducerHash",
                  "nameLocation": "3132:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13926,
                  "src": "3124:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13902,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3124:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3123:27:35"
            },
            "returnParameters": {
              "id": 13908,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13907,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13926,
                  "src": "3183:4:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13906,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3183:4:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3182:6:35"
            },
            "scope": 15238,
            "src": "3092:215:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27177
            ],
            "body": {
              "id": 13945,
              "nodeType": "Block",
              "src": "3421:107:35",
              "statements": [
                {
                  "expression": {
                    "components": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 13942,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "expression": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 13935,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "3454:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 13936,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "3454:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 13937,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "3467:12:35",
                              "memberName": "radsBytecode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20195,
                              "src": "3454:25:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_bytes_storage_$",
                                "typeString": "mapping(Witnet.RadonHash => bytes storage ref)"
                              }
                            },
                            "id": 13939,
                            "indexExpression": {
                              "id": 13938,
                              "name": "_radonRequestHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13929,
                              "src": "3480:17:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3454:44:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_storage",
                              "typeString": "bytes storage ref"
                            }
                          },
                          "id": 13940,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "3499:6:35",
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "src": "3454:51:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">",
                        "rightExpression": {
                          "hexValue": "30",
                          "id": 13941,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "3508:1:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        "src": "3454:55:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "id": 13943,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "3439:81:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 13934,
                  "id": 13944,
                  "nodeType": "Return",
                  "src": "3432:88:35"
                }
              ]
            },
            "functionSelector": "68ec07a4",
            "id": 13946,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "isVerifiedRadonRequest",
            "nameLocation": "3324:22:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13931,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "3397:8:35"
            },
            "parameters": {
              "id": 13930,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13929,
                  "mutability": "mutable",
                  "name": "_radonRequestHash",
                  "nameLocation": "3364:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13946,
                  "src": "3347:34:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 13928,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13927,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "3347:6:35",
                        "3354:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "3347:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "3347:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3346:36:35"
            },
            "returnParameters": {
              "id": 13934,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13933,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13946,
                  "src": "3415:4:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13932,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3415:4:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3414:6:35"
            },
            "scope": 15238,
            "src": "3315:213:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27185
            ],
            "body": {
              "id": 13966,
              "nodeType": "Block",
              "src": "3637:143:35",
              "statements": [
                {
                  "expression": {
                    "components": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                          "typeString": "enum Witnet.RadonRetrievalMethods"
                        },
                        "id": 13963,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "expression": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 13954,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "3670:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 13955,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "3670:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 13956,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "3683:10:35",
                              "memberName": "retrievals",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20179,
                              "src": "3670:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                                "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                              }
                            },
                            "id": 13958,
                            "indexExpression": {
                              "id": 13957,
                              "name": "_radonRetrievalHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13948,
                              "src": "3694:19:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3670:44:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                              "typeString": "struct Witnet.RadonRetrieval storage ref"
                            }
                          },
                          "id": 13959,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "3715:6:35",
                          "memberName": "method",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37780,
                          "src": "3670:51:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                            "typeString": "enum Witnet.RadonRetrievalMethods"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "expression": {
                            "expression": {
                              "id": 13960,
                              "name": "Witnet",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 40741,
                              "src": "3725:6:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                "typeString": "type(library Witnet)"
                              }
                            },
                            "id": 13961,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "3732:21:35",
                            "memberName": "RadonRetrievalMethods",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37802,
                            "src": "3725:28:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                              "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                            }
                          },
                          "id": 13962,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "3754:7:35",
                          "memberName": "Unknown",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37797,
                          "src": "3725:36:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                            "typeString": "enum Witnet.RadonRetrievalMethods"
                          }
                        },
                        "src": "3670:91:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      }
                    ],
                    "id": 13964,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "3655:117:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 13953,
                  "id": 13965,
                  "nodeType": "Return",
                  "src": "3648:124:35"
                }
              ]
            },
            "functionSelector": "977e0157",
            "id": 13967,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "isVerifiedRadonRetrieval",
            "nameLocation": "3545:24:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13950,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "3613:8:35"
            },
            "parameters": {
              "id": 13949,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13948,
                  "mutability": "mutable",
                  "name": "_radonRetrievalHash",
                  "nameLocation": "3578:19:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13967,
                  "src": "3570:27:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13947,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3570:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3569:29:35"
            },
            "returnParameters": {
              "id": 13953,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13952,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13967,
                  "src": "3631:4:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13951,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3631:4:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3630:6:35"
            },
            "scope": 15238,
            "src": "3536:244:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27160
            ],
            "body": {
              "id": 13980,
              "nodeType": "Block",
              "src": "3883:54:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 13977,
                        "name": "_radBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13969,
                        "src": "3916:12:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_calldata_ptr",
                          "typeString": "bytes calldata"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_calldata_ptr",
                          "typeString": "bytes calldata"
                        }
                      ],
                      "id": 13976,
                      "name": "_witOracleHash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13824,
                      "src": "3901:14:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes memory) pure returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 13978,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3901:28:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "functionReturnParameters": 13975,
                  "id": 13979,
                  "nodeType": "Return",
                  "src": "3894:35:35"
                }
              ]
            },
            "functionSelector": "a0490fa0",
            "id": 13981,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "hashOf",
            "nameLocation": "3797:6:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13971,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "3847:8:35"
            },
            "parameters": {
              "id": 13970,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13969,
                  "mutability": "mutable",
                  "name": "_radBytecode",
                  "nameLocation": "3819:12:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 13981,
                  "src": "3804:27:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13968,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3804:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3803:29:35"
            },
            "returnParameters": {
              "id": 13975,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13974,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 13981,
                  "src": "3865:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 13973,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13972,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "3865:6:35",
                        "3872:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "3865:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "3865:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3864:18:35"
            },
            "scope": 15238,
            "src": "3788:149:35",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27194
            ],
            "body": {
              "id": 14009,
              "nodeType": "Block",
              "src": "4096:136:35",
              "statements": [
                {
                  "expression": {
                    "id": 13996,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 13990,
                      "name": "_reducer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13988,
                      "src": "4110:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                        "typeString": "struct Witnet.RadonReducer memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "baseExpression": {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "id": 13991,
                            "name": "__database",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20236,
                            "src": "4121:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                              "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                            }
                          },
                          "id": 13992,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4121:12:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                            "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                          }
                        },
                        "id": 13993,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "4134:8:35",
                        "memberName": "reducers",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20174,
                        "src": "4121:21:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                          "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                        }
                      },
                      "id": 13995,
                      "indexExpression": {
                        "id": 13994,
                        "name": "_hash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13983,
                        "src": "4143:5:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "4121:28:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                        "typeString": "struct Witnet.RadonReducer storage ref"
                      }
                    },
                    "src": "4110:39:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                      "typeString": "struct Witnet.RadonReducer memory"
                    }
                  },
                  "id": 13997,
                  "nodeType": "ExpressionStatement",
                  "src": "4110:39:35"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        },
                        "id": 14005,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 14001,
                                "name": "_reducer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 13988,
                                "src": "4175:8:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                  "typeString": "struct Witnet.RadonReducer memory"
                                }
                              },
                              "id": 14002,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "4184:6:35",
                              "memberName": "opcode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37743,
                              "src": "4175:15:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            ],
                            "id": 14000,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "4169:5:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_uint8_$",
                              "typeString": "type(uint8)"
                            },
                            "typeName": {
                              "id": 13999,
                              "name": "uint8",
                              "nodeType": "ElementaryTypeName",
                              "src": "4169:5:35",
                              "typeDescriptions": {}
                            }
                          },
                          "id": 14003,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4169:22:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "hexValue": "30",
                          "id": 14004,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "4195:1:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        "src": "4169:27:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "hexValue": "756e766572696669656420646174612072656475636572",
                        "id": 14006,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4198:25:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_4b0c59cfbb8ec3d1a3191036f0ab1a7e368a5bbb3835ccce6e7109a11548b32e",
                          "typeString": "literal_string \"unverified data reducer\""
                        },
                        "value": "unverified data reducer"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_4b0c59cfbb8ec3d1a3191036f0ab1a7e368a5bbb3835ccce6e7109a11548b32e",
                          "typeString": "literal_string \"unverified data reducer\""
                        }
                      ],
                      "id": 13998,
                      "name": "_require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26494,
                      "src": "4160:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) view"
                      }
                    },
                    "id": 14007,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4160:64:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 14008,
                  "nodeType": "ExpressionStatement",
                  "src": "4160:64:35"
                }
              ]
            },
            "functionSelector": "3679f864",
            "id": 14010,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "lookupRadonReducer",
            "nameLocation": "3954:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 13985,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "4005:8:35"
            },
            "parameters": {
              "id": 13984,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13983,
                  "mutability": "mutable",
                  "name": "_hash",
                  "nameLocation": "3981:5:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14010,
                  "src": "3973:13:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13982,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3973:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3972:15:35"
            },
            "returnParameters": {
              "id": 13989,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13988,
                  "mutability": "mutable",
                  "name": "_reducer",
                  "nameLocation": "4081:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14010,
                  "src": "4054:35:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 13987,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13986,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "4054:6:35",
                        "4061:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "4054:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "4054:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4053:37:35"
            },
            "scope": 15238,
            "src": "3945:287:35",
            "stateMutability": "view",
            "virtual": true,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              27203
            ],
            "body": {
              "id": 14028,
              "nodeType": "Block",
              "src": "4408:61:35",
              "statements": [
                {
                  "expression": {
                    "baseExpression": {
                      "expression": {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "id": 14022,
                          "name": "__database",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20236,
                          "src": "4426:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                            "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                          }
                        },
                        "id": 14023,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4426:12:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                          "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                        }
                      },
                      "id": 14024,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "4439:12:35",
                      "memberName": "radsBytecode",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20195,
                      "src": "4426:25:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_bytes_storage_$",
                        "typeString": "mapping(Witnet.RadonHash => bytes storage ref)"
                      }
                    },
                    "id": 14026,
                    "indexExpression": {
                      "id": 14025,
                      "name": "_radHash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14013,
                      "src": "4452:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                        "typeString": "Witnet.RadonHash"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "4426:35:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage",
                      "typeString": "bytes storage ref"
                    }
                  },
                  "functionReturnParameters": 14021,
                  "id": 14027,
                  "nodeType": "Return",
                  "src": "4419:42:35"
                }
              ]
            },
            "functionSelector": "8a227764",
            "id": 14029,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14017,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14013,
                    "src": "4361:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14018,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14016,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "4342:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "4342:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "4342:28:35"
              }
            ],
            "name": "lookupRadonRequestBytecode",
            "nameLocation": "4249:26:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14015,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "4324:8:35"
            },
            "parameters": {
              "id": 14014,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14013,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "4293:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14029,
                  "src": "4276:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14012,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14011,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "4276:6:35",
                        "4283:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "4276:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "4276:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4275:27:35"
            },
            "returnParameters": {
              "id": 14021,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14020,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14029,
                  "src": "4389:12:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 14019,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4389:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4388:14:35"
            },
            "scope": 15238,
            "src": "4240:229:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              27213
            ],
            "body": {
              "id": 14051,
              "nodeType": "Block",
              "src": "4674:103:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "expression": {
                          "baseExpression": {
                            "expression": {
                              "arguments": [],
                              "expression": {
                                "argumentTypes": [],
                                "id": 14043,
                                "name": "__database",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20236,
                                "src": "4711:10:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                  "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                }
                              },
                              "id": 14044,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "4711:12:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                              }
                            },
                            "id": 14045,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "4724:8:35",
                            "memberName": "radsInfo",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 20201,
                            "src": "4711:21:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestInfo_$20165_storage_$",
                              "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestInfo storage ref)"
                            }
                          },
                          "id": 14047,
                          "indexExpression": {
                            "id": 14046,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14032,
                            "src": "4733:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "4711:31:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                            "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                          }
                        },
                        "id": 14048,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "4743:25:35",
                        "memberName": "crowdAttestationTallyHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20157,
                        "src": "4711:57:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes15",
                          "typeString": "bytes15"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes15",
                          "typeString": "bytes15"
                        }
                      ],
                      "id": 14042,
                      "name": "lookupRadonReducer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14010,
                      "src": "4692:18:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                        "typeString": "function (bytes32) view returns (struct Witnet.RadonReducer memory)"
                      }
                    },
                    "id": 14049,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4692:77:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                      "typeString": "struct Witnet.RadonReducer memory"
                    }
                  },
                  "functionReturnParameters": 14041,
                  "id": 14050,
                  "nodeType": "Return",
                  "src": "4685:84:35"
                }
              ]
            },
            "functionSelector": "48223a0b",
            "id": 14052,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14036,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14032,
                    "src": "4613:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14037,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14035,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "4594:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "4594:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "4594:28:35"
              }
            ],
            "name": "lookupRadonRequestCrowdAttestationTally",
            "nameLocation": "4486:39:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14034,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "4562:8:35"
            },
            "parameters": {
              "id": 14033,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14032,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "4543:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14052,
                  "src": "4526:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14031,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14030,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "4526:6:35",
                        "4533:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "4526:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "4526:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4525:27:35"
            },
            "returnParameters": {
              "id": 14041,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14040,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14052,
                  "src": "4641:26:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14039,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14038,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "4641:6:35",
                        "4648:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "4641:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "4641:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4640:28:35"
            },
            "scope": 15238,
            "src": "4477:300:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27234
            ],
            "body": {
              "id": 14107,
              "nodeType": "Block",
              "src": "4986:447:35",
              "statements": [
                {
                  "expression": {
                    "id": 14077,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14066,
                      "name": "_retrievals",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14064,
                      "src": "5142:11:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                        "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "expression": {
                              "arguments": [
                                {
                                  "id": 14072,
                                  "name": "_radHash",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 14055,
                                  "src": "5195:8:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                    "typeString": "Witnet.RadonHash"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                    "typeString": "Witnet.RadonHash"
                                  }
                                ],
                                "id": 14071,
                                "name": "__requests",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20252,
                                "src": "5184:10:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                                  "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                                }
                              },
                              "id": 14073,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "5184:20:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                                "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                              }
                            },
                            "id": 14074,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "5205:10:35",
                            "memberName": "retrievals",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 20152,
                            "src": "5184:31:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
                              "typeString": "bytes32[] storage ref"
                            }
                          },
                          "id": 14075,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "5216:6:35",
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "src": "5184:38:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        ],
                        "id": 14070,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "NewExpression",
                        "src": "5156:27:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$",
                          "typeString": "function (uint256) pure returns (struct Witnet.RadonRetrieval memory[] memory)"
                        },
                        "typeName": {
                          "baseType": {
                            "id": 14068,
                            "nodeType": "UserDefinedTypeName",
                            "pathNode": {
                              "id": 14067,
                              "name": "Witnet.RadonRetrieval",
                              "nameLocations": [
                                "5160:6:35",
                                "5167:14:35"
                              ],
                              "nodeType": "IdentifierPath",
                              "referencedDeclaration": 37795,
                              "src": "5160:21:35"
                            },
                            "referencedDeclaration": 37795,
                            "src": "5160:21:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                              "typeString": "struct Witnet.RadonRetrieval"
                            }
                          },
                          "id": 14069,
                          "nodeType": "ArrayTypeName",
                          "src": "5160:23:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                            "typeString": "struct Witnet.RadonRetrieval[]"
                          }
                        }
                      },
                      "id": 14076,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "5156:67:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                        "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                      }
                    },
                    "src": "5142:81:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                      "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                    }
                  },
                  "id": 14078,
                  "nodeType": "ExpressionStatement",
                  "src": "5142:81:35"
                },
                {
                  "body": {
                    "id": 14105,
                    "nodeType": "Block",
                    "src": "5287:139:35",
                    "statements": [
                      {
                        "expression": {
                          "id": 14103,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "id": 14090,
                              "name": "_retrievals",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14064,
                              "src": "5302:11:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                              }
                            },
                            "id": 14092,
                            "indexExpression": {
                              "id": 14091,
                              "name": "_ix",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14080,
                              "src": "5314:3:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "5302:16:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 14093,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "5321:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 14094,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "5321:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 14095,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "5334:10:35",
                              "memberName": "retrievals",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20179,
                              "src": "5321:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                                "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                              }
                            },
                            "id": 14102,
                            "indexExpression": {
                              "baseExpression": {
                                "expression": {
                                  "arguments": [
                                    {
                                      "id": 14097,
                                      "name": "_radHash",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14055,
                                      "src": "5374:8:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                        "typeString": "Witnet.RadonHash"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                        "typeString": "Witnet.RadonHash"
                                      }
                                    ],
                                    "id": 14096,
                                    "name": "__requests",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20252,
                                    "src": "5363:10:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                                      "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                                    }
                                  },
                                  "id": 14098,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "5363:20:35",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                                    "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                                  }
                                },
                                "id": 14099,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "5384:10:35",
                                "memberName": "retrievals",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 20152,
                                "src": "5363:31:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
                                  "typeString": "bytes32[] storage ref"
                                }
                              },
                              "id": 14101,
                              "indexExpression": {
                                "id": 14100,
                                "name": "_ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14080,
                                "src": "5395:3:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "5363:36:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "5321:93:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                              "typeString": "struct Witnet.RadonRetrieval storage ref"
                            }
                          },
                          "src": "5302:112:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 14104,
                        "nodeType": "ExpressionStatement",
                        "src": "5302:112:35"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 14086,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 14083,
                      "name": "_ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14080,
                      "src": "5253:3:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "id": 14084,
                        "name": "_retrievals",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14064,
                        "src": "5259:11:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                        }
                      },
                      "id": 14085,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "5271:6:35",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "5259:18:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5253:24:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 14106,
                  "initializationExpression": {
                    "assignments": [
                      14080
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 14080,
                        "mutability": "mutable",
                        "name": "_ix",
                        "nameLocation": "5244:3:35",
                        "nodeType": "VariableDeclaration",
                        "scope": 14106,
                        "src": "5239:8:35",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 14079,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "5239:4:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 14082,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 14081,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "5250:1:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "5239:12:35"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 14088,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "5279:6:35",
                      "subExpression": {
                        "id": 14087,
                        "name": "_ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14080,
                        "src": "5279:3:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 14089,
                    "nodeType": "ExpressionStatement",
                    "src": "5279:6:35"
                  },
                  "nodeType": "ForStatement",
                  "src": "5234:192:35"
                }
              ]
            },
            "functionSelector": "77c11259",
            "id": 14108,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14059,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14055,
                    "src": "4909:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14060,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14058,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "4890:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "4890:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "4890:28:35"
              }
            ],
            "name": "lookupRadonRequestRetrievals",
            "nameLocation": "4794:28:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14057,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "4859:8:35"
            },
            "parameters": {
              "id": 14056,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14055,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "4840:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14108,
                  "src": "4823:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14054,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14053,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "4823:6:35",
                        "4830:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "4823:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "4823:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4822:27:35"
            },
            "returnParameters": {
              "id": 14065,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14064,
                  "mutability": "mutable",
                  "name": "_retrievals",
                  "nameLocation": "4968:11:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14108,
                  "src": "4937:42:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14062,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 14061,
                        "name": "Witnet.RadonRetrieval",
                        "nameLocations": [
                          "4937:6:35",
                          "4944:14:35"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 37795,
                        "src": "4937:21:35"
                      },
                      "referencedDeclaration": 37795,
                      "src": "4937:21:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                        "typeString": "struct Witnet.RadonRetrieval"
                      }
                    },
                    "id": 14063,
                    "nodeType": "ArrayTypeName",
                    "src": "4937:23:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4936:44:35"
            },
            "scope": 15238,
            "src": "4785:648:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              27244
            ],
            "body": {
              "id": 14130,
              "nodeType": "Block",
              "src": "5637:103:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "expression": {
                          "baseExpression": {
                            "expression": {
                              "arguments": [],
                              "expression": {
                                "argumentTypes": [],
                                "id": 14122,
                                "name": "__database",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 20236,
                                "src": "5674:10:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                  "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                }
                              },
                              "id": 14123,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "5674:12:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                              }
                            },
                            "id": 14124,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "5687:8:35",
                            "memberName": "radsInfo",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 20201,
                            "src": "5674:21:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestInfo_$20165_storage_$",
                              "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestInfo storage ref)"
                            }
                          },
                          "id": 14126,
                          "indexExpression": {
                            "id": 14125,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14111,
                            "src": "5696:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "5674:31:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                            "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                          }
                        },
                        "id": 14127,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "5706:25:35",
                        "memberName": "dataSourcesAggregatorHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20161,
                        "src": "5674:57:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes15",
                          "typeString": "bytes15"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes15",
                          "typeString": "bytes15"
                        }
                      ],
                      "id": 14121,
                      "name": "lookupRadonReducer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14010,
                      "src": "5655:18:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                        "typeString": "function (bytes32) view returns (struct Witnet.RadonReducer memory)"
                      }
                    },
                    "id": 14128,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5655:77:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                      "typeString": "struct Witnet.RadonReducer memory"
                    }
                  },
                  "functionReturnParameters": 14120,
                  "id": 14129,
                  "nodeType": "Return",
                  "src": "5648:84:35"
                }
              ]
            },
            "functionSelector": "c61fa893",
            "id": 14131,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14115,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14111,
                    "src": "5576:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14116,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14114,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "5557:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "5557:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "5557:28:35"
              }
            ],
            "name": "lookupRadonRequestRetrievalsAggregator",
            "nameLocation": "5450:38:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14113,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "5525:8:35"
            },
            "parameters": {
              "id": 14112,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14111,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "5506:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14131,
                  "src": "5489:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14110,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14109,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "5489:6:35",
                        "5496:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "5489:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "5489:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5488:27:35"
            },
            "returnParameters": {
              "id": 14120,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14119,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14131,
                  "src": "5604:26:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14118,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14117,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "5604:6:35",
                        "5611:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "5604:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "5604:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5603:28:35"
            },
            "scope": 15238,
            "src": "5441:299:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27252
            ],
            "body": {
              "id": 14147,
              "nodeType": "Block",
              "src": "5880:74:35",
              "statements": [
                {
                  "expression": {
                    "expression": {
                      "baseExpression": {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "id": 14140,
                            "name": "__database",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20236,
                            "src": "5898:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                              "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                            }
                          },
                          "id": 14141,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5898:12:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                            "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                          }
                        },
                        "id": 14142,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "5911:8:35",
                        "memberName": "radsInfo",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20201,
                        "src": "5898:21:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestInfo_$20165_storage_$",
                          "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestInfo storage ref)"
                        }
                      },
                      "id": 14144,
                      "indexExpression": {
                        "id": 14143,
                        "name": "_radHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14134,
                        "src": "5920:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "5898:31:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                        "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                      }
                    },
                    "id": 14145,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "5930:16:35",
                    "memberName": "dataSourcesCount",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 20159,
                    "src": "5898:48:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "functionReturnParameters": 14139,
                  "id": 14146,
                  "nodeType": "Return",
                  "src": "5891:55:35"
                }
              ]
            },
            "functionSelector": "23f2e3ea",
            "id": 14148,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "lookupRadonRequestRetrievalsCount",
            "nameLocation": "5757:33:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14136,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "5827:8:35"
            },
            "parameters": {
              "id": 14135,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14134,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "5808:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14148,
                  "src": "5791:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14133,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14132,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "5791:6:35",
                        "5798:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "5791:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "5791:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5790:27:35"
            },
            "returnParameters": {
              "id": 14139,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14138,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14148,
                  "src": "5868:5:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 14137,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "5868:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5867:7:35"
            },
            "scope": 15238,
            "src": "5748:206:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27261
            ],
            "body": {
              "id": 14166,
              "nodeType": "Block",
              "src": "6135:56:35",
              "statements": [
                {
                  "expression": {
                    "baseExpression": {
                      "expression": {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "id": 14160,
                          "name": "__database",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20236,
                          "src": "6153:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                            "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                          }
                        },
                        "id": 14161,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "6153:12:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                          "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                        }
                      },
                      "id": 14162,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "6166:10:35",
                      "memberName": "retrievals",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20179,
                      "src": "6153:23:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                        "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                      }
                    },
                    "id": 14164,
                    "indexExpression": {
                      "id": 14163,
                      "name": "_hash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14150,
                      "src": "6177:5:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "6153:30:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                      "typeString": "struct Witnet.RadonRetrieval storage ref"
                    }
                  },
                  "functionReturnParameters": 14159,
                  "id": 14165,
                  "nodeType": "Return",
                  "src": "6146:37:35"
                }
              ]
            },
            "functionSelector": "9dd48757",
            "id": 14167,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14154,
                    "name": "_hash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14150,
                    "src": "6067:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  }
                ],
                "id": 14155,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14153,
                  "name": "radonRetrievalExists",
                  "nameLocations": [
                    "6046:20:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13807,
                  "src": "6046:20:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "6046:27:35"
              }
            ],
            "name": "lookupRadonRetrieval",
            "nameLocation": "5971:20:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14152,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "6016:8:35"
            },
            "parameters": {
              "id": 14151,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14150,
                  "mutability": "mutable",
                  "name": "_hash",
                  "nameLocation": "6000:5:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14167,
                  "src": "5992:13:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14149,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "5992:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5991:15:35"
            },
            "returnParameters": {
              "id": 14159,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14158,
                  "mutability": "mutable",
                  "name": "_source",
                  "nameLocation": "6121:7:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14167,
                  "src": "6092:36:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval"
                  },
                  "typeName": {
                    "id": 14157,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14156,
                      "name": "Witnet.RadonRetrieval",
                      "nameLocations": [
                        "6092:6:35",
                        "6099:14:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37795,
                      "src": "6092:21:35"
                    },
                    "referencedDeclaration": 37795,
                    "src": "6092:21:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6091:38:35"
            },
            "scope": 15238,
            "src": "5962:229:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              27269
            ],
            "body": {
              "id": 14185,
              "nodeType": "Block",
              "src": "6352:66:35",
              "statements": [
                {
                  "expression": {
                    "expression": {
                      "baseExpression": {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "id": 14178,
                            "name": "__database",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20236,
                            "src": "6370:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                              "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                            }
                          },
                          "id": 14179,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "6370:12:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                            "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                          }
                        },
                        "id": 14180,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "6383:10:35",
                        "memberName": "retrievals",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20179,
                        "src": "6370:23:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                          "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                        }
                      },
                      "id": 14182,
                      "indexExpression": {
                        "id": 14181,
                        "name": "_hash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14169,
                        "src": "6394:5:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "6370:30:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                        "typeString": "struct Witnet.RadonRetrieval storage ref"
                      }
                    },
                    "id": 14183,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "6401:9:35",
                    "memberName": "argsCount",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 37777,
                    "src": "6370:40:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "functionReturnParameters": 14177,
                  "id": 14184,
                  "nodeType": "Return",
                  "src": "6363:47:35"
                }
              ]
            },
            "functionSelector": "b4ab01a5",
            "id": 14186,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14173,
                    "name": "_hash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14169,
                    "src": "6315:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  }
                ],
                "id": 14174,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14172,
                  "name": "radonRetrievalExists",
                  "nameLocations": [
                    "6294:20:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13807,
                  "src": "6294:20:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "6294:27:35"
              }
            ],
            "name": "lookupRadonRetrievalArgsCount",
            "nameLocation": "6208:29:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14171,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "6262:8:35"
            },
            "parameters": {
              "id": 14170,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14169,
                  "mutability": "mutable",
                  "name": "_hash",
                  "nameLocation": "6246:5:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14186,
                  "src": "6238:13:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14168,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "6238:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6237:15:35"
            },
            "returnParameters": {
              "id": 14177,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14176,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14186,
                  "src": "6340:5:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 14175,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "6340:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6339:7:35"
            },
            "scope": 15238,
            "src": "6199:219:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27278
            ],
            "body": {
              "id": 14205,
              "nodeType": "Block",
              "src": "6598:65:35",
              "statements": [
                {
                  "expression": {
                    "expression": {
                      "baseExpression": {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "id": 14198,
                            "name": "__database",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20236,
                            "src": "6616:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                              "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                            }
                          },
                          "id": 14199,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "6616:12:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                            "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                          }
                        },
                        "id": 14200,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "6629:10:35",
                        "memberName": "retrievals",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20179,
                        "src": "6616:23:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                          "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                        }
                      },
                      "id": 14202,
                      "indexExpression": {
                        "id": 14201,
                        "name": "_hash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14188,
                        "src": "6640:5:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "6616:30:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                        "typeString": "struct Witnet.RadonRetrieval storage ref"
                      }
                    },
                    "id": 14203,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "6647:8:35",
                    "memberName": "dataType",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 37783,
                    "src": "6616:39:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "functionReturnParameters": 14197,
                  "id": 14204,
                  "nodeType": "Return",
                  "src": "6609:46:35"
                }
              ]
            },
            "functionSelector": "a0e55336",
            "id": 14206,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14192,
                    "name": "_hash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14188,
                    "src": "6545:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  }
                ],
                "id": 14193,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14191,
                  "name": "radonRetrievalExists",
                  "nameLocations": [
                    "6524:20:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13807,
                  "src": "6524:20:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "6524:27:35"
              }
            ],
            "name": "lookupRadonRetrievalResultDataType",
            "nameLocation": "6435:34:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14190,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "6494:8:35"
            },
            "parameters": {
              "id": 14189,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14188,
                  "mutability": "mutable",
                  "name": "_hash",
                  "nameLocation": "6478:5:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14206,
                  "src": "6470:13:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14187,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "6470:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6469:15:35"
            },
            "returnParameters": {
              "id": 14197,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14196,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14206,
                  "src": "6570:21:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                    "typeString": "enum Witnet.RadonDataTypes"
                  },
                  "typeName": {
                    "id": 14195,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14194,
                      "name": "Witnet.RadonDataTypes",
                      "nameLocations": [
                        "6570:6:35",
                        "6577:14:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37720,
                      "src": "6570:21:35"
                    },
                    "referencedDeclaration": 37720,
                    "src": "6570:21:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6569:23:35"
            },
            "scope": 15238,
            "src": "6426:237:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              27223
            ],
            "body": {
              "id": 14249,
              "nodeType": "Block",
              "src": "6872:290:35",
              "statements": [
                {
                  "expression": {
                    "id": 14226,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14219,
                      "name": "_resultDataType",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14217,
                      "src": "6883:15:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                        "typeString": "enum Witnet.RadonDataTypes"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "expression": {
                        "baseExpression": {
                          "expression": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "id": 14220,
                              "name": "__database",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20236,
                              "src": "6901:10:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                              }
                            },
                            "id": 14221,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6901:12:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                              "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                            }
                          },
                          "id": 14222,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "6914:8:35",
                          "memberName": "radsInfo",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20201,
                          "src": "6901:21:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestInfo_$20165_storage_$",
                            "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestInfo storage ref)"
                          }
                        },
                        "id": 14224,
                        "indexExpression": {
                          "id": 14223,
                          "name": "_radHash",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14209,
                          "src": "6923:8:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "6901:31:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                          "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                        }
                      },
                      "id": 14225,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "6933:14:35",
                      "memberName": "resultDataType",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20164,
                      "src": "6901:46:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                        "typeString": "enum Witnet.RadonDataTypes"
                      }
                    },
                    "src": "6883:64:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "id": 14227,
                  "nodeType": "ExpressionStatement",
                  "src": "6883:64:35"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    },
                    "id": 14233,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "arguments": [
                        {
                          "id": 14230,
                          "name": "_resultDataType",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14217,
                          "src": "6968:15:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        ],
                        "id": 14229,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "6962:5:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_uint8_$",
                          "typeString": "type(uint8)"
                        },
                        "typeName": {
                          "id": 14228,
                          "name": "uint8",
                          "nodeType": "ElementaryTypeName",
                          "src": "6962:5:35",
                          "typeDescriptions": {}
                        }
                      },
                      "id": 14231,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "6962:22:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 14232,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "6988:1:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "6962:27:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 14248,
                  "nodeType": "IfStatement",
                  "src": "6958:197:35",
                  "trueBody": {
                    "id": 14247,
                    "nodeType": "Block",
                    "src": "6991:164:35",
                    "statements": [
                      {
                        "expression": {
                          "id": 14245,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 14234,
                            "name": "_resultDataType",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14217,
                            "src": "7006:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "expression": {
                                    "baseExpression": {
                                      "expression": {
                                        "arguments": [],
                                        "expression": {
                                          "argumentTypes": [],
                                          "id": 14236,
                                          "name": "__database",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 20236,
                                          "src": "7077:10:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                            "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                          }
                                        },
                                        "id": 14237,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "7077:12:35",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                          "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                        }
                                      },
                                      "id": 14238,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "7090:14:35",
                                      "memberName": "legacyRequests",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 20185,
                                      "src": "7077:27:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestLegacyPacked_$20155_storage_$",
                                        "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage ref)"
                                      }
                                    },
                                    "id": 14240,
                                    "indexExpression": {
                                      "id": 14239,
                                      "name": "_radHash",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14209,
                                      "src": "7105:8:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                        "typeString": "Witnet.RadonHash"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "7077:37:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage",
                                      "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage ref"
                                    }
                                  },
                                  "id": 14241,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "7115:10:35",
                                  "memberName": "retrievals",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 20152,
                                  "src": "7077:48:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
                                    "typeString": "bytes32[] storage ref"
                                  }
                                },
                                "id": 14243,
                                "indexExpression": {
                                  "hexValue": "30",
                                  "id": 14242,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "7126:1:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "7077:51:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              ],
                              "id": 14235,
                              "name": "lookupRadonRetrievalResultDataType",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14206,
                              "src": "7024:34:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_enum$_RadonDataTypes_$37720_$",
                                "typeString": "function (bytes32) view returns (enum Witnet.RadonDataTypes)"
                              }
                            },
                            "id": 14244,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "7024:119:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "src": "7006:137:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        },
                        "id": 14246,
                        "nodeType": "ExpressionStatement",
                        "src": "7006:137:35"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "4c729104",
            "id": 14250,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14213,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14209,
                    "src": "6800:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14214,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14212,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "6781:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "6781:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "6781:28:35"
              }
            ],
            "name": "lookupRadonRequestResultDataType",
            "nameLocation": "6680:32:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14211,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "6749:8:35"
            },
            "parameters": {
              "id": 14210,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14209,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "6730:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14250,
                  "src": "6713:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14208,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14207,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "6713:6:35",
                        "6720:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "6713:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "6713:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6712:27:35"
            },
            "returnParameters": {
              "id": 14218,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14217,
                  "mutability": "mutable",
                  "name": "_resultDataType",
                  "nameLocation": "6850:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14250,
                  "src": "6828:37:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                    "typeString": "enum Witnet.RadonDataTypes"
                  },
                  "typeName": {
                    "id": 14216,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14215,
                      "name": "Witnet.RadonDataTypes",
                      "nameLocations": [
                        "6828:6:35",
                        "6835:14:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37720,
                      "src": "6828:21:35"
                    },
                    "referencedDeclaration": 37720,
                    "src": "6828:21:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6827:39:35"
            },
            "scope": 15238,
            "src": "6671:491:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27287
            ],
            "body": {
              "id": 14316,
              "nodeType": "Block",
              "src": "7305:479:35",
              "statements": [
                {
                  "expression": {
                    "id": 14272,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14259,
                      "name": "hash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14257,
                      "src": "7316:4:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "id": 14267,
                                      "name": "_reducer",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14253,
                                      "src": "7360:8:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                        "typeString": "struct Witnet.RadonReducer memory"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                        "typeString": "struct Witnet.RadonReducer memory"
                                      }
                                    ],
                                    "expression": {
                                      "id": 14265,
                                      "name": "abi",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 4294967295,
                                      "src": "7349:3:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_magic_abi",
                                        "typeString": "abi"
                                      }
                                    },
                                    "id": 14266,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "memberLocation": "7353:6:35",
                                    "memberName": "encode",
                                    "nodeType": "MemberAccess",
                                    "src": "7349:10:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$",
                                      "typeString": "function () pure returns (bytes memory)"
                                    }
                                  },
                                  "id": 14268,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "7349:20:35",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                ],
                                "id": 14264,
                                "name": "keccak256",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4294967288,
                                "src": "7339:9:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
                                  "typeString": "function (bytes memory) pure returns (bytes32)"
                                }
                              },
                              "id": 14269,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "7339:31:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "id": 14263,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "7331:7:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_bytes15_$",
                              "typeString": "type(bytes15)"
                            },
                            "typeName": {
                              "id": 14262,
                              "name": "bytes15",
                              "nodeType": "ElementaryTypeName",
                              "src": "7331:7:35",
                              "typeDescriptions": {}
                            }
                          },
                          "id": 14270,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7331:40:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes15",
                            "typeString": "bytes15"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_bytes15",
                            "typeString": "bytes15"
                          }
                        ],
                        "id": 14261,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "7323:7:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_bytes32_$",
                          "typeString": "type(bytes32)"
                        },
                        "typeName": {
                          "id": 14260,
                          "name": "bytes32",
                          "nodeType": "ElementaryTypeName",
                          "src": "7323:7:35",
                          "typeDescriptions": {}
                        }
                      },
                      "id": 14271,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "7323:49:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "7316:56:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 14273,
                  "nodeType": "ExpressionStatement",
                  "src": "7316:56:35"
                },
                {
                  "assignments": [
                    14278
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 14278,
                      "mutability": "mutable",
                      "name": "__reducer",
                      "nameLocation": "7411:9:35",
                      "nodeType": "VariableDeclaration",
                      "scope": 14316,
                      "src": "7383:37:35",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                        "typeString": "struct Witnet.RadonReducer"
                      },
                      "typeName": {
                        "id": 14277,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 14276,
                          "name": "Witnet.RadonReducer",
                          "nameLocations": [
                            "7383:6:35",
                            "7390:12:35"
                          ],
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 37748,
                          "src": "7383:19:35"
                        },
                        "referencedDeclaration": 37748,
                        "src": "7383:19:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                          "typeString": "struct Witnet.RadonReducer"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 14284,
                  "initialValue": {
                    "baseExpression": {
                      "expression": {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "id": 14279,
                          "name": "__database",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20236,
                          "src": "7423:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                            "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                          }
                        },
                        "id": 14280,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "7423:12:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                          "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                        }
                      },
                      "id": 14281,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "7436:8:35",
                      "memberName": "reducers",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20174,
                      "src": "7423:21:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                        "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                      }
                    },
                    "id": 14283,
                    "indexExpression": {
                      "id": 14282,
                      "name": "hash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14257,
                      "src": "7445:4:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "7423:27:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                      "typeString": "struct Witnet.RadonReducer storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "7383:67:35"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    },
                    "id": 14291,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 14287,
                            "name": "__reducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14278,
                            "src": "7485:9:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                              "typeString": "struct Witnet.RadonReducer storage pointer"
                            }
                          },
                          "id": 14288,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "7495:6:35",
                          "memberName": "opcode",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37743,
                          "src": "7485:16:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                            "typeString": "enum Witnet.RadonReduceOpcodes"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                            "typeString": "enum Witnet.RadonReduceOpcodes"
                          }
                        ],
                        "id": 14286,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "7479:5:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_uint8_$",
                          "typeString": "type(uint8)"
                        },
                        "typeName": {
                          "id": 14285,
                          "name": "uint8",
                          "nodeType": "ElementaryTypeName",
                          "src": "7479:5:35",
                          "typeDescriptions": {}
                        }
                      },
                      "id": 14289,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "7479:23:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 14290,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "7506:1:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "7479:28:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 14315,
                  "nodeType": "IfStatement",
                  "src": "7461:316:35",
                  "trueBody": {
                    "id": 14314,
                    "nodeType": "Block",
                    "src": "7572:205:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "expression": {
                              "id": 14292,
                              "name": "_reducer",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14253,
                              "src": "7587:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                "typeString": "struct Witnet.RadonReducer memory"
                              }
                            },
                            "id": 14294,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "7596:8:35",
                            "memberName": "validate",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 36069,
                            "src": "7587:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$__$attached_to$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                              "typeString": "function (struct Witnet.RadonReducer memory) pure"
                            }
                          },
                          "id": 14295,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7587:19:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 14296,
                        "nodeType": "ExpressionStatement",
                        "src": "7587:19:35"
                      },
                      {
                        "expression": {
                          "id": 14302,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "expression": {
                              "id": 14297,
                              "name": "__reducer",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14278,
                              "src": "7621:9:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                                "typeString": "struct Witnet.RadonReducer storage pointer"
                              }
                            },
                            "id": 14299,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberLocation": "7631:6:35",
                            "memberName": "opcode",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37743,
                            "src": "7621:16:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                              "typeString": "enum Witnet.RadonReduceOpcodes"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "expression": {
                              "id": 14300,
                              "name": "_reducer",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14253,
                              "src": "7640:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                "typeString": "struct Witnet.RadonReducer memory"
                              }
                            },
                            "id": 14301,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "7649:6:35",
                            "memberName": "opcode",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37743,
                            "src": "7640:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                              "typeString": "enum Witnet.RadonReduceOpcodes"
                            }
                          },
                          "src": "7621:34:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                            "typeString": "enum Witnet.RadonReduceOpcodes"
                          }
                        },
                        "id": 14303,
                        "nodeType": "ExpressionStatement",
                        "src": "7621:34:35"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "id": 14305,
                              "name": "__reducer",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14278,
                              "src": "7696:9:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                                "typeString": "struct Witnet.RadonReducer storage pointer"
                              }
                            },
                            {
                              "expression": {
                                "id": 14306,
                                "name": "_reducer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14253,
                                "src": "7707:8:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                  "typeString": "struct Witnet.RadonReducer memory"
                                }
                              },
                              "id": 14307,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "7716:7:35",
                              "memberName": "filters",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37747,
                              "src": "7707:16:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct Witnet.RadonFilter memory[] memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                                "typeString": "struct Witnet.RadonReducer storage pointer"
                              },
                              {
                                "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct Witnet.RadonFilter memory[] memory"
                              }
                            ],
                            "id": 14304,
                            "name": "__pushRadonReducerFilters",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15237,
                            "src": "7670:25:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_RadonReducer_$37748_storage_ptr_$_t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr_$returns$__$",
                              "typeString": "function (struct Witnet.RadonReducer storage pointer,struct Witnet.RadonFilter memory[] memory)"
                            }
                          },
                          "id": 14308,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7670:54:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 14309,
                        "nodeType": "ExpressionStatement",
                        "src": "7670:54:35"
                      },
                      {
                        "eventCall": {
                          "arguments": [
                            {
                              "id": 14311,
                              "name": "hash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14257,
                              "src": "7760:4:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "id": 14310,
                            "name": "NewRadonReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 27402,
                            "src": "7744:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$",
                              "typeString": "function (bytes32)"
                            }
                          },
                          "id": 14312,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "7744:21:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 14313,
                        "nodeType": "EmitStatement",
                        "src": "7739:26:35"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "7f412e23",
            "id": 14317,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonReducer",
            "nameLocation": "7179:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14255,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "7252:8:35"
            },
            "parameters": {
              "id": 14254,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14253,
                  "mutability": "mutable",
                  "name": "_reducer",
                  "nameLocation": "7225:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14317,
                  "src": "7198:35:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14252,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14251,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "7198:6:35",
                        "7205:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "7198:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "7198:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7197:37:35"
            },
            "returnParameters": {
              "id": 14258,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14257,
                  "mutability": "mutable",
                  "name": "hash",
                  "nameLocation": "7294:4:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14317,
                  "src": "7286:12:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14256,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "7286:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7285:14:35"
            },
            "scope": 15238,
            "src": "7170:614:35",
            "stateMutability": "nonpayable",
            "virtual": true,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              27303
            ],
            "body": {
              "id": 14350,
              "nodeType": "Block",
              "src": "8080:240:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14334,
                        "name": "_retrieveHashes",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14320,
                        "src": "8133:15:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "expression": {
                              "id": 14339,
                              "name": "_retrieveHashes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14320,
                              "src": "8178:15:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                "typeString": "bytes32[] calldata"
                              }
                            },
                            "id": 14340,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "8194:6:35",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "8178:22:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 14338,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "NewExpression",
                          "src": "8163:14:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$",
                            "typeString": "function (uint256) pure returns (string memory[] memory[] memory)"
                          },
                          "typeName": {
                            "baseType": {
                              "baseType": {
                                "id": 14335,
                                "name": "string",
                                "nodeType": "ElementaryTypeName",
                                "src": "8167:6:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_storage_ptr",
                                  "typeString": "string"
                                }
                              },
                              "id": 14336,
                              "nodeType": "ArrayTypeName",
                              "src": "8167:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                                "typeString": "string[]"
                              }
                            },
                            "id": 14337,
                            "nodeType": "ArrayTypeName",
                            "src": "8167:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                              "typeString": "string[][]"
                            }
                          }
                        },
                        "id": 14341,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8163:38:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[] memory[] memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "id": 14343,
                            "name": "_aggregateReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14323,
                            "src": "8235:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          ],
                          "id": 14342,
                          "name": "verifyRadonReducer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14317,
                          "src": "8216:18:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes32_$",
                            "typeString": "function (struct Witnet.RadonReducer memory) returns (bytes32)"
                          }
                        },
                        "id": 14344,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8216:37:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "id": 14346,
                            "name": "_tallyReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14326,
                            "src": "8287:13:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          ],
                          "id": 14345,
                          "name": "verifyRadonReducer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14317,
                          "src": "8268:18:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes32_$",
                            "typeString": "function (struct Witnet.RadonReducer memory) returns (bytes32)"
                          }
                        },
                        "id": 14347,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8268:33:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        },
                        {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[] memory[] memory"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "id": 14333,
                      "name": "__verifyRadonRequest",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15203,
                      "src": "8098:20:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32[] calldata,string memory[] memory[] memory,bytes32,bytes32) returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14348,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8098:214:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "functionReturnParameters": 14332,
                  "id": 14349,
                  "nodeType": "Return",
                  "src": "8091:221:35"
                }
              ]
            },
            "functionSelector": "6bd04634",
            "id": 14351,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRequest",
            "nameLocation": "7805:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14328,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "8012:8:35"
            },
            "parameters": {
              "id": 14327,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14320,
                  "mutability": "mutable",
                  "name": "_retrieveHashes",
                  "nameLocation": "7857:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14351,
                  "src": "7838:34:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14318,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "7838:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14319,
                    "nodeType": "ArrayTypeName",
                    "src": "7838:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14323,
                  "mutability": "mutable",
                  "name": "_aggregateReducer",
                  "nameLocation": "7916:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14351,
                  "src": "7887:46:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14322,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14321,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "7887:6:35",
                        "7894:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "7887:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "7887:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14326,
                  "mutability": "mutable",
                  "name": "_tallyReducer",
                  "nameLocation": "7977:13:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14351,
                  "src": "7948:42:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14325,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14324,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "7948:6:35",
                        "7955:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "7948:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "7948:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7823:178:35"
            },
            "returnParameters": {
              "id": 14332,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14331,
                  "mutability": "mutable",
                  "name": "radHash",
                  "nameLocation": "8066:7:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14351,
                  "src": "8049:24:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14330,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14329,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "8049:6:35",
                        "8056:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "8049:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "8049:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8048:26:35"
            },
            "scope": 15238,
            "src": "7796:524:35",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27317
            ],
            "body": {
              "id": 14378,
              "nodeType": "Block",
              "src": "8576:208:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14366,
                        "name": "_retrieveHashes",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14354,
                        "src": "8629:15:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "expression": {
                              "id": 14371,
                              "name": "_retrieveHashes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14354,
                              "src": "8674:15:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                "typeString": "bytes32[] calldata"
                              }
                            },
                            "id": 14372,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "8690:6:35",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "8674:22:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          ],
                          "id": 14370,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "NewExpression",
                          "src": "8659:14:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$",
                            "typeString": "function (uint256) pure returns (string memory[] memory[] memory)"
                          },
                          "typeName": {
                            "baseType": {
                              "baseType": {
                                "id": 14367,
                                "name": "string",
                                "nodeType": "ElementaryTypeName",
                                "src": "8663:6:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_storage_ptr",
                                  "typeString": "string"
                                }
                              },
                              "id": 14368,
                              "nodeType": "ArrayTypeName",
                              "src": "8663:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                                "typeString": "string[]"
                              }
                            },
                            "id": 14369,
                            "nodeType": "ArrayTypeName",
                            "src": "8663:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                              "typeString": "string[][]"
                            }
                          }
                        },
                        "id": 14373,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8659:38:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[] memory[] memory"
                        }
                      },
                      {
                        "id": 14374,
                        "name": "_aggregateReducerHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14356,
                        "src": "8712:21:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "id": 14375,
                        "name": "_tallyReducerHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14358,
                        "src": "8748:17:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        },
                        {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[] memory[] memory"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "id": 14365,
                      "name": "__verifyRadonRequest",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15203,
                      "src": "8594:20:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32[] calldata,string memory[] memory[] memory,bytes32,bytes32) returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14376,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8594:182:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "functionReturnParameters": 14364,
                  "id": 14377,
                  "nodeType": "Return",
                  "src": "8587:189:35"
                }
              ]
            },
            "functionSelector": "40c5da1d",
            "id": 14379,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRequest",
            "nameLocation": "8337:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14360,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "8509:8:35"
            },
            "parameters": {
              "id": 14359,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14354,
                  "mutability": "mutable",
                  "name": "_retrieveHashes",
                  "nameLocation": "8389:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14379,
                  "src": "8370:34:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14352,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "8370:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14353,
                    "nodeType": "ArrayTypeName",
                    "src": "8370:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14356,
                  "mutability": "mutable",
                  "name": "_aggregateReducerHash",
                  "nameLocation": "8427:21:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14379,
                  "src": "8419:29:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14355,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "8419:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14358,
                  "mutability": "mutable",
                  "name": "_tallyReducerHash",
                  "nameLocation": "8471:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14379,
                  "src": "8463:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14357,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "8463:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8355:144:35"
            },
            "returnParameters": {
              "id": 14364,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14363,
                  "mutability": "mutable",
                  "name": "radHash",
                  "nameLocation": "8562:7:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14379,
                  "src": "8545:24:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14362,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14361,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "8545:6:35",
                        "8552:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "8545:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "8545:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8544:26:35"
            },
            "scope": 15238,
            "src": "8328:456:35",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27337
            ],
            "body": {
              "id": 14410,
              "nodeType": "Block",
              "src": "9122:224:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14400,
                        "name": "_retrieveHashes",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14382,
                        "src": "9175:15:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        }
                      },
                      {
                        "id": 14401,
                        "name": "_retrieveArgsValues",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14386,
                        "src": "9206:19:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                          "typeString": "string calldata[] calldata[] calldata"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "id": 14403,
                            "name": "_aggregateReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14389,
                            "src": "9260:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          ],
                          "id": 14402,
                          "name": "verifyRadonReducer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14317,
                          "src": "9241:18:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes32_$",
                            "typeString": "function (struct Witnet.RadonReducer memory) returns (bytes32)"
                          }
                        },
                        "id": 14404,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "9241:37:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "id": 14406,
                            "name": "_tallyReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14392,
                            "src": "9313:13:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                              "typeString": "struct Witnet.RadonReducer calldata"
                            }
                          ],
                          "id": 14405,
                          "name": "verifyRadonReducer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14317,
                          "src": "9294:18:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes32_$",
                            "typeString": "function (struct Witnet.RadonReducer memory) returns (bytes32)"
                          }
                        },
                        "id": 14407,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "9294:33:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        },
                        {
                          "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                          "typeString": "string calldata[] calldata[] calldata"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "id": 14399,
                      "name": "__verifyRadonRequest",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15203,
                      "src": "9140:20:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32[] calldata,string memory[] memory[] memory,bytes32,bytes32) returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14408,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9140:198:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "functionReturnParameters": 14398,
                  "id": 14409,
                  "nodeType": "Return",
                  "src": "9133:205:35"
                }
              ]
            },
            "functionSelector": "b73cb313",
            "id": 14411,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRequest",
            "nameLocation": "8801:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14394,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "9062:8:35"
            },
            "parameters": {
              "id": 14393,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14382,
                  "mutability": "mutable",
                  "name": "_retrieveHashes",
                  "nameLocation": "8853:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14411,
                  "src": "8834:34:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14380,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "8834:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14381,
                    "nodeType": "ArrayTypeName",
                    "src": "8834:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14386,
                  "mutability": "mutable",
                  "name": "_retrieveArgsValues",
                  "nameLocation": "8903:19:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14411,
                  "src": "8883:39:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 14383,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "8883:6:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 14384,
                      "nodeType": "ArrayTypeName",
                      "src": "8883:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                        "typeString": "string[]"
                      }
                    },
                    "id": 14385,
                    "nodeType": "ArrayTypeName",
                    "src": "8883:10:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                      "typeString": "string[][]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14389,
                  "mutability": "mutable",
                  "name": "_aggregateReducer",
                  "nameLocation": "8966:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14411,
                  "src": "8937:46:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14388,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14387,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "8937:6:35",
                        "8944:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "8937:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "8937:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14392,
                  "mutability": "mutable",
                  "name": "_tallyReducer",
                  "nameLocation": "9027:13:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14411,
                  "src": "8998:42:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_calldata_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14391,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14390,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "8998:6:35",
                        "9005:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "8998:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "8998:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8819:232:35"
            },
            "returnParameters": {
              "id": 14398,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14397,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14411,
                  "src": "9099:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14396,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14395,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "9099:6:35",
                        "9106:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "9099:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "9099:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9098:18:35"
            },
            "scope": 15238,
            "src": "8792:554:35",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27355
            ],
            "body": {
              "id": 14436,
              "nodeType": "Block",
              "src": "9648:189:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14430,
                        "name": "_retrieveHashes",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14414,
                        "src": "9701:15:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        }
                      },
                      {
                        "id": 14431,
                        "name": "_retrieveArgsValues",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14418,
                        "src": "9731:19:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                          "typeString": "string calldata[] calldata[] calldata"
                        }
                      },
                      {
                        "id": 14432,
                        "name": "_aggregateReducerHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14420,
                        "src": "9765:21:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "id": 14433,
                        "name": "_tallyReducerHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14422,
                        "src": "9801:17:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                          "typeString": "bytes32[] calldata"
                        },
                        {
                          "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                          "typeString": "string calldata[] calldata[] calldata"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "id": 14429,
                      "name": "__verifyRadonRequest",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15203,
                      "src": "9666:20:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32[] calldata,string memory[] memory[] memory,bytes32,bytes32) returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14434,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9666:163:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "functionReturnParameters": 14428,
                  "id": 14435,
                  "nodeType": "Return",
                  "src": "9659:170:35"
                }
              ]
            },
            "functionSelector": "dbc218ef",
            "id": 14437,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRequest",
            "nameLocation": "9363:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14424,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "9589:8:35"
            },
            "parameters": {
              "id": 14423,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14414,
                  "mutability": "mutable",
                  "name": "_retrieveHashes",
                  "nameLocation": "9415:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14437,
                  "src": "9396:34:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14412,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "9396:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14413,
                    "nodeType": "ArrayTypeName",
                    "src": "9396:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14418,
                  "mutability": "mutable",
                  "name": "_retrieveArgsValues",
                  "nameLocation": "9465:19:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14437,
                  "src": "9445:39:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 14415,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "9445:6:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 14416,
                      "nodeType": "ArrayTypeName",
                      "src": "9445:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                        "typeString": "string[]"
                      }
                    },
                    "id": 14417,
                    "nodeType": "ArrayTypeName",
                    "src": "9445:10:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                      "typeString": "string[][]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14420,
                  "mutability": "mutable",
                  "name": "_aggregateReducerHash",
                  "nameLocation": "9507:21:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14437,
                  "src": "9499:29:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14419,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "9499:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14422,
                  "mutability": "mutable",
                  "name": "_tallyReducerHash",
                  "nameLocation": "9551:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14437,
                  "src": "9543:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14421,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "9543:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9381:198:35"
            },
            "returnParameters": {
              "id": 14428,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14427,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14437,
                  "src": "9625:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14426,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14425,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "9625:6:35",
                        "9632:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "9625:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "9625:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9624:18:35"
            },
            "scope": 15238,
            "src": "9354:483:35",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27373
            ],
            "body": {
              "id": 14625,
              "nodeType": "Block",
              "src": "10182:1940:35",
              "statements": [
                {
                  "assignments": [
                    14457
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 14457,
                      "mutability": "mutable",
                      "name": "hash",
                      "nameLocation": "10201:4:35",
                      "nodeType": "VariableDeclaration",
                      "scope": 14625,
                      "src": "10193:12:35",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      },
                      "typeName": {
                        "id": 14456,
                        "name": "bytes32",
                        "nodeType": "ElementaryTypeName",
                        "src": "10193:7:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 14468,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 14461,
                            "name": "modalRetrieveHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14439,
                            "src": "10243:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          {
                            "id": 14462,
                            "name": "modalUrls",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14445,
                            "src": "10275:9:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                              "typeString": "string calldata[] calldata"
                            }
                          },
                          {
                            "id": 14463,
                            "name": "modalArgs",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14442,
                            "src": "10299:9:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                              "typeString": "string calldata[] calldata"
                            }
                          },
                          {
                            "id": 14464,
                            "name": "dataSourcesAggregatorHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14447,
                            "src": "10323:25:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          {
                            "id": 14465,
                            "name": "crowdAttestationTallyHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14449,
                            "src": "10363:25:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            },
                            {
                              "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                              "typeString": "string calldata[] calldata"
                            },
                            {
                              "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                              "typeString": "string calldata[] calldata"
                            },
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            },
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          ],
                          "expression": {
                            "id": 14459,
                            "name": "abi",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 4294967295,
                            "src": "10218:3:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_abi",
                              "typeString": "abi"
                            }
                          },
                          "id": 14460,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "10222:6:35",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "src": "10218:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function () pure returns (bytes memory)"
                          }
                        },
                        "id": 14466,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "10218:181:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "id": 14458,
                      "name": "keccak256",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 4294967288,
                      "src": "10208:9:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
                        "typeString": "function (bytes memory) pure returns (bytes32)"
                      }
                    },
                    "id": 14467,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10208:192:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "10193:207:35"
                },
                {
                  "expression": {
                    "id": 14475,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14469,
                      "name": "_radHash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14454,
                      "src": "10411:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                        "typeString": "Witnet.RadonHash"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "baseExpression": {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "id": 14470,
                            "name": "__database",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20236,
                            "src": "10422:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                              "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                            }
                          },
                          "id": 14471,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "10422:12:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                            "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                          }
                        },
                        "id": 14472,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "10435:4:35",
                        "memberName": "rads",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20190,
                        "src": "10422:17:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_bytes32_$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "mapping(bytes32 => Witnet.RadonHash)"
                        }
                      },
                      "id": 14474,
                      "indexExpression": {
                        "id": 14473,
                        "name": "hash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14457,
                        "src": "10440:4:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "10422:23:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                        "typeString": "Witnet.RadonHash"
                      }
                    },
                    "src": "10411:34:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "id": 14476,
                  "nodeType": "ExpressionStatement",
                  "src": "10411:34:35"
                },
                {
                  "condition": {
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "baseExpression": {
                          "expression": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "id": 14477,
                              "name": "__database",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20236,
                              "src": "10460:10:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                              }
                            },
                            "id": 14478,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "10460:12:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                              "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                            }
                          },
                          "id": 14479,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "10473:4:35",
                          "memberName": "rads",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20190,
                          "src": "10460:17:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_userDefinedValueType$_RadonHash_$37153_$",
                            "typeString": "mapping(bytes32 => Witnet.RadonHash)"
                          }
                        },
                        "id": 14481,
                        "indexExpression": {
                          "id": 14480,
                          "name": "hash",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14457,
                          "src": "10478:4:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "10460:23:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      },
                      "id": 14482,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "10484:6:35",
                      "memberName": "isZero",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 38881,
                      "src": "10460:30:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_bool_$attached_to$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (Witnet.RadonHash) pure returns (bool)"
                      }
                    },
                    "id": 14483,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10460:32:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 14624,
                  "nodeType": "IfStatement",
                  "src": "10456:1659:35",
                  "trueBody": {
                    "id": 14623,
                    "nodeType": "Block",
                    "src": "10494:1621:35",
                    "statements": [
                      {
                        "assignments": [
                          14489
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 14489,
                            "mutability": "mutable",
                            "name": "_retrievals",
                            "nameLocation": "10540:11:35",
                            "nodeType": "VariableDeclaration",
                            "scope": 14623,
                            "src": "10509:42:35",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval[]"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 14487,
                                "nodeType": "UserDefinedTypeName",
                                "pathNode": {
                                  "id": 14486,
                                  "name": "Witnet.RadonRetrieval",
                                  "nameLocations": [
                                    "10509:6:35",
                                    "10516:14:35"
                                  ],
                                  "nodeType": "IdentifierPath",
                                  "referencedDeclaration": 37795,
                                  "src": "10509:21:35"
                                },
                                "referencedDeclaration": 37795,
                                "src": "10509:21:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval"
                                }
                              },
                              "id": 14488,
                              "nodeType": "ArrayTypeName",
                              "src": "10509:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                                "typeString": "struct Witnet.RadonRetrieval[]"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 14497,
                        "initialValue": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 14494,
                                "name": "modalUrls",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14445,
                                "src": "10582:9:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                  "typeString": "string calldata[] calldata"
                                }
                              },
                              "id": 14495,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "10592:6:35",
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "src": "10582:16:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "id": 14493,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "NewExpression",
                            "src": "10554:27:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$",
                              "typeString": "function (uint256) pure returns (struct Witnet.RadonRetrieval memory[] memory)"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 14491,
                                "nodeType": "UserDefinedTypeName",
                                "pathNode": {
                                  "id": 14490,
                                  "name": "Witnet.RadonRetrieval",
                                  "nameLocations": [
                                    "10558:6:35",
                                    "10565:14:35"
                                  ],
                                  "nodeType": "IdentifierPath",
                                  "referencedDeclaration": 37795,
                                  "src": "10558:21:35"
                                },
                                "referencedDeclaration": 37795,
                                "src": "10558:21:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval"
                                }
                              },
                              "id": 14492,
                              "nodeType": "ArrayTypeName",
                              "src": "10558:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                                "typeString": "struct Witnet.RadonRetrieval[]"
                              }
                            }
                          },
                          "id": 14496,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "10554:45:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "10509:90:35"
                      },
                      {
                        "body": {
                          "id": 14540,
                          "nodeType": "Block",
                          "src": "10665:285:35",
                          "statements": [
                            {
                              "condition": {
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 14511,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "id": 14509,
                                  "name": "_ix",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 14499,
                                  "src": "10688:3:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "==",
                                "rightExpression": {
                                  "hexValue": "30",
                                  "id": 14510,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "10695:1:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "src": "10688:8:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": {
                                "id": 14529,
                                "nodeType": "Block",
                                "src": "10803:76:35",
                                "statements": [
                                  {
                                    "expression": {
                                      "id": 14527,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "baseExpression": {
                                          "id": 14521,
                                          "name": "_retrievals",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 14489,
                                          "src": "10826:11:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                          }
                                        },
                                        "id": 14523,
                                        "indexExpression": {
                                          "id": 14522,
                                          "name": "_ix",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 14499,
                                          "src": "10838:3:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "nodeType": "IndexAccess",
                                        "src": "10826:16:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "baseExpression": {
                                          "id": 14524,
                                          "name": "_retrievals",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 14489,
                                          "src": "10845:11:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                          }
                                        },
                                        "id": 14526,
                                        "indexExpression": {
                                          "hexValue": "30",
                                          "id": 14525,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "10857:1:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_0_by_1",
                                            "typeString": "int_const 0"
                                          },
                                          "value": "0"
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "10845:14:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                        }
                                      },
                                      "src": "10826:33:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 14528,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10826:33:35"
                                  }
                                ]
                              },
                              "id": 14530,
                              "nodeType": "IfStatement",
                              "src": "10684:195:35",
                              "trueBody": {
                                "id": 14520,
                                "nodeType": "Block",
                                "src": "10698:99:35",
                                "statements": [
                                  {
                                    "expression": {
                                      "id": 14518,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "baseExpression": {
                                          "id": 14512,
                                          "name": "_retrievals",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 14489,
                                          "src": "10721:11:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                          }
                                        },
                                        "id": 14514,
                                        "indexExpression": {
                                          "hexValue": "30",
                                          "id": 14513,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "10733:1:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_0_by_1",
                                            "typeString": "int_const 0"
                                          },
                                          "value": "0"
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "nodeType": "IndexAccess",
                                        "src": "10721:14:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "arguments": [
                                          {
                                            "id": 14516,
                                            "name": "modalRetrieveHash",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 14439,
                                            "src": "10759:17:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_bytes32",
                                              "typeString": "bytes32"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_bytes32",
                                              "typeString": "bytes32"
                                            }
                                          ],
                                          "id": 14515,
                                          "name": "lookupRadonRetrieval",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 14167,
                                          "src": "10738:20:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonRetrieval_$37795_memory_ptr_$",
                                            "typeString": "function (bytes32) view returns (struct Witnet.RadonRetrieval memory)"
                                          }
                                        },
                                        "id": 14517,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "10738:39:35",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                        }
                                      },
                                      "src": "10721:56:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 14519,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10721:56:35"
                                  }
                                ]
                              }
                            },
                            {
                              "expression": {
                                "id": 14538,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "expression": {
                                    "baseExpression": {
                                      "id": 14531,
                                      "name": "_retrievals",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14489,
                                      "src": "10897:11:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                      }
                                    },
                                    "id": 14533,
                                    "indexExpression": {
                                      "id": 14532,
                                      "name": "_ix",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14499,
                                      "src": "10909:3:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "10897:16:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                      "typeString": "struct Witnet.RadonRetrieval memory"
                                    }
                                  },
                                  "id": 14534,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberLocation": "10914:3:35",
                                  "memberName": "url",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37785,
                                  "src": "10897:20:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_string_memory_ptr",
                                    "typeString": "string memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "baseExpression": {
                                    "id": 14535,
                                    "name": "modalUrls",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14445,
                                    "src": "10920:9:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                      "typeString": "string calldata[] calldata"
                                    }
                                  },
                                  "id": 14537,
                                  "indexExpression": {
                                    "id": 14536,
                                    "name": "_ix",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14499,
                                    "src": "10930:3:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "10920:14:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_string_calldata_ptr",
                                    "typeString": "string calldata"
                                  }
                                },
                                "src": "10897:37:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              "id": 14539,
                              "nodeType": "ExpressionStatement",
                              "src": "10897:37:35"
                            }
                          ]
                        },
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 14505,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 14502,
                            "name": "_ix",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14499,
                            "src": "10633:3:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "<",
                          "rightExpression": {
                            "expression": {
                              "id": 14503,
                              "name": "modalUrls",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14445,
                              "src": "10639:9:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                "typeString": "string calldata[] calldata"
                              }
                            },
                            "id": 14504,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "10649:6:35",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "10639:16:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "10633:22:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 14541,
                        "initializationExpression": {
                          "assignments": [
                            14499
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 14499,
                              "mutability": "mutable",
                              "name": "_ix",
                              "nameLocation": "10624:3:35",
                              "nodeType": "VariableDeclaration",
                              "scope": 14541,
                              "src": "10619:8:35",
                              "stateVariable": false,
                              "storageLocation": "default",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "typeName": {
                                "id": 14498,
                                "name": "uint",
                                "nodeType": "ElementaryTypeName",
                                "src": "10619:4:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "visibility": "internal"
                            }
                          ],
                          "id": 14501,
                          "initialValue": {
                            "hexValue": "30",
                            "id": 14500,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "10630:1:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "10619:12:35"
                        },
                        "isSimpleCounterLoop": true,
                        "loopExpression": {
                          "expression": {
                            "id": 14507,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "++",
                            "prefix": true,
                            "src": "10657:6:35",
                            "subExpression": {
                              "id": 14506,
                              "name": "_ix",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14499,
                              "src": "10660:3:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 14508,
                          "nodeType": "ExpressionStatement",
                          "src": "10657:6:35"
                        },
                        "nodeType": "ForStatement",
                        "src": "10614:336:35"
                      },
                      {
                        "assignments": [
                          14543
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 14543,
                            "mutability": "mutable",
                            "name": "_radBytecode",
                            "nameLocation": "11027:12:35",
                            "nodeType": "VariableDeclaration",
                            "scope": 14623,
                            "src": "11014:25:35",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes"
                            },
                            "typeName": {
                              "id": 14542,
                              "name": "bytes",
                              "nodeType": "ElementaryTypeName",
                              "src": "11014:5:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_storage_ptr",
                                "typeString": "bytes"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 14562,
                        "initialValue": {
                          "arguments": [
                            {
                              "id": 14546,
                              "name": "modalArgs",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14442,
                              "src": "11079:9:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                "typeString": "string calldata[] calldata"
                              }
                            },
                            {
                              "arguments": [],
                              "expression": {
                                "argumentTypes": [],
                                "expression": {
                                  "baseExpression": {
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "id": 14547,
                                        "name": "__database",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20236,
                                        "src": "11107:10:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                          "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                        }
                                      },
                                      "id": 14548,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "11107:12:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                        "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                      }
                                    },
                                    "id": 14549,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "11120:8:35",
                                    "memberName": "reducers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 20174,
                                    "src": "11107:21:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                                      "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                                    }
                                  },
                                  "id": 14551,
                                  "indexExpression": {
                                    "id": 14550,
                                    "name": "dataSourcesAggregatorHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14447,
                                    "src": "11129:25:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "11107:48:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                                    "typeString": "struct Witnet.RadonReducer storage ref"
                                  }
                                },
                                "id": 14552,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11156:6:35",
                                "memberName": "encode",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 35246,
                                "src": "11107:55:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                                  "typeString": "function (struct Witnet.RadonReducer memory) pure returns (bytes memory)"
                                }
                              },
                              "id": 14553,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "11107:57:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            {
                              "arguments": [],
                              "expression": {
                                "argumentTypes": [],
                                "expression": {
                                  "baseExpression": {
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "id": 14554,
                                        "name": "__database",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20236,
                                        "src": "11183:10:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                          "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                        }
                                      },
                                      "id": 14555,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "11183:12:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                        "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                      }
                                    },
                                    "id": 14556,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "11196:8:35",
                                    "memberName": "reducers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 20174,
                                    "src": "11183:21:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                                      "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                                    }
                                  },
                                  "id": 14558,
                                  "indexExpression": {
                                    "id": 14557,
                                    "name": "crowdAttestationTallyHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14449,
                                    "src": "11205:25:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "11183:48:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                                    "typeString": "struct Witnet.RadonReducer storage ref"
                                  }
                                },
                                "id": 14559,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11232:6:35",
                                "memberName": "encode",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 35246,
                                "src": "11183:55:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                                  "typeString": "function (struct Witnet.RadonReducer memory) pure returns (bytes memory)"
                                }
                              },
                              "id": 14560,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "11183:57:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                "typeString": "string calldata[] calldata"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            ],
                            "expression": {
                              "id": 14544,
                              "name": "_retrievals",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14489,
                              "src": "11042:11:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                              }
                            },
                            "id": 14545,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "11054:6:35",
                            "memberName": "encode",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 35103,
                            "src": "11042:18:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_delegatecall_pure$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$",
                              "typeString": "function (struct Witnet.RadonRetrieval memory[] memory,string memory[] memory,bytes memory,bytes memory) pure returns (bytes memory)"
                            }
                          },
                          "id": 14561,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "11042:213:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "11014:241:35"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 14567,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 14564,
                                  "name": "_radBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 14543,
                                  "src": "11297:12:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 14565,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11310:6:35",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "11297:19:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "<=",
                              "rightExpression": {
                                "hexValue": "3635353335",
                                "id": 14566,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "11320:5:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_65535_by_1",
                                  "typeString": "int_const 65535"
                                },
                                "value": "65535"
                              },
                              "src": "11297:28:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "hexValue": "746f6f206269672072657175657374",
                              "id": 14568,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "11344:17:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_8c4a14296e4f5ed078e8feca9ed730e7c6485f0e90bd233cbd3ec5805b2a8d50",
                                "typeString": "literal_string \"too big request\""
                              },
                              "value": "too big request"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_8c4a14296e4f5ed078e8feca9ed730e7c6485f0e90bd233cbd3ec5805b2a8d50",
                                "typeString": "literal_string \"too big request\""
                              }
                            ],
                            "id": 14563,
                            "name": "_require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26494,
                            "src": "11270:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) view"
                            }
                          },
                          "id": 14569,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "11270:106:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 14570,
                        "nodeType": "ExpressionStatement",
                        "src": "11270:106:35"
                      },
                      {
                        "expression": {
                          "id": 14575,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 14571,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14454,
                            "src": "11438:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "id": 14573,
                                "name": "_radBytecode",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14543,
                                "src": "11464:12:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "id": 14572,
                              "name": "_witOracleHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13824,
                              "src": "11449:14:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                                "typeString": "function (bytes memory) pure returns (Witnet.RadonHash)"
                              }
                            },
                            "id": 14574,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11449:28:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "src": "11438:39:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        },
                        "id": 14576,
                        "nodeType": "ExpressionStatement",
                        "src": "11438:39:35"
                      },
                      {
                        "expression": {
                          "id": 14583,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 14577,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "11492:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 14578,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11492:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 14579,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "11505:4:35",
                              "memberName": "rads",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20190,
                              "src": "11492:17:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_userDefinedValueType$_RadonHash_$37153_$",
                                "typeString": "mapping(bytes32 => Witnet.RadonHash)"
                              }
                            },
                            "id": 14581,
                            "indexExpression": {
                              "id": 14580,
                              "name": "hash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14457,
                              "src": "11510:4:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "11492:23:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "id": 14582,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14454,
                            "src": "11518:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "src": "11492:34:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        },
                        "id": 14584,
                        "nodeType": "ExpressionStatement",
                        "src": "11492:34:35"
                      },
                      {
                        "expression": {
                          "id": 14591,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 14585,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "11607:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 14586,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11607:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 14587,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "11620:12:35",
                              "memberName": "radsBytecode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20195,
                              "src": "11607:25:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_bytes_storage_$",
                                "typeString": "mapping(Witnet.RadonHash => bytes storage ref)"
                              }
                            },
                            "id": 14589,
                            "indexExpression": {
                              "id": 14588,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14454,
                              "src": "11633:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "11607:35:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_storage",
                              "typeString": "bytes storage ref"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "id": 14590,
                            "name": "_radBytecode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14543,
                            "src": "11645:12:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "11607:50:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_storage",
                            "typeString": "bytes storage ref"
                          }
                        },
                        "id": 14592,
                        "nodeType": "ExpressionStatement",
                        "src": "11607:50:35"
                      },
                      {
                        "expression": {
                          "id": 14617,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 14593,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "11672:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 14594,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11672:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 14595,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "11685:8:35",
                              "memberName": "radsInfo",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20201,
                              "src": "11672:21:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestInfo_$20165_storage_$",
                                "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestInfo storage ref)"
                              }
                            },
                            "id": 14597,
                            "indexExpression": {
                              "id": 14596,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14454,
                              "src": "11694:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "11672:31:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                              "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "id": 14601,
                                    "name": "crowdAttestationTallyHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14449,
                                    "src": "11777:25:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "id": 14600,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "11769:7:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes15_$",
                                    "typeString": "type(bytes15)"
                                  },
                                  "typeName": {
                                    "id": 14599,
                                    "name": "bytes15",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "11769:7:35",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 14602,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11769:34:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "expression": {
                                      "id": 14605,
                                      "name": "modalUrls",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14445,
                                      "src": "11846:9:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                        "typeString": "string calldata[] calldata"
                                      }
                                    },
                                    "id": 14606,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "11856:6:35",
                                    "memberName": "length",
                                    "nodeType": "MemberAccess",
                                    "src": "11846:16:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "id": 14604,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "11840:5:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_uint8_$",
                                    "typeString": "type(uint8)"
                                  },
                                  "typeName": {
                                    "id": 14603,
                                    "name": "uint8",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "11840:5:35",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 14607,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11840:23:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "id": 14610,
                                    "name": "dataSourcesAggregatorHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14447,
                                    "src": "11917:25:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "id": 14609,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "11909:7:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes15_$",
                                    "typeString": "type(bytes15)"
                                  },
                                  "typeName": {
                                    "id": 14608,
                                    "name": "bytes15",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "11909:7:35",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 14611,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11909:34:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                }
                              },
                              {
                                "expression": {
                                  "baseExpression": {
                                    "id": 14612,
                                    "name": "_retrievals",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14489,
                                    "src": "11978:11:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                    }
                                  },
                                  "id": 14614,
                                  "indexExpression": {
                                    "hexValue": "30",
                                    "id": 14613,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11990:1:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "11978:14:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "id": 14615,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11993:8:35",
                                "memberName": "dataType",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37783,
                                "src": "11978:23:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                },
                                {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              ],
                              "id": 14598,
                              "name": "RadonRequestInfo",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20165,
                              "src": "11706:16:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_struct$_RadonRequestInfo_$20165_storage_ptr_$",
                                "typeString": "type(struct WitOracleRadonRegistryData.RadonRequestInfo storage pointer)"
                              }
                            },
                            "id": 14616,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "structConstructorCall",
                            "lValueRequested": false,
                            "nameLocations": [
                              "11742:25:35",
                              "11822:16:35",
                              "11882:25:35",
                              "11962:14:35"
                            ],
                            "names": [
                              "crowdAttestationTallyHash",
                              "dataSourcesCount",
                              "dataSourcesAggregatorHash",
                              "resultDataType"
                            ],
                            "nodeType": "FunctionCall",
                            "src": "11706:311:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_memory_ptr",
                              "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo memory"
                            }
                          },
                          "src": "11672:345:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                            "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                          }
                        },
                        "id": 14618,
                        "nodeType": "ExpressionStatement",
                        "src": "11672:345:35"
                      },
                      {
                        "eventCall": {
                          "arguments": [
                            {
                              "id": 14620,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14454,
                              "src": "12094:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            ],
                            "id": 14619,
                            "name": "NewRadonRequest",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 27413,
                            "src": "12078:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_event_nonpayable$_t_userDefinedValueType$_RadonHash_$37153_$returns$__$",
                              "typeString": "function (Witnet.RadonHash)"
                            }
                          },
                          "id": 14621,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "12078:25:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 14622,
                        "nodeType": "EmitStatement",
                        "src": "12073:30:35"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "98cb04f4",
            "id": 14626,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRequest",
            "nameLocation": "9854:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14451,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "10113:8:35"
            },
            "parameters": {
              "id": 14450,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14439,
                  "mutability": "mutable",
                  "name": "modalRetrieveHash",
                  "nameLocation": "9895:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14626,
                  "src": "9887:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14438,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "9887:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14442,
                  "mutability": "mutable",
                  "name": "modalArgs",
                  "nameLocation": "9945:9:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14626,
                  "src": "9927:27:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14440,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "9927:6:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 14441,
                    "nodeType": "ArrayTypeName",
                    "src": "9927:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14445,
                  "mutability": "mutable",
                  "name": "modalUrls",
                  "nameLocation": "9987:9:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14626,
                  "src": "9969:27:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14443,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "9969:6:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 14444,
                    "nodeType": "ArrayTypeName",
                    "src": "9969:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14447,
                  "mutability": "mutable",
                  "name": "dataSourcesAggregatorHash",
                  "nameLocation": "10019:25:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14626,
                  "src": "10011:33:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14446,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "10011:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14449,
                  "mutability": "mutable",
                  "name": "crowdAttestationTallyHash",
                  "nameLocation": "10067:25:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14626,
                  "src": "10059:33:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14448,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "10059:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9872:231:35"
            },
            "returnParameters": {
              "id": 14455,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14454,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "10167:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14626,
                  "src": "10150:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14453,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14452,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "10150:6:35",
                        "10157:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "10150:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "10150:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10149:27:35"
            },
            "scope": 15238,
            "src": "9845:2277:35",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              27393
            ],
            "body": {
              "id": 14713,
              "nodeType": "Block",
              "src": "12477:1413:35",
              "statements": [
                {
                  "expression": {
                    "id": 14654,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14646,
                      "name": "hash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14644,
                      "src": "12528:4:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 14649,
                          "name": "_requestURL",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14631,
                          "src": "12573:11:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        {
                          "id": 14650,
                          "name": "_requestBody",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14633,
                          "src": "12600:12:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        {
                          "id": 14651,
                          "name": "_requestHeaders",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14638,
                          "src": "12628:15:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[2] memory[] memory"
                          }
                        },
                        {
                          "id": 14652,
                          "name": "_requestRadonScript",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14640,
                          "src": "12659:19:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          },
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          },
                          {
                            "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[2] memory[] memory"
                          },
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        ],
                        "expression": {
                          "id": 14647,
                          "name": "_requestMethod",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14629,
                          "src": "12535:14:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                            "typeString": "enum Witnet.RadonRetrievalMethods"
                          }
                        },
                        "id": 14648,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "12550:8:35",
                        "memberName": "validate",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 35838,
                        "src": "12535:23:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_delegatecall_pure$_t_enum$_RadonRetrievalMethods_$37802_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes32_$attached_to$_t_enum$_RadonRetrievalMethods_$37802_$",
                          "typeString": "function (enum Witnet.RadonRetrievalMethods,string memory,string memory,string memory[2] memory[] memory,bytes memory) pure returns (bytes32)"
                        }
                      },
                      "id": 14653,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "12535:154:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "12528:161:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 14655,
                  "nodeType": "ExpressionStatement",
                  "src": "12528:161:35"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                      "typeString": "enum Witnet.RadonRetrievalMethods"
                    },
                    "id": 14665,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "baseExpression": {
                          "expression": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "id": 14656,
                              "name": "__database",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20236,
                              "src": "12764:10:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                              }
                            },
                            "id": 14657,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "12764:12:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                              "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                            }
                          },
                          "id": 14658,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "12777:10:35",
                          "memberName": "retrievals",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20179,
                          "src": "12764:23:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                            "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                          }
                        },
                        "id": 14660,
                        "indexExpression": {
                          "id": 14659,
                          "name": "hash",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14644,
                          "src": "12788:4:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "12764:29:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                          "typeString": "struct Witnet.RadonRetrieval storage ref"
                        }
                      },
                      "id": 14661,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "12794:6:35",
                      "memberName": "method",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37780,
                      "src": "12764:36:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                        "typeString": "enum Witnet.RadonRetrievalMethods"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "expression": {
                        "expression": {
                          "id": 14662,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "12804:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 14663,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "12811:21:35",
                        "memberName": "RadonRetrievalMethods",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37802,
                        "src": "12804:28:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                          "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                        }
                      },
                      "id": 14664,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "12833:7:35",
                      "memberName": "Unknown",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37797,
                      "src": "12804:36:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                        "typeString": "enum Witnet.RadonRetrievalMethods"
                      }
                    },
                    "src": "12764:76:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 14712,
                  "nodeType": "IfStatement",
                  "src": "12746:1137:35",
                  "trueBody": {
                    "id": 14711,
                    "nodeType": "Block",
                    "src": "12852:1031:35",
                    "statements": [
                      {
                        "expression": {
                          "id": 14705,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 14666,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "12927:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 14667,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "12927:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 14668,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "12940:10:35",
                              "memberName": "retrievals",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20179,
                              "src": "12927:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                                "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                              }
                            },
                            "id": 14670,
                            "indexExpression": {
                              "id": 14669,
                              "name": "hash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14644,
                              "src": "12951:4:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "12927:29:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                              "typeString": "struct Witnet.RadonRetrieval storage ref"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "id": 14677,
                                        "name": "_requestURL",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 14631,
                                        "src": "13124:11:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        }
                                      },
                                      {
                                        "arguments": [
                                          {
                                            "hexValue": "20",
                                            "id": 14680,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "string",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "13143:3:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a",
                                              "typeString": "literal_string \" \""
                                            },
                                            "value": " "
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a",
                                              "typeString": "literal_string \" \""
                                            }
                                          ],
                                          "id": 14679,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "13137:5:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                            "typeString": "type(bytes storage pointer)"
                                          },
                                          "typeName": {
                                            "id": 14678,
                                            "name": "bytes",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "13137:5:35",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 14681,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "13137:10:35",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      },
                                      {
                                        "id": 14682,
                                        "name": "_requestBody",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 14633,
                                        "src": "13178:12:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        }
                                      },
                                      {
                                        "arguments": [
                                          {
                                            "hexValue": "20",
                                            "id": 14685,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "string",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "13198:3:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a",
                                              "typeString": "literal_string \" \""
                                            },
                                            "value": " "
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a",
                                              "typeString": "literal_string \" \""
                                            }
                                          ],
                                          "id": 14684,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "13192:5:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                            "typeString": "type(bytes storage pointer)"
                                          },
                                          "typeName": {
                                            "id": 14683,
                                            "name": "bytes",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "13192:5:35",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 14686,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "13192:10:35",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      },
                                      {
                                        "id": 14687,
                                        "name": "_requestHeaders",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 14638,
                                        "src": "13233:15:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                          "typeString": "string memory[2] memory[] memory"
                                        }
                                      },
                                      {
                                        "arguments": [
                                          {
                                            "hexValue": "20",
                                            "id": 14690,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "string",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "13256:3:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a",
                                              "typeString": "literal_string \" \""
                                            },
                                            "value": " "
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_stringliteral_681afa780d17da29203322b473d3f210a7d621259a4e6ce9e403f5a266ff719a",
                                              "typeString": "literal_string \" \""
                                            }
                                          ],
                                          "id": 14689,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "13250:5:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                            "typeString": "type(bytes storage pointer)"
                                          },
                                          "typeName": {
                                            "id": 14688,
                                            "name": "bytes",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "13250:5:35",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 14691,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "13250:10:35",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      },
                                      {
                                        "id": 14692,
                                        "name": "_requestRadonScript",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 14640,
                                        "src": "13291:19:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        },
                                        {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        },
                                        {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        },
                                        {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        },
                                        {
                                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                          "typeString": "string memory[2] memory[] memory"
                                        },
                                        {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        },
                                        {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      ],
                                      "expression": {
                                        "id": 14675,
                                        "name": "abi",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 4294967295,
                                        "src": "13083:3:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_magic_abi",
                                          "typeString": "abi"
                                        }
                                      },
                                      "id": 14676,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "memberLocation": "13087:6:35",
                                      "memberName": "encode",
                                      "nodeType": "MemberAccess",
                                      "src": "13083:10:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$",
                                        "typeString": "function () pure returns (bytes memory)"
                                      }
                                    },
                                    "id": 14693,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "13083:254:35",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  ],
                                  "expression": {
                                    "id": 14673,
                                    "name": "WitnetBuffer",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 42631,
                                    "src": "13032:12:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                                      "typeString": "type(library WitnetBuffer)"
                                    }
                                  },
                                  "id": 14674,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "13045:11:35",
                                  "memberName": "argsCountOf",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 41999,
                                  "src": "13032:24:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_uint8_$",
                                    "typeString": "function (bytes memory) pure returns (uint8)"
                                  }
                                },
                                "id": 14694,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "13032:328:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "id": 14695,
                                "name": "_requestMethod",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14629,
                                "src": "13410:14:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                  "typeString": "enum Witnet.RadonRetrievalMethods"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "id": 14698,
                                    "name": "_requestRadonScript",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14640,
                                    "src": "13534:19:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  ],
                                  "expression": {
                                    "id": 14696,
                                    "name": "WitOracleRadonEncodingLib",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 36466,
                                    "src": "13476:25:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_contract$_WitOracleRadonEncodingLib_$36466_$",
                                      "typeString": "type(library WitOracleRadonEncodingLib)"
                                    }
                                  },
                                  "id": 14697,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "13502:31:35",
                                  "memberName": "verifyRadonScriptResultDataType",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 36161,
                                  "src": "13476:57:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_enum$_RadonDataTypes_$37720_$",
                                    "typeString": "function (bytes memory) pure returns (enum Witnet.RadonDataTypes)"
                                  }
                                },
                                "id": 14699,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "13476:78:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              },
                              {
                                "id": 14700,
                                "name": "_requestURL",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14631,
                                "src": "13601:11:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "id": 14701,
                                "name": "_requestBody",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14633,
                                "src": "13660:12:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "id": 14702,
                                "name": "_requestHeaders",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14638,
                                "src": "13723:15:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[2] memory[] memory"
                                }
                              },
                              {
                                "id": 14703,
                                "name": "_requestRadonScript",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14640,
                                "src": "13793:19:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                  "typeString": "enum Witnet.RadonRetrievalMethods"
                                },
                                {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                },
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[2] memory[] memory"
                                },
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "expression": {
                                "id": 14671,
                                "name": "Witnet",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 40741,
                                "src": "12959:6:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                  "typeString": "type(library Witnet)"
                                }
                              },
                              "id": 14672,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "12966:14:35",
                              "memberName": "RadonRetrieval",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37795,
                              "src": "12959:21:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_struct$_RadonRetrieval_$37795_storage_ptr_$",
                                "typeString": "type(struct Witnet.RadonRetrieval storage pointer)"
                              }
                            },
                            "id": 14704,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "structConstructorCall",
                            "lValueRequested": false,
                            "nameLocations": [
                              "13000:9:35",
                              "13381:6:35",
                              "13445:8:35",
                              "13575:3:35",
                              "13633:4:35",
                              "13693:7:35",
                              "13759:11:35"
                            ],
                            "names": [
                              "argsCount",
                              "method",
                              "dataType",
                              "url",
                              "body",
                              "headers",
                              "radonScript"
                            ],
                            "nodeType": "FunctionCall",
                            "src": "12959:869:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "src": "12927:901:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                            "typeString": "struct Witnet.RadonRetrieval storage ref"
                          }
                        },
                        "id": 14706,
                        "nodeType": "ExpressionStatement",
                        "src": "12927:901:35"
                      },
                      {
                        "eventCall": {
                          "arguments": [
                            {
                              "id": 14708,
                              "name": "hash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14644,
                              "src": "13866:4:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "id": 14707,
                            "name": "NewRadonRetrieval",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 27407,
                            "src": "13848:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$",
                              "typeString": "function (bytes32)"
                            }
                          },
                          "id": 14709,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "13848:23:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 14710,
                        "nodeType": "EmitStatement",
                        "src": "13843:28:35"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "9eb3ab1f",
            "id": 14714,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRetrieval",
            "nameLocation": "12139:20:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14642,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "12424:8:35"
            },
            "parameters": {
              "id": 14641,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14629,
                  "mutability": "mutable",
                  "name": "_requestMethod",
                  "nameLocation": "12203:14:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14714,
                  "src": "12174:43:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                    "typeString": "enum Witnet.RadonRetrievalMethods"
                  },
                  "typeName": {
                    "id": 14628,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14627,
                      "name": "Witnet.RadonRetrievalMethods",
                      "nameLocations": [
                        "12174:6:35",
                        "12181:21:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37802,
                      "src": "12174:28:35"
                    },
                    "referencedDeclaration": 37802,
                    "src": "12174:28:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                      "typeString": "enum Witnet.RadonRetrievalMethods"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14631,
                  "mutability": "mutable",
                  "name": "_requestURL",
                  "nameLocation": "12246:11:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14714,
                  "src": "12232:25:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 14630,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12232:6:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14633,
                  "mutability": "mutable",
                  "name": "_requestBody",
                  "nameLocation": "12286:12:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14714,
                  "src": "12272:26:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 14632,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12272:6:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14638,
                  "mutability": "mutable",
                  "name": "_requestHeaders",
                  "nameLocation": "12333:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14714,
                  "src": "12313:35:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[2][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 14634,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "12313:6:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 14636,
                      "length": {
                        "hexValue": "32",
                        "id": 14635,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12320:1:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "12313:9:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$2_storage_ptr",
                        "typeString": "string[2]"
                      }
                    },
                    "id": 14637,
                    "nodeType": "ArrayTypeName",
                    "src": "12313:11:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$2_storage_$dyn_storage_ptr",
                      "typeString": "string[2][]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14640,
                  "mutability": "mutable",
                  "name": "_requestRadonScript",
                  "nameLocation": "12376:19:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14714,
                  "src": "12363:32:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 14639,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "12363:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12159:247:35"
            },
            "returnParameters": {
              "id": 14645,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14644,
                  "mutability": "mutable",
                  "name": "hash",
                  "nameLocation": "12466:4:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14714,
                  "src": "12458:12:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14643,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12458:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12457:14:35"
            },
            "scope": 15238,
            "src": "12130:1760:35",
            "stateMutability": "nonpayable",
            "virtual": true,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              28797
            ],
            "body": {
              "id": 14730,
              "nodeType": "Block",
              "src": "15124:62:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 14727,
                        "name": "_radHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14717,
                        "src": "15169:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      ],
                      "id": 14726,
                      "name": "lookupRadonRequestBytecode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14029,
                      "src": "15142:26:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function (Witnet.RadonHash) view returns (bytes memory)"
                      }
                    },
                    "id": 14728,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "15142:36:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 14725,
                  "id": 14729,
                  "nodeType": "Return",
                  "src": "15135:43:35"
                }
              ]
            },
            "functionSelector": "2ebf5d5c",
            "id": 14731,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14721,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14717,
                    "src": "15077:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14722,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14720,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "15058:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "15058:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "15058:28:35"
              }
            ],
            "name": "bytecodeOf",
            "nameLocation": "14979:10:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14719,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "15040:8:35"
            },
            "parameters": {
              "id": 14718,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14717,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "15007:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14731,
                  "src": "14990:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14716,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14715,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "14990:6:35",
                        "14997:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "14990:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "14990:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14989:27:35"
            },
            "returnParameters": {
              "id": 14725,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14724,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14731,
                  "src": "15105:12:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 14723,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "15105:5:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15104:14:35"
            },
            "scope": 15238,
            "src": "14970:216:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              28806
            ],
            "body": {
              "id": 14754,
              "nodeType": "Block",
              "src": "15332:245:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 14744,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14734,
                            "src": "15425:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          ],
                          "id": 14743,
                          "name": "lookupRadonRequestRetrievals",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14108,
                          "src": "15396:28:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$",
                            "typeString": "function (Witnet.RadonHash) view returns (struct Witnet.RadonRetrieval memory[] memory)"
                          }
                        },
                        "id": 14745,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "15396:38:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "id": 14747,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14734,
                            "src": "15489:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          ],
                          "id": 14746,
                          "name": "lookupRadonRequestAggregator",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14798,
                          "src": "15460:28:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                            "typeString": "function (Witnet.RadonHash) view returns (struct Witnet.RadonReducer memory)"
                          }
                        },
                        "id": 14748,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "15460:38:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                          "typeString": "struct Witnet.RadonReducer memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "id": 14750,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14734,
                            "src": "15548:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          ],
                          "id": 14749,
                          "name": "lookupRadonRequestTally",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14944,
                          "src": "15524:23:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                            "typeString": "function (Witnet.RadonHash) view returns (struct Witnet.RadonReducer memory)"
                          }
                        },
                        "id": 14751,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "15524:33:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                          "typeString": "struct Witnet.RadonReducer memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                        },
                        {
                          "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                          "typeString": "struct Witnet.RadonReducer memory"
                        },
                        {
                          "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                          "typeString": "struct Witnet.RadonReducer memory"
                        }
                      ],
                      "expression": {
                        "id": 14741,
                        "name": "Witnet",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 40741,
                        "src": "15350:6:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                          "typeString": "type(library Witnet)"
                        }
                      },
                      "id": 14742,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "15357:12:35",
                      "memberName": "RadonRequest",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37774,
                      "src": "15350:19:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_struct$_RadonRequest_$37774_storage_ptr_$",
                        "typeString": "type(struct Witnet.RadonRequest storage pointer)"
                      }
                    },
                    "id": 14752,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "structConstructorCall",
                    "lValueRequested": false,
                    "nameLocations": [
                      "15385:8:35",
                      "15449:9:35",
                      "15513:5:35"
                    ],
                    "names": [
                      "retrieve",
                      "aggregate",
                      "tally"
                    ],
                    "nodeType": "FunctionCall",
                    "src": "15350:219:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRequest_$37774_memory_ptr",
                      "typeString": "struct Witnet.RadonRequest memory"
                    }
                  },
                  "functionReturnParameters": 14740,
                  "id": 14753,
                  "nodeType": "Return",
                  "src": "15343:226:35"
                }
              ]
            },
            "functionSelector": "f0bd92d9",
            "id": 14755,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "lookupRadonRequest",
            "nameLocation": "15203:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14736,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "15258:8:35"
            },
            "parameters": {
              "id": 14735,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14734,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "15239:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14755,
                  "src": "15222:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14733,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14732,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "15222:6:35",
                        "15229:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "15222:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "15222:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15221:27:35"
            },
            "returnParameters": {
              "id": 14740,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14739,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14755,
                  "src": "15299:26:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRequest_$37774_memory_ptr",
                    "typeString": "struct Witnet.RadonRequest"
                  },
                  "typeName": {
                    "id": 14738,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14737,
                      "name": "Witnet.RadonRequest",
                      "nameLocations": [
                        "15299:6:35",
                        "15306:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37774,
                      "src": "15299:19:35"
                    },
                    "referencedDeclaration": 37774,
                    "src": "15299:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRequest_$37774_storage_ptr",
                      "typeString": "struct Witnet.RadonRequest"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15298:28:35"
            },
            "scope": 15238,
            "src": "15194:383:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              28815
            ],
            "body": {
              "id": 14797,
              "nodeType": "Block",
              "src": "15769:279:35",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    },
                    "id": 14776,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "arguments": [
                          {
                            "id": 14769,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14758,
                            "src": "15795:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          ],
                          "id": 14768,
                          "name": "__requests",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20252,
                          "src": "15784:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                            "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                          }
                        },
                        "id": 14770,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "15784:20:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                          "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                        }
                      },
                      "id": 14771,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "15805:15:35",
                      "memberName": "legacyTallyHash",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20154,
                      "src": "15784:36:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "!=",
                    "rightExpression": {
                      "arguments": [
                        {
                          "hexValue": "30",
                          "id": 14774,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "15832:1:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          }
                        ],
                        "id": 14773,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "15824:7:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_bytes32_$",
                          "typeString": "type(bytes32)"
                        },
                        "typeName": {
                          "id": 14772,
                          "name": "bytes32",
                          "nodeType": "ElementaryTypeName",
                          "src": "15824:7:35",
                          "typeDescriptions": {}
                        }
                      },
                      "id": 14775,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "15824:10:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "15784:50:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 14795,
                    "nodeType": "Block",
                    "src": "15937:104:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "expression": {
                                    "arguments": [
                                      {
                                        "id": 14789,
                                        "name": "_radHash",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 14758,
                                        "src": "15997:8:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                          "typeString": "Witnet.RadonHash"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                          "typeString": "Witnet.RadonHash"
                                        }
                                      ],
                                      "id": 14788,
                                      "name": "__requests",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 20252,
                                      "src": "15986:10:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                                        "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                                      }
                                    },
                                    "id": 14790,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "15986:20:35",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                                      "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                                    }
                                  },
                                  "id": 14791,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "16007:20:35",
                                  "memberName": "aggregateTallyHashes",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 20142,
                                  "src": "15986:41:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                ],
                                "id": 14787,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "15978:7:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_bytes16_$",
                                  "typeString": "type(bytes16)"
                                },
                                "typeName": {
                                  "id": 14786,
                                  "name": "bytes16",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "15978:7:35",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 14792,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "15978:50:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes16",
                                "typeString": "bytes16"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes16",
                                "typeString": "bytes16"
                              }
                            ],
                            "id": 14785,
                            "name": "lookupRadonReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14010,
                            "src": "15959:18:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                              "typeString": "function (bytes32) view returns (struct Witnet.RadonReducer memory)"
                            }
                          },
                          "id": 14793,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "15959:70:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                            "typeString": "struct Witnet.RadonReducer memory"
                          }
                        },
                        "functionReturnParameters": 14767,
                        "id": 14794,
                        "nodeType": "Return",
                        "src": "15952:77:35"
                      }
                    ]
                  },
                  "id": 14796,
                  "nodeType": "IfStatement",
                  "src": "15780:261:35",
                  "trueBody": {
                    "id": 14784,
                    "nodeType": "Block",
                    "src": "15836:95:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "id": 14779,
                                    "name": "_radHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14758,
                                    "src": "15888:8:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                      "typeString": "Witnet.RadonHash"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                      "typeString": "Witnet.RadonHash"
                                    }
                                  ],
                                  "id": 14778,
                                  "name": "__requests",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20252,
                                  "src": "15877:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                                    "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                                  }
                                },
                                "id": 14780,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "15877:20:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                                }
                              },
                              "id": 14781,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "15898:20:35",
                              "memberName": "aggregateTallyHashes",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20142,
                              "src": "15877:41:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "id": 14777,
                            "name": "lookupRadonReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14010,
                            "src": "15858:18:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                              "typeString": "function (bytes32) view returns (struct Witnet.RadonReducer memory)"
                            }
                          },
                          "id": 14782,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "15858:61:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                            "typeString": "struct Witnet.RadonReducer memory"
                          }
                        },
                        "functionReturnParameters": 14767,
                        "id": 14783,
                        "nodeType": "Return",
                        "src": "15851:68:35"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "9f34df19",
            "id": 14798,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14762,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14758,
                    "src": "15708:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14763,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14761,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "15689:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "15689:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "15689:28:35"
              }
            ],
            "name": "lookupRadonRequestAggregator",
            "nameLocation": "15594:28:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14760,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "15659:8:35"
            },
            "parameters": {
              "id": 14759,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14758,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "15640:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14798,
                  "src": "15623:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14757,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14756,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "15623:6:35",
                        "15630:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "15623:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "15623:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15622:27:35"
            },
            "returnParameters": {
              "id": 14767,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14766,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14798,
                  "src": "15736:26:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14765,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14764,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "15736:6:35",
                        "15743:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "15736:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "15736:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15735:28:35"
            },
            "scope": 15238,
            "src": "15585:463:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              28822
            ],
            "body": {
              "id": 14815,
              "nodeType": "Block",
              "src": "16241:28:35",
              "statements": [
                {
                  "expression": {
                    "hexValue": "3332",
                    "id": 14813,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": true,
                    "kind": "number",
                    "lValueRequested": false,
                    "nodeType": "Literal",
                    "src": "16259:2:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_rational_32_by_1",
                      "typeString": "int_const 32"
                    },
                    "value": "32"
                  },
                  "functionReturnParameters": 14812,
                  "id": 14814,
                  "nodeType": "Return",
                  "src": "16252:9:35"
                }
              ]
            },
            "functionSelector": "76b78a06",
            "id": 14816,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "arguments": [
                      {
                        "id": 14807,
                        "name": "_radHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14800,
                        "src": "16198:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "expression": {
                          "id": 14804,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "16176:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 14805,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "16183:9:35",
                        "memberName": "RadonHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37153,
                        "src": "16176:16:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "type(Witnet.RadonHash)"
                        }
                      },
                      "id": 14806,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "16193:4:35",
                      "memberName": "wrap",
                      "nodeType": "MemberAccess",
                      "src": "16176:21:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32) pure returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14808,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "16176:31:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14809,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14803,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "16157:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "16157:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "16157:51:35"
              }
            ],
            "name": "lookupRadonRequestResultMaxSize",
            "nameLocation": "16065:31:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14802,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "16125:8:35"
            },
            "parameters": {
              "id": 14801,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14800,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "16105:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14816,
                  "src": "16097:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14799,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "16097:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16096:18:35"
            },
            "returnParameters": {
              "id": 14812,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14811,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14816,
                  "src": "16228:6:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 14810,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "16228:6:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16227:8:35"
            },
            "scope": 15238,
            "src": "16056:213:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              28830
            ],
            "body": {
              "id": 14841,
              "nodeType": "Block",
              "src": "16914:80:35",
              "statements": [
                {
                  "expression": {
                    "expression": {
                      "arguments": [
                        {
                          "arguments": [
                            {
                              "id": 14836,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14818,
                              "src": "16965:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "expression": {
                              "expression": {
                                "id": 14833,
                                "name": "Witnet",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 40741,
                                "src": "16943:6:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                  "typeString": "type(library Witnet)"
                                }
                              },
                              "id": 14834,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "16950:9:35",
                              "memberName": "RadonHash",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37153,
                              "src": "16943:16:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                                "typeString": "type(Witnet.RadonHash)"
                              }
                            },
                            "id": 14835,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "16960:4:35",
                            "memberName": "wrap",
                            "nodeType": "MemberAccess",
                            "src": "16943:21:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                              "typeString": "function (bytes32) pure returns (Witnet.RadonHash)"
                            }
                          },
                          "id": 14837,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "16943:31:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        ],
                        "id": 14832,
                        "name": "__requests",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 20252,
                        "src": "16932:10:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                          "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                        }
                      },
                      "id": 14838,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "16932:43:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                        "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                      }
                    },
                    "id": 14839,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "16976:10:35",
                    "memberName": "retrievals",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 20152,
                    "src": "16932:54:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
                      "typeString": "bytes32[] storage ref"
                    }
                  },
                  "functionReturnParameters": 14831,
                  "id": 14840,
                  "nodeType": "Return",
                  "src": "16925:61:35"
                }
              ]
            },
            "functionSelector": "a83e942c",
            "id": 14842,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "arguments": [
                      {
                        "id": 14825,
                        "name": "_radHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14818,
                        "src": "16862:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "expression": {
                          "id": 14822,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "16840:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 14823,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "16847:9:35",
                        "memberName": "RadonHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37153,
                        "src": "16840:16:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "type(Witnet.RadonHash)"
                        }
                      },
                      "id": 14824,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "16857:4:35",
                      "memberName": "wrap",
                      "nodeType": "MemberAccess",
                      "src": "16840:21:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32) pure returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14826,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "16840:31:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14827,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14821,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "16821:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "16821:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "16821:51:35"
              }
            ],
            "name": "lookupRadonRequestSources",
            "nameLocation": "16734:25:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14820,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "16788:8:35"
            },
            "parameters": {
              "id": 14819,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14818,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "16768:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14842,
                  "src": "16760:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14817,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "16760:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16759:18:35"
            },
            "returnParameters": {
              "id": 14831,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14830,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14842,
                  "src": "16891:16:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14828,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "16891:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14829,
                    "nodeType": "ArrayTypeName",
                    "src": "16891:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16890:18:35"
            },
            "scope": 15238,
            "src": "16725:269:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              28837
            ],
            "body": {
              "id": 14867,
              "nodeType": "Block",
              "src": "17183:87:35",
              "statements": [
                {
                  "expression": {
                    "expression": {
                      "expression": {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "id": 14861,
                                "name": "_radHash",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14844,
                                "src": "17234:8:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              ],
                              "expression": {
                                "expression": {
                                  "id": 14858,
                                  "name": "Witnet",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 40741,
                                  "src": "17212:6:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                    "typeString": "type(library Witnet)"
                                  }
                                },
                                "id": 14859,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "17219:9:35",
                                "memberName": "RadonHash",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37153,
                                "src": "17212:16:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                                  "typeString": "type(Witnet.RadonHash)"
                                }
                              },
                              "id": 14860,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "17229:4:35",
                              "memberName": "wrap",
                              "nodeType": "MemberAccess",
                              "src": "17212:21:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                                "typeString": "function (bytes32) pure returns (Witnet.RadonHash)"
                              }
                            },
                            "id": 14862,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "17212:31:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          ],
                          "id": 14857,
                          "name": "__requests",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20252,
                          "src": "17201:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                            "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                          }
                        },
                        "id": 14863,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "17201:43:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                          "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                        }
                      },
                      "id": 14864,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "17245:10:35",
                      "memberName": "retrievals",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20152,
                      "src": "17201:54:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
                        "typeString": "bytes32[] storage ref"
                      }
                    },
                    "id": 14865,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "17256:6:35",
                    "memberName": "length",
                    "nodeType": "MemberAccess",
                    "src": "17201:61:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 14856,
                  "id": 14866,
                  "nodeType": "Return",
                  "src": "17194:68:35"
                }
              ]
            },
            "functionSelector": "6ea3ebe4",
            "id": 14868,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "arguments": [
                      {
                        "id": 14851,
                        "name": "_radHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14844,
                        "src": "17143:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "expression": {
                          "id": 14848,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "17121:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 14849,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "17128:9:35",
                        "memberName": "RadonHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37153,
                        "src": "17121:16:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "type(Witnet.RadonHash)"
                        }
                      },
                      "id": 14850,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "17138:4:35",
                      "memberName": "wrap",
                      "nodeType": "MemberAccess",
                      "src": "17121:21:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (bytes32) pure returns (Witnet.RadonHash)"
                      }
                    },
                    "id": 14852,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "17121:31:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14853,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14847,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "17102:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "17102:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "17102:51:35"
              }
            ],
            "name": "lookupRadonRequestSourcesCount",
            "nameLocation": "17011:30:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14846,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "17069:8:35"
            },
            "parameters": {
              "id": 14845,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14844,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "17050:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14868,
                  "src": "17042:16:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14843,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "17042:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17041:18:35"
            },
            "returnParameters": {
              "id": 14856,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14855,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14868,
                  "src": "17172:4:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 14854,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "17172:4:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17171:6:35"
            },
            "scope": 15238,
            "src": "17002:268:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "baseFunctions": [
              28864
            ],
            "body": {
              "id": 14898,
              "nodeType": "Block",
              "src": "17590:214:35",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 14891,
                            "name": "_retrieveHashes",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14871,
                            "src": "17667:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                              "typeString": "bytes32[] calldata"
                            }
                          },
                          {
                            "id": 14892,
                            "name": "_retrieveArgsValues",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14881,
                            "src": "17697:19:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                              "typeString": "string calldata[] calldata[] calldata"
                            }
                          },
                          {
                            "id": 14893,
                            "name": "_aggregateReducerHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14873,
                            "src": "17731:21:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          {
                            "id": 14894,
                            "name": "_tallyReducerHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14875,
                            "src": "17767:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                              "typeString": "bytes32[] calldata"
                            },
                            {
                              "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                              "typeString": "string calldata[] calldata[] calldata"
                            },
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            },
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          ],
                          "id": 14890,
                          "name": "__verifyRadonRequest",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 15203,
                          "src": "17632:20:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_bytes32_$dyn_calldata_ptr_$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$_t_bytes32_$_t_bytes32_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                            "typeString": "function (bytes32[] calldata,string memory[] memory[] memory,bytes32,bytes32) returns (Witnet.RadonHash)"
                          }
                        },
                        "id": 14895,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "17632:163:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      ],
                      "expression": {
                        "expression": {
                          "id": 14887,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "17608:6:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 14888,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "17615:9:35",
                        "memberName": "RadonHash",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37153,
                        "src": "17608:16:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "type(Witnet.RadonHash)"
                        }
                      },
                      "id": 14889,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "17625:6:35",
                      "memberName": "unwrap",
                      "nodeType": "MemberAccess",
                      "src": "17608:23:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_unwrap_pure$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_bytes32_$",
                        "typeString": "function (Witnet.RadonHash) pure returns (bytes32)"
                      }
                    },
                    "id": 14896,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "17608:188:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "functionReturnParameters": 14886,
                  "id": 14897,
                  "nodeType": "Return",
                  "src": "17601:195:35"
                }
              ]
            },
            "functionSelector": "a4a7cecd",
            "id": 14899,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonRequest",
            "nameLocation": "17287:18:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14883,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "17542:8:35"
            },
            "parameters": {
              "id": 14882,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14871,
                  "mutability": "mutable",
                  "name": "_retrieveHashes",
                  "nameLocation": "17339:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14899,
                  "src": "17320:34:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14869,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "17320:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14870,
                    "nodeType": "ArrayTypeName",
                    "src": "17320:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14873,
                  "mutability": "mutable",
                  "name": "_aggregateReducerHash",
                  "nameLocation": "17377:21:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14899,
                  "src": "17369:29:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14872,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "17369:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14875,
                  "mutability": "mutable",
                  "name": "_tallyReducerHash",
                  "nameLocation": "17421:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14899,
                  "src": "17413:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14874,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "17413:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14877,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14899,
                  "src": "17453:6:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 14876,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "17453:6:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14881,
                  "mutability": "mutable",
                  "name": "_retrieveArgsValues",
                  "nameLocation": "17494:19:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14899,
                  "src": "17474:39:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 14878,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "17474:6:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 14879,
                      "nodeType": "ArrayTypeName",
                      "src": "17474:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                        "typeString": "string[]"
                      }
                    },
                    "id": 14880,
                    "nodeType": "ArrayTypeName",
                    "src": "17474:10:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                      "typeString": "string[][]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17305:219:35"
            },
            "returnParameters": {
              "id": 14886,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14885,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14899,
                  "src": "17576:7:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14884,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "17576:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17575:9:35"
            },
            "scope": 15238,
            "src": "17278:526:35",
            "stateMutability": "nonpayable",
            "virtual": true,
            "visibility": "public"
          },
          {
            "baseFunctions": [
              28846
            ],
            "body": {
              "id": 14943,
              "nodeType": "Block",
              "src": "17991:281:35",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    },
                    "id": 14920,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "arguments": [
                          {
                            "id": 14913,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14902,
                            "src": "18017:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          ],
                          "id": 14912,
                          "name": "__requests",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20252,
                          "src": "18006:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                            "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                          }
                        },
                        "id": 14914,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "18006:20:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                          "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                        }
                      },
                      "id": 14915,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "18027:15:35",
                      "memberName": "legacyTallyHash",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 20154,
                      "src": "18006:36:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "!=",
                    "rightExpression": {
                      "arguments": [
                        {
                          "hexValue": "30",
                          "id": 14918,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "18054:1:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          }
                        ],
                        "id": 14917,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "ElementaryTypeNameExpression",
                        "src": "18046:7:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_bytes32_$",
                          "typeString": "type(bytes32)"
                        },
                        "typeName": {
                          "id": 14916,
                          "name": "bytes32",
                          "nodeType": "ElementaryTypeName",
                          "src": "18046:7:35",
                          "typeDescriptions": {}
                        }
                      },
                      "id": 14919,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "typeConversion",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "18046:10:35",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "18006:50:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 14941,
                    "nodeType": "Block",
                    "src": "18154:111:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "commonType": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  },
                                  "id": 14937,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "expression": {
                                      "arguments": [
                                        {
                                          "id": 14933,
                                          "name": "_radHash",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 14902,
                                          "src": "18214:8:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                            "typeString": "Witnet.RadonHash"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                            "typeString": "Witnet.RadonHash"
                                          }
                                        ],
                                        "id": 14932,
                                        "name": "__requests",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20252,
                                        "src": "18203:10:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                                          "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                                        }
                                      },
                                      "id": 14934,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "18203:20:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                                        "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                                      }
                                    },
                                    "id": 14935,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "18224:20:35",
                                    "memberName": "aggregateTallyHashes",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 20142,
                                    "src": "18203:41:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "<<",
                                  "rightExpression": {
                                    "hexValue": "313238",
                                    "id": 14936,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "18248:3:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_128_by_1",
                                      "typeString": "int_const 128"
                                    },
                                    "value": "128"
                                  },
                                  "src": "18203:48:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                ],
                                "id": 14931,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "18195:7:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_bytes16_$",
                                  "typeString": "type(bytes16)"
                                },
                                "typeName": {
                                  "id": 14930,
                                  "name": "bytes16",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "18195:7:35",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 14938,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "18195:57:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes16",
                                "typeString": "bytes16"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes16",
                                "typeString": "bytes16"
                              }
                            ],
                            "id": 14929,
                            "name": "lookupRadonReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14010,
                            "src": "18176:18:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                              "typeString": "function (bytes32) view returns (struct Witnet.RadonReducer memory)"
                            }
                          },
                          "id": 14939,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "18176:77:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                            "typeString": "struct Witnet.RadonReducer memory"
                          }
                        },
                        "functionReturnParameters": 14911,
                        "id": 14940,
                        "nodeType": "Return",
                        "src": "18169:84:35"
                      }
                    ]
                  },
                  "id": 14942,
                  "nodeType": "IfStatement",
                  "src": "18002:263:35",
                  "trueBody": {
                    "id": 14928,
                    "nodeType": "Block",
                    "src": "18058:90:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "id": 14923,
                                    "name": "_radHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14902,
                                    "src": "18110:8:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                      "typeString": "Witnet.RadonHash"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                      "typeString": "Witnet.RadonHash"
                                    }
                                  ],
                                  "id": 14922,
                                  "name": "__requests",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20252,
                                  "src": "18099:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr_$",
                                    "typeString": "function (Witnet.RadonHash) view returns (struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer)"
                                  }
                                },
                                "id": 14924,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "18099:20:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRequestLegacyPacked_$20155_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.RadonRequestLegacyPacked storage pointer"
                                }
                              },
                              "id": 14925,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "18120:15:35",
                              "memberName": "legacyTallyHash",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20154,
                              "src": "18099:36:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "id": 14921,
                            "name": "lookupRadonReducer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14010,
                            "src": "18080:18:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                              "typeString": "function (bytes32) view returns (struct Witnet.RadonReducer memory)"
                            }
                          },
                          "id": 14926,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "18080:56:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                            "typeString": "struct Witnet.RadonReducer memory"
                          }
                        },
                        "functionReturnParameters": 14911,
                        "id": 14927,
                        "nodeType": "Return",
                        "src": "18073:63:35"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "db4c6b21",
            "id": 14944,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 14906,
                    "name": "_radHash",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 14902,
                    "src": "17930:8:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  }
                ],
                "id": 14907,
                "kind": "modifierInvocation",
                "modifierName": {
                  "id": 14905,
                  "name": "radonRequestExists",
                  "nameLocations": [
                    "17911:18:35"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 13787,
                  "src": "17911:18:35"
                },
                "nodeType": "ModifierInvocation",
                "src": "17911:28:35"
              }
            ],
            "name": "lookupRadonRequestTally",
            "nameLocation": "17821:23:35",
            "nodeType": "FunctionDefinition",
            "overrides": {
              "id": 14904,
              "nodeType": "OverrideSpecifier",
              "overrides": [],
              "src": "17881:8:35"
            },
            "parameters": {
              "id": 14903,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14902,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "17862:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 14944,
                  "src": "17845:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14901,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14900,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "17845:6:35",
                        "17852:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "17845:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "17845:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17844:27:35"
            },
            "returnParameters": {
              "id": 14911,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14910,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 14944,
                  "src": "17958:26:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 14909,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14908,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "17958:6:35",
                        "17965:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "17958:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "17958:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17957:28:35"
            },
            "scope": 15238,
            "src": "17812:460:35",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 15202,
              "nodeType": "Block",
              "src": "18832:3284:35",
              "statements": [
                {
                  "assignments": [
                    14962
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 14962,
                      "mutability": "mutable",
                      "name": "hash",
                      "nameLocation": "18886:4:35",
                      "nodeType": "VariableDeclaration",
                      "scope": 15202,
                      "src": "18878:12:35",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      },
                      "typeName": {
                        "id": 14961,
                        "name": "bytes32",
                        "nodeType": "ElementaryTypeName",
                        "src": "18878:7:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 14972,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 14966,
                            "name": "_retrieveHashes",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14947,
                            "src": "18928:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                              "typeString": "bytes32[] calldata"
                            }
                          },
                          {
                            "id": 14967,
                            "name": "_retrieveArgsValues",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14951,
                            "src": "18958:19:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                              "typeString": "string memory[] memory[] memory"
                            }
                          },
                          {
                            "id": 14968,
                            "name": "_aggregateReducerHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14953,
                            "src": "18992:21:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          {
                            "id": 14969,
                            "name": "_tallyReducerHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14955,
                            "src": "19029:17:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                              "typeString": "bytes32[] calldata"
                            },
                            {
                              "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                              "typeString": "string memory[] memory[] memory"
                            },
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            },
                            {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          ],
                          "expression": {
                            "id": 14964,
                            "name": "abi",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 4294967295,
                            "src": "18903:3:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_abi",
                              "typeString": "abi"
                            }
                          },
                          "id": 14965,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "18907:6:35",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "src": "18903:10:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function () pure returns (bytes memory)"
                          }
                        },
                        "id": 14970,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "18903:154:35",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "id": 14963,
                      "name": "keccak256",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 4294967288,
                      "src": "18893:9:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
                        "typeString": "function (bytes memory) pure returns (bytes32)"
                      }
                    },
                    "id": 14971,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "18893:165:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "18878:180:35"
                },
                {
                  "expression": {
                    "id": 14979,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 14973,
                      "name": "_radHash",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 14959,
                      "src": "19151:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                        "typeString": "Witnet.RadonHash"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "baseExpression": {
                        "expression": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "id": 14974,
                            "name": "__database",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20236,
                            "src": "19162:10:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                              "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                            }
                          },
                          "id": 14975,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "19162:12:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                            "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                          }
                        },
                        "id": 14976,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "19175:4:35",
                        "memberName": "rads",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 20190,
                        "src": "19162:17:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_bytes32_$_t_userDefinedValueType$_RadonHash_$37153_$",
                          "typeString": "mapping(bytes32 => Witnet.RadonHash)"
                        }
                      },
                      "id": 14978,
                      "indexExpression": {
                        "id": 14977,
                        "name": "hash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 14962,
                        "src": "19180:4:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "19162:23:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                        "typeString": "Witnet.RadonHash"
                      }
                    },
                    "src": "19151:34:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "id": 14980,
                  "nodeType": "ExpressionStatement",
                  "src": "19151:34:35"
                },
                {
                  "condition": {
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "baseExpression": {
                          "expression": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "id": 14981,
                              "name": "__database",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20236,
                              "src": "19200:10:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                              }
                            },
                            "id": 14982,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "19200:12:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                              "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                            }
                          },
                          "id": 14983,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "19213:4:35",
                          "memberName": "rads",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 20190,
                          "src": "19200:17:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_userDefinedValueType$_RadonHash_$37153_$",
                            "typeString": "mapping(bytes32 => Witnet.RadonHash)"
                          }
                        },
                        "id": 14985,
                        "indexExpression": {
                          "id": 14984,
                          "name": "hash",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 14962,
                          "src": "19218:4:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "19200:23:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                          "typeString": "Witnet.RadonHash"
                        }
                      },
                      "id": 14986,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "19224:6:35",
                      "memberName": "isZero",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 38881,
                      "src": "19200:30:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_userDefinedValueType$_RadonHash_$37153_$returns$_t_bool_$attached_to$_t_userDefinedValueType$_RadonHash_$37153_$",
                        "typeString": "function (Witnet.RadonHash) pure returns (bool)"
                      }
                    },
                    "id": 14987,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "19200:32:35",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 15201,
                  "nodeType": "IfStatement",
                  "src": "19196:2913:35",
                  "trueBody": {
                    "id": 15200,
                    "nodeType": "Block",
                    "src": "19234:2875:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "commonType": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "id": 14997,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 14992,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "expression": {
                                    "id": 14989,
                                    "name": "_retrieveHashes",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14947,
                                    "src": "19346:15:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                      "typeString": "bytes32[] calldata"
                                    }
                                  },
                                  "id": 14990,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "19362:6:35",
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "src": "19346:22:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": ">",
                                "rightExpression": {
                                  "hexValue": "30",
                                  "id": 14991,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "19371:1:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "src": "19346:26:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "&&",
                              "rightExpression": {
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 14996,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "expression": {
                                    "id": 14993,
                                    "name": "_retrieveHashes",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14947,
                                    "src": "19376:15:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                      "typeString": "bytes32[] calldata"
                                    }
                                  },
                                  "id": 14994,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "19392:6:35",
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "src": "19376:22:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "<",
                                "rightExpression": {
                                  "hexValue": "323536",
                                  "id": 14995,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "19401:3:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_256_by_1",
                                    "typeString": "int_const 256"
                                  },
                                  "value": "256"
                                },
                                "src": "19376:28:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "src": "19346:58:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "hexValue": "6e6f2072657472696576616c73",
                              "id": 14998,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "19423:15:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_eddd8a46c74b5a9b6ea5407dea15eaec2d926b76c3dad31092818e98cb4c22be",
                                "typeString": "literal_string \"no retrievals\""
                              },
                              "value": "no retrievals"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_eddd8a46c74b5a9b6ea5407dea15eaec2d926b76c3dad31092818e98cb4c22be",
                                "typeString": "literal_string \"no retrievals\""
                              }
                            ],
                            "id": 14988,
                            "name": "_require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26494,
                            "src": "19319:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) view"
                            }
                          },
                          "id": 14999,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "19319:134:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 15000,
                        "nodeType": "ExpressionStatement",
                        "src": "19319:134:35"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 15006,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 15002,
                                  "name": "_retrieveHashes",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 14947,
                                  "src": "19589:15:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                    "typeString": "bytes32[] calldata"
                                  }
                                },
                                "id": 15003,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "19605:6:35",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "19589:22:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "==",
                              "rightExpression": {
                                "expression": {
                                  "id": 15004,
                                  "name": "_retrieveArgsValues",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 14951,
                                  "src": "19615:19:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                                    "typeString": "string memory[] memory[] memory"
                                  }
                                },
                                "id": 15005,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "19635:6:35",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "19615:26:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "src": "19589:52:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "hexValue": "61726773206d69736d61746368",
                              "id": 15007,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "19660:15:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_ab30df2ff1381f1ed21be2f711f58e4cf7a6953593175c0e6be814ca5c4cf057",
                                "typeString": "literal_string \"args mismatch\""
                              },
                              "value": "args mismatch"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_ab30df2ff1381f1ed21be2f711f58e4cf7a6953593175c0e6be814ca5c4cf057",
                                "typeString": "literal_string \"args mismatch\""
                              }
                            ],
                            "id": 15001,
                            "name": "_require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26494,
                            "src": "19562:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) view"
                            }
                          },
                          "id": 15008,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "19562:128:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 15009,
                        "nodeType": "ExpressionStatement",
                        "src": "19562:128:35"
                      },
                      {
                        "assignments": [
                          15014
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 15014,
                            "mutability": "mutable",
                            "name": "_resultDataType",
                            "nameLocation": "19806:15:35",
                            "nodeType": "VariableDeclaration",
                            "scope": 15200,
                            "src": "19784:37:35",
                            "stateVariable": false,
                            "storageLocation": "default",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            },
                            "typeName": {
                              "id": 15013,
                              "nodeType": "UserDefinedTypeName",
                              "pathNode": {
                                "id": 15012,
                                "name": "Witnet.RadonDataTypes",
                                "nameLocations": [
                                  "19784:6:35",
                                  "19791:14:35"
                                ],
                                "nodeType": "IdentifierPath",
                                "referencedDeclaration": 37720,
                                "src": "19784:21:35"
                              },
                              "referencedDeclaration": 37720,
                              "src": "19784:21:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                "typeString": "enum Witnet.RadonDataTypes"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 15015,
                        "nodeType": "VariableDeclarationStatement",
                        "src": "19784:37:35"
                      },
                      {
                        "assignments": [
                          15021
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 15021,
                            "mutability": "mutable",
                            "name": "_retrievals",
                            "nameLocation": "19867:11:35",
                            "nodeType": "VariableDeclaration",
                            "scope": 15200,
                            "src": "19836:42:35",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval[]"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 15019,
                                "nodeType": "UserDefinedTypeName",
                                "pathNode": {
                                  "id": 15018,
                                  "name": "Witnet.RadonRetrieval",
                                  "nameLocations": [
                                    "19836:6:35",
                                    "19843:14:35"
                                  ],
                                  "nodeType": "IdentifierPath",
                                  "referencedDeclaration": 37795,
                                  "src": "19836:21:35"
                                },
                                "referencedDeclaration": 37795,
                                "src": "19836:21:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval"
                                }
                              },
                              "id": 15020,
                              "nodeType": "ArrayTypeName",
                              "src": "19836:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                                "typeString": "struct Witnet.RadonRetrieval[]"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 15029,
                        "initialValue": {
                          "arguments": [
                            {
                              "expression": {
                                "id": 15026,
                                "name": "_retrieveHashes",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 14947,
                                "src": "19909:15:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                  "typeString": "bytes32[] calldata"
                                }
                              },
                              "id": 15027,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "19925:6:35",
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "src": "19909:22:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "id": 15025,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "NewExpression",
                            "src": "19881:27:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$",
                              "typeString": "function (uint256) pure returns (struct Witnet.RadonRetrieval memory[] memory)"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 15023,
                                "nodeType": "UserDefinedTypeName",
                                "pathNode": {
                                  "id": 15022,
                                  "name": "Witnet.RadonRetrieval",
                                  "nameLocations": [
                                    "19885:6:35",
                                    "19892:14:35"
                                  ],
                                  "nodeType": "IdentifierPath",
                                  "referencedDeclaration": 37795,
                                  "src": "19885:21:35"
                                },
                                "referencedDeclaration": 37795,
                                "src": "19885:21:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval"
                                }
                              },
                              "id": 15024,
                              "nodeType": "ArrayTypeName",
                              "src": "19885:23:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                                "typeString": "struct Witnet.RadonRetrieval[]"
                              }
                            }
                          },
                          "id": 15028,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "19881:51:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "19836:96:35"
                      },
                      {
                        "body": {
                          "id": 15119,
                          "nodeType": "Block",
                          "src": "20004:962:35",
                          "statements": [
                            {
                              "expression": {
                                "id": 15051,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "baseExpression": {
                                    "id": 15041,
                                    "name": "_retrievals",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15021,
                                    "src": "20023:11:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                    }
                                  },
                                  "id": 15043,
                                  "indexExpression": {
                                    "id": 15042,
                                    "name": "_ix",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15031,
                                    "src": "20035:3:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "20023:16:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "baseExpression": {
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "id": 15044,
                                        "name": "__database",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20236,
                                        "src": "20042:10:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                          "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                        }
                                      },
                                      "id": 15045,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "20042:12:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                        "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                      }
                                    },
                                    "id": 15046,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "20055:10:35",
                                    "memberName": "retrievals",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 20179,
                                    "src": "20042:23:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonRetrieval_$37795_storage_$",
                                      "typeString": "mapping(bytes32 => struct Witnet.RadonRetrieval storage ref)"
                                    }
                                  },
                                  "id": 15050,
                                  "indexExpression": {
                                    "baseExpression": {
                                      "id": 15047,
                                      "name": "_retrieveHashes",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14947,
                                      "src": "20066:15:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                        "typeString": "bytes32[] calldata"
                                      }
                                    },
                                    "id": 15049,
                                    "indexExpression": {
                                      "id": 15048,
                                      "name": "_ix",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 15031,
                                      "src": "20082:3:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "20066:20:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "20042:45:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage",
                                    "typeString": "struct Witnet.RadonRetrieval storage ref"
                                  }
                                },
                                "src": "20023:64:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                }
                              },
                              "id": 15052,
                              "nodeType": "ExpressionStatement",
                              "src": "20023:64:35"
                            },
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "commonType": {
                                      "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                      "typeString": "enum Witnet.RadonRetrievalMethods"
                                    },
                                    "id": 15061,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "expression": {
                                        "baseExpression": {
                                          "id": 15054,
                                          "name": "_retrievals",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15021,
                                          "src": "20137:11:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                          }
                                        },
                                        "id": 15056,
                                        "indexExpression": {
                                          "id": 15055,
                                          "name": "_ix",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15031,
                                          "src": "20149:3:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "20137:16:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                        }
                                      },
                                      "id": 15057,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "20154:6:35",
                                      "memberName": "method",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37780,
                                      "src": "20137:23:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                        "typeString": "enum Witnet.RadonRetrievalMethods"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "!=",
                                    "rightExpression": {
                                      "expression": {
                                        "expression": {
                                          "id": 15058,
                                          "name": "Witnet",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 40741,
                                          "src": "20164:6:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                            "typeString": "type(library Witnet)"
                                          }
                                        },
                                        "id": 15059,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "20171:21:35",
                                        "memberName": "RadonRetrievalMethods",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 37802,
                                        "src": "20164:28:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                                          "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                                        }
                                      },
                                      "id": 15060,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "memberLocation": "20193:7:35",
                                      "memberName": "Unknown",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37797,
                                      "src": "20164:36:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                        "typeString": "enum Witnet.RadonRetrievalMethods"
                                      }
                                    },
                                    "src": "20137:63:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  {
                                    "hexValue": "756e6b6e6f776e2072657472696576616c",
                                    "id": 15062,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "string",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "20223:19:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_stringliteral_f262459cadbef7996454aed1f6729e9144717904620144b94e33e6dee5636415",
                                      "typeString": "literal_string \"unknown retrieval\""
                                    },
                                    "value": "unknown retrieval"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    {
                                      "typeIdentifier": "t_stringliteral_f262459cadbef7996454aed1f6729e9144717904620144b94e33e6dee5636415",
                                      "typeString": "literal_string \"unknown retrieval\""
                                    }
                                  ],
                                  "id": 15053,
                                  "name": "_require",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 26494,
                                  "src": "20106:8:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                    "typeString": "function (bool,string memory) view"
                                  }
                                },
                                "id": 15063,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "20106:155:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$__$",
                                  "typeString": "tuple()"
                                }
                              },
                              "id": 15064,
                              "nodeType": "ExpressionStatement",
                              "src": "20106:155:35"
                            },
                            {
                              "condition": {
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 15067,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "id": 15065,
                                  "name": "_ix",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15031,
                                  "src": "20351:3:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "==",
                                "rightExpression": {
                                  "hexValue": "30",
                                  "id": 15066,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "20358:1:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "src": "20351:8:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": {
                                "condition": {
                                  "commonType": {
                                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                    "typeString": "enum Witnet.RadonDataTypes"
                                  },
                                  "id": 15081,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "id": 15076,
                                    "name": "_resultDataType",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 15014,
                                    "src": "20455:15:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                      "typeString": "enum Witnet.RadonDataTypes"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "!=",
                                  "rightExpression": {
                                    "expression": {
                                      "baseExpression": {
                                        "id": 15077,
                                        "name": "_retrievals",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15021,
                                        "src": "20474:11:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                        }
                                      },
                                      "id": 15079,
                                      "indexExpression": {
                                        "id": 15078,
                                        "name": "_ix",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15031,
                                        "src": "20486:3:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "20474:16:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 15080,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "20491:8:35",
                                    "memberName": "dataType",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37783,
                                    "src": "20474:25:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                      "typeString": "enum Witnet.RadonDataTypes"
                                    }
                                  },
                                  "src": "20455:44:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "id": 15087,
                                "nodeType": "IfStatement",
                                "src": "20451:126:35",
                                "trueBody": {
                                  "id": 15086,
                                  "nodeType": "Block",
                                  "src": "20501:76:35",
                                  "statements": [
                                    {
                                      "expression": {
                                        "arguments": [
                                          {
                                            "hexValue": "6d69736d61746368696e672072657472696576616c73",
                                            "id": 15083,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "string",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "20532:24:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_stringliteral_47c3d4030ce04d7c3f658946544d0df95b6e55cdb150bf12dc0c83dbbb55aa98",
                                              "typeString": "literal_string \"mismatching retrievals\""
                                            },
                                            "value": "mismatching retrievals"
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_stringliteral_47c3d4030ce04d7c3f658946544d0df95b6e55cdb150bf12dc0c83dbbb55aa98",
                                              "typeString": "literal_string \"mismatching retrievals\""
                                            }
                                          ],
                                          "id": 15082,
                                          "name": "_revert",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 26513,
                                          "src": "20524:7:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$__$",
                                            "typeString": "function (string memory) view"
                                          }
                                        },
                                        "id": 15084,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "20524:33:35",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_tuple$__$",
                                          "typeString": "tuple()"
                                        }
                                      },
                                      "id": 15085,
                                      "nodeType": "ExpressionStatement",
                                      "src": "20524:33:35"
                                    }
                                  ]
                                }
                              },
                              "id": 15088,
                              "nodeType": "IfStatement",
                              "src": "20347:230:35",
                              "trueBody": {
                                "id": 15075,
                                "nodeType": "Block",
                                "src": "20361:84:35",
                                "statements": [
                                  {
                                    "expression": {
                                      "id": 15073,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "id": 15068,
                                        "name": "_resultDataType",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 15014,
                                        "src": "20384:15:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                          "typeString": "enum Witnet.RadonDataTypes"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "expression": {
                                          "baseExpression": {
                                            "id": 15069,
                                            "name": "_retrievals",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 15021,
                                            "src": "20402:11:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                              "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                            }
                                          },
                                          "id": 15071,
                                          "indexExpression": {
                                            "hexValue": "30",
                                            "id": 15070,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "20414:1:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_0_by_1",
                                              "typeString": "int_const 0"
                                            },
                                            "value": "0"
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "20402:14:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                            "typeString": "struct Witnet.RadonRetrieval memory"
                                          }
                                        },
                                        "id": 15072,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "20417:8:35",
                                        "memberName": "dataType",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 37783,
                                        "src": "20402:23:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                          "typeString": "enum Witnet.RadonDataTypes"
                                        }
                                      },
                                      "src": "20384:41:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                        "typeString": "enum Witnet.RadonDataTypes"
                                      }
                                    },
                                    "id": 15074,
                                    "nodeType": "ExpressionStatement",
                                    "src": "20384:41:35"
                                  }
                                ]
                              }
                            },
                            {
                              "condition": {
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 15100,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "expression": {
                                    "baseExpression": {
                                      "id": 15089,
                                      "name": "_retrieveArgsValues",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14951,
                                      "src": "20666:19:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                                        "typeString": "string memory[] memory[] memory"
                                      }
                                    },
                                    "id": 15091,
                                    "indexExpression": {
                                      "id": 15090,
                                      "name": "_ix",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 15031,
                                      "src": "20686:3:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "20666:24:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[] memory"
                                    }
                                  },
                                  "id": 15092,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "20691:6:35",
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "src": "20666:31:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "!=",
                                "rightExpression": {
                                  "arguments": [
                                    {
                                      "expression": {
                                        "baseExpression": {
                                          "id": 15095,
                                          "name": "_retrievals",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15021,
                                          "src": "20706:11:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                          }
                                        },
                                        "id": 15097,
                                        "indexExpression": {
                                          "id": 15096,
                                          "name": "_ix",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 15031,
                                          "src": "20718:3:35",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "20706:16:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                        }
                                      },
                                      "id": 15098,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "20723:9:35",
                                      "memberName": "argsCount",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37777,
                                      "src": "20706:26:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    ],
                                    "id": 15094,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "nodeType": "ElementaryTypeNameExpression",
                                    "src": "20701:4:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_uint256_$",
                                      "typeString": "type(uint256)"
                                    },
                                    "typeName": {
                                      "id": 15093,
                                      "name": "uint",
                                      "nodeType": "ElementaryTypeName",
                                      "src": "20701:4:35",
                                      "typeDescriptions": {}
                                    }
                                  },
                                  "id": 15099,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "typeConversion",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "20701:32:35",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "20666:67:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "id": 15118,
                              "nodeType": "IfStatement",
                              "src": "20662:289:35",
                              "trueBody": {
                                "id": 15117,
                                "nodeType": "Block",
                                "src": "20735:216:35",
                                "statements": [
                                  {
                                    "expression": {
                                      "arguments": [
                                        {
                                          "arguments": [
                                            {
                                              "arguments": [
                                                {
                                                  "hexValue": "6d69736d61746368696e67206172677320636f756e74206f6e2072657472696576616c2023",
                                                  "id": 15106,
                                                  "isConstant": false,
                                                  "isLValue": false,
                                                  "isPure": true,
                                                  "kind": "string",
                                                  "lValueRequested": false,
                                                  "nodeType": "Literal",
                                                  "src": "20816:39:35",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_stringliteral_01adace028712a0511126e57b99ee1855d200ee5c4fa1c590249fd2cd2055887",
                                                    "typeString": "literal_string \"mismatching args count on retrieval #\""
                                                  },
                                                  "value": "mismatching args count on retrieval #"
                                                },
                                                {
                                                  "arguments": [
                                                    {
                                                      "commonType": {
                                                        "typeIdentifier": "t_uint256",
                                                        "typeString": "uint256"
                                                      },
                                                      "id": 15111,
                                                      "isConstant": false,
                                                      "isLValue": false,
                                                      "isPure": false,
                                                      "lValueRequested": false,
                                                      "leftExpression": {
                                                        "id": 15109,
                                                        "name": "_ix",
                                                        "nodeType": "Identifier",
                                                        "overloadedDeclarations": [],
                                                        "referencedDeclaration": 15031,
                                                        "src": "20898:3:35",
                                                        "typeDescriptions": {
                                                          "typeIdentifier": "t_uint256",
                                                          "typeString": "uint256"
                                                        }
                                                      },
                                                      "nodeType": "BinaryOperation",
                                                      "operator": "+",
                                                      "rightExpression": {
                                                        "hexValue": "31",
                                                        "id": 15110,
                                                        "isConstant": false,
                                                        "isLValue": false,
                                                        "isPure": true,
                                                        "kind": "number",
                                                        "lValueRequested": false,
                                                        "nodeType": "Literal",
                                                        "src": "20904:1:35",
                                                        "typeDescriptions": {
                                                          "typeIdentifier": "t_rational_1_by_1",
                                                          "typeString": "int_const 1"
                                                        },
                                                        "value": "1"
                                                      },
                                                      "src": "20898:7:35",
                                                      "typeDescriptions": {
                                                        "typeIdentifier": "t_uint256",
                                                        "typeString": "uint256"
                                                      }
                                                    }
                                                  ],
                                                  "expression": {
                                                    "argumentTypes": [
                                                      {
                                                        "typeIdentifier": "t_uint256",
                                                        "typeString": "uint256"
                                                      }
                                                    ],
                                                    "expression": {
                                                      "id": 15107,
                                                      "name": "Witnet",
                                                      "nodeType": "Identifier",
                                                      "overloadedDeclarations": [],
                                                      "referencedDeclaration": 40741,
                                                      "src": "20882:6:35",
                                                      "typeDescriptions": {
                                                        "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                                        "typeString": "type(library Witnet)"
                                                      }
                                                    },
                                                    "id": 15108,
                                                    "isConstant": false,
                                                    "isLValue": false,
                                                    "isPure": false,
                                                    "lValueRequested": false,
                                                    "memberLocation": "20889:8:35",
                                                    "memberName": "toString",
                                                    "nodeType": "MemberAccess",
                                                    "referencedDeclaration": 40621,
                                                    "src": "20882:15:35",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_string_memory_ptr_$",
                                                      "typeString": "function (uint256) pure returns (string memory)"
                                                    }
                                                  },
                                                  "id": 15112,
                                                  "isConstant": false,
                                                  "isLValue": false,
                                                  "isPure": false,
                                                  "kind": "functionCall",
                                                  "lValueRequested": false,
                                                  "nameLocations": [],
                                                  "names": [],
                                                  "nodeType": "FunctionCall",
                                                  "src": "20882:24:35",
                                                  "tryCall": false,
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_string_memory_ptr",
                                                    "typeString": "string memory"
                                                  }
                                                }
                                              ],
                                              "expression": {
                                                "argumentTypes": [
                                                  {
                                                    "typeIdentifier": "t_stringliteral_01adace028712a0511126e57b99ee1855d200ee5c4fa1c590249fd2cd2055887",
                                                    "typeString": "literal_string \"mismatching args count on retrieval #\""
                                                  },
                                                  {
                                                    "typeIdentifier": "t_string_memory_ptr",
                                                    "typeString": "string memory"
                                                  }
                                                ],
                                                "expression": {
                                                  "id": 15104,
                                                  "name": "abi",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 4294967295,
                                                  "src": "20773:3:35",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_magic_abi",
                                                    "typeString": "abi"
                                                  }
                                                },
                                                "id": 15105,
                                                "isConstant": false,
                                                "isLValue": false,
                                                "isPure": true,
                                                "lValueRequested": false,
                                                "memberLocation": "20777:12:35",
                                                "memberName": "encodePacked",
                                                "nodeType": "MemberAccess",
                                                "src": "20773:16:35",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                                  "typeString": "function () pure returns (bytes memory)"
                                                }
                                              },
                                              "id": 15113,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "kind": "functionCall",
                                              "lValueRequested": false,
                                              "nameLocations": [],
                                              "names": [],
                                              "nodeType": "FunctionCall",
                                              "src": "20773:156:35",
                                              "tryCall": false,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_bytes_memory_ptr",
                                                "typeString": "bytes memory"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_bytes_memory_ptr",
                                                "typeString": "bytes memory"
                                              }
                                            ],
                                            "id": 15103,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "20766:6:35",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_string_storage_ptr_$",
                                              "typeString": "type(string storage pointer)"
                                            },
                                            "typeName": {
                                              "id": 15102,
                                              "name": "string",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "20766:6:35",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 15114,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "20766:164:35",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_string_memory_ptr",
                                            "typeString": "string memory"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_string_memory_ptr",
                                            "typeString": "string memory"
                                          }
                                        ],
                                        "id": 15101,
                                        "name": "_revert",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 26513,
                                        "src": "20758:7:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$__$",
                                          "typeString": "function (string memory) view"
                                        }
                                      },
                                      "id": 15115,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "20758:173:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_tuple$__$",
                                        "typeString": "tuple()"
                                      }
                                    },
                                    "id": 15116,
                                    "nodeType": "ExpressionStatement",
                                    "src": "20758:173:35"
                                  }
                                ]
                              }
                            }
                          ]
                        },
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 15037,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 15034,
                            "name": "_ix",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15031,
                            "src": "19966:3:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "<",
                          "rightExpression": {
                            "expression": {
                              "id": 15035,
                              "name": "_retrieveHashes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14947,
                              "src": "19972:15:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                "typeString": "bytes32[] calldata"
                              }
                            },
                            "id": 15036,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "19988:6:35",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "19972:22:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "19966:28:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 15120,
                        "initializationExpression": {
                          "assignments": [
                            15031
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 15031,
                              "mutability": "mutable",
                              "name": "_ix",
                              "nameLocation": "19957:3:35",
                              "nodeType": "VariableDeclaration",
                              "scope": 15120,
                              "src": "19952:8:35",
                              "stateVariable": false,
                              "storageLocation": "default",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "typeName": {
                                "id": 15030,
                                "name": "uint",
                                "nodeType": "ElementaryTypeName",
                                "src": "19952:4:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "visibility": "internal"
                            }
                          ],
                          "id": 15033,
                          "initialValue": {
                            "hexValue": "30",
                            "id": 15032,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "19963:1:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "19952:12:35"
                        },
                        "isSimpleCounterLoop": true,
                        "loopExpression": {
                          "expression": {
                            "id": 15039,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "++",
                            "prefix": false,
                            "src": "19996:6:35",
                            "subExpression": {
                              "id": 15038,
                              "name": "_ix",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15031,
                              "src": "19996:3:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 15040,
                          "nodeType": "ExpressionStatement",
                          "src": "19996:6:35"
                        },
                        "nodeType": "ForStatement",
                        "src": "19947:1019:35"
                      },
                      {
                        "assignments": [
                          15122
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 15122,
                            "mutability": "mutable",
                            "name": "_bytecode",
                            "nameLocation": "21055:9:35",
                            "nodeType": "VariableDeclaration",
                            "scope": 15200,
                            "src": "21042:22:35",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes"
                            },
                            "typeName": {
                              "id": 15121,
                              "name": "bytes",
                              "nodeType": "ElementaryTypeName",
                              "src": "21042:5:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_storage_ptr",
                                "typeString": "bytes"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 15142,
                        "initialValue": {
                          "arguments": [
                            {
                              "id": 15125,
                              "name": "_retrieveArgsValues",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14951,
                              "src": "21104:19:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[] memory[] memory"
                              }
                            },
                            {
                              "arguments": [],
                              "expression": {
                                "argumentTypes": [],
                                "expression": {
                                  "baseExpression": {
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "id": 15126,
                                        "name": "__database",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20236,
                                        "src": "21143:10:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                          "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                        }
                                      },
                                      "id": 15127,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "21143:12:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                        "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                      }
                                    },
                                    "id": 15128,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "21156:8:35",
                                    "memberName": "reducers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 20174,
                                    "src": "21143:21:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                                      "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                                    }
                                  },
                                  "id": 15130,
                                  "indexExpression": {
                                    "id": 15129,
                                    "name": "_aggregateReducerHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14953,
                                    "src": "21165:21:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "21143:44:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                                    "typeString": "struct Witnet.RadonReducer storage ref"
                                  }
                                },
                                "id": 15131,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "21188:6:35",
                                "memberName": "encode",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 35246,
                                "src": "21143:51:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                                  "typeString": "function (struct Witnet.RadonReducer memory) pure returns (bytes memory)"
                                }
                              },
                              "id": 15132,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "21143:53:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            {
                              "arguments": [],
                              "expression": {
                                "argumentTypes": [],
                                "expression": {
                                  "baseExpression": {
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "id": 15133,
                                        "name": "__database",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 20236,
                                        "src": "21215:10:35",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                          "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                        }
                                      },
                                      "id": 15134,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "21215:12:35",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                        "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                      }
                                    },
                                    "id": 15135,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "21228:8:35",
                                    "memberName": "reducers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 20174,
                                    "src": "21215:21:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_RadonReducer_$37748_storage_$",
                                      "typeString": "mapping(bytes32 => struct Witnet.RadonReducer storage ref)"
                                    }
                                  },
                                  "id": 15137,
                                  "indexExpression": {
                                    "id": 15136,
                                    "name": "_tallyReducerHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14955,
                                    "src": "21237:17:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "21215:40:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonReducer_$37748_storage",
                                    "typeString": "struct Witnet.RadonReducer storage ref"
                                  }
                                },
                                "id": 15138,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "21256:6:35",
                                "memberName": "encode",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 35246,
                                "src": "21215:47:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_function_delegatecall_pure$_t_struct$_RadonReducer_$37748_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_struct$_RadonReducer_$37748_memory_ptr_$",
                                  "typeString": "function (struct Witnet.RadonReducer memory) pure returns (bytes memory)"
                                }
                              },
                              "id": 15139,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "functionCall",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "21215:49:35",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            {
                              "hexValue": "30",
                              "id": 15140,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "21283:1:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[] memory[] memory"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              },
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "expression": {
                              "id": 15123,
                              "name": "_retrievals",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 15021,
                              "src": "21067:11:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                              }
                            },
                            "id": 15124,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "21079:6:35",
                            "memberName": "encode",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 35199,
                            "src": "21067:18:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_delegatecall_pure$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_uint16_$returns$_t_bytes_memory_ptr_$attached_to$_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr_$",
                              "typeString": "function (struct Witnet.RadonRetrieval memory[] memory,string memory[] memory[] memory,bytes memory,bytes memory,uint16) pure returns (bytes memory)"
                            }
                          },
                          "id": 15141,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "21067:232:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "21042:257:35"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 15147,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 15144,
                                  "name": "_bytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 15122,
                                  "src": "21341:9:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 15145,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "21351:6:35",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "21341:16:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "<=",
                              "rightExpression": {
                                "hexValue": "3635353335",
                                "id": 15146,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "21361:5:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_65535_by_1",
                                  "typeString": "int_const 65535"
                                },
                                "value": "65535"
                              },
                              "src": "21341:25:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "hexValue": "746f6f206269672072657175657374",
                              "id": 15148,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "21385:17:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_8c4a14296e4f5ed078e8feca9ed730e7c6485f0e90bd233cbd3ec5805b2a8d50",
                                "typeString": "literal_string \"too big request\""
                              },
                              "value": "too big request"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_8c4a14296e4f5ed078e8feca9ed730e7c6485f0e90bd233cbd3ec5805b2a8d50",
                                "typeString": "literal_string \"too big request\""
                              }
                            ],
                            "id": 15143,
                            "name": "_require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26494,
                            "src": "21314:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_view$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) view"
                            }
                          },
                          "id": 15149,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "21314:103:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 15150,
                        "nodeType": "ExpressionStatement",
                        "src": "21314:103:35"
                      },
                      {
                        "expression": {
                          "id": 15155,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 15151,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14959,
                            "src": "21530:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "id": 15153,
                                "name": "_bytecode",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15122,
                                "src": "21556:9:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "id": 15152,
                              "name": "_witOracleHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13824,
                              "src": "21541:14:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_userDefinedValueType$_RadonHash_$37153_$",
                                "typeString": "function (bytes memory) pure returns (Witnet.RadonHash)"
                              }
                            },
                            "id": 15154,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "21541:25:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "src": "21530:36:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        },
                        "id": 15156,
                        "nodeType": "ExpressionStatement",
                        "src": "21530:36:35"
                      },
                      {
                        "expression": {
                          "id": 15163,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 15157,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "21581:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 15158,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "21581:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 15159,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "21594:4:35",
                              "memberName": "rads",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20190,
                              "src": "21581:17:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_userDefinedValueType$_RadonHash_$37153_$",
                                "typeString": "mapping(bytes32 => Witnet.RadonHash)"
                              }
                            },
                            "id": 15161,
                            "indexExpression": {
                              "id": 15160,
                              "name": "hash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14962,
                              "src": "21599:4:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "21581:23:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "id": 15162,
                            "name": "_radHash",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 14959,
                            "src": "21607:8:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                              "typeString": "Witnet.RadonHash"
                            }
                          },
                          "src": "21581:34:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                            "typeString": "Witnet.RadonHash"
                          }
                        },
                        "id": 15164,
                        "nodeType": "ExpressionStatement",
                        "src": "21581:34:35"
                      },
                      {
                        "expression": {
                          "id": 15171,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 15165,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "21630:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 15166,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "21630:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 15167,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "21643:12:35",
                              "memberName": "radsBytecode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20195,
                              "src": "21630:25:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_bytes_storage_$",
                                "typeString": "mapping(Witnet.RadonHash => bytes storage ref)"
                              }
                            },
                            "id": 15169,
                            "indexExpression": {
                              "id": 15168,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14959,
                              "src": "21656:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "21630:35:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_storage",
                              "typeString": "bytes storage ref"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "id": 15170,
                            "name": "_bytecode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 15122,
                            "src": "21668:9:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "21630:47:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_storage",
                            "typeString": "bytes storage ref"
                          }
                        },
                        "id": 15172,
                        "nodeType": "ExpressionStatement",
                        "src": "21630:47:35"
                      },
                      {
                        "expression": {
                          "id": 15194,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "expression": {
                                "arguments": [],
                                "expression": {
                                  "argumentTypes": [],
                                  "id": 15173,
                                  "name": "__database",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20236,
                                  "src": "21692:10:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_view$__$returns$_t_struct$_Database_$20202_storage_ptr_$",
                                    "typeString": "function () view returns (struct WitOracleRadonRegistryData.Database storage pointer)"
                                  }
                                },
                                "id": 15174,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "21692:12:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Database_$20202_storage_ptr",
                                  "typeString": "struct WitOracleRadonRegistryData.Database storage pointer"
                                }
                              },
                              "id": 15175,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "21705:8:35",
                              "memberName": "radsInfo",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 20201,
                              "src": "21692:21:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_userDefinedValueType$_RadonHash_$37153_$_t_struct$_RadonRequestInfo_$20165_storage_$",
                                "typeString": "mapping(Witnet.RadonHash => struct WitOracleRadonRegistryData.RadonRequestInfo storage ref)"
                              }
                            },
                            "id": 15177,
                            "indexExpression": {
                              "id": 15176,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14959,
                              "src": "21714:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "21692:31:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                              "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "id": 15181,
                                    "name": "_tallyReducerHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14955,
                                    "src": "21797:17:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "id": 15180,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "21789:7:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes15_$",
                                    "typeString": "type(bytes15)"
                                  },
                                  "typeName": {
                                    "id": 15179,
                                    "name": "bytes15",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "21789:7:35",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 15182,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "21789:26:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "expression": {
                                      "id": 15185,
                                      "name": "_retrieveHashes",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 14947,
                                      "src": "21858:15:35",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                                        "typeString": "bytes32[] calldata"
                                      }
                                    },
                                    "id": 15186,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "21874:6:35",
                                    "memberName": "length",
                                    "nodeType": "MemberAccess",
                                    "src": "21858:22:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "id": 15184,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "21852:5:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_uint8_$",
                                    "typeString": "type(uint8)"
                                  },
                                  "typeName": {
                                    "id": 15183,
                                    "name": "uint8",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "21852:5:35",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 15187,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "21852:29:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "id": 15190,
                                    "name": "_aggregateReducerHash",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 14953,
                                    "src": "21935:21:35",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "id": 15189,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "21927:7:35",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes15_$",
                                    "typeString": "type(bytes15)"
                                  },
                                  "typeName": {
                                    "id": 15188,
                                    "name": "bytes15",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "21927:7:35",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 15191,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "21927:30:35",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                }
                              },
                              {
                                "id": 15192,
                                "name": "_resultDataType",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15014,
                                "src": "21992:15:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_bytes15",
                                  "typeString": "bytes15"
                                },
                                {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              ],
                              "id": 15178,
                              "name": "RadonRequestInfo",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20165,
                              "src": "21726:16:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_struct$_RadonRequestInfo_$20165_storage_ptr_$",
                                "typeString": "type(struct WitOracleRadonRegistryData.RadonRequestInfo storage pointer)"
                              }
                            },
                            "id": 15193,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "structConstructorCall",
                            "lValueRequested": false,
                            "nameLocations": [
                              "21762:25:35",
                              "21834:16:35",
                              "21900:25:35",
                              "21976:14:35"
                            ],
                            "names": [
                              "crowdAttestationTallyHash",
                              "dataSourcesCount",
                              "dataSourcesAggregatorHash",
                              "resultDataType"
                            ],
                            "nodeType": "FunctionCall",
                            "src": "21726:297:35",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_memory_ptr",
                              "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo memory"
                            }
                          },
                          "src": "21692:331:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRequestInfo_$20165_storage",
                            "typeString": "struct WitOracleRadonRegistryData.RadonRequestInfo storage ref"
                          }
                        },
                        "id": 15195,
                        "nodeType": "ExpressionStatement",
                        "src": "21692:331:35"
                      },
                      {
                        "eventCall": {
                          "arguments": [
                            {
                              "id": 15197,
                              "name": "_radHash",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 14959,
                              "src": "22088:8:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                                "typeString": "Witnet.RadonHash"
                              }
                            ],
                            "id": 15196,
                            "name": "NewRadonRequest",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 27413,
                            "src": "22072:15:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_event_nonpayable$_t_userDefinedValueType$_RadonHash_$37153_$returns$__$",
                              "typeString": "function (Witnet.RadonHash)"
                            }
                          },
                          "id": 15198,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "22072:25:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 15199,
                        "nodeType": "EmitStatement",
                        "src": "22067:30:35"
                      }
                    ]
                  }
                }
              ]
            },
            "id": 15203,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "__verifyRadonRequest",
            "nameLocation": "18539:20:35",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 14956,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14947,
                  "mutability": "mutable",
                  "name": "_retrieveHashes",
                  "nameLocation": "18593:15:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15203,
                  "src": "18574:34:35",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 14945,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "18574:7:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 14946,
                    "nodeType": "ArrayTypeName",
                    "src": "18574:9:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14951,
                  "mutability": "mutable",
                  "name": "_retrieveArgsValues",
                  "nameLocation": "18641:19:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15203,
                  "src": "18623:37:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 14948,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "18623:6:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 14949,
                      "nodeType": "ArrayTypeName",
                      "src": "18623:8:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                        "typeString": "string[]"
                      }
                    },
                    "id": 14950,
                    "nodeType": "ArrayTypeName",
                    "src": "18623:10:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                      "typeString": "string[][]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14953,
                  "mutability": "mutable",
                  "name": "_aggregateReducerHash",
                  "nameLocation": "18683:21:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15203,
                  "src": "18675:29:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14952,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "18675:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 14955,
                  "mutability": "mutable",
                  "name": "_tallyReducerHash",
                  "nameLocation": "18727:17:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15203,
                  "src": "18719:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 14954,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "18719:7:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18559:196:35"
            },
            "returnParameters": {
              "id": 14960,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 14959,
                  "mutability": "mutable",
                  "name": "_radHash",
                  "nameLocation": "18817:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15203,
                  "src": "18800:25:35",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                    "typeString": "Witnet.RadonHash"
                  },
                  "typeName": {
                    "id": 14958,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 14957,
                      "name": "Witnet.RadonHash",
                      "nameLocations": [
                        "18800:6:35",
                        "18807:9:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37153,
                      "src": "18800:16:35"
                    },
                    "referencedDeclaration": 37153,
                    "src": "18800:16:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_userDefinedValueType$_RadonHash_$37153",
                      "typeString": "Witnet.RadonHash"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18799:27:35"
            },
            "scope": 15238,
            "src": "18530:3586:35",
            "stateMutability": "nonpayable",
            "virtual": true,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 15236,
              "nodeType": "Block",
              "src": "22296:132:35",
              "statements": [
                {
                  "body": {
                    "id": 15234,
                    "nodeType": "Block",
                    "src": "22357:64:35",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "baseExpression": {
                                "id": 15229,
                                "name": "_filters",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15210,
                                "src": "22395:8:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "struct Witnet.RadonFilter memory[] memory"
                                }
                              },
                              "id": 15231,
                              "indexExpression": {
                                "id": 15230,
                                "name": "_ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15214,
                                "src": "22404:3:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "22395:13:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                "typeString": "struct Witnet.RadonFilter memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                "typeString": "struct Witnet.RadonFilter memory"
                              }
                            ],
                            "expression": {
                              "expression": {
                                "id": 15224,
                                "name": "__reducer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 15206,
                                "src": "22372:9:35",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                                  "typeString": "struct Witnet.RadonReducer storage pointer"
                                }
                              },
                              "id": 15227,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "22382:7:35",
                              "memberName": "filters",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37747,
                              "src": "22372:17:35",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_storage_$dyn_storage",
                                "typeString": "struct Witnet.RadonFilter storage ref[] storage ref"
                              }
                            },
                            "id": 15228,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "22390:4:35",
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "src": "22372:22:35",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_struct$_RadonFilter_$37727_storage_$dyn_storage_ptr_$_t_struct$_RadonFilter_$37727_storage_$returns$__$attached_to$_t_array$_t_struct$_RadonFilter_$37727_storage_$dyn_storage_ptr_$",
                              "typeString": "function (struct Witnet.RadonFilter storage ref[] storage pointer,struct Witnet.RadonFilter storage ref)"
                            }
                          },
                          "id": 15232,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "22372:37:35",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 15233,
                        "nodeType": "ExpressionStatement",
                        "src": "22372:37:35"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 15220,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 15217,
                      "name": "_ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 15214,
                      "src": "22326:3:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "id": 15218,
                        "name": "_filters",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15210,
                        "src": "22332:8:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonFilter memory[] memory"
                        }
                      },
                      "id": 15219,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "22341:6:35",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "22332:15:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "22326:21:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 15235,
                  "initializationExpression": {
                    "assignments": [
                      15214
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 15214,
                        "mutability": "mutable",
                        "name": "_ix",
                        "nameLocation": "22317:3:35",
                        "nodeType": "VariableDeclaration",
                        "scope": 15235,
                        "src": "22312:8:35",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 15213,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "22312:4:35",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 15216,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 15215,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "22323:1:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "22312:12:35"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 15222,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "22349:6:35",
                      "subExpression": {
                        "id": 15221,
                        "name": "_ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 15214,
                        "src": "22349:3:35",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 15223,
                    "nodeType": "ExpressionStatement",
                    "src": "22349:6:35"
                  },
                  "nodeType": "ForStatement",
                  "src": "22307:114:35"
                }
              ]
            },
            "id": 15237,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "__pushRadonReducerFilters",
            "nameLocation": "22133:25:35",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 15211,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 15206,
                  "mutability": "mutable",
                  "name": "__reducer",
                  "nameLocation": "22201:9:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15237,
                  "src": "22173:37:35",
                  "stateVariable": false,
                  "storageLocation": "storage",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 15205,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 15204,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "22173:6:35",
                        "22180:12:35"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "22173:19:35"
                    },
                    "referencedDeclaration": 37748,
                    "src": "22173:19:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 15210,
                  "mutability": "mutable",
                  "name": "_filters",
                  "nameLocation": "22253:8:35",
                  "nodeType": "VariableDeclaration",
                  "scope": 15237,
                  "src": "22225:36:35",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct Witnet.RadonFilter[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 15208,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 15207,
                        "name": "Witnet.RadonFilter",
                        "nameLocations": [
                          "22225:6:35",
                          "22232:11:35"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 37727,
                        "src": "22225:18:35"
                      },
                      "referencedDeclaration": 37727,
                      "src": "22225:18:35",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonFilter_$37727_storage_ptr",
                        "typeString": "struct Witnet.RadonFilter"
                      }
                    },
                    "id": 15209,
                    "nodeType": "ArrayTypeName",
                    "src": "22225:20:35",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_storage_$dyn_storage_ptr",
                      "typeString": "struct Witnet.RadonFilter[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22158:114:35"
            },
            "returnParameters": {
              "id": 15212,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22296:0:35"
            },
            "scope": 15238,
            "src": "22124:304:35",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "internal"
          }
        ],
        "scope": 15239,
        "src": "676:21755:35",
        "usedErrors": [],
        "usedEvents": [
          27402,
          27407,
          27413
        ]
      }
    ],
    "src": "35:22398:35"
  },
  "compiler": {
    "name": "solc",
    "version": "0.8.30+commit.73712a01.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.4.16",
  "updatedAt": "2025-10-15T14:34:45.508Z",
  "devdoc": {
    "author": "The Witnet Foundation",
    "details": "This contract enables posting requests that Witnet bridges will insert into the Witnet network. The result of the requests will be posted back to this contract by the bridge nodes too.",
    "kind": "dev",
    "methods": {},
    "title": "Witnet Request Board EVM-default implementation contract.",
    "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."
      }
    },
    "notice": "Contract to bridge requests to Witnet Decentralized Oracle Network.",
    "version": 1
  }
}