+
    i                     6    R t ^ RItR R ltR R ltR R ltR# )z6Password verification and bcrypt hashing for usuarios.Nc                0    V ^8  d   QhR\         R\        /# )   storedreturnstrbool)formats   "8C:\Users\joaqu\OneDrive\LojaOnline\services\passwords.py__annotate__r      s     ? ?s ?t ?    c                 T    \        V \        4      ;'       d    V P                  R 4      # )z$2)
isinstancer   
startswith)r   s   &r
   password_is_bcryptr      s"    fc">>v'8'8'>>r   c                0    V ^8  d   QhR\         R\        /# r   plainr   r   )r	   s   "r
   r   r   
   s     
 
3 
4 
r   c                 "   Ve   V f   R# \        V \        4      '       d   V P                  RRR7      p \        V 4      '       d7    \        P
                  ! VP                  R4      V P                  R4      4      # W8H  #   \         d     R# i ; i)NFutf-8replace)errors)r   bytesdecoder   bcryptcheckpwencode	Exception)r   r   s   &&r
   verify_passwordr   
   s~    }&%  wy9&!!	>>%,,w"7w9OPP ?  		s   4A? ?BBc                0    V ^8  d   QhR\         R\         /# r   )r   )r	   s   "r
   r   r      s     R R R Rr   c                     \         P                  ! V P                  R 4      \         P                  ! 4       4      P	                  R 4      # )r   )r   hashpwr   gensaltr   )r   s   &r
   hash_passwordr#      s.    ==g.0@AHHQQr   )__doc__r   r   r   r#    r   r
   <module>r&      s    < ?
Rr   