
    /h                       d dl mZ d dlZd dlZd dlZd dlZddlmZ 	 dddZ	ddZ
ddZej         ej         d                    d          Z ej        d          Zej        Z ej        dej                  ZddZddZdS )     )annotationsN   )BadDatautf-8strictsstr | bytesencodingstrerrorsreturnbytesc                \    t          | t                    r|                     ||          } | S )N)
isinstancer   encode)r   r
   r   s      H/var/www/html/venv/lib/python3.11/site-packages/itsdangerous/encoding.py
want_bytesr      s.     !S 'HHXv&&H    stringc                n    t          |           } t          j        |                               d          S )z^Base64 encode a string of bytes or text. The resulting bytes are
    safe to use in URLs.
       =)r   base64urlsafe_b64encoderstrip)r   s    r   base64_encoder      s0     F#F++224888r   c                    t          | dd          } | dt          |            dz  z  z  } 	 t          j        |           S # t          t
          f$ r}t          d          |d}~ww xY w)zOBase64 decode a URL-safe string of bytes or text. The result is
    bytes.
    asciiignore)r
   r   r      zInvalid base64-encoded dataN)r   lenr   urlsafe_b64decode	TypeError
ValueErrorr   )r   es     r   base64_decoder%      s     BBBF
ds6{{lQ&''F<'///z" < < <344!;<s   A A'A""A'z-_=r   z>Qzt.Callable[[bytes], tuple[int]]numintc                F    t          |                               d          S )N    )_int_to_byteslstrip)r&   s    r   int_to_bytesr,   1   s    $$W---r   bytestrc                T    t          |                     dd                    d         S )N   r)   r   )_bytes_to_intrjust)r-   s    r   bytes_to_intr2   5   s#    q'2233A66r   )r   r   )r   r	   r
   r   r   r   r   r   )r   r	   r   r   )r&   r'   r   r   )r-   r   r   r'   )
__future__r   r   r   structtypingtexcr   r   r   r%   ascii_lettersdigitsr   _base64_alphabetStruct_int64_structpackr*   castunpackr0   r,   r2    r   r   <module>rA      s"   " " " " " "              <D    9 9 9 9
< 
< 
< 
< *>FM>>>EEgNN d##"8-:NOO. . . .7 7 7 7 7 7r   