???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................3
¢báWh
  ã               @   s¸   d Z dZdZdZdZdZdZdZdZeeeeeeedœZ	d	eiZ
ed
d„ e	jƒ D ƒƒZedd„ e
jƒ D ƒƒZdd„ ZeeƒZeeƒZdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ ZdS )zDNS Message Flags.i €  i   i   é   é€   é    é   )ÚQRÚAAÚTCÚRDÚRAÚADÚCDÚDOc             c   s   | ]\}}||fV  qd S )N© )Ú.0ÚxÚyr   r   ú/usr/lib/python3.6/flags.pyú	<genexpr>3   s    r   c             c   s   | ]\}}||fV  qd S )Nr   )r   r   r   r   r   r   r   5   s    c             C   s    t | jƒ ƒ}|jƒ  |jƒ  |S )N)ÚlistÚitemsÚsortÚreverse)ÚtableÚorderr   r   r   Ú_order_flags8   s    r   c             C   s.   d}| j ƒ }x|D ]}|||jƒ  B }qW |S )Né    )ÚsplitÚupper)Útextr   ÚflagsÚtokensÚtr   r   r   Ú
_from_textC   s
    
r!   c             C   s6   g }x&|D ]\}}| |@ dkr
|j |ƒ q
W dj|ƒS )Nr   ú )ÚappendÚjoin)r   r   r   Z
text_flagsÚkÚvr   r   r   Ú_to_textK   s
    r'   c             C   s
   t | tƒS )zZConvert a space-separated list of flag text values into a flags
    value.
    @rtype: int)r!   Ú_by_text)r   r   r   r   Ú	from_textS   s    r)   c             C   s   t | ttƒS )z]Convert a flags value into a space-separated list of flag text
    values.
    @rtype: string)r'   Ú	_by_valueÚ_flags_order)r   r   r   r   Úto_text[   s    r,   c             C   s
   t | tƒS )zdConvert a space-separated list of EDNS flag text values into a EDNS
    flags value.
    @rtype: int)r!   Ú_edns_by_text)r   r   r   r   Úedns_from_textc   s    r.   c             C   s   t | ttƒS )zhConvert an EDNS flags value into a space-separated list of EDNS flag
    text values.
    @rtype: string)r'   Ú_edns_by_valueÚ_edns_flags_order)r   r   r   r   Úedns_to_textk   s    r1   N)Ú__doc__r   r   r   r   r	   r
   r   r   r(   r-   Údictr   r*   r/   r   r+   r0   r!   r'   r)   r,   r.   r1   r   r   r   r   Ú<module>   s6   