function play(bool option, address refferal) payable external {
        require(msg.value >= min_bet && msg.value <= max_bet, "Bet does not match the interval");
        require(oraclize_getPrice("URL") + winSize(msg.value) <= address(this).balance, "Insufficient funds");
        
        bytes32 id = oraclize_query("WolframAlpha", "RandomInteger[{0, 1}]");

        games[id] = Game({
            addr: msg.sender,
            bet: msg.value,
            option: option
        });

        if(refferal != address(0) && refferals[msg.sender] == address(0)) {
            refferals[msg.sender] = refferal;
        }

        emit NewGame(id);
    }