'Return whether we should sign the block in the passed message.
@param message: the message containing a block we want to sign or not.'

def should_sign(self, message):

    block = message.payload.block
    pend = self.pending_bytes.get(block.public_key)
    if ((not pend) or (not (((pend.up - block.transaction['down']) >= 0) and ((pend.down - block.transaction['up']) >= 0)))):
        self.logger.info('Request    block    counter    party    does    not    have    enough    bytes    pending.')
        block_id = ('%s.%s' % (block.public_key.encode('hex'), block.sequence_number))
        self.pending_sign_messages[block_id] = message
        return False
    return True
