
    8Cf                         d dl Z d dlZd dlmZ ddlmZ h dZej                  ej                  ej                  ej                  fZ e j                  d      Zd Zd Zd	 Zy)
    N)reduce   )logger>   _InOutz <.* object at 0x[0-9a-fA-F]{5,}>c                    dD ch c].  }t        j                  ||      D ]  }|j                  d       0 }}}g }| j                         D ]  \  }}|t        v st        |t              r 	 t        |      j                  }||vr;	 t        |      }	t        |      }
|	s|
r|
}	nt        j                  |	      rpd}t        |      j                         D ]M  \  }}| d| }|r||vrt        |      j                  }|t        v r2|d| z  }|||t        |      ffz  }d}O |rd}	 t        t         j#                  |d            j%                  dd	      d
   }||k(  rt&        t         j#                  |d      }|rdj)                  d |D              dz   nd}	 t         j#                  |d      }|r|j                  dk7  rd| nd}|d| | | z  }|||t        |      ffz  } |S c c}}w # t        $ r Y w xY w# t&        $ r d}Y Fw xY w# t&        $ r Y Iw xY w# t        $ r t+        j,                  d       Y w xY w)N)z\w+z\w+\.\w+r   F.z in Tu   ⋯dtyper   shape   ×c              3   8   K   | ]  }t        |d z           yw)r   N)str).0ds     S/var/www/highfloat_scraper/venv/lib/python3.12/site-packages/tracerite/inspector.py	<genexpr>z$extract_variables.<locals>.<genexpr>=   s      ;QU ;     devicecpu@z of z/Variable inspector failed (please report a bug))refinditergroupitemsblacklist_names
isinstanceblacklist_typestype__name__r   repr	Exceptionno_str_conv	fullmatch	safe_varsprettyvalueobject__getattribute__rsplitAttributeErrorjoinr   	exception)	variables
sourcecodepmidentifiersrowsnamevaluetypenamestrvalue	reprvaluefoundnvmnametnamer   r   dimsdevs                       r   extract_variablesrB      s    'Q
+  	

K 
 D ( 0Pe?"j&H-	PE{++H;&u: K	 	$&&x0%e,224 	!DAq#fAaSME!e;&>  G,,E/ tH:..EUE;q>:;;D E	! F33E7CDKKCQRSTVWu$((//w?EJtyy ;U ;;cAPR 11%BC'*sxx5/@AcU)bC d4&u55 T8[%7899D]0Pb Ko   > & C "   	PNO	Ps   3G1/H'
G7 B	H'*H'-A2H .HHH'7	H H'HH'HHHH	H$!H'#H$$H''I	I	c                 |    i }t        |       D ]  }	 t        j                  | |      ||<    |S # t        $ r Y ,w xY w)z2Like vars(), but also supports objects with slots.)dirr*   r+   r-   )objretattrs      r   r(   r(   L   sP    
CC 	//T:CI
 J  		s   /	;;c           	      z   t        | t        t        f      r=dt        |       cxk  rdk  sn dt        |        dS dj	                  d | D              S t        | t
              r| j                   d| j                   S 	 t        j                  | d      }t        |t              r| j                  rt        d	 |      }|d
k  r| d   dS t        |      d
k(  rY|d   dk  rdj	                  d | D              S g | d d | dd  D cg c]  }|d }}dj	                  g |d d d|dd        S t        |      dk(  r2|d   dk  r*|d
   dk  r"| D cg c]  }|D cg c]  }|d c} c}}S 	 t        | t"              xs dt%        | j&                        v }|r| d}n't        | t$              rt%        |       }nt)        |       }t        |      dkD  r|d d dz   |dd  z   S |S c c}w c c}w c c}}w # t        t        f$ r Y t        $ r t        j                   d       Y w xY w# t        $ r d}Y w xY w)Nr   
   (z items)z, c              3   8   K   | ]  }t        |      d d   y w)NP   )r$   r   r=   s     r   r   zprettyvalue.<locals>.<genexpr>[   s     3!a"3r   r
   r   c                     | |z  S )N )xys     r   <lambda>zprettyvalue.<locals>.<lambda>b   s
    !a%     r   z.2gd   c              3   $   K   | ]  }|d  
 yw).2fNrO   rM   s     r   r   zprettyvalue.<locals>.<genexpr>h   s     $=A#wZ$=s      rV   u   …   zBPretty-printing in variable inspector failed (please report a bug)floatFx      u    … i)r    listtuplelenr.   r"   
__module__r#   r*   r+   r   r   r-   
ValueErrorr%   r   r/   rZ   r   r   r$   )valr   numelemr=   fmtrowfloatyrF   s           r   r)   r)   W   sG   #e}%3s8!r!s3xj((yy3s333#t..!3<<.11_''W5eU#		/7G!|a&&5zQ8s?99$=$===/DRa/D3rs8/DE!aW:ECE99%As2Aw%A%ABC%ABB5zQ58r>eAh"n=@AcS1Ac71AAC'D7c#))n+D Cys	C	SXsS	#
3x#~3Bx'!CI--J+ F 2AJ'  _]^_
  ss    A
G8 -G8 9G8 G(G8 2#G8 	G2G-)G2.G8 3)H, (G8 -G22G8 8H)	H)(H),H:9H:)r   types	functoolsr   loggingr   r   
ModuleTypeFunctionType
MethodTypeBuiltinFunctionTyper!   compiler&   rB   r(   r)   rO   rS   r   <module>ro      sd    	   $					 bjj<=8v(rS   