+
    Bi                         ^ RI Ht ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^RIHtH	t	H
t
HtHtHtHtHt ^RIHt . ROt]P&                  ! R4      tRR R lltR	 R
 ltR R ltRR R lltR R ltR# )    )absolute_import)divisionN)
__author____copyright__	__email____license____summary__	__title____uri____version__)_bcrypts   ^\$2y\$c                <    V ^8  d   QhR\         R\        R\        /# )   roundsprefixreturn)intbytes)formats   "M/var/www/html/photoedit/myenv/lib/python3.14/site-packages/bcrypt/__init__.py__annotate__r   8   s!      C e      c                    VR9  d   \        R4      hV ^8  g   V ^8  d   \        R4      h\        P                  ! ^4      p\        P                  P                  R^4      p\        P                  P                  W2\        V4      4       RV,           R,           RV ,          P                  R4      ,           R,           \        P                  P                  V4      ,           # )   2az%Supported prefixes are b'2a' or b'2b'zInvalid roundschar[]   $z%2.2uascii)r      2b)
ValueErrorosurandomr   ffinewlibencode_base64lenencodestring)r   r   saltoutputs   &&  r   gensaltr+   8   s    ^#@AAzVb[)**::b>D[[__Xr*FKKfCI6 	
	
	 V
#
#G
,	- 		
 ++

V
$	%r   c                <    V ^8  d   QhR\         R\         R\         /# )r   passwordr)   r   )r   )r   s   "r   r   r   M   s!     #> #>U #>% #>E #>r   c                    \        V \        4      '       g   \        V\        4      '       d   \        R 4      hRV 9   d   \        R4      hV R,          p T\        P                  RV4      r\        P                  P                  R^4      p\        P                  P                  WV\        V4      4      pV^ 8w  d   \        R4      hVR,          \        P                  P                  V4      R,          ,           # )	&Strings must be encoded before hashing    z"password may not contain NUL bytes:NH   Ns   $2b$r   zInvalid salt:N   N:r2   NN)
isinstancestr	TypeErrorr   _normalize_resubr   r"   r#   r$   bcrypt_hashpassr&   r(   )r-   r)   original_salthashedretvals   &&   r   hashpwr<   M   s    (C  JtS$9$9@AA(=>> }H  1 1'4 @4[[__Xs+F[[((VMF{(( w{{11&9"===r   c                <    V ^8  d   QhR\         R\         R\        /# )r   r-   hashed_passwordr   )r   bool)r   s   "r   r   r   s   s!     
5 
5e 
5e 
5 
5r   c                     \        V \        4      '       g   \        V\        4      '       d   \        R 4      hRV 9   g   RV9   d   \        R4      h\	        W4      p\
        P                  ! W!4      # )z'Strings must be encoded before checkingr0   z6password and hashed_password may not contain NUL bytes)r3   r4   r5   r   r<   hmaccompare_digest)r-   r>   rets   && r   checkpwrD   s   sc    (C  J$D$DABB(g8D
 	
 
+Cs44r   c                `    V ^8  d   QhR\         R\         R\        R\        R\        R\         /# )r   r-   r)   desired_key_bytesr   ignore_few_roundsr   )r   r   r?   )r   s   "r   r   r      sD     &9 &9&9
&9 &9 	&9
 &9 &9r   c           
         \        V \        4      '       g   \        V\        4      '       d   \        R 4      h\        V 4      ^ 8X  g   \        V4      ^ 8X  d   \	        R4      hV^ 8:  g   VR8  d   \	        R4      hV^8  d   \	        R4      hV^28  d5   V'       g-   \
        P                  ! RP                  V4      \        ^R7       \        P                  P                  RV4      p\        P                  P                  V \        V 4      V\        V4      V\        V4      V4      p\        V^ 8H  4       \        P                  P                  WR4      R,          # )	r/   z#password and salt must not be emptyi   zdesired_key_bytes must be 1-512zrounds must be 1 or morezrWarning: bcrypt.kdf() called with only {0} round(s). This few is not secure: the parameter is linear, like PBKDF2.)
stacklevelz	uint8_t[]:NNN)r3   r4   r5   r&   r   warningswarnr   UserWarningr   r"   r#   r$   bcrypt_pbkdf_bcrypt_assertbuffer)r-   r)   rF   r   rG   keyress   &&&&&  r   kdfrR      s    (C  JtS$9$9@AA
8}SY!^>??A!2S!8:;;z344{, 	PfVn	
 ++//+'8
9C
++
"
"#h-s4y#s3xC 3!8;;c5a88r   c                (    V ^8  d   QhR\         RR/# )r   okr   N)r?   )r   s   "r   r   r      s     5 5t 5 5r   c                 ,    V '       g   \        R 4      hR# )zbcrypt assertion failedN)SystemError)rT   s   &r   rN   rN      s    344 r   )r
   r	   r   r   r   r   r   r   r+   r<   rR   rD   )   r   )F)
__future__r   r   rA   r    rerJ   	__about__r   r   r   r   r	   r
   r   r    r   __all__compiler6   r+   r<   rD   rR   rN    r   r   <module>r_      s_     '   	 	 	 	 	   

;'*#>L
5&9R5r   