
    i                        d dl mZ d dlZd dlZd dlmZ 	 dddZ	 dddZ	 dddZej	        dk    rd dl
Z
e
j        ZdS d dlZej        ZdS )    )annotationsN)TracebackTypexstr | bytesencoding
str | Noneerrorsreturnbytesc                   t          | t                    r| S t          | t                    s$t          dt	          |           j                   |s|r|                     |pd|pd          S |                                 S Nznot expecting type zutf-8strict)r	   )
isinstancer   str	TypeErrortype__name__encoder   r   r	   s      S/root/projects/butler/venv/lib/python3.11/site-packages/urllib3_future/util/util.pyto_bytesr      s     !U B3 B@d1gg.>@@AAA H6 Hxx+GF4FhxGGG88::    r   c                   t          | t                    r| S t          | t                    s$t          dt	          |           j                   |s|r|                     |pd|pd          S |                                 S r   )r   r   r   r   r   r   decoder   s      r   to_strr      s     !S B5!! B@d1gg.>@@AAA H6 Hxx+GF4FhxGGG88::r   tptype[BaseException] | NonevalueBaseExceptiontbTracebackType | Nonetyping.NoReturnc                V    	 |j         |ur|                    |          |# d }d }w xY wN)__traceback__with_traceback)r   r   r    s      r   reraiser'       sA    
b((&&r***				s    " ()      )NN)r   r   r   r   r	   r   r
   r   )r   r   r   r   r	   r   r
   r   r$   )r   r   r   r   r    r!   r
   r"   )
__future__r   typingsystypesr   r   r   r'   version_infoinspectiscoroutinefunctionasyncio r   r   <module>r3      s    " " " " " "  



       GK	 	 	 	 	 GK	 	 	 	 	  $    $ wNNN!5NNN!5r   