[{"type":"error","name":"NotInPool","inputs":[{"name":"currency","type":"address"}]},{"type":"error","name":"NotMarket","inputs":[]},{"type":"error","name":"NotPoolManager","inputs":[]},{"type":"error","name":"NotReporter","inputs":[]},{"type":"error","name":"PartialFill","inputs":[{"name":"hop","type":"uint256"},{"name":"filled","type":"uint256"},{"name":"amount","type":"uint256"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address"}]},{"type":"error","name":"ShortRoute","inputs":[{"name":"out","type":"uint256"},{"name":"needed","type":"uint256"}]},{"type":"error","name":"UnexpectedNative","inputs":[]},{"type":"error","name":"WrongEnd","inputs":[{"name":"end","type":"address"},{"name":"paidIn","type":"address"}]},{"type":"event","name":"Bought","inputs":[{"name":"market","type":"bytes32","indexed":true},{"name":"amount","type":"uint256","indexed":false},{"name":"owe","type":"uint256","indexed":false},{"name":"out","type":"uint256","indexed":false},{"name":"to","type":"address","indexed":false}],"anonymous":false},{"type":"function","name":"fill","inputs":[{"name":"id","type":"bytes32"},{"name":"maxAmount","type":"uint256"},{"name":"head","type":"tuple[]","internalType":"struct PoolKey[]","components":[{"name":"currency0","type":"address"},{"name":"currency1","type":"address"},{"name":"fee","type":"uint24"},{"name":"tickSpacing","type":"int24"},{"name":"hooks","type":"address"}]},{"name":"minRate","type":"uint256"},{"name":"deadline","type":"uint256"}],"outputs":[{"name":"amount","type":"uint256"},{"name":"owe","type":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"market","inputs":[],"outputs":[{"name":"","type":"address"}],"stateMutability":"view"},{"type":"function","name":"onTake","inputs":[{"name":"id","type":"bytes32"},{"name":"sold","type":"address"},{"name":"amount","type":"uint256"},{"name":"paidIn","type":"address"},{"name":"owe","type":"uint256"},{"name":"data","type":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"poolManager","inputs":[],"outputs":[{"name":"","type":"address"}],"stateMutability":"view"},{"type":"function","name":"PRICE_ONE","inputs":[],"outputs":[{"name":"","type":"uint256"}],"stateMutability":"view"},{"type":"function","name":"unlockCallback","inputs":[{"name":"data","type":"bytes"}],"outputs":[{"name":"","type":"bytes"}],"stateMutability":"nonpayable"},{"type":"function","name":"vault","inputs":[],"outputs":[{"name":"","type":"address"}],"stateMutability":"view"}]