function revealGameByGuest(uint _id) external payable verifiedGameExist(_id) {
        Game storage game = arrAvailableGames[idToIndexAvailableGames[_id]];
        Game memory gameCached = arrAvailableGames[idToIndexAvailableGames[_id]];

        require(gameCached.state == GAME_STATE_WAITING_HOST_REVEAL, "Game not in state waiting reveal");
        require(now > gameCached.timeExpire, "Host time reveal not ended");
        require(gameCached.addressGuest == msg.sender, "You're not guest this game");

        uint valueTip = getValueTip(gameCached.valueBet);
        addTipForDeveloper(valueTip);

        sendPayment(gameCached.addressGuest, gameCached.valueBet * 2 - valueTip);
        game.valueBet = 0;
        destroyGame(_id);
        emit LogRevealGameSuccessed(_id,
                                    GAME_RESULT_GUEST_WIN,
                                    gameCached.addressGuest,
                                    gameCached.addressHost,
                                    gameCached.valueBet - valueTip,
                                    gameCached.valueBet,
                                    gameCached.gestureGuest, 
                                    0);
    }