U
    Le                     @   sP   zd dl mZmZ W n  ek
r4   d dl mZ Y nX ddddi i fddZdS )    )	Parameter	Signature)formatargspecN c           
         s   d kri rt nd} fddt| |t |  D }|rT|t|tj | fdd|D  |r|t|tj  dtj	}	t
t||	dS )Nr   c              
      s>   g | ]6\}}t |t j|d kr$| nt j |t jdqS )r   defaultZ
annotation)r   ZPOSITIONAL_OR_KEYWORDemptyget).0iarg)annotationsdefaultsr   .lib/python3.8/site-packages/wrapt/arguments.py
<listcomp>   s   z!formatargspec.<locals>.<listcomp>c              	   3   s4   | ],}t |t j|t j |t jd V  qdS )r   N)r   ZKEYWORD_ONLYr	   r   )r
   Z	kwonlyarg)r   kwonlydefaultsr   r   	<genexpr>   s   z formatargspec.<locals>.<genexpr>return)return_annotation)len	enumerateappendr   ZVAR_POSITIONALextendZVAR_KEYWORDr	   r   r   str)
argsZvarargsZvarkwr   Z
kwonlyargsr   r   Z	ndefaultsZ
parametersr   r   )r   r   r   r   r      s    r   )inspectr   r   ImportErrorr   r   r   r   r   <module>   s     