function () payable{
    
        if (block.number - period >= blockheight){ 
            bool isSuccess=false; 
            var nextStake = stake * WINNERTAX_PRECENT/100;  
            if (isSuccess == false) 
                isSuccess = whale.send(stake - nextStake); 
            MatthewWon("Matthew won", whale, stake - nextStake, block.number);
            setFacts();
            if (mustBeDestroyed) selfdestruct(whale); 
            return;
            
        }else{ 
            if (msg.value < stake + DELTA) throw; 
            bool isOtherSuccess = msg.sender.send(stake); 
            setFacts(); 
            StakeIncreased("stake increased", whale, stake, blockheight);
        }
    }