code: def verify(password_hash, password):
      
      if password_hash.startswith(argon2id.STRPREFIX):
          return argon2id.verify(password_hash, password)
      elif password_hash.startswith(argon2i.STRPREFIX):
          return argon2id.verify(password_hash, password)
      elif password_hash.startswith(scrypt.STRPREFIX):
          return scrypt.verify(password_hash, password)
      else:
          raise(CryptPrefixError("given password_hash is not "
                                 "in a supported format"
                                 )
                )
docs: Takes a modular crypt encoded stored password hash derived using one
      of the algorithms supported by `libsodium` and checks if the user provided
      password will hash to the same string when using the parameters saved
      in the stored hash