python (3.11.7)

(root)/
lib/
python3.11/
__pycache__/
tracemalloc.cpython-311.pyc

eFddlmZmZddlmZddlZddlZddlZddl	Z	ddl
Tddl
mZmZdZ
GddZGd	d
ZdZeGdd
ZeGddeZdZGddZGddeZdZGddZGddeZGddeZGddZdZdS))SequenceIterable)total_orderingN)*)_get_object_traceback_get_tracescdD]a}t|dkr|dkr|r	d||fzcSd||fzcSt|dks|dkr|r	d||fzcSd	||fzcS|d
z}bdS)N)BKiBMiBGiBTiBdr
z%+.1f %sz%.1f %si(rz%+.0f %sz%.0f %si)abs)sizesignunits   ?/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/tracemalloc.py_format_sizer
s1

t99s??ts{{
0!T4L0000 D$<////t99y  DEMM
0!T4L0000 D$<////

c:eZdZdZdZdZdZdZdZdZ	dZ
d	S)
	StatisticzS
    Statistic difference on memory allocations between two Snapshot instance.
    	tracebackrcountc0||_||_||_dSNr)selfrrrs    r__init__zStatistic.__init__%s"	


rcDt|j|j|jfSr)hashrrrrs r__hash__zStatistic.__hash__*sT^TY
;<<<rct|tstS|j|jko|j|jko|j|jkSr)
isinstancerNotImplementedrrrrothers  r__eq__zStatistic.__eq__-sM%++	"!!%/1.I+.J%+-	/rcd|jt|jd|jfz}|jr%|j|jz}|dt|dzz
}|S)Nz%s: size=%s, count=%iF, average=%s)rrrrrtextaverages   r__str__zStatistic.__str__4sc'N E22J  :	Bi$*,GN\'5%A%AAADrc0d|j|j|jfzS)Nz)<Statistic traceback=%r size=%i count=%i>rr"s r__repr__zStatistic.__repr__>s;>49dj9:	;rc*|j|j|jfSr)rrrr"s r	_sort_keyzStatistic._sort_keyBs	4:t~66rN__name__
__module____qualname____doc__	__slots__rr#r)r/r1r3rrrrs/I
===///;;;77777rrc:eZdZdZdZdZdZdZdZdZ	dZ
d	S)

StatisticDiffzd
    Statistic difference on memory allocations between an old and a new
    Snapshot instance.
    rr	size_diffr
count_diffcL||_||_||_||_||_dSrr=)rrrr>rr?s      rrzStatisticDiff.__init__Ms)"	"
$rc\t|j|j|j|j|jfSr)r!rrr>rr?r"s rr#zStatisticDiff.__hash__Ts.T^TYZ233	3rct|tstS|j|jko?|j|jko/|j|jko|j|jko|j|jkSr)r%r<r&rrr>rr?r's  rr)zStatisticDiff.__eq__Xst%//	"!!%/18I+8Neo58J%+-8Ou'77		9rcd|jt|jdt|jd|j|jfz}|jr%|j|jz}|dt|dzz
}|S)Nz %s: size=%s (%s), count=%i (%+i)FTr+)rrrr>rr?r,s   rr/zStatisticDiff.__str__asw2>	51155:?	$$:	Bi$*,GN\'5%A%AAADrcHd|j|j|j|j|jfzS)Nz9<StatisticDiff traceback=%r size=%i (%+i) count=%i (%+i)>r=r"s rr1zStatisticDiff.__repr__ms*K>49dn:t00	1rcvt|j|jt|j|j|jfSr)rr>rr?rrr"s rr3zStatisticDiff._sort_keyrs3DN##TYDO$$dj 	 rNr4r:rrr<r<FsJI%%%333999


111
     rr<c	g}|D]\}}||d}|8t||j|j|jz
|j|j|jz
}n't||j|j|j|j}|||D]9\}}t|d|jd|j}||:|SNr)itemspopr<rrappend)	old_group	new_group
statisticsrstatpreviouss      r_compare_grouped_statsrPxsJ$??,,
 
 	4==D11 !%DI
,E!%TZ(.-HJJDD!!%DI!%TZ99D	$$??,,  	4YDI:q4:+FF$rcfeZdZdZdZdZedZedZdZ	dZ
dZd	Zd
Z
dS)Framez
    Frame of a traceback.
    _framec||_dSrrSrframes  rrzFrame.__init__s
rc|jdSrGrSr"s rfilenamezFrame.filename{1~rc|jdSNrSr"s rlinenozFrame.linenorZrcZt|tstS|j|jkSrr%rRr&rTr's  rr)zFrame.__eq__)%''	"!!u|+,rcZt|tstS|j|jkSrr`r's  r__lt__zFrame.__lt__s)%''	"!!el*+rc*t|jSr)r!rTr"s rr#zFrame.__hash__DK   rc$|jd|jS)N:rYr^r"s rr/z
Frame.__str__s---55rc(d|jd|jdS)Nz<Frame filename=z lineno=>rhr"s rr1zFrame.__repr__s26---MMrN)r5r6r7r8r9rpropertyrYr^r)rcr#r/r1r:rrrRrRsIXX---
,,,
!!!666NNNNNrrRcleZdZdZdZddZedZdZdZ	dZ
d	Zd
ZdZ
dZd
ZddZdS)	Tracebackz`
    Sequence of Frame instances sorted from the oldest frame
    to the most recent frame.
    )_frames
_total_nframeNc~tj|tt||_||_dSr)rrtuplereversedrnro)rframestotal_nframes   rrzTraceback.__init__s:$
Xf--..)rc|jSr)ror"s rrtzTraceback.total_nframes!!rc*t|jSr)lenrnr"s r__len__zTraceback.__len__4<   rct|tr$td|j|DSt	|j|S)Nc34K|]}t|VdSr)rR.0traces  r	<genexpr>z(Traceback.__getitem__.<locals>.<genexpr>(GG%uGGGGGGr)r%slicerqrnrRrindexs  r__getitem__zTraceback.__getitem__MeU##	.GG4<3FGGGGGGe,---rc|j|jvSr)rTrnrVs  r__contains__zTraceback.__contains__|t|++rc*t|jSr)r!rnr"s rr#zTraceback.__hash__sDL!!!rcZt|tstS|j|jkSrr%rmr&rnr's  rr)zTraceback.__eq__s)%++	"!!
-.rcZt|tstS|j|jkSrrr's  rrczTraceback.__lt__s)%++	"!!u},-rc,t|dSrG)strr"s rr/zTraceback.__str__s47||rc`dt|}|j|dz
}n|d|jdz
}|S)Nz<Traceback rjz total_nframe=)rqrort)rss  rr1zTraceback.__repr__sG'%++''%
HAA
6$"36666ArFcXg}||dkr||d}n
|d|}n|}|rt|}|D]r}|d|jd|jt	j|j|j}|r|d|zs|S)Nrz  File "z", line z    %s)rrrJrYr^	linecachegetlinestrip)rlimitmost_recent_firstlinesframe_slicerWlines       rformatzTraceback.formatsqyy"E677m"6E6lK	0";//K 	.	.ELLL!NNNELL:
;
;
;$U^U\BBHHJJD
.X_---rr)NF)r5r6r7r8r9rrkrtrxrrr#r)rcr/r1rr:rrrmrms-I****""X"!!!...,,,"""///
...
rrmcFt|}|t|SdS)z
    Get the traceback where the Python object *obj* was allocated.
    Return a Traceback instance.

    Return None if the tracemalloc module is not tracing memory allocations or
    did not trace the allocation of the object.
    N)rrm)objrss  rget_object_tracebackrs*#3
'
'F
   trcveZdZdZdZdZedZedZedZ	dZ
dZd	Zd
Z
dS)Tracez"
    Trace of a memory block.
    _tracec||_dSrrrr~s  rrzTrace.__init__src|jdSrGrr"s rdomainzTrace.domainrZrc|jdSr\rr"s rrz
Trace.sizerZrc.t|jddS)N)rmrr"s rrzTrace.traceback#s$+abb/**rcZt|tstS|j|jkSr)r%rr&rr's  rr)zTrace.__eq__'rarc*t|jSr)r!rr"s rr#zTrace.__hash__,rerc@|jdt|jdS)Nz: F)rrrr"s rr/z
Trace.__str__/s">>><	5+I+I+IJJrcTd|jdt|jdd|jdS)Nz<Trace domain=z size=Fz, traceback=rj)rrrrr"s rr1zTrace.__repr__2s5;;;TY > > > >P	QrN)r5r6r7r8r9rrkrrrr)r#r/r1r:rrrrsI
XX++X+---
!!!KKKQQQQQrrc2eZdZdZdZdZdZdZdZdS)_Tracesc<tj|||_dSr)rr_traces)rtracess  rrz_Traces.__init__8s$rc*t|jSr)rwrr"s rrxz_Traces.__len__=ryrct|tr$td|j|DSt	|j|S)Nc34K|]}t|VdSr)rr|s  rrz&_Traces.__getitem__.<locals>.<genexpr>Brr)r%rrqrrrs  rrz_Traces.__getitem__@rrc|j|jvSr)rrrs  rrz_Traces.__contains__FrrcZt|tstS|j|jkSr)r%rr&rr's  rr)z_Traces.__eq__Is)%))	"!!
-.rc&dt|zS)Nz<Traces len=%s>)rwr"s rr1z_Traces.__repr__Ns 3t99,,rN)	r5r6r7rrxrrr)r1r:rrrr7sn
!!!...,,,///
-----rrctj|}|dr
|dd}|S)Nz.pyc)ospathnormcaseendswith)rYs r_normalize_filenamerRs?w))H  !CRC=OrceZdZdZdZdS)
BaseFilterc||_dSr)	inclusive)rrs  rrzBaseFilter.__init__Zs
"rctr)NotImplementedErrorrs  r_matchzBaseFilter._match]s!!rN)r5r6r7rrr:rrrrYs2###"""""rrcPeZdZ	d	fd	ZedZdZdZdZdZ	xZ
S)
FilterNFct|||_t||_||_||_||_dSr)superrrr_filename_patternr^
all_framesr)rrfilename_patternr^rr	__class__s      rrzFilter.__init__bsL
###"!45E!F!F$rc|jSr)rr"s rrzFilter.filename_patternks%%rct|}tj||jsdS|jdS||jkS)NFT)rfnmatchrr^rrYr^s   r_match_frame_implzFilter._match_frame_implosE&x00x)?@@	5;4dk)*rc@||||jzSr)rrrs   r_match_framezFilter._match_framexs"%%h77t~;MNNrcjr*tfd|DrjSjS|d\}}||S)Nc3JK|]\}}||VdSr)r)r}rYr^rs   rrz*Filter._match_traceback.<locals>.<genexpr>}sK66'x))(F;;666666rr)ranyrr)rrrYr^s`   r_match_tracebackzFilter._match_traceback{s|?	76666+466666
,~% N*+(|Hf$$Xv666rc|\}}}}||}|j!|jr
|o
||jkS|p
||jkS|Sr)rrr)rr~rrrrtress       rrz
Filter._matchs^05-i##I..;"~
66$+ 565v45
r)NFN)r5r6r7rrkrrrrr
__classcell__rs@rrras7;&&X&+++OOO	7	7	7rrc:eZdZfdZedZdZxZS)DomainFiltercXt|||_dSr)rr_domain)rrrrs   rrzDomainFilter.__init__s&
###rc|jSr)rr"s rrzDomainFilter.domains
|rc8|\}}}}||jk|jzSr)rr)rr~rrrrts      rrzDomainFilter._matchs'05-i$+%dn*<==r)r5r6r7rrkrrrrs@rrrsbX>>>>>>>rrcVeZdZdZdZdZedZdZdZ	dZ
dd	Zdd
ZdS)
SnapshotzB
    Snapshot of traces of memory blocks allocated by Python.
    c<t||_||_dSr)rrtraceback_limit)rrrs   rrzSnapshot.__init__sfoo.rct|d5}tj||tjddddS#1swxYwYdS)z1
        Write the snapshot into a file.
        wbN)openpickledumpHIGHEST_PROTOCOL)rrYfps   rrz
Snapshot.dumps(D
!
!	;RKb&"9:::	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;	;s!?AAc~t|d5}tj|cdddS#1swxYwYdS)z.
        Load a snapshot from a file.
        rbN)rrload)rYrs  rrz
Snapshot.loads
(D
!
!	#R;r??	#	#	#	#	#	#	#	#	#	#	#	#	#	#	#	#	#	#s266c|rtfd|DsdS|rtfd|DrdSdS)Nc3BK|]}|VdSrrr}trace_filterr~s  rrz)Snapshot._filter_trace.<locals>.<genexpr>sE<<'$**511<<<<<<rFc3DK|]}|VdSrrrs  rrz)Snapshot._filter_trace.<locals>.<genexpr>sH88#$**5111888888rT)r)rinclude_filtersexclude_filtersr~s   `r
_filter_tracezSnapshot._filter_traces	<<<<+:<<<<<
u	8888'688888
utrct|ts$tdt|jz|rVgg|D]4}|jr||5fdjjD}njj	}t|jS)z
        Create a new Snapshot instance with a filtered traces sequence, filters
        is a list of Filter or DomainFilter instances.  If filters is an empty
        list, return a new Snapshot instance with a copy of the traces.
        z)filters must be a list of filters, not %scBg|]}||Sr:)r)r}r~rrrs  r
<listcomp>z*Snapshot.filter_traces.<locals>.<listcomp>sE888E!//0?05778%888r)r%r	TypeErrortyper5rrJrrcopyrr)rfiltersr
new_tracesrrs`   @@r
filter_traceszSnapshot.filter_tracess'8,,	6G"7mm4566
6
	4 O O '
9
9)9#**<8888#**<8888888888T[-@888JJ
,1133J
D$8999rc>|dvrtd||r|dvrtd|zi}i}|s|jjD]}|\}}}}		||}
nO#t$rB|dkr|}n"|dkr|dd}n|dddff}t	|}
|
||<YnwxYw	||
}|xj|z
c_|xjdz
c_#t$rt|
|d||
<YwxYwn|jjD]}|\}}}}	|D]}
	||
}
n9#t$r,|dkr|
f}n|
ddff}t	|}
|
||
<YnwxYw	||
}|xj|z
c_|xjdz
c_o#t$rt|
|d||
<YwxYw|S)	N)rrYr^zunknown key_type: )r^rYz/cumulative mode cannot by used with key type %rrr^r]r)
ValueErrorrrKeyErrorrmrrr)rkey_type
cumulativestats
tracebacksr~rrtrace_tracebackrtrrsrNrWs              r	_group_byzSnapshot._group_bys>>>*xxABBB	<(*@@@02:;<<
<
'	I,
E
E>C;o|
< *? ;II<<<;..!0!X--!0!!4#21#5a#8!"<!> )& 1 1I2;J///<E +DII%IIJJ!OJJJEEE'0D!'D'DE)$$$E#
E*,
I
I>C;o|,IIE6$.u$5		#666#x//&+XFF',Qxm%5F$-f$5$5	,5
5)))
6I$Y/		T)		

a


#III+4Ya+H+Hi(((II sIAA	B B $(C

C.-C.D3E
E(E88FFFc|||}t|}|dtj|S)zd
        Group statistics by key_type. Return a sorted list of Statistic
        instances.
        Treversekey)rlistvaluessortrr3)rrrgroupedrMs     rrMzSnapshot.statisticssM
..:66'..**++
)*=>>>rc|||}|||}t||}|dtj|S)z
        Compute the differences with an old snapshot old_snapshot. Get
        statistics as a sorted list of StatisticDiff instances, grouped by
        group_by.
        Tr
)rrPrr<r3)rold_snapshotrrrLrKrMs       r
compare_tozSnapshot.compare_tosZNN8Z88	 **8Z@@	+IyAA
-*ABBBrN)F)
r5r6r7r8rrstaticmethodrrrrrMrr:rrrrs///;;;##\#			:::2111f





rrctstdt}t}t	||S)zI
    Take a snapshot of traces of memory blocks allocated by Python.
    zLthe tracemalloc module must be tracing memory allocations to take a snapshot)
is_tracingRuntimeErrorrget_traceback_limitr)rrs  r
take_snapshotr'sK<<=<==	=
]]F)++OFO,,,r)collections.abcrr	functoolsrrros.pathrr_tracemallocrrrrr<rPrRrmrrrrrrrrrr:rr<module>r!s........$$$$$$



;;;;;;;;"%7%7%7%7%7%7%7%7P/ / / / / / / / d(#N#N#N#N#N#N#N#NLJJJJJJJJZ$Q$Q$Q$Q$Q$Q$Q$QN-----h---6""""""""-----Z---`>>>>>:>>>EEEEEEEEP	-	-	-	-	-r