
    f j?              	          U d Z ddlmZ ddlZddlZ G d dej        j                  Zi Z	ee
ef         ed<   i Zeee
f         ed<   ej        hZej        ej        ej        ej        ej        hZ G d d	ej        j                  Zd
e
defdZdede
fdZdedefdZdedefdZ	 ddede
deddfdZej        Zej        Zej         Z ej!        Z!ej"        Z"ej#        Z#ej        Zej        Zej$        Z$ej%        Z%ej&        Z&ej'        Z'ej(        Z(ej)        Z)ej*        Z*ej+        Z+ej,        Z,ej-        Z-ej.        Z.ej/        Z/ej0        Z0ej1        Z1ej2        Z2ej3        Z3ej4        Z4ej5        Z5ej6        Z6ej7        Z7ej8        Z8ej9        Z9ej:        Z:ej        Zej;        Z;ej<        Z<ej=        Z=ej>        Z>ej?        Z?ej        Zej        Zej@        Z@ejA        ZAejB        ZBejC        ZCejD        ZDej        ZejE        ZEejF        ZFejG        ZGejH        ZHejI        ZIejJ        ZJejK        ZKejL        ZLejM        ZMejN        ZNejO        ZOejP        ZPejQ        ZQejR        ZRejS        ZSejT        ZTejU        ZUejV        ZVejW        ZWejX        ZXejY        ZYejZ        ZZej[        Z[ej\        Z\ej]        Z]ej^        Z^ej_        Z_ej`        Z`eja        Zaejb        Zbejc        Zcejd        Zdeje        Zeejf        Zfejg        Zgejh        Zheji        Ziejj        Zjejk        ZkdS )zDNS Rdata Types.    )DictNc                      e Zd ZdZdZdZdZdZdZdZ	dZ
dZd	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"d Z#d!Z$d"Z%d#Z&d$Z'd%Z(d&Z)d'Z*d(Z+d)Z,d*Z-d+Z.d,Z/d-Z0d.Z1d/Z2d0Z3d1Z4d2Z5d3Z6d4Z7d5Z8d6Z9d7Z:d8Z;d9Z<d:Z=d;Z>d<Z?d=Z@d>ZAd?ZBd@ZCdAZDdBZEdCZFdDZGdEZHdFZIdGZJdHZKdIZLdJZMdKZNdLZOdMZPdNZQdOZRdPZSdQZTdRZUdSZVdTZWeXdU             ZYeXdV             ZZeXdW             Z[eXdX             Z\eXdY             Z]eXdZ             Z^d[S )\	RdataTypezDNS Rdata Typer                           	   
                                                               !   #   $   %   &   '   )   *   +   ,   -   .   /   0   1   2   3   4   5   7   8   ;   <   =   >   ?   @   A   B   c   g   h   i   j   k   l   m                           i  i  i  i  i  i   i  c                     dS )Ni   clss    aC:\Users\Terasoftware\OneDrive\Desktop\faahhh\fyndo\fyndo\venv\Lib\site-packages\dns/rdatatype.py_maximumzRdataType._maximumr   s    u    c                     dS )NtyperR   rS   s    rU   _short_namezRdataType._short_namev       vrW   c                     dS )NTYPErR   rS   s    rU   _prefixzRdataType._prefixz   r[   rW   c                     |                     d          dk    r-	 | |                    dd                   S # t          $ r Y nw xY wt                              |          S )N-r   _)findreplaceKeyError_registered_by_textget)rT   texts     rU   _extra_from_textzRdataType._extra_from_text~   sk    99S>>Q 	4<<S1122   "&&t,,,s   7 
AAc                     |t                               |          S |                    d          dk    r|                    dd          S |S )Nra   r   r`   )_registered_by_valuerf   rb   rc   )rT   valuecurrent_texts      rU   _extra_to_textzRdataType._extra_to_text   sU     	3'++E222S!!Q& 	2''S111rW   c                     t           S )N)UnknownRdatatyperS   s    rU   _unknown_exception_classz"RdataType._unknown_exception_class   s    rW   N)___name__
__module____qualname____doc__TYPE0NONEANSMDMFCNAMESOAMBMGMRNULLWKSPTRHINFOMINFOMXTXTRPAFSDBX25ISDNRTNSAPNSAP_PTRSIGKEYPXGPOSAAAALOCNXTSRVNAPTRKXCERTA6DNAMEOPTAPLDSSSHFPIPSECKEYRRSIGNSECDNSKEYDHCIDNSEC3
NSEC3PARAMTLSASMIMEAHIPNINFOCDSCDNSKEY
OPENPGPKEYCSYNCZONEMDSVCBHTTPSDSYNCSPFUNSPECNIDL32L64LPEUI48EUI64TKEYTSIGIXFRAXFRMAILBMAILAANYURICAAAVCAMTRELAYRESINFOWALLETTADLVclassmethodrV   rZ   r^   rh   rm   rp   rR   rW   rU   r   r      s^       ED	A	
B	
B	
BE
C	
B	
B	
BD
C
CEE	B
C	BE
CD	BDH
C
C	BDD
C
C
CE	BD	BE
C
C	BEHEDFEEJDF
CE
CGJEFDEE
CF
C
C
C	BEEDDDDEE
C
C
C
CHGF	B
C  [   [   [ - - [-   [     [     rW   r   re   rj   c                       e Zd ZdZdS )ro   z$DNS resource record type is unknown.N)rq   rr   rs   rt   rR   rW   rU   ro   ro      s        ....rW   ro   rg   returnc                 6    t                               |           S )a  Convert text into a DNS rdata type value.

    The input text can be a defined DNS RR type mnemonic or
    instance of the DNS generic type syntax.

    For example, "NS" and "TYPE2" will both result in a value of 2.

    Raises ``dns.rdatatype.UnknownRdatatype`` if the type is unknown.

    Raises ``ValueError`` if the rdata type value is not >= 0 and <= 65535.

    Returns a ``dns.rdatatype.RdataType``.
    )r   	from_text)rg   s    rU   r   r      s     t$$$rW   rk   c                 6    t                               |           S )a  Convert a DNS rdata type value to text.

    If the value has a known mnemonic, it will be used, otherwise the
    DNS generic type syntax will be used.

    Raises ``ValueError`` if the rdata type value is not >= 0 and <= 65535.

    Returns a ``str``.
    )r   to_text)rk   s    rU   r   r      s     U###rW   rdtypec                 4    d| cxk    odk    nc p| t           v S )zTrue if the specified type is a metatype.

    *rdtype* is a ``dns.rdatatype.RdataType``.

    The currently defined metatypes are TKEY, TSIG, IXFR, AXFR, MAILA,
    MAILB, ANY, and OPT.

    Returns a ``bool``.
    rP      )
_metatypesr   s    rU   is_metatyper      s0     &C8Fj$88rW   c                     | t           v rdS dS )a  Is the specified type a singleton type?

    Singleton types can only have a single rdata in an rdataset, or a single
    RR in an RRset.

    The currently defined singleton types are CNAME, DNAME, NSEC, NXT, and
    SOA.

    *rdtype* is an ``int``.

    Returns a ``bool``.
    TF)_singletonsr   s    rU   is_singletonr      s      t5rW   Frdtype_textr   c                 j    | t           |<   |t          | <   |rt                              |            dS dS )a1  Dynamically register an rdatatype.

    *rdtype*, a ``dns.rdatatype.RdataType``, the rdatatype to register.

    *rdtype_text*, a ``str``, the textual form of the rdatatype.

    *is_singleton*, a ``bool``, indicating if the type is a singleton (i.e.
    RRsets of the type can have only one member.)
    N)re   rj   r   add)r   r   r   s      rU   register_typer      sD     (.$#.      rW   )F)lrt   typingr   dns.enumdnsdns.exceptionenumIntEnumr   re   str__annotations__rj   r   r   r|   r   r   r   r{   r   	exceptionDNSExceptionro   r   r   boolr   r   r   ru   rv   rw   rx   ry   rz   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rR   rW   rU   <module>r      s$  $              w  w  w  w  w   w  w  w t -/ T#y.) . . .-/ d9c>* / / /m_
 MMONO/ / / / /s}1 / / /%C %I % % % %$$9 $ $ $ $ $9	 9d 9 9 9 9 t    * ?D    $' 7; 	       * 	~K\\\m\\\~mm\m\m~\~mm\~~mmm\~\mm\~		!
~		mm

!
		~m		mmm\~~~~mmmm

		\mrW   