
                             S r / SQrSSKrSSKJr   SSKJr  S
S jr
 " S S5      rS	 r\" 5       r\R                  rg! \ a	    SSK	Jr   N4f = f)zGRedo the builtin repr() (representation) but with limits on most sizes.)Reprreprrecursive_repr    N)islice)	get_identc                    ^  U 4S jnU$ )zGDecorator to make a repr function return fillvalue for a recursive callc                    >^ ^ [        5       mUUU 4S jn[        T S5      Ul        [        T S5      Ul        [        T S5      Ul        [        T S0 5      Ul        U$ )Nc                    > [        U 5      [        5       4nUT;   a  T$ TR                  U5         T" U 5      nTR                  U5        U$ ! TR                  U5        f = fN)idr   adddiscard)selfkeyresult	fillvaluerepr_runninguser_functions      (lib/third_party/functools32/reprlib32.pywrapper<recursive_repr.<locals>.decorating_function.<locals>.wrapper   sc    T(IK'Cl"  S!*&t,$$S)M $$S)s   A A
__module____doc____name____annotations__)setgetattrr   r   r   r   )r   r   r   r   s   ` @r   decorating_function+recursive_repr.<locals>.decorating_function   sT    u		 %]LA!-;"=*=")-9JB"O     )r   r   s   ` r   r   r      s    * r    c                   l    \ rS rSrS rS rS rSS jrS rS r	S r
S	 rS
 rS rS rS rS rS rSrg)r   &   c                     SU l         SU l        SU l        SU l        SU l        SU l        SU l        SU l        SU l        SU l	        SU l
        g )N            (   )maxlevelmaxtuplemaxlistmaxarraymaxdictmaxsetmaxfrozensetmaxdeque	maxstringmaxlongmaxother)r   s    r   __init__Repr.__init__(   sP    r    c                 8    U R                  XR                  5      $ r   )repr1r*   )r   xs     r   r   	Repr.repr5   s    zz!]]++r    c                     [        U5      R                  nSU;   a!  UR                  5       nSR                  U5      n[	        U SU-   5      (       a  [        U SU-   5      " X5      $ U R                  X5      $ )N _repr_)typer   splitjoinhasattrr   repr_instance)r   r9   leveltypenamepartss        r   r8   
Repr.repr18   sk    7##(?NN$ExxH48+,,48!34Q>>%%a//r    c                 *   [        U5      nUS::  a
  U(       a  SnOiUS-
  n	U R                  n
[        X5       Vs/ s H
  o" X5      PM     nnXu:  a  UR                  S5        SR	                  U5      nUS:X  a  U(       a  Xd-   nU< U< U< 3$ s  snf )Nr   ...   , )lenr8   r   appendrA   )r   r9   rD   leftrightmaxitertrailnsnewlevelr8   elempiecess                r   _repr_iterableRepr._repr_iterableB   s    FA:!AqyHJJE8>q8JK8JeD+8JFK{V]]51		&!AAv%%-%E**	 Ls   Bc                 @    U R                  XSSU R                  S5      $ )N(),)rW   r+   r   r9   rD   s      r   
repr_tupleRepr.repr_tupleO   s    ""1S#t}}cJJr    c                 >    U R                  XSSU R                  5      $ )N[])rW   r,   r]   s      r   	repr_listRepr.repr_listR   s    ""1S#t||DDr    c                 \    SUR                   -  nU R                  XUSU R                  5      $ )Nzarray('%s', []))typecoderW   r-   )r   r9   rD   headers       r   
repr_arrayRepr.repr_arrayU   s+     1::-""1VT4==IIr    c                 T    [        U5      nU R                  XSSU R                  5      $ )Nzset([rf   )_possibly_sortedrW   r/   r]   s      r   repr_setRepr.repr_setY   s'    Q""1WdDKKHHr    c                 T    [        U5      nU R                  XSSU R                  5      $ )Nzfrozenset([rf   )rl   rW   r0   r]   s      r   repr_frozensetRepr.repr_frozenset]   s.    Q""1]D#'#4#46 	6r    c                 >    U R                  XSSU R                  5      $ )Nzdeque([rf   )rW   r1   r]   s      r   
repr_dequeRepr.repr_dequeb   s    ""1YdmmLLr    c                 l   [        U5      nUS:X  a  gUS::  a  gUS-
  nU R                  n/ n[        [        U5      U R                  5       H.  nU" Xt5      nU" X   U5      n	UR                  U< SU	< 35        M0     X0R                  :  a  UR                  S5        SR                  U5      n
SU
< S	3$ )
Nr   z{}z{...}rJ   z: rI   rK   {})rL   r8   r   rl   r.   rM   rA   )r   r9   rD   rR   rT   r8   rV   r   keyreprvalreprrS   s              r   	repr_dictRepr.repr_dicte   s    F6$A:g19

*1-t||<CC*GAFH-GMMgw78 = ||V]]51IIf}r    c                 x   [         R                  " US U R                   5      n[        U5      U R                  :  a}  [	        SU R                  S-
  S-  5      n[	        SU R                  S-
  U-
  5      n[         R                  " US U U[        U5      U-
  S  -   5      nUS U S-   U[        U5      U-
  S  -   nU$ Nr         rI   )builtinsr   r2   rL   maxr   r9   rD   rS   ijs         r   repr_strRepr.repr_strt   s    MM!OT^^,-q6DNN"Aq(1,-AAt~~a')*AaeaAq	l23A"1#a&(),Ar    c                    [         R                  " U5      n[        U5      U R                  :  aR  [	        SU R                  S-
  S-  5      n[	        SU R                  S-
  U-
  5      nUS U S-   U[        U5      U-
  S  -   nU$ r}   )r   r   rL   r3   r   r   s         r   repr_intRepr.repr_int}   sy    MM!q6DLL AQ*+AAt||A~a'(A"1#a&(),Ar    c                 r    [         R                  " U5      n[        U5      U R                  :  aR  [        SU R                  S-
  S-  5      n[        SU R                  S-
  U-
  5      nUS U S-   U[        U5      U-
  S  -   nU$ ! [         a'    SUR                  R                  [        U5      4-  s $ f = f)Nz<%s instance at %x>r   r~   r   rI   )	r   r   	Exception	__class__r   r   rL   r4   r   r   s         r   rC   Repr.repr_instance   s    	Ia A
 q6DMM!Aa!+,AAt}}Qq()A"1#a&(),A  	I(AKK,@,@"Q%+HHH	Is   B .B65B6)r-   r1   r.   r0   r*   r,   r3   r4   r/   r2   r+   N) )r   r   __qualname____firstlineno__r5   r   r8   rW   r^   rc   ri   rm   rp   rs   rz   r   r   rC   __static_attributes__r!   r    r   r   r   &   sM    ,0+KEJI6
Mr    r   c                 P     [        U 5      $ ! [         a    [        U 5      s $ f = fr   )sortedr   list)r9   s    r   rl   rl      s)    ay Aws   
 %%)rI   )r   __all____builtin__r   	itertoolsr   threadr   ImportError_dummy_thread32r   r   rl   aReprr   r!   r    r   <module>r      sY    M
,  * 4j jZ 	zzi  *)*s   > AA