PNG  IHDR* pHYs+ IDATx]n#; cdLb Ǚ[at¤_:uP}>!Usă cag޿ ֵNu`ݼTâabO7uL&y^wFٝA"l[|ŲHLN밪4*sG3|Dv}?+y߉{OuOAt4Jj.u]Gz*҉sP'VQKbA1u\`& Af;HWj hsO;ogTu uj7S3/QzUr&wS`M$X_L7r2;aE+ώ%vikDA:dR+%KzƉo>eOth$z%: :{WwaQ:wz%4foɹE[9<]#ERINƻv溂E%P1i01 |Jvҗ&{b?9g=^wζXn/lK::90KwrюO\!ջ3uzuGv^;騢wq<Iatv09:tt~hEG`v;3@MNZD.1]L:{ծI3`L(÷ba")Y.iljCɄae#I"1 `3*Bdz>j<fU40⨬%O$3cGt]j%Fߠ_twJ;ABU8vP3uEԑwQ V:h%))LfraqX-ۿX]v-\9I gl8tzX ]ecm)-cgʒ#Uw=Wlێn(0hPP/ӨtQ“&J35 $=]r1{tLuǮ*i0_;NƝ8;-vݏr8+U-kruȕYr0RnC]*ެ(M:]gE;{]tg(#ZJ9y>utRDRMdr9㪩̞zֹb<ģ&wzJM"iI( .ꮅX)Qw:9,i좜\Ԛi7&N0:asϓc];=ΗOӣ APqz93 y $)A*kVHZwBƺnWNaby>XMN*45~ղM6Nvm;A=jֲ.~1}(9`KJ/V F9[=`~[;sRuk]rєT!)iQO)Y$V ی ۤmzWz5IM Zb )ˆC`6 rRa}qNmUfDsWuˤV{ Pݝ'=Kֳbg,UҘVz2ﴻnjNgBb{? ߮tcsͻQuxVCIY۠:(V뺕 ٥2;t`@Fo{Z9`;]wMzU~%UA蛚dI vGq\r82iu +St`cR.6U/M9IENDB` fdZgdZddlZddlZddlZd dZd dZejje_ejje_GddejZ d Z d Z e d kr e dSdS) zUPython interface for the 'lsprof' profiler. Compatible with the 'profile' module. )runrunctxProfileNc^tjt|||SN) _pyprofile_Utilsrr) statementfilenamesorts //opt/alt/python311/lib64/python3.11/cProfile.pyrrs%  W % % ) ))Xt D DDcbtjt|||||Sr)r r rr)r globalslocalsr r s rrrs0  W % % , ,Y-5t = ==rcJeZdZdZd dZdZdZdZdZdZ d Z d Z d Z d S)ra`Profile(timer=None, timeunit=None, subcalls=True, builtins=True) Builds a profiler object using the specified timer function. The default timer is a fast built-in one based on real time. For custom timer functions returning integers, timeunit can be a float specifying a scale (i.e. how long each integer unit is, in seconds). rcddl}|||dSNr)pstatsStats strip_dirs sort_stats print_stats)selfr rs rrzProfile.print_stats)sI  T%%''22488DDFFFFFrcddl}t|d5}|||j|ddddS#1swxYwYdS)Nrwb)marshalopen create_statsdumpstats)rfilerfs r dump_statszProfile.dump_stats-s $   (       LLQ ' ' ' ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (s0AAAcV||dSr)disablesnapshot_statsrs rr zProfile.create_stats3s'  rcl|}i|_i}|D]]}t|j}|j}||jz }|j}|j}i} | |t|j<||||| f|j|<^|D]}|j rt|j}|j D]} |t| j} n#t$rY*wxYw| j}|| jz }| j}| j}|| vr4| |} || dz }|| dz }|| dz }|| dz }||||f| |<dS)Nr) getstatsr"labelcode callcount reccallcount inlinetime totaltimeidcallsKeyError) rentries callersdictsentryfuncncccttctcallerssubentryprevs rr(zProfile.snapshot_stats7s--//   7 7E$$DBe((B!BBG+2LEJ (!2r2w6DJt   3 3E{ 3UZ(( % 33H!".r(-/@/@"A#!!! !!+Bh33B!,B!+Bw&t}d1g d1g d1g d1g $&BNGDMM% 3 3s'C CCcFddl}|j}||||Sr)__main____dict__r)rcmdrDdicts rrz Profile.run]s) {{3d+++rc| t||||n#|wxYw|Sr)enableexecr')rrFrrs rrzProfile.runctxbsL   gv & & & LLNNNNDLLNNNN s <Ac| ||i||S#|wxYwr)rIr')rr;argskws rruncallzProfile.runcallksG  4$$$ LLNNNNDLLNNNNs 2Ac.||Sr)rIr)s r __enter__zProfile.__enter__rs  rc.|dSr)r')rexc_infos r__exit__zProfile.__exit__vs rN)r) __name__ __module__ __qualname____doc__rr%r r(rrrNrPrSrrrrsGGGG((( !3!3!3L,,, rrc^t|trdd|fS|j|j|jfS)N~r) isinstancestr co_filenameco_firstlinenoco_name)r0s rr/r/{s6$EQ~ $"5t|DDrc ddl}ddl}ddl}ddl}ddlm}d}||}d|_|dddd d |d d d ddt|j j |ddddd|j dds)| | d|\}}||j dd<|j$|j|j|_t%|dkr|jrd} |j|dd} n|d} |jd|j| t/j| 5} t3| | d} dddn #1swxYwY| dddd} t7| | d|j|jnL#t:$r+} d|_| | jYd} ~ nd} ~ wwxYw| |S)Nr) OptionParserzNcProfile.py [-o output_file_path] [-s sort] [-m module | scriptfile] [arg] ...)usageFz-oz --outfileoutfilezSave stats to )desthelpdefaultz-sz--sortr z?Sort order when printing to stdout, based on pstats.Stats classr,)rdrerfchoicesz-mmodule store_truezProfile a library module)rdactionrerfr+z(run_module(modname, run_name='__main__')) run_modulemodnamerJrD)__file__rT __package__ __cached__) ossysrunpyroptparseraallow_interspersed_args add_optionsortedrsort_arg_dict_defaultargv print_usageexit parse_argsrcpathabspathlenrhrkinsertdirnameio open_codecompilereadrr BrokenPipeErrorstdouterrno)rprqrrrrarbparseroptionsrLr0globsprognamefpexcs rmainrs IIIJJJLLLMMM%%%%%% \E \ & & &F%*F" dKi &666 dH6 Nv|9::<<< d, '888 8ABB<  ''))OWdCHQQQK"'//'/:: 4yy1}} > =D#.7EE AwH HOOArwx88 9 9 9h'' <2rwwyy(F;; < < < < < < < < < < < < < < <%&#" E  4gow| D D D D   CJ HHSY          Ms*$GG  G G66 H+!H&&H+rD)Nr) rW__all___lsprofrprofiler rrProfilerrr/rrTrXrrrs ' & &  EEEE====n$ "*[[[[[g[[[~EEE888v zDFFFFFr