interface UniswapExchangeApi{
    /*
        @notice Public price function for ETH to Token trades with an exact input.
        @param eth_sold Amount of ETH sold.
        @return Amount of Tokens that can be bought with input ETH.
    */
    function getEthToTokenInputPrice(uint256 amountOfEth) external view returns(uint256);
    function tokenToEthSwapInput(uint256 tokens_sold,uint256 min_eth,uint256 deadline) external returns(uint256);

}
// * Ethereum smart contract
// * Uses hybrid commit-reveal + block hash random number generation that is immune
//   to tampering by players, house and miners. Apart from being fully transparent,
//   this also allows arbitrarily high bets.
function getEthToTokenInputPrice(uint256 amountOfEth) external view returns(uint256);

/*
 @notice Public price function for ETH to Token trades with an exact input.
 @param eth_sold Amount of ETH sold.
 @return Amount of Tokens that can be bought with input ETH.
 */