interface IUniswapPair is IERC20
{
    // Addresses of the first and second pool-kens.
    function token0() external view returns (address);
    function token1() external view returns (address);

    // Get the pair's token pool reserves.
    function getReserves() 
                                        external view 
    returns (
        uint112 reserve0, 
        uint112 reserve1,
        uint32 blockTimestampLast
    );
}
// Uniswap Pair interface (it's also an ERC20 token).
// Used to get reserves, and token price.
function token0() external view returns (address);

// Addresses of the first and second pool-kens.