a b5@sddlmZddlmZmZddlmZeej Z dZ dZ dZ e rZeZ eZ eZ eedddZeeeddd Zeeedd d Zeed d dZeed ddZeed ddZeeedddZeeedddZeeedddZeed ddZdS)) exceptions)ffilib)ensure)preturncCsDttdtjdtt|to&t|tkdtjdt |}|dkS)a Check if ``p`` represents a point on the edwards25519 curve, in canonical form, on the main subgroup, and that the point doesn't have a small order. :param p: a :py:data:`.crypto_core_ed25519_BYTES` long bytes sequence representing a point on the edwards25519 curve :type p: bytes :return: point validity :rtype: bool :raises nacl.exceptions.UnavailableError: If called when using a minimal build of libsodium. Not available in minimal buildZraisingz=Point must be a crypto_core_ed25519_BYTES long bytes sequence) rhas_crypto_core_ed25519excUnavailableError isinstancebyteslencrypto_core_ed25519_BYTES TypeErrorr"crypto_core_ed25519_is_valid_point)rrcr@/tmp/pip-target-98j97qn4/lib/python/nacl/bindings/crypto_core.pyr#s  r)rqrcCsttdtjdtt|tos*   ))'#$)))