
    8Cfm                         d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dlm	Z	 d dl
mZ ddlmZ ddlmZ dZ ej"                  d	      Zdd
efdZd ddd
efdZdd
efdZy)    N)Path)token_urlsafe)dedent)quote   )extract_variables)loggerz)/usr/.*|.*(site-packages|dist-packages).*returnc           
         g }| xs t        j                         d   } | r<|j                  |        t        | dd      rnt        | d      xs t        | d      } | r<|D cg c]  }t	        |fi ||d   u r|ni  c}S c c}w )z)Extract information on current exception.r   __suppress_context__F	__cause____context__r   )sysexc_infoappendgetattrextract_exception)exckwargschaines       O/var/www/highfloat_scraper/venv/lib/python3.12/site-packages/tracerite/trace.pyextract_chainr      s    E

""C
S3.6c;'F73+F	  LQFG!A!uQx-RA  s    A?)skip_outmost
skip_untilc                   | j                   }	 t        j                  |      }|r%t        |      D ]  \  }}||j                  v s|} n ||d  }t        | dd      xs t        |       }|j                  dd      d   }t        |      dkD  r$t        |      dkD  r|d d	  d
|dd   }n|d d  d}	 t        | t               }t        ||      }	t        t!        |       j"                  ||t%        |       |	xs g       S # t        $ r t	        j
                  d       g }Y w xY w# t        $ r t	        j
                  d       d }	Y xw xY w)NzBug in inspect?message 
r   r   d   i  (   u    ··· i<   u    ···)suppress_innerzError extracting traceback)typer   summaryreprframes)__traceback__inspectgetinnerframes
IndexErrorr	   	exception	enumeratefilenamer   strsplitlen
isinstance	Exceptionextract_framesdictr$   __name__r&   )
r   r   r   tbiframer   r%   suppressr'   s
             r   r   r   $   si   	
B##B' !" 	HAuU^^+ 	 
LM	BaB'13q6GmmD!$Q'G
7|cw<$ "hwst}o>G "g.G!!Y//8< !W!W| 3  *+,  56s#   C? 1D% ? D"!D"% EEc                 p   | sg S g }t        d t        |       D        | d         j                  }| D ]  \  }}}}}}	|j                  j	                  dd      r(|j
                  j	                  dd      rE|| d   d   u r|rdnd}
n	||u rd}
nd	}
g }	 t        j                  |      \  }}|dk(  rd
}|t        d||z
  dz
        t        d||z
  dz          }|t        d||z
  dz
        z  }t        dj                  |            }i }d }	 t        j                  j                  |   }d| d}d }|rt#        |      j%                         rt#        |      j'                         }dt)        |j+                                d| |d<   t#        j,                         }||j.                  v r6|j1                  |      }t        dt)        |j+                                |d<   |j+                         }|s7d}t3        |      dkD  r"|j5                  ddt3        |      dz
        d
z   }||d  }|dk(  rd }n_	 t        d |j
                  j7                         D              }|j8                   d| }dj                  |j=                  d      dd        }|j?                  tA        dtC        d       |
|||r|d   jE                         nd ||||tG        |j
                  |                   |s||u s |S  |S # t        $ r d}|
d	k(  rY Y w xY w# t        t         f$ r Y w xY w# t:        $ r Y w xY w) Nc              3   z   K   | ]3  }|j                   st        j                  |j                        r0| 5 y wN)code_contextlibdir	fullmatchr.   ).0fs     r   	<genexpr>z!extract_frames.<locals>.<genexpr>R   s'     XqANN6;K;KAJJ;WXs   ;;;__tracebackhide__Fr   stoperrorwarningcallr         r   zIn []zvscode://file/:zVS Codez/edit/Jupyterr!   /
      z<module>c              3   T   K   | ]   \  }}|d v r||dk(  r|j                   n| " yw))selfclsNrS   )	__class__)rA   nvs      r   rC   z!extract_frames.<locals>.<genexpr>   s7      1O+ $%;AKKA5s   &(.ztb-   )id	relevancer.   locationcodelinelinenolinenostartlinesfunctionurls	variables)$nextreversedr9   	f_globalsgetf_localsr)   getsourcelinesmaxr   joinOSErroripythoncompile_filename_mapAttributeErrorKeyErrorr   is_fileresolver   as_posixcwdparentsrelative_tor1   rfinditemsr6   StopIterationr0   r   r5   r   stripr   )r7   r#   r'   bug_in_framer9   r.   r_   rb   r^   _r\   ra   startrc   r]   
ipython_infnrv   r0   rT   s                       r   r4   r4   J   s   	F XHRLX
2 e  ;= V6x8Q??2E:>>159BrF1I #1gIl"!II	"11%8LE5z#a%"!45c!Ve^a=O6PQESFUNR/00E2775>*E 	 66x@Jj\+HH X..0h'')B .uR[[]/C.DAfXNDO((*Cbjj ^^C(&'-eBKKM.B-C%D4	?{{}HE8}r! sBH0BCaG'Hz!H  % 4 4 6 
 "ll^1XJ7 xxs 3BC 89Hd]2&'(,4Xa[&&($'>
 	 e|3MoVn M  	EF" #	 ) 		> ! s7   A3K9%L1;L)9LLL&%L&)	L54L5r=   )F)r)   osrer   pathlibr   secretsr   textwrapr   urllib.parser   	inspectorr   loggingr	   rn   ro   r?   listr   r5   r   r4        r   <module>r      sk     	 	 
  !   (   
@	A  *+t # #Lb br   