
    iG              	          S SK JrJr   / SQr " S S5      r S SKJr  S\\\4   S\	4S jr
S\\\4   S\	4S jrS\S\\   4S jrS\S\\   4S jrg! \ a&    S rS	r/ S
QrS\S\S\S\4S jrS\\\4   S\	4S jr
 NRf = f)    )UnionOptional)NoLockvalidate_utf8extract_err_messageextract_error_codec                   (    \ rS rSrSS jrSS jrSrg)r      Nc                     g N )selfs    =C:\des-py\RoboSAPF\venv\Lib\site-packages\websocket\_utils.py	__enter__NoLock.__enter__           c                     g r   r   )r   exc_type	exc_value	tracebacks       r   __exit__NoLock.__exit__   r   r   r   )returnN)__name__
__module____qualname____firstlineno__r   r   __static_attributes__r   r   r   r   r      s    r   r   )Utf8Validatorutfbytesr   c                 >    [        5       R                  U 5      S   nU$ 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.         r1   r1      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'   r3   r'   r3   r'   r'   r'   r3   r'   r'   r'   r'   r'   r3   r'   r3   r'   r'   r'   r3   r'   r'   r'   r'   r'   r'   r'   r'   r'   r'   statecodepchc                 r    [         U   nU [        :w  a  US-  US-  -  OSU-	  U-  n[         SU -   U-      n X4$ )N?   r1         )_UTF8D_UTF8_ACCEPT)r9   r:   r;   tps       r   _decoderC     sS    BZ ,1L+@R$Y5A:&PR
VXGX 	 sU{R'(|r   c                 l    [         nSnU  H&  n[        X[        U5      5      u  pU[        :X  d  M&    g   g)Nr   FT)rA   rC   int_UTF8_REJECT)r!   r9   r:   is       r   r&   r&     s8    A"5Q8LE$ 
 r   c                     [        U 5      $ )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                 H    U R                   (       a  U R                   S   nU$ g r#   )args)rI   exception_messages     r   r   r     s!    ~~!*!2  r   c                     U R                   (       aL  [        U R                   5      S:  a3  [        U R                   S   [        5      (       a  U R                   S   $ S $ g )Nr(   r   )rK   len
isinstancerE   )rI   s    r   r   r     sE    ~~#inn-1$.y~~a/@#$F$Fy~~a PDPr   N)typingr   r   __all__r   wsaccel.utf8validatorr    strbytesboolr&   ImportErrorrA   rF   r@   rE   tuplerC   r   	Exceptionr   r   r   r   r   <module>rY      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 )B ?B 