{
  "_format": "hh-sol-artifact-1",
  "contractName": "PathTest",
  "sourceName": "contracts/elixir-periphery/test/PathTest.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "path",
          "type": "bytes"
        }
      ],
      "name": "decodeFirstPool",
      "outputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "internalType": "uint24",
          "name": "fee",
          "type": "uint24"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "path",
          "type": "bytes"
        }
      ],
      "name": "getFirstPool",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "path",
          "type": "bytes"
        }
      ],
      "name": "getGasCostOfDecodeFirstPool",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "path",
          "type": "bytes"
        }
      ],
      "name": "hasMultiplePools",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "path",
          "type": "bytes"
        }
      ],
      "name": "skipToken",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610858806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063bf8b627b11610050578063bf8b627b14610241578063d7c9ca0c146102e7578063eadc682a1461039f57610067565b80637db6e2461461006c5780639dc1c39114610187575b600080fd5b6101126004803603602081101561008257600080fd5b81019060208101813564010000000081111561009d57600080fd5b8201836020820111156100af57600080fd5b803590602001918460018302840111640100000000831117156100d157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610481945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014c578181015183820152602001610134565b50505050905090810190601f1680156101795780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61022d6004803603602081101561019d57600080fd5b8101906020810181356401000000008111156101b857600080fd5b8201836020820111156101ca57600080fd5b803590602001918460018302840111640100000000831117156101ec57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610492945050505050565b604080519115158252519081900360200190f35b6101126004803603602081101561025757600080fd5b81019060208101813564010000000081111561027257600080fd5b82018360208201111561028457600080fd5b803590602001918460018302840111640100000000831117156102a657600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061049d945050505050565b61038d600480360360208110156102fd57600080fd5b81019060208101813564010000000081111561031857600080fd5b82018360208201111561032a57600080fd5b8035906020019184600183028401116401000000008311171561034c57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104a8945050505050565b60408051918252519081900360200190f35b610445600480360360208110156103b557600080fd5b8101906020810181356401000000008111156103d057600080fd5b8201836020820111156103e257600080fd5b8035906020019184600183028401116401000000008311171561040457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104c3945050505050565b6040805173ffffffffffffffffffffffffffffffffffffffff948516815292909316602083015262ffffff168183015290519081900360600190f35b606061048c826104de565b92915050565b600061048c826104ed565b606061048c826104f5565b6000805a90506104b78361050c565b5050505a900392915050565b60008060006104d18461050c565b9250925092509193909250565b606061048c826000602b61053d565b516042111590565b805160609061048c9083906017906016190161053d565b6000808061051a848261069a565b9250610527846014610766565b905061053484601761069a565b91509193909250565b60608182601f011015610588576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b8282840110156105d0576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b81830184511015610628576040805162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e6473000000000000000000000000000000604482015290519081900360640190fd5b6060821580156106475760405191506000825260208201604052610691565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015610680578051835260209283019201610668565b5050858452601f01601f1916604052505b50949350505050565b6000818260140110156106f4576040805162461bcd60e51b815260206004820152601260248201527f746f416464726573735f6f766572666c6f770000000000000000000000000000604482015290519081900360640190fd5b816014018351101561074d576040805162461bcd60e51b815260206004820152601560248201527f746f416464726573735f6f75744f66426f756e64730000000000000000000000604482015290519081900360640190fd5b5001602001516c01000000000000000000000000900490565b6000818260030110156107c0576040805162461bcd60e51b815260206004820152601160248201527f746f55696e7432345f6f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b8160030183511015610819576040805162461bcd60e51b815260206004820152601460248201527f746f55696e7432345f6f75744f66426f756e6473000000000000000000000000604482015290519081900360640190fd5b5001600301519056fea264697066735822122003bb69978ceb1f0659769bb07678ff736ec432c81b4d4d3413e706658a48df4564736f6c63430007060033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063bf8b627b11610050578063bf8b627b14610241578063d7c9ca0c146102e7578063eadc682a1461039f57610067565b80637db6e2461461006c5780639dc1c39114610187575b600080fd5b6101126004803603602081101561008257600080fd5b81019060208101813564010000000081111561009d57600080fd5b8201836020820111156100af57600080fd5b803590602001918460018302840111640100000000831117156100d157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610481945050505050565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561014c578181015183820152602001610134565b50505050905090810190601f1680156101795780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61022d6004803603602081101561019d57600080fd5b8101906020810181356401000000008111156101b857600080fd5b8201836020820111156101ca57600080fd5b803590602001918460018302840111640100000000831117156101ec57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610492945050505050565b604080519115158252519081900360200190f35b6101126004803603602081101561025757600080fd5b81019060208101813564010000000081111561027257600080fd5b82018360208201111561028457600080fd5b803590602001918460018302840111640100000000831117156102a657600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061049d945050505050565b61038d600480360360208110156102fd57600080fd5b81019060208101813564010000000081111561031857600080fd5b82018360208201111561032a57600080fd5b8035906020019184600183028401116401000000008311171561034c57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104a8945050505050565b60408051918252519081900360200190f35b610445600480360360208110156103b557600080fd5b8101906020810181356401000000008111156103d057600080fd5b8201836020820111156103e257600080fd5b8035906020019184600183028401116401000000008311171561040457600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506104c3945050505050565b6040805173ffffffffffffffffffffffffffffffffffffffff948516815292909316602083015262ffffff168183015290519081900360600190f35b606061048c826104de565b92915050565b600061048c826104ed565b606061048c826104f5565b6000805a90506104b78361050c565b5050505a900392915050565b60008060006104d18461050c565b9250925092509193909250565b606061048c826000602b61053d565b516042111590565b805160609061048c9083906017906016190161053d565b6000808061051a848261069a565b9250610527846014610766565b905061053484601761069a565b91509193909250565b60608182601f011015610588576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b8282840110156105d0576040805162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015290519081900360640190fd5b81830184511015610628576040805162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e6473000000000000000000000000000000604482015290519081900360640190fd5b6060821580156106475760405191506000825260208201604052610691565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015610680578051835260209283019201610668565b5050858452601f01601f1916604052505b50949350505050565b6000818260140110156106f4576040805162461bcd60e51b815260206004820152601260248201527f746f416464726573735f6f766572666c6f770000000000000000000000000000604482015290519081900360640190fd5b816014018351101561074d576040805162461bcd60e51b815260206004820152601560248201527f746f416464726573735f6f75744f66426f756e64730000000000000000000000604482015290519081900360640190fd5b5001602001516c01000000000000000000000000900490565b6000818260030110156107c0576040805162461bcd60e51b815260206004820152601160248201527f746f55696e7432345f6f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b8160030183511015610819576040805162461bcd60e51b815260206004820152601460248201527f746f55696e7432345f6f75744f66426f756e6473000000000000000000000000604482015290519081900360640190fd5b5001600301519056fea264697066735822122003bb69978ceb1f0659769bb07678ff736ec432c81b4d4d3413e706658a48df4564736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
