
    HAi	                     Z   S r SSKJrJrJrJrJrJrJr   SSK	J
r
Jr  SSSSS0 \S S S S S	 4S
\\   S\\   S\\   S\\\S4      S\\\      S\\\\4      S\\\4   S\\/\4   S\\/\4   S\\/\4   S\\/\4   S\\/\4   S\\/\4   S\4S jjrg! \ a	    SSK	Jr   gf = f)ae  The inspect.formatargspec() function was dropped in Python 3.11 but we need
it for when constructing signature changing decorators based on result of
inspect.getfullargspec(). The code here implements inspect.formatargspec() based
on Parameter and Signature from inspect module, which were added in Python 3.6.
Thanks to Cyril Jouve for the implementation.
    )AnyCallableListMappingOptionalSequenceTuple)	Parameter	SignatureNc                     SU -   $ )N* names    K/var/www/html/land-ocr/venv/lib/python3.13/site-packages/wrapt/arguments.py<lambda>r      s    3:    c                     SU -   $ )Nz**r   r   s    r   r   r      s    r   c                     S[        U 5      -   $ )N=repr)values    r   r   r      s    #U:Kr   c                     SU -   $ Nz -> r   )texts    r   r   r      s    6D=r   c                     S[        U 5      -   $ r   r   )annots    r   r   r      s    vU?Sr   argsvarargsvarkwdefaults.
kwonlyargskwonlydefaultsannotations	formatargformatvarargsformatvarkwformatvalueformatreturnsformatannotationreturnc                   ^^ Uc  SnTc  0 mU(       a  [        U5      OSn[        X[        U 5      -
  5       VVs/ s H\  u  p[        U[        R                  U(       a
  US:  a  X>   O[        R                  TR                  U[        R                  5      S9PM^     nnnU(       a)  UR                  [        U[        R                  5      5        UR                  UU4S jU 5       5        U(       a)  UR                  [        U[        R                  5      5        TR                  S[        R                  5      n[        [        UUS95      $ s  snnf )Nr   r   default
annotationc           
   3      >#    U  H[  n[        U[         R                  TR                  U[         R                  5      TR                  U[         R                  5      S 9v   M]     g7f)r.   N)r
   KEYWORD_ONLYgetempty).0	kwonlyargr%   r$   s     r   	<genexpr> formatargspec.<locals>.<genexpr>/   sS      
 (	 &&&**9iooF&??9iooF	 (s   A#A&r,   )return_annotation)len	enumerater
   POSITIONAL_OR_KEYWORDr4   r3   appendVAR_POSITIONALextendVAR_KEYWORDr   str)r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   	ndefaultsiarg
parametersr9   s        ``           r   formatargspecrF      s     J!N%-CM1	 $Dc$i*?@
 A //'/AF	&??3	@	 A 	 
 i1I1IJK 
 (
 	
 iy/D/DEF'OOHiooF9Z;LMNN/
s   A#E)rF   )__doc__typingr   r   r   r   r   r   r	   inspectr
   r   rA   rF   ImportErrorr   r   r   <module>rK      sp   K J J1O, "&#.2.26:)+*-.E,D,K.H1S+O3i+O#+O }+O 5c?+	+O
 Xc]++O !c!23+O S#X&+O SE3J'+O  s
++O seSj)+O seSj)+O  s
++O #C5#:.+O 
+O	  &%&s   B B*)B*