Ë
    M/Åeè  ã                   óØ   — d Z ddlZddlmZ ddlmZ ddlZddlmZ ddl	m
Z
  ej                  e«      Z G d„ dej                  «      Z G d	„ d
e«      Z G d„ de«      Z G d„ de«      Zy)a0  Client annotated ACME challenges.

Please use names such as ``achall`` to distinguish from variables "of type"
:class:`acme.challenges.Challenge` (denoted by ``chall``)
and :class:`.ChallengeBody` (denoted by ``challb``)::

  from acme import challenges
  from acme import messages
  from certbot import achallenges

  chall = challenges.DNS(token='foo')
  challb = messages.ChallengeBody(chall=chall)
  achall = achallenges.DNS(chall=challb, domain='example.com')

Note, that all annotated challenges act as a proxy objects::

  achall.token == challb.token

é    N)ÚAny)ÚType)Ú
challenges)Ú	Challengec                   ó:   — e Zd ZU dZdZeZee   e	d<   de
defd„Zy)ÚAnnotatedChallengez°Client annotated challenge.

    Wraps around server provided challenge and annotates with data
    useful for the client.

    :ivar ~.challb: Wrapped `~.ChallengeBody`.

    )ÚchallbÚ
_acme_typeÚnameÚreturnc                 ó.   — t        | j                  |«      S )N)Úgetattrr	   )Úselfr   s     ú5/usr/lib/python3/dist-packages/certbot/achallenges.pyÚ__getattr__zAnnotatedChallenge.__getattr__,   s   € Üt—{‘{ DÓ)Ð)ó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__ÚNotImplementedr
   r   r   Ú__annotations__Ústrr   r   © r   r   r   r       s/   … ñð €IØ"0€JY‘Ó0ð* ð *¨ô *r   r   c                   ó(   — e Zd ZdZdZdededefd„Zy)Ú"KeyAuthorizationAnnotatedChallengez7Client annotated `KeyAuthorizationChallenge` challenge.)r	   ÚdomainÚaccount_keyÚargsÚkwargsr   c                 ój   —  | j                   j                  j                  | j                  g|¢­i |¤ŽS )z!Generate response and validation.)r	   ÚchallÚresponse_and_validationr   )r   r    r!   s      r   r$   z:KeyAuthorizationAnnotatedChallenge.response_and_validation4   s:   € à8ˆt{‰{× Ñ ×8Ñ8Ø×Ñð/Ø#ò/Ø'-ñ/ð 	/r   N)r   r   r   r   r   r   r$   r   r   r   r   r   0   s$   „ ÙAØ3€Ið/¨Sð /¸Cð /ÀCô /r   r   c                   ó,   — e Zd ZdZdZej                  Zy)ÚDNSz&Client annotated "dns" ACME challenge.©r	   r   N)r   r   r   r   r   r   r&   Ú	acme_typer   r   r   r&   r&   :   s   „ Ù0Ø$€IØ—‘Ir   r&   c                   ó,   — e Zd ZdZdZej                  Zy)ÚOtherz3Client annotated ACME challenge of an unknown type.r'   N)r   r   r   r   r   r   r   r(   r   r   r   r*   r*   @   s   „ Ù=Ø$€IØ×$Ñ$Ir   r*   )r   ÚloggingÚtypingr   r   ÚjosepyÚjoseÚacmer   Úacme.challengesr   Ú	getLoggerr   ÚloggerÚImmutableMapr   r   r&   r*   r   r   r   ú<module>r4      si   ðñó& Ý Ý ã å Ý %à	ˆ×	Ñ	˜8Ó	$€ô*˜×*Ñ*ô *ô /Ð);ô /ôÐ
ô ô%Ðõ %r   