function transferToken(
        address user_,
        address token_,
        uint256 amount_
    )
        internal
    returns(bool) {
        if(amount_ > 0) {
            if(token_ == address(0)) {
                if(address(this).balance < amount_) {
                    emit Error(1);
                    return false;
                } else {
                    
                    emit eWithdraw(user_, token_, amount_);
    
                    user_.transfer(amount_);
                    return true;
                }
            } else if(Token(token_).transfer(user_, amount_)) {
                
                emit eWithdraw(user_, token_, amount_);
    
                return true;
            } else {
                emit Error(1);
                return false;
            }
        } else {
            return true;
        }
    }