interface IErc20Swap {
    function getRate(address src, address dst, uint256 srcAmount) external view returns(uint expectedRate, uint slippageRate);  // real rate = returned value / 1e18
    function swap(address src, uint srcAmount, address dest, uint maxDestAmount, uint minConversionRate) external payable;
}
function swap(address src, uint srcAmount, address dest, uint maxDestAmount, uint minConversionRate) external payable;

// real rate = returned value / 1e18