§
    ~Štj¢  ã            	       óØ  — U d Z ddlZddlZddlmZ ddlmZ ddlmZmZ ddl	m
Z
 dd	lmZ  ed
¦  «        j        Z ed¦  «        j        Z ed¦  «        j        Z ed¦  «        j        Z ed¦  «        j        Z ed¦  «        j        Z ed¦  «        j        ZdZee         ed<   dZee         ed<   dZee         ed<   ej        dee         fd„¦   «         Zdede ddfd„Z!ese
re!Z"n	 ddl#m$Z$ e$Z"n# e%$ r e!Z"Y nw xY w ej&        d¦  «        Z'eee(                  ed<    ej&        d¦  «        Z)eee(                  ed<   d(d!e(dz  d"e*de+ee*f         fd#„Z,	 d)d%ed"e*d&e*de(fd'„Z-dS )*z1Helpers for WebSocket protocol versions 13 and 8.é    N)ÚPattern)ÚStruct)ÚTYPE_CHECKINGÚFinalé   )ÚNO_EXTENSIONSé   )ÚWSHandshakeErrorz!Qz!Hz!BBz!BBHz!BBQz!Li @  ÚMSG_SIZEé   ÚMASK_LENs$   258EAFA5-E914-47DA-95CA-C5AB0DC85B11ÚWS_KEYÚreturnc                  ó4   — d„ t          d¦  «        D ¦   «         S )Nc                 ó`   ‡— g | ]*Št          ˆfd „t          d¦  «        D ¦   «         ¦  «        ‘Œ+S )c              3   ó"   •K  — | ]	}|‰z  V — Œ
d S ©N© )Ú.0ÚaÚbs     €úX/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/aiohttp/_websocket/helpers.pyú	<genexpr>z(_xor_table.<locals>.<listcomp>.<genexpr>   s'   øè è € Ð,Ð,˜A�!�a‘%Ð,Ð,Ð,Ð,Ð,Ð,ó    é   )ÚbytesÚrange)r   r   s    @r   ú
<listcomp>z_xor_table.<locals>.<listcomp>   s<   ø€ ÐAÐAÐA°�EÐ,Ð,Ð,Ð,¥ s¡¤Ð,Ñ,Ô,Ñ,Ô,ÐAÐAÐAr   r   )r   r   r   r   Ú
_xor_tabler      s   € àAÐAµe¸C±j´jÐAÑAÔAÐAr   ÚmaskÚdatac                 óê  ‡— t          |t          ¦  «        s
J |¦   «         ‚t          | ¦  «        dk    s
J | ¦   «         ‚|r³t          ¦   «         Šˆfd„| D ¦   «         \  }}}}|ddd…                              |¦  «        |ddd…<   |ddd…                              |¦  «        |ddd…<   |ddd…                              |¦  «        |ddd…<   |ddd…                              |¦  «        |ddd…<   dS dS )aw  Websocket masking function.

    `mask` is a `bytes` object of length 4; `data` is a `bytearray`
    object of any length. The contents of `data` are masked with `mask`,
    as specified in section 5.3 of RFC 6455.

    Note that this function mutates the `data` argument.

    This pure-python implementation may be replaced by an optimized
    version when available.

    r   c              3   ó(   •K  — | ]}‰|         V — Œd S r   r   )r   ÚnÚ
_XOR_TABLEs     €r   r   z)_websocket_mask_python.<locals>.<genexpr>1   s'   øè è € Ð2Ð2¨�j ”mÐ2Ð2Ð2Ð2Ð2Ð2r   Nr	   r   é   )Ú
isinstanceÚ	bytearrayÚlenr   Ú	translate)r    r!   r   r   ÚcÚdr%   s         @r   Ú_websocket_mask_pythonr-      s  ø€ õ �d�IÑ&Ô&Ð,Ð,¨Ñ,Ô,Ð&Ýˆt‰9Œ9˜Š>ˆ>ˆ>˜4‰>Œ>ˆ>àð -Ý‘\”\ˆ
Ø2Ð2Ð2Ð2¨TÐ2Ñ2Ô2‰
ˆˆ1ˆa�Ø˜˜˜1˜”I×'Ò'¨Ñ*Ô*ˆˆSˆSˆqˆS‰	Ø˜!˜$˜Q˜$”Z×)Ò)¨!Ñ,Ô,ˆˆQˆT�ˆT‰
Ø˜!˜$˜Q˜$”Z×)Ò)¨!Ñ,Ô,ˆˆQˆT�ˆT‰
Ø˜!˜$˜Q˜$”Z×)Ò)¨!Ñ,Ô,ˆˆQˆT�ˆT‰
ˆ
ˆ
ð-ð -r   )Ú_websocket_mask_cythonz�^(?:;\s*(?:(server_no_context_takeover)|(client_no_context_takeover)|(server_max_window_bits(?:=(\d+))?)|(client_max_window_bits(?:=(\d+))?)))*$Ú
_WS_EXT_REzpermessage-deflate([^,]+)?Ú_WS_EXT_RE_SPLITFÚextstrÚisserverc                 ó²  — | sdS d}d}t                                | ¦  «        D �]0}|                     d¦  «        }|sd} �nt                               |¦  «        }|rÎd}|r_|                     d¦  «        r1t          |                     d¦  «        ¦  «        }|dk    s|dk     rd}Œ…|                     d¦  «        rd} n”|                     d	¦  «        r=t          |                     d	¦  «        ¦  «        }|dk    s|dk     rt          d
¦  «        ‚|                     d¦  «        rd} n)|s%t          d|                     d¦  «        z   ¦  «        ‚�Œ2||fS )N)r   Fr   Fr	   é   r   é	   Té   zInvalid window sizer   z#Extension for deflate not supported)r0   ÚfinditerÚgroupr/   ÚmatchÚintr
   )r1   r2   ÚcompressÚ
notakeoverÚextÚdefextr9   s          r   Úws_ext_parser?   N   s‡  € Øð Øˆxà€HØ€JÝ×(Ò(¨Ñ0Ô0ð (Yñ (YˆØ—’˜1‘”ˆàð 	ØˆHØ‰EÝ× Ò  Ñ(Ô(ˆØð !	YØˆHØð ð —;’;˜q‘>”>ð !Ý" 5§;¢;¨q¡>¤>Ñ2Ô2�Hð
   "’}�}¨°1ª¨Ø#$˜Ø Ø—;’;˜q‘>”>ð &Ø!%�Jà�à—;’;˜q‘>”>ð FÝ" 5§;¢;¨q¡>¤>Ñ2Ô2�Hð
   "’}�}¨°1ª¨Ý.Ð/DÑEÔEÐEØ—;’;˜q‘>”>ð &Ø!%�Jà�àð 	YÝ"Ð#HÈ3Ï9Ê9ÐUVÉ<Ì<Ñ#WÑXÔXÐXñ	Yð �ZÐÐr   r4   r;   Úserver_notakeoverc                 ó  — | dk     s| dk    rt          d¦  «        ‚dg}|s|                     d¦  «         | dk     r%|                     dt          | ¦  «        z   ¦  «         |r|                     d¦  «         d                     |¦  «        S )	Nr5   r4   zCCompress wbits must between 9 and 15, zlib does not support wbits=8zpermessage-deflateÚclient_max_window_bitszserver_max_window_bits=Úserver_no_context_takeoverz; )Ú
ValueErrorÚappendÚstrÚjoin)r;   r2   r@   Ú
enabledexts       r   Ú
ws_ext_genrI   �   s«   € ð
 �!‚|€|�x "’}�}ÝØQñ
ô 
ð 	
ð 'Ð'€JØð 4Ø×ÒÐ2Ñ3Ô3Ð3à�"‚}€}Ø×ÒÐ3µc¸(±m´mÑCÑDÔDÐDØð 8Ø×ÒÐ6Ñ7Ô7Ð7ð �9Š9�ZÑ Ô Ð r   )F)r4   FF).Ú__doc__Ú	functoolsÚrer   Ústructr   Útypingr   r   Úhelpersr   Úmodelsr
   Úunpack_fromÚUNPACK_LEN3ÚunpackÚUNPACK_CLOSE_CODEÚpackÚ	PACK_LEN1Ú	PACK_LEN2Ú	PACK_LEN3ÚPACK_CLOSE_CODEÚPACK_RANDBITSr   r:   Ú__annotations__r   r   r   Ú	lru_cacheÚlistr   r(   r-   Úwebsocket_maskr    r.   ÚImportErrorÚcompiler/   rF   r0   ÚboolÚtupler?   rI   r   r   r   ú<module>rc      sÊ  ðØ 7Ð 7Ð 7à Ð Ð Ð Ø 	€	€	€	Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'à #Ð #Ð #Ð #Ð #Ð #Ø $Ð $Ð $Ð $Ð $Ð $àˆf�T‰lŒlÔ&€Ø�F˜4‘L”LÔ'Ð ØˆF�5‰MŒMÔ€	ØˆF�6‰NŒNÔ€	ØˆF�6‰NŒNÔ€	Ø�&˜‘,”,Ô#€Ø��t‘”Ô!€Ø€ˆ%�Œ*Ð Ð Ñ Ø€ˆ%�Œ*Ð Ð Ñ à>€ˆˆeŒÐ >Ð >Ñ >ð ÔðB�D˜”Kð Bð Bð Bñ ÔðBð- ð -¨ið -¸Dð -ð -ð -ð -ð2 ð 0�Mð 0Ø+€N€Nð0Ø0Ð0Ð0Ð0Ð0Ð0à/ˆˆøØð 0ð 0ð 0Ø/ˆˆˆð0øøøð #- "¤*ð/ñ#ô #€
ˆE�'˜#”,Ôð ð ñ ð )3¨¬
Ð3PÑ(QÔ(QÐ �%˜ œÔ%Ð QÐ QÑ Qð0 ð 0 ˜˜t™ð 0 ¨tð 0 ÀÀcÈ4ÀiÔ@Pð 0 ð 0 ð 0 ð 0 ðh KPð!ð !Øð!Ø"&ð!ØCGð!àð!ð !ð !ð !ð !ð !s   Ã.C7 Ã7DÄ D