<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
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   