function convict(uint _serverIndex, bytes32 _blockhash, uint _blocknumber, uint8 _v, bytes32 _r, bytes32 _s) public {
        bytes32 evm_blockhash = blockhash(_blocknumber);
        
        
        require(evm_blockhash != 0x0 && evm_blockhash != _blockhash, "the block is too old or you try to convict with a correct hash");

        
        require(
            ecrecover(keccak256(_blockhash, _blocknumber), _v, _r, _s) == servers[_serverIndex].owner, 
            "the block was not signed by the owner of the server");

        
        if (servers[_serverIndex].deposit > 0) {
            uint payout = servers[_serverIndex].deposit / 2;
            
            msg.sender.transfer(payout);

            
            
            
            address(0).transfer(servers[_serverIndex].deposit-payout);
        }

        
        emit LogServerConvicted(servers[_serverIndex].url, servers[_serverIndex].owner );
        
        removeServer(_serverIndex);
    }