{
  "_format": "hh-sol-artifact-1",
  "contractName": "OneInchExchangeMock",
  "sourceName": "contracts/mocks/external/OneInchExchangeMock.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_mockSendToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_mockReceiveToken",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_mockSendAmount",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_mockReceiveAmount",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_setTokenAddress",
          "type": "address"
        }
      ],
      "name": "addSetTokenAddress",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "mockReceiveAmount",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "mockReceiveToken",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "mockSendAmount",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "mockSendToken",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "setTokenAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_fromToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_toToken",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_fromTokenAmount",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_minReturnAmount",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_guaranteedAmount",
          "type": "uint256"
        },
        {
          "internalType": "address payable",
          "name": "_referrer",
          "type": "address"
        },
        {
          "internalType": "address[]",
          "name": "_callAddresses",
          "type": "address[]"
        },
        {
          "internalType": "bytes",
          "name": "_callDataConcat",
          "type": "bytes"
        },
        {
          "internalType": "uint256[]",
          "name": "_starts",
          "type": "uint256[]"
        },
        {
          "internalType": "uint256[]",
          "name": "_gasLimitsAndValues",
          "type": "uint256[]"
        }
      ],
      "name": "swap",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "returnAmount",
          "type": "uint256"
        }
      ],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_newReceiveAmount",
          "type": "uint256"
        }
      ],
      "name": "updateReceiveAmount",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_newSendAmount",
          "type": "uint256"
        }
      ],
      "name": "updateSendAmount",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b506040516106333803806106338339818101604052608081101561003357600080fd5b50805160208201516040830151606090930151600180546001600160a01b039485166001600160a01b031991821617909155600080549490931693169290921790556003919091556002556105a68061008d6000396000f3fe6080604052600436106100865760003560e01c8063800accc211610059578063800accc2146101425780639b2b5c9c14610157578063bce3c75114610181578063dc00152f14610196578063f88309d7146101ab57610086565b80632ef2366c1461008b57806347485815146100b757806361d97404146100de57806375e9141d1461010f575b600080fd5b34801561009757600080fd5b506100b5600480360360208110156100ae57600080fd5b503561033d565b005b3480156100c357600080fd5b506100cc610342565b60408051918252519081900360200190f35b3480156100ea57600080fd5b506100f3610348565b604080516001600160a01b039092168252519081900360200190f35b34801561011b57600080fd5b506100b56004803603602081101561013257600080fd5b50356001600160a01b0316610357565b34801561014e57600080fd5b506100cc610379565b34801561016357600080fd5b506100b56004803603602081101561017a57600080fd5b503561037f565b34801561018d57600080fd5b506100f3610384565b3480156101a257600080fd5b506100f3610393565b6100cc60048036036101408110156101c257600080fd5b6001600160a01b038235811692602081013582169260408201359260608301359260808101359260a08201359092169181019060e0810160c0820135600160201b81111561020f57600080fd5b82018360208201111561022157600080fd5b803590602001918460208302840111600160201b8311171561024257600080fd5b919390929091602081019035600160201b81111561025f57600080fd5b82018360208201111561027157600080fd5b803590602001918460018302840111600160201b8311171561029257600080fd5b919390929091602081019035600160201b8111156102af57600080fd5b8201836020820111156102c157600080fd5b803590602001918460208302840111600160201b831117156102e257600080fd5b919390929091602081019035600160201b8111156102ff57600080fd5b82018360208201111561031157600080fd5b803590602001918460208302840111600160201b8311171561033257600080fd5b5090925090506103a2565b600255565b60025481565b6001546001600160a01b031681565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b60035481565b600355565b6000546001600160a01b031681565b6004546001600160a01b031681565b60015460048054600354604080516323b872dd60e01b81526001600160a01b039384169481019490945230602485015260448401919091525160009391909116916323b872dd91606480830192602092919082900301818787803b15801561040957600080fd5b505af115801561041d573d6000803e3d6000fd5b505050506040513d602081101561043357600080fd5b5051610486576040805162461bcd60e51b815260206004820152601960248201527f4552433230205472616e7366657246726f6d206661696c656400000000000000604482015290519081900360640190fd5b60008054600480546002546040805163a9059cbb60e01b81526001600160a01b039384169481019490945260248401919091525192169263a9059cbb926044808401936020939083900390910190829087803b1580156104e557600080fd5b505af11580156104f9573d6000803e3d6000fd5b505050506040513d602081101561050f57600080fd5b505161055a576040805162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b604482015290519081900360640190fd5b506002549e9d505050505050505050505050505056fea264697066735822122046415d710174a32b5b69f3e916f3a195925714b25ea06b47dc13cea347371a7c64736f6c634300060a0033",
  "deployedBytecode": "0x6080604052600436106100865760003560e01c8063800accc211610059578063800accc2146101425780639b2b5c9c14610157578063bce3c75114610181578063dc00152f14610196578063f88309d7146101ab57610086565b80632ef2366c1461008b57806347485815146100b757806361d97404146100de57806375e9141d1461010f575b600080fd5b34801561009757600080fd5b506100b5600480360360208110156100ae57600080fd5b503561033d565b005b3480156100c357600080fd5b506100cc610342565b60408051918252519081900360200190f35b3480156100ea57600080fd5b506100f3610348565b604080516001600160a01b039092168252519081900360200190f35b34801561011b57600080fd5b506100b56004803603602081101561013257600080fd5b50356001600160a01b0316610357565b34801561014e57600080fd5b506100cc610379565b34801561016357600080fd5b506100b56004803603602081101561017a57600080fd5b503561037f565b34801561018d57600080fd5b506100f3610384565b3480156101a257600080fd5b506100f3610393565b6100cc60048036036101408110156101c257600080fd5b6001600160a01b038235811692602081013582169260408201359260608301359260808101359260a08201359092169181019060e0810160c0820135600160201b81111561020f57600080fd5b82018360208201111561022157600080fd5b803590602001918460208302840111600160201b8311171561024257600080fd5b919390929091602081019035600160201b81111561025f57600080fd5b82018360208201111561027157600080fd5b803590602001918460018302840111600160201b8311171561029257600080fd5b919390929091602081019035600160201b8111156102af57600080fd5b8201836020820111156102c157600080fd5b803590602001918460208302840111600160201b831117156102e257600080fd5b919390929091602081019035600160201b8111156102ff57600080fd5b82018360208201111561031157600080fd5b803590602001918460208302840111600160201b8311171561033257600080fd5b5090925090506103a2565b600255565b60025481565b6001546001600160a01b031681565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b60035481565b600355565b6000546001600160a01b031681565b6004546001600160a01b031681565b60015460048054600354604080516323b872dd60e01b81526001600160a01b039384169481019490945230602485015260448401919091525160009391909116916323b872dd91606480830192602092919082900301818787803b15801561040957600080fd5b505af115801561041d573d6000803e3d6000fd5b505050506040513d602081101561043357600080fd5b5051610486576040805162461bcd60e51b815260206004820152601960248201527f4552433230205472616e7366657246726f6d206661696c656400000000000000604482015290519081900360640190fd5b60008054600480546002546040805163a9059cbb60e01b81526001600160a01b039384169481019490945260248401919091525192169263a9059cbb926044808401936020939083900390910190829087803b1580156104e557600080fd5b505af11580156104f9573d6000803e3d6000fd5b505050506040513d602081101561050f57600080fd5b505161055a576040805162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b604482015290519081900360640190fd5b506002549e9d505050505050505050505050505056fea264697066735822122046415d710174a32b5b69f3e916f3a195925714b25ea06b47dc13cea347371a7c64736f6c634300060a0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
