Ë
    ‹M¯h~  ã                  óT   — d dl mZ d dlZd dlZd dlZd dlZddgZdZd	d„Zd
d„Z	dd„Z
y)é    )ÚannotationsNÚ
accept_keyÚ
apply_maskz$258EAFA5-E914-47DA-95CA-C5AB0DC85B11c                 ór   — t        j                  d«      } t        j                  | «      j	                  «       S )zB
    Generate a random key for the Sec-WebSocket-Key header.

    é   )ÚsecretsÚtoken_bytesÚbase64Ú	b64encodeÚdecode)Úkeys    úh/var/www/pru.catia.catastroantioquia-mas.com/valormasv2/lib/python3.12/site-packages/websockets/utils.pyÚgenerate_keyr      s.   € ô
 ×
Ñ
˜bÓ
!€CÜ×Ñ˜CÓ ×'Ñ'Ó)Ð)ó    c                ó¸   — t        j                  | t        z   j                  «       «      j	                  «       }t        j                  |«      j                  «       S )z
    Compute the value of the Sec-WebSocket-Accept header.

    Args:
        key: Value of the Sec-WebSocket-Key header.

    )ÚhashlibÚsha1ÚGUIDÚencodeÚdigestr
   r   r   )r   r   s     r   r   r      sB   € ô <‰<˜œt™×+Ñ+Ó-Ó.×5Ñ5Ó7€DÜ×Ñ˜DÓ!×(Ñ(Ó*Ð*r   c                ób  — t        |«      dk7  rt        d«      ‚t        j                  | t        j
                  «      }|t        | «      dz  z  |dt        | «      dz   z   }t        j                  |t        j
                  «      }||z  j                  t        | «      t        j
                  «      S )z
    Apply masking to the data of a WebSocket message.

    Args:
        data: Data to mask.
        mask: 4-bytes mask.

    é   zmask must contain 4 bytesN)ÚlenÚ
ValueErrorÚintÚ
from_bytesÚsysÚ	byteorderÚto_bytes)ÚdataÚmaskÚdata_intÚmask_repeatedÚmask_ints        r   r   r   $   s‰   € ô ˆ4ƒyA‚~ÜÐ4Ó5Ð5ä~‰~˜d¤C§M¡MÓ2€HØœC ›I¨™NÑ+¨d°?´S¸³YÀ±]Ð.CÑC€MÜ~‰~˜m¬S¯]©]Ó;€HØxÑ×)Ñ)¬#¨d«)´S·]±]ÓCÐCr   )ÚreturnÚstr)r   r&   r%   r&   )r    Úbytesr!   r'   r%   r'   )Ú
__future__r   r
   r   r   r   Ú__all__r   r   r   r   © r   r   ú<module>r+      s7   ðÝ "ã Û Û Û 
ð ˜Ð
&€ð .€ó*ó	+ôDr   