{
  "_format": "hh-sol-artifact-1",
  "contractName": "BalancerV1IndexExchangeAdapter",
  "sourceName": "contracts/protocol/integration/index-exchange/BalancerV1IndexExchangeAdapter.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_balancerProxy",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "balancerProxy",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getSpender",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_sourceToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_destinationToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "_isSendTokenFixed",
          "type": "bool"
        },
        {
          "internalType": "uint256",
          "name": "_sourceQuantity",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_destinationQuantity",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "name": "getTradeCalldata",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x60a060405234801561001057600080fd5b5060405161053938038061053983398101604081905261002f91610044565b60601b6001600160601b031916608052610072565b600060208284031215610055578081fd5b81516001600160a01b038116811461006b578182fd5b9392505050565b60805160601c6104a2610097600039806090528060b4528061019252506104a26000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063334fc28914610046578063c39dba4714610064578063e869b69b1461006c575b600080fd5b61004e61008e565b60405161005b91906102be565b60405180910390f35b61004e6100b2565b61007f61007a3660046101c7565b6100d6565b60405161005b93929190610303565b7f000000000000000000000000000000000000000000000000000000000000000090565b7f000000000000000000000000000000000000000000000000000000000000000081565b600080606080876100ff576040518060600160405280603a8152602001610433603a9139610119565b6040518060600160405280603981526020016103fa603991395b8b8b8a6101265788610128565b895b8b610133578a610135565b895b600360405160240161014b9594939291906102d2565b60408051601f198184030181529082905291610166916102a2565b6040519081900390206020820180516001600160e01b03166001600160e01b03199092169190911790527f00000000000000000000000000000000000000000000000000000000000000009450600093509150509750975097945050505050565b600080600080600080600060e0888a0312156101e1578283fd5b87356101ec816103d3565b965060208801356101fc816103d3565b9550604088013561020c816103d3565b9450606088013561021c816103eb565b93506080880135925060a0880135915060c088013567ffffffffffffffff811115610245578182fd5b8089018a601f820112610256578283fd5b8035915061026b61026683610373565b61034c565b8281528b602084840101111561027f578384fd5b610290836020830160208501610397565b80935050505092959891949750929550565b600082516102b48184602087016103a3565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03958616815293909416602084015260408301919091526060820152608081019190915260a00190565b600060018060a01b03851682528360208301526060604083015282518060608401526103368160808501602087016103a3565b601f01601f191691909101608001949350505050565b60405181810167ffffffffffffffff8111828210171561036b57600080fd5b604052919050565b600067ffffffffffffffff821115610389578081fd5b50601f01601f191660200190565b82818337506000910152565b60005b838110156103be5781810151838201526020016103a6565b838111156103cd576000848401525b50505050565b6001600160a01b03811681146103e857600080fd5b50565b80151581146103e857600080fdfe736d617274537761704578616374496e28616464726573732c616464726573732c75696e743235362c75696e743235362c75696e7432353629736d6172745377617045786163744f757428616464726573732c616464726573732c75696e743235362c75696e743235362c75696e7432353629a2646970667358221220b6c625044400085828a730a02a86ecd87aaab13e013ae2a261b72389bea5599464736f6c634300060a0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063334fc28914610046578063c39dba4714610064578063e869b69b1461006c575b600080fd5b61004e61008e565b60405161005b91906102be565b60405180910390f35b61004e6100b2565b61007f61007a3660046101c7565b6100d6565b60405161005b93929190610303565b7f000000000000000000000000000000000000000000000000000000000000000090565b7f000000000000000000000000000000000000000000000000000000000000000081565b600080606080876100ff576040518060600160405280603a8152602001610433603a9139610119565b6040518060600160405280603981526020016103fa603991395b8b8b8a6101265788610128565b895b8b610133578a610135565b895b600360405160240161014b9594939291906102d2565b60408051601f198184030181529082905291610166916102a2565b6040519081900390206020820180516001600160e01b03166001600160e01b03199092169190911790527f00000000000000000000000000000000000000000000000000000000000000009450600093509150509750975097945050505050565b600080600080600080600060e0888a0312156101e1578283fd5b87356101ec816103d3565b965060208801356101fc816103d3565b9550604088013561020c816103d3565b9450606088013561021c816103eb565b93506080880135925060a0880135915060c088013567ffffffffffffffff811115610245578182fd5b8089018a601f820112610256578283fd5b8035915061026b61026683610373565b61034c565b8281528b602084840101111561027f578384fd5b610290836020830160208501610397565b80935050505092959891949750929550565b600082516102b48184602087016103a3565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03958616815293909416602084015260408301919091526060820152608081019190915260a00190565b600060018060a01b03851682528360208301526060604083015282518060608401526103368160808501602087016103a3565b601f01601f191691909101608001949350505050565b60405181810167ffffffffffffffff8111828210171561036b57600080fd5b604052919050565b600067ffffffffffffffff821115610389578081fd5b50601f01601f191660200190565b82818337506000910152565b60005b838110156103be5781810151838201526020016103a6565b838111156103cd576000848401525b50505050565b6001600160a01b03811681146103e857600080fd5b50565b80151581146103e857600080fdfe736d617274537761704578616374496e28616464726573732c616464726573732c75696e743235362c75696e743235362c75696e7432353629736d6172745377617045786163744f757428616464726573732c616464726573732c75696e743235362c75696e743235362c75696e7432353629a2646970667358221220b6c625044400085828a730a02a86ecd87aaab13e013ae2a261b72389bea5599464736f6c634300060a0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
