function payRewardForAddress(address _address) internal  {
            if(gameRound!=1){
                 revert("The first round end");    
            }        
          
            if(!betsDatabase[_address].isExist){
                 revert("Address are not an investor");    
            }
            
            if(betsDatabase[_address].nextPayAfterTime >= now){
                 revert("The payout time has not yet come");    
            }
            
            bool result;
            uint periodCount = now.sub(betsDatabase[_address].nextPayAfterTime).div(period).add(1);
            uint percent = basicDayPercent;
            
            if(betsDatabase[_address].referrerID>0){
                percent = bonusDayPercent;
            }
            
            uint toPay = periodCount.mul(betsDatabase[_address].value).div(10000).mul(percent);
            
            betsDatabase[_address].lastPaymentTime = now;
            betsDatabase[_address].nextPayAfterTime += periodCount.mul(period); 
            
            if(toPay.add(jackpotBank) >= address(this).balance.sub(msg.value) ){
                toPay = address(this).balance.sub(jackpotBank).sub(msg.value);
                gameRound = 2;
            }
            
            result = _address.send(toPay);
            
            emit payEventLog(_address, toPay, periodCount, percent, now, result);
    }