<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def verify_signature(message, signature, public_key):
 """ Verifies `signature` is correct for a `message` signed with `public_key` :param message: message to check :type message: bytes :param signature: signature to check :type signature: bytes :param public_key: public_key to check :type public_key: bytes :return: True if valid, False otherwise :rtype: bool """


    try:
        ed25519_blake2.checkvalid(signature, message, public_key)
    except ed25519_blake2.SignatureMismatch:
        return False
    return True