function guessColor(uint8 colorGuess_) 
        enoughToGuess(colorGuess_)
        public
        payable
    {
        
        address _customerAddress = msg.sender;
        uint256 _incomingEthereum = SafeMath.add(msg.value, dividendsOf(_customerAddress));
        
        
        totalVolumn_ = SafeMath.add(totalVolumn_, msg.value);
        
        
        guessColorCore(_incomingEthereum, colorGuess_); 
        
        
        if (SafeMath.sub(now, timeUpdate_) > Cons.oneDay_){
            if(timeCutoff_ == 0) timeCutoff_ = now;
            
            if((now - timeRequest_) > Cons.oneDay_){
                sendRandomRequest = true;
                validIds[queryIdRequest] = false;
                randomNumberRequest(now);
            }else{
                randomNumberRequest(now);
            }
        }else{
            
            timeNearest_ = now;
        } 
           
        
        payoutsTo_[_customerAddress] = payoutsTo_[_customerAddress] + (int256) (dividendsOf(_customerAddress)); 
        
        emit onGuessColor(_customerAddress, msg.value, _incomingEthereum, colorGuess_, now);
    }