
    ,iG              	           d dl mZmZ 	 g dZ G d d      Z	 d dlmZ deeef   de	fdZ
deeef   de	fdZdedee   fdZdedee   fdZy# e$ r$ d Zd	Zg d
ZdedededefdZdeeef   de	fdZ
Y Lw xY w)    )UnionOptional)NoLockvalidate_utf8extract_err_messageextract_error_codec                       e Zd ZddZddZy)r   Nc                      y N )selfs    _/var/www/system.tvplus.app.br/jogos/scrap/venv/lib/python3.12/site-packages/websocket/_utils.py	__enter__zNoLock.__enter__           c                      y r   r   )r   exc_type	exc_value	tracebacks       r   __exit__zNoLock.__exit__   r   r   )returnN)__name__
__module____qualname__r   r   r   r   r   r   r      s    r   r   )Utf8Validatorutfbytesr   c                 >    t               j                  |       d   }|S Nr   )r   validate)r   results     r   _validate_utf8r!   %   s    $//9!<r      (l  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   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$   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'   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"      $   <   `   T   r"   r"   r"   0   H   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"   r"   r/   r"   r"   r"   r"   r"   r/   r"   r/   r"   r"   r"   r/   r"   r"   r"   r"   r"   r"   r"   r"   r"   r"   statecodepchc                 r    t         |   }| t        k7  r|dz  |dz  z  nd|z	  |z  }t         d| z   |z      } | |fS )N?   r,         )_UTF8D_UTF8_ACCEPT)r5   r6   r7   tps       r   _decoder?     sU    BZ ,1L+@R$Y5A:&PR
VXGX 	 sU{R'(e|r   c                 j    t         }d}| D ]&  }t        ||t        |            \  }}|t        k(  s& y y)Nr   FT)r=   r?   int_UTF8_REJECT)r   r5   r6   is       r   r!   r!     sA     	A"5%Q8LE5$	
 r   c                     t        |       S )z
    validate utf8 byte string.
    utfbytes: utf byte string to check.
    return value: if valid utf8 string, return true. Otherwise, return false.
    )r!   )r   s    r   r   r     s     (##r   	exceptionc                 >    | j                   r| j                   d   }|S y r   )args)rE   exception_messages     r   r   r     s!    ~~!*!2  r   c                     | j                   rFt        | j                         dkD  r.t        | j                   d   t              r| j                   d   S d S y )Nr#   r   )rG   len
isinstancerA   )rE   s    r   r   r     sB    ~~#inn-1$.y~~a/@#$Fy~~a PDPr   N)typingr   r   __all__r   wsaccel.utf8validatorr   strbytesboolr!   ImportErrorr=   rB   r<   rA   tupler?   r   	Exceptionr   r   r   r   r   <module>rU      s    "$ S U 4sEz!2 t f$E#u*- $$ $9 # )  A  L LLqFfs 3 C E sEz!2 t ILs   A &A98A9