interface IRCD {
    /**
     * @notice Returns the rate to pay out for a given amount
     * @param amount the bet amount to calc a payout for
     * @param maxAvailable the total pooled ETH unlocked and available to bet
     * @param oldPrice the previous price of the underlying
     * @param newPrice the current price of the underlying
     * @return profit total possible profit amount
     */
    function rate(uint256 amount, uint256 maxAvailable, uint256 oldPrice, uint256 newPrice) external view returns (uint256);

}
function rate(uint256 amount, uint256 maxAvailable, uint256 oldPrice, uint256 newPrice) external view returns (uint256);

/**
 * @notice Returns the rate to pay out for a given amount
 * @param amount the bet amount to calc a payout for
 * @param maxAvailable the total pooled ETH unlocked and available to bet
 * @param oldPrice the previous price of the underlying
 * @param newPrice the current price of the underlying
 * @return profit total possible profit amount
 */