{
  "_format": "hh3-artifact-1",
  "contractName": "IWitOracleRequestFactory",
  "sourceName": "contracts/interfaces/legacy/IWitOracleRequestFactory.sol",
  "abi": [
    {
      "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": "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"
        }
      ],
      "name": "buildWitOracleRequest",
      "outputs": [
        {
          "internalType": "contract IWitOracleRequest",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "baseRetrieveHash",
          "type": "bytes32"
        },
        {
          "internalType": "string[][]",
          "name": "requestArgs",
          "type": "string[][]"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonFilterOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "internalType": "bytes",
              "name": "cborArgs",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonFilter[]",
          "name": "tallySlashingFilters",
          "type": "tuple[]"
        }
      ],
      "name": "buildWitOracleRequestModal",
      "outputs": [
        {
          "internalType": "contract IWitOracleRequest",
          "name": "",
          "type": "address"
        }
      ],
      "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": "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"
        }
      ],
      "name": "buildWitOracleRequestTemplate",
      "outputs": [
        {
          "internalType": "contract IWitOracleRequestTemplate",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "baseRetrieveHash",
          "type": "bytes32"
        },
        {
          "internalType": "string[]",
          "name": "lastArgValues",
          "type": "string[]"
        },
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonFilterOpcodes",
              "name": "opcode",
              "type": "uint8"
            },
            {
              "internalType": "bytes",
              "name": "cborArgs",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonFilter[]",
          "name": "tallySlashingFilters",
          "type": "tuple[]"
        }
      ],
      "name": "buildWitOracleRequestTemplateModal",
      "outputs": [
        {
          "internalType": "contract IWitOracleRequestTemplate",
          "name": "",
          "type": "address"
        }
      ],
      "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": "retrievalHash",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "linkReferences": {},
  "deployedLinkReferences": {},
  "immutableReferences": {},
  "inputSourceName": "project/contracts/interfaces/legacy/IWitOracleRequestFactory.sol",
  "buildInfoId": "solc-0_8_30-47301052af11a5aa5062e9b98ca44d5e142950cf"
}