bgiddlTddlZddlZddlmZGddeZdZdZdZ d Z Gd d e Z Gd d eZ Gdde ZGddeZGddZGddZGddZdZGddZGddZGddZGdd ZGd!d"ZGd#d$ZGd%d&ZGd'd(ZGd)d*ZGd+d(ZGd,d-ZGd.d/ZGd0d1Z Gd2d3Z!Gd4d5Z"dS)6)*N)property_nondataceZdZdZdZdS)MyVarcBt|d|zdS)N%.2g) StringVarset)selfvalues c/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/guppy/heapy/Prof.pyr z MyVar.set s  dFUN+++++N__name__ __module__ __qualname___defaultr rrrrs(H,,,,,rr)KMGTct|}d}|dkrd}| }d}|dkr|dz}|dz }|dkttt|t|z}|dt|zr=ttt|dz t|dzz}|dkrd|z}|S)Nri000-)floatstrintroundsuffixesendswith)r signiss r sizestringr*s %LLE D qyy A %--   Q %-- Ce  x{*Azz% #$$6 E%*%%&& ' '1 5 rzz !G Hrct|}d|cxkrdkrnndt|zSd|cxkrdkrnnd|zS|dkrdSd|zS) N i'%dg{Gz?r g|=0z%.0e)absr$)r as r percentstringr1$sr E A Q$eEll"" b~ es~rc|rt|S|dd}d}tddD]}||krn |dz}tt|dd|zS)Nrrr)isdigitr#upperr% ValueError)r)sufmultsus r stringsizer90syy{{1vv BCC&,,..C Dqrrl 99 E   q"v;;t rceZdZddZdS)MenuNc||}g}t||||dzD]C}t||d}||jvr||D|j|jd|||D]}| |dS)z7Delete menu items between INDEX1 and INDEX2 (included).Nrcommanddelete) rangeindexr" entrycget _tclCommandsappendtkcall_w deletecommand)r index1index2cmdsr(cs rr>z Menu.deleteBs >Ftzz&))4::f+=+=a+?@@  ADNN1i0011AD%%% A  TWh777 " "A   q ! ! ! ! " "rN)rrrr>rrrr;r;>s(""""""rr;ceZdZdZdZdS)SizeVarrch||_t|}t||dSrL)_valuer*r r )r r r)s rr z SizeVar.setYs0 u   dArNrrrrrNrNVs(HrrNceZdZdZdS) ValueLabelc:d|d<tj|g|Ri|dS)Nr,width)Label__init__)r argskwdss rrVzValueLabel.__init__`s1W  t+d+++d+++++rNrrrrVrrrrRrR_s#,,,,,rrRc$eZdZddZddZdZdS) ClickButtonc tj||fi|||_||_||_|d|j|d|jdS)N )ButtonrV_command _firstdelay _thendelaybind _event_button_event_release)r masterr= firstdelay thendelayrXs rrVzClickButton.__init__hsgf----- %# , 2333 %t':;;;;;rNc|||j}n|j}|||j|_dSrL)rbrcrdafterrf_after)r eventdelays rrfzClickButton._event_buttonpsB   $EEOEjj(:;; rc>||j|`dSrL) after_cancelrmr rns rrgzClickButton._event_releasexs! $+&&& KKKr)r\r]rL)rrrrVrfrgrrrr[r[esK<<<<<<<<rr[c^eZdZd dZdZdZeeZdZdZ d dZ d Z d Z d Z dS)StatsNcR||_|j|_|j|_||_dSrL)modoshashlibfn)r rvrys rrVzStats.__init__~s&&{ rcd|_|`dSrLstatsr s r clear_cachezStats.clear_caches JJJrcD||j|jSrL)openryr|r}s r get_statszStats.get_statss $'zrc|jsdS|j|j}||jkrt |dfSt |j5}||j}|j | d}| }||j krt |}n| |dd}|}|j||_dddn #1swxYwY|jj|_|| d| |_ | |t |j|z }||fS)N)rrrutf-8rreset)ryrwstatlaststatlenrread lastfilesizerxmd5encodedigest lastdigestloadstrfstatfilenost_sizeupdater|)r rfr"rr numoldstats numnewstatss rcollectz Stats.collectsw 4w||DG$$ 4= t99a<  $']] 6a&&*++C,""3::g#6#677CZZ\\F((!$ii  S *** &&((C GMM!((**55DM 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6!M1 3::g&&'''**,, S$*ook1 K''sCD::D>D>c|sd|_g|_d|_||_dSt |5}|}|j|d }|j | }dddn #1swxYwY| |d||_||_||_|j|_dS)Nrrrr) len_statsr|max_sizeryrrrxrrrrwrrrrrrr)r ryrr"rrs rrz Stats.opens DNDJDMDG F "XX 1&&((C))#**W*=*=>>EEGGJw}}QXXZZ00H 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 S """$  $,sBB<<CCrcg}|d}~t|}d} |jj|}n#t $rYn,wxYw|||j|kr|j}Y|rg|_d|_ t|j ||_ |j |t|j|_ dS)N r)splititerrvUseload StopIterationrCsizer|rmaxextendrr)r r"rr|lines linesiterrsts rrz Stats.loadstrs $ KK  # X\&&y11      LL   w!!7 #  DJDMDM844  %   TZsA AAc|j|SrLr{)r idxs r __getitem__zStats.__getitem__sz#rcr |jS#t$r#t|j|_|jcYSwxYwrL)rAttributeErrorrr|r}s r__len__z Stats.__len__sG "> ! " " " __DN> ! ! ! "s  *66c|jSrL)rr}s r get_max_sizezStats.get_max_sizes }rrLr)rrrrVr~rrr|rrrrrrrrrrtrt}s    Y ' 'E(((>---())))2"""rrtc2eZdZdZd dZdZdZdZdZdS) ProfileRowrc||_||_|rpt|dddt}t |dddt|_|jdd||dtt|_ t ||j dt |_ t|_ t ||j d t |_t|_t ||jdt |_t|_t ||jd t |_t|_t ||jt|jt* |_|j |dt.|j|d t.|j|d t.|j|d t.|j|dtdS)Nblackr)rhbgrT borderwidthreliefwhiterrowcolumnrrsticky)rh textvariablerTanchor)rhrrrTjustify)rhrFrameGROOVErUcolorgridNWrNrsizevarErsizer rpercentvarrpercentdsizevardsize dpercentvardpercentkindvar kindwidthLEFTkindNE)r rhrusecolorcolbgs rrVzProfileRow.__init__s    5G1&'888Ee%&AfFFFDJ JOO!O , , , JJ3qJ 4 4 4   QqJJJ $;;(8!MMM    QqJJJ $;;(8!MMM  {{ dl2 $>>>  C"555 s1R888 C"555 s1R888 3q44444rc||||||j||d}n)tt t |}|j||j|tt t |}|j|| |dS)Nr) set_colorrr r"r#r$rrrset_kind)r rrrrrrs rset_color_size_percent_kindz&ProfileRow.set_color_size_percent_kinds u   NN5 ! ! ! %    HH3uX//00H X&&& %   s5??++,, X&&& drc<|j|dS)N)r)r configure)r rs rrzProfileRow.set_colors! &&&&&rc||_t||jkr ddl}|||j}|j|dS)NrrT)kindtextrrtextwrapfillrr )r rrs rrzProfileRow.set_kind"sX t99t~ % % OOO==T^=<raised)textrrmenuTAutolabelvariabler=rrr=rGridcHjSrLgridvarget gridcommandr srz&AxisControl.__init__..ss DL,<,<,>,> ? ?rcHjSrLrrsrrz&AxisControl.__init__..ys$[[)-)9)9););6=6=rRangerYrr+)rc.dSNr range_buttonr}srrz&AxisControl.__init__..sd.?.?.B.Br)rpadypadxrr=r c.dSNrr r}srrz&AxisControl.__init__..s0A0A"0E0Errr)rrowspanrrrr columnspanrrr Xrrrrr )rrripadxipadyrr )rrrrrrr )nameunitr? rangecommandrrframerNrangevarr Entryreevent_range_enter MenubuttonWr; BooleanVarautovaradd_checkbutton CheckbuttonRAISEDrrUr[rN)r rhrr?rrrr autocommandsmallrrangeval namelabelnamemenu autobutton gridbutton rangelabelrr udrangeup rangedownrs` ` rrVzAxisControl.__init__3s   ("6qHHHH U   %     !%."     )4+ABBBu4KKK  ??$ &  %<
>1uuQ   " "6 * * Q D$%% % %D$%%)A q55A d&q)*****rc||jkr8||_|j|||dSdSrL)r?rr rrGs rr8zAxisControl.setrangesN DJ  DJ M  e $ $ $   e $ $ $ $ $  rcD|jD] }||kr|cS |jdSr)r7)r r)tss rrFzAxisControl.scale_by_tables9"  BQww ##rrL)rrrr7rCrVr4rr=r:rHr rJr8rFrrrrr.s))K b/D ;r?R/000 b/D "3333B   ,   EEE + + +%%% $$$$$rrrceZdZddZdZdZdZdZdZdZ d Z d Z d Z d Z d ZdZdZdZdZdZdZdZdZdZdZdZdS)MarkerNc||_||_||_||_d|_|j|_|j|_d|_d|_d|_ d|_ d|_ d|_ d|_ |dSNr)rKtagrxmarkerbutdownocursorcursor poscommandintposmovingselectedenteredbutdownselected motion_idcreate)r rKrVrposr[s rrVzMarker.__init__sz   y l       rc|j}|jj|||tr|j||dS|jj|||dSrL)rVrK drawingareatag_bindWMxlabelrexmarks)r sequencefunctionrVs rrez Marker.bindsnh ##C8<<<  < K  Xx 0 0 0 0 0 FM " "3( ; ; ; ; ;rc |jj|j|d|t |jj |jj|j|ddS)Nrr,)rKrecoordsrVr#botyrir canxs rrmz Marker.coordssb !!$("&"&TV[)9)9(9 ; ; ;  TXtR00000rc |j}|j}d}|jj|d|d|jjz dd|ft rOt|jj|ddtx}|_ |jj |d||fn$|jj |d||f | d |j| d |j| d |j| d |j|jj d |jd|jj d |jddS)Nrgray12r)stipplerTtagsr)rrr r)windowru)rrur_r`zzradd)rVrrKre create_linernrgrUrir&rh create_window create_textreevent_button_1event_button_1_release event_enter event_leaveevent_enter_moveareaevent_button_1_movearea)r rVrrcrs rrbz Marker.createshy &&sAsBtv{NH-.cV ' = = =  F"' Dqq#I#I#I IEDK FM ' 'QuC6 ' J J J J FM % %c14sf % E E E , 3444 %t'BCCC )T-... )T-...  4+D#NNN  $6C  A A A A Arcd|_|jr$d|_|jr||nd|_d|_||||dSNrr)rXr^r`r]event_stop_move has_movedevent_selectedevent_start_moverrs rr|zMarker.event_button_14sw = %#$D { ,$$U+++#$D  E""" e$$$$$rcB|js||dSdSrL)r_event_deselectedrrs rrzMarker.event_button_1_moveareaAs0| )  ! !% ( ( ( ( ( ) )rcNd|_|j|jkrx|jrU|jrM|j|jcxkr |jks1n|d| |j n| |j dS| |dSrU) rXrr`r^r]disloyy_rootdishiyr setcursorrYrrrs rr}zMarker.event_button_1_releaseEs >T1 1 1} -;1 u|(Q(Q(Q(Qdk(Q(Q(Q(Q((...NN4<000t|,,, F e$$$$$rc|jr4d|_t|jd<|jr||dSdSdS)Nrr)r^r&rhr]rrrs rrzMarker.event_deselectedQsW = ,DM$*DK !{ ,$$U+++++  , , , ,rcd|_|js5|jr||dS|ddSdS)Nrhand2)r_r]r^rrrrs rr~zMarker.event_enterXsY { (} (%%e,,,,,w'''''  ( (rcT|jr|js||dSdSdSrL)r^r]rrrs rrzMarker.event_enter_movearea`sC = ) )  ! !% ( ( ( ( ( ) ) ) )rcd|_|js||jdS|j|jcxkr |jksndSdSrU)r_r]rrYfraloyrfrahiyrrs rrzMarker.event_leaveds_ {  NN4< ( ( ( ( (+;;;; ;;;; D<;rcd|_|j|jcxko |jknc}||jkr||_|sX||_|d|jr4|d|j |j n||_ | |dS|r+|||dSdS)Nrcircle)rrrrinside out_eventrrXrrK bind_motionevent_motion_downoutin_eventrmovedsetxvarsr rnrs r event_motionzMarker.event_motionks+;;;; ;;;; T[  DK !&$$T***<BNN8,,,F&&t'@AAA % %%e,,,   JJu    MMOOOOO  rc|j|jcxko |jknc}|r6|j|j||dSdSrL)rrrrK unbind_motionrrrs rrzMarker.event_motion_downoutsp+;;;; ;;;;  - F !: ; ; ;  % %e , , , , , - -rcz|jjD]}||d|_t|jd<dS)Nrr)rKmarksrr^SUNKENrh)r rnms rrzMarker.event_selectedsE & &A  u % % % % & Hrcd|_|jj|_|j|jjz|_|jj|_|j|jj z|_ |jj |_ |j |jj z|_ |jj |_|j|jj z|_||_||_|j|_|jj d|_d|_d|_||j|j|_||dSr)r]rKr winfo_rootxfralox winfo_widthfrahix winfo_rootyr winfo_heightrredisloxdishixrr down_event prev_eventrW down_xmarkerxview down_xvfracrdeltaliftrrrarrrs rrzMarker.event_start_movesd fl..00 kDFL$<$<$>$>> fl..00 kDFL$=$=$?$?? f(4466 kDF$6$B$B$D$DD f(4466 kDF$6$C$C$E$EE  L6-3355a8   ++D,=>> 5rc8|jsJd|_|j|j|)||||jr|js|ddS||j dS)Nrr) r]rKrrarrr_r^rrYrrs rrzMarker.event_stop_moves{{  T^,,,   JJu    MMOOO < )  ) NN7 # # # # # NN4< ( ( ( ( (rc|jj|jtr|j|jj|jdSrL)rKri tag_raiserVrgrhrrer}s rrz Marker.liftsY  )))   K      $$TX.....rc|j|}|j|||||_|dSrL)rK canxscaled xview_posrmrWr)r samplerps rmovez Marker.movesWv  ((  D  rc|j}|j}|jj}||jkr||jkr|j}n||jkr||jkr|j}|j|j|jj dz |jz}||z }dx}}|j|jj dz krd}|jdkrd}d} |dkr||ks |dkr ||krdx}}|j r||jkrd}nG||jkrd}n9|j|cxkr |jkrnn|j |cxkr |j ksndx}}d} |r|r|dnW|r|d|dkrd}n7|r|d|dkrd}n|dd}||_|j|j||jjz z} |j| } |j| || | |_| r|jr|ddSdSdS)Nrrsb_h_double_arrow sb_left_arrowsb_right_arrowdot)x_rootrrrrrKrrWrecanvasxnumstatsrXrrrlimitxxscalerrmr]r) r rncurxcuryprevxmarkxdxlrstoprrps rrz Marker.moveds||& 4;  4$+#5#5KEE T[ TDK%7%7KE!!$,// F  & &q ) )*,0K8E\ A <46?1, , ,A <1  A!VVu !q&&TE\\IA < dk!! ##K45555$+55555K45555$+5555 A   NN. / / / /   NN? + + +Avv   NN+ , , ,Avv NN5 ! ! !Bt|b46=.@@AAv  ((  D  'DK '   & & & & & ' ' ' 'rc|j|j}|||dSrL)rKrrWrmrros rr z Marker.sets<v  .. D rc"||_d|_dSrL)r[r\)r r=s rset_poscommandzMarker.set_poscommand s! rcr||jkr||jd<||_|j|dSNrZ)rZrhrKrr rZs rrzMarker.setcursors> T[ $*DK ! DK      rc|jrJtt|j}||jkr ||_||dSdSdSrL)r[r#r$rWr\)r r\s rrzMarker.setxvarss_ ? (t|,,--F$$$ '''''  ( ($$rrL)rrrrVrermrbr|rr}rr~rrrrrrrrrrr rrrrrrrSrSsy"<<<111AAA. % % %))) % % %,,,((())).---''' 0 ) ) )/// A'A'A'F !!! (((((rrSc eZdZdZdZdZdZ d.dZdZd Z d Z d/d Z dZ dZ dZdZdZdZdZdZdZdZd0dZdZdZdZdZd1dZdZd Zd!Zd"Zd#Z d$Z!d%Z"d&Z#d'Z$d(Z%d)Z&d*Z'd+Z(d,Z)d2d-Z*d S)3Display,rdFBarsSizec j ||_||_||_||_||_||_||_||_t|_ |j |t|_ |j || |_ | |_ d|_g|_g|_d|_i|_d|_t)|dt*x|_} d} d} d}t)|j} | ddt1| |j|j|| d|jx|_}t;| t<d |_t1| |d d |d| |_ t1| |d d |d| |_!t1| |ddd| |_"t;| tF|j$d| |_%t1| dd d| }tM}||_'d}tQ| |dtR| |dtTtVztXztZz|j%|dtVtTz|dz }tQ| ddtR| |_.|j.|dtTtVztXztZz|j!|dtTtVztXz|dz }|j"|d||dtTtVz|dz }||d|j |dtTtVztXzt_|d |_0t_|d|_1|2|_3d|_4d|_5|j0|jz |_6|j1|jz |_7d|_8|9dddd|9dddd|:ddd |;|jd!|_<|j<|_=g|_>dS)"Nrrrr#ccc#e0e0e0r)rTheightxscrollincrement backgroundbdxscrollcommandr,)orientrTrTrr)rTrrrrr2)rrTrr )rr=rTr)rTrrr)rrrrrBytes)rrrrr,1rSamplerrZ)?rhr7 numkindrows getkindcolorxrangeyrangexgridygridr" var_xgridr var_ygrid graphtypestatyperymaxsyminsymax bound_motionsevent_motion_idrrrrCanvasorgwidth orgheightxscrollbar_setre ScrollbarVERTICAL yscrollbarxaxisriyaxis HORIZONTALdrawingarea_xview xscrollbarrN var_yrangerUFLATr!rr'Syunitr!botxrngetchdimchdimcanx0tmaxryscalexi0ryr{setscrollregionrYrZr)r rhr7rrrrrrrrr bordercolor screencolorrCxyr rs rrVzDisplay.__init__#s &&(    # 5!!!# 5!!!"      ##6/0*0%%% % U  dj!! q ### &e,0M-1^7G1<)*595H ( ( ( (1$E("EEE E"#G*#%-= '2  U#$W:$&.> !(3  E!H+R '2 $E*,0,B*,/:&&&EB1*YY $ e $  & & &'+d1Qq'+'"'"'" Qqs;;; q5 '"&&1 333 Q3q57     S1Q3q5999 q C*** 3q1--- q C""" C!A#a%888!G*%% !H+&& ]]__   i$+- i$+-  q!R### r1b"%%% r2H--- '1 l  rc|jdkr'|jd|jd|_|j|ddz|j|<|S)Nzrrwrr)rrbind_allrrr)r rks rrzDisplay.bind_motionsc  4 ' '#':#6#6D-3$7$8$8D '+'9'='=h'J'JQ'N8$rcnt|jD] }||dSrL)listrkeys)r rnrs rrzDisplay.event_motionsAd(--//00  A AeHHHH  rcZ|j|dz }|dkr |j|=dS||j|<dSr)r)r funcidns rrzDisplay.unbind_motionsA  v & * 66"6***)*D v & & &rNrcdt|jz}||}t||||}|j||S)NzM%d)rrrSrC)r rrcrVrs r new_xmarkerzDisplay.new_xmarkersLc$*oo% <D 4dC ( ( !rc&||jz|jzSrL)rr)r xs rrzDisplay.canxscaleds4;++rc| |jzSrL)r)r ys r canyscaledzDisplay.canyscaledssT[  rcj|j|_|dSrL)rrr drawxaxisr}s r cmd_xgridzDisplay.cmd_xgrid-^''))  rcj|j|_|dSrL)rrr drawyaxisr}s r cmd_ygridzDisplay.cmd_ygridr-rc<d|_|dSrL)r yrange_autor}s rcmd_yrange_autozDisplay.cmd_yrange_autos!  rcZd}td|jdz }||kr|S||kr|S|SrM)rr)r r&lohis rrzDisplay.limitxs=  DM!O $ $ r66I r66Irc|j|z}|j|z}||jkr|j}||jz }||jkr|j}||jz }|j}|j}|j|||j||j ||j |t||j z }t||j z }|jd} d} ||jz } ||jz } |jd| | | | | |j| z | zz|_||_||_||_||_||||d|_||fS)NrTrr)rrall)rrnminwidth minheightreryviewrrrirr!rrrrrscalerr+r/r wantedpos) r rdyr&r(xvyvrr xscaleorg yscaleorgxqyqs rresizezDisplay.resizes IN IN t}   ATYB t~  ATYB   # # % %   # # % % ""1"555 1%%% A&&& A&&&qDK'qDK'$,,Q//  dk ! dk ! uiBCCC$*y"8B!>>         A2v rcx|j|t|jdSrL)rupdate_idletasksrMOVETOr>r}s rmovebackzDisplay.moveback/s2 ##%%% 64>*****rcjttdSrL)r r+r/rrrdrawz Display.draw3s(  rc |j}|j}||j|}|dkrt d|D}nt d|D}d|D}||j}||_|j} |j} |j } || zd| zz |j z} | | z} d}d}d}d| z}d}|D]*}| |d}|s| |}|dkr_| | |z| | z| |z ||z | z||dd }||kr#| | | | z| | | zd d |}||z }|dkr||kr|}n||kr|}| |}||}| }n1| d| zz }| || | z| d| zz | | z|d | | d| zz | | z| d| zz | | z|dd ,|dkr||kr|}n||kr|}|t|jcxkrt|jksnJ|j||j|||jkr ||_dSdS)Nrc*g|]}|j|jfSr)rr.0rs r z%Display.draw_stat..=s!;;;QVQV,;;;rc*g|]}|j|jfSr)rcountrOs rrQz%Display.draw_stat..?s!<<.@s&&&A&&&r?rg?r)r0)routlinerTrur)barsep)rruLinesg?g333333?r)rrTru)rrget_rows_n_and_otherrdictreverse lastkindvalrerrrrrcreate_rectangleryrrrrCr)r rrrrrowskindvalorderr]rrrx0x1ryminr(bwocolorkr?rliney0x00s r draw_statzDisplay.draw_stat7sfN ,(()97CC f  ;;d;;;<rerzrrminrr"rxstepxdivixformr updatexaxis) r r7rcr}r~rchdxchdyr(divisufdiviforms rr+zDisplay.drawxaxiss_&  %    (((*BBZ d 1~ +1c#k!nty899::;;dBCC FA1~ +1c#k!nty899::;;dBCC!^  "  JD$zT!!"   rc 0|j\}}|j}|j}t|j|j|z|D]}|j||jzz}|j |d|d|r'|j |d||j ddd|j ||j z z}|j||||j |j|j|jzzd||jzd||_|dS) Nrr)rrgray25)rurTrtrr)rrrr?rrrrrryrernrrr{rs)r rrstepgridonr(r&rs rrzDisplay.updatexaxiss?Z dztx466 8 8A Qt{]*A J " "1aA . . . Y ,,Q1tyj2rerr#rr7rr?ryrzr{rnrs) r rrrrTr(maxvalrrrrr(rs rr/zDisplay.drawyaxiss %    (((]]__ dDJw'(( "T[03:== FA"T[03:==" "  JD$t||q&+t,, E EADKA J " "57AuQw : : : > ,,T->q-A1-1->q-A15=2<->>>1t8$D J " "48Qs4xZt " D D D D uQw57TYJ??? rc|jddd}|j|\}}}}|j|t ||z }t ||z }||fS)Nrr.r)rr{bboxr>r/)r chrcr}r~rrrs rrzDisplay.getchdim(sw Z # #Aqs # 3 3,,BB "27||27||TzrcJ|jd} d|jd<|jt||_i|_d|_d|_g|_g|_ |j }| d| dt|D]\}}| || |j ddn#t$rYnwxYw||||||jd<dS#||jd<wxYw)NrZwatchrrXr0)rwinfo_toplevelrrrr]rrrrrer> enumeraterkrTclErrorr+r/rsr2)r r|rYrr(rs r load_statszDisplay.load_stats1s*++--h7 <4;DJ % % ' ' 1 J     JJDM!D DIDIDJDJ A HHX    HHSMMM$U++ & &Bq"%%%%  **8S9999     NN    NN               4;DJ % % ' ' 1 1 1GDJ % % ' ' 1 ; ; ; ;s1CF*DF DFDAFF"ct|D]#\}}|||jz|$|xjt|z c_||dSrL)rrkrrrr)r r|r(rs r add_statszDisplay.add_statsTsz '' 0 0GQ NN1T]?B / / / / U#   rc<||_|dSrL)rr+r rs rsetxgridzDisplay.setxgrid[  rc<||_|dSrL)rr/rs rsetygridzDisplay.setygrid_rrc|d\}}||jks ||jkrN||_||_|dkr d|jd<n|dkr d|jd<nt||dSdS)N rrrCountObjects)rrrrr5r)r gmoder|rrs r setgraphtypezDisplay.setgraphtypecs"[[-- 7  & &'T\*A*A&DN"DL&  %, 6""G##%. 6""  OOE " " " " "+B*Arc|j}|j}|j}|j|jz|jz}|dz dz}|dz dz}||z}||z }d|jz }d}||||f|_||j|j|d|df|j |d|df|j d|d|f|j tddS)Nrr)rzrr,rrr) rerrrrrnrzrrrirr<rI) r rrrcr~x1extrax2extrar}rs rrzDisplay.setscrollregionps  y Z Y $tz 1(Q,(Q, g  g  ty[ R, !2 333 2q"b/::: B2r?;;; 1b"b/::: vs+++++rc |jt|z }||_|j|jdz }|jd|d|d|jd|d|d||j|z |zz|_|jt|jz |_|td|j| | dS)Nrr0r?rX) rr!rerrr=rrsetxscrollincrementrr+r)r rdxrangerBs r setxrangezDisplay.setxranges+f - $,,TYq[99  sIq'3??? xAwDDD$*y"8G!CC i% "4"44    Q !4!4555  rcdSrL)rerrri)r rs rrzDisplay.setxscrollincrementsrct|j|z }||_|j||jdddd||jdddd|t|j|jz |_|jtd| dS)Nr0rrrXr) r!rr r rer=rnrr<rIr/)r rdyranges r setyrangezDisplay.setyranges $$v-  F### sAq#w777 xAsG<<<DI&&4  vs+++ rcd|j|||dSrL)r r r2)r firstlasts rrzDisplay.xscrollbar_sets2 E4((( rc >|s|jjrtdt d|jd|jz |jz z}tt|j t d|j|j |jz |jz z}||krd}nt|j ||}||j kr%||_ |j|dSdSdS)NrrVrr)ycontrolr#rrr#rerrrrrrrrrH)r forcer5r6rs rr2zDisplay.yrange_autos  (DM)--// (Qd.66q99DJF$+UUVVXXBS__d.66tyAADJNRVR]]]^^``BRxx4:be,--ty     !!$''''' ( (! r)rrFFrrrUrL)Nrrr)+rrrrrr:r;rVrrrr$rr)r,r0r3rrFrJrLrkr rrsrrxrr+rr/rrrrrrrrrrrr2rrrrrs~HIHI !bbbbH+++,,,!!!111f+++TTTl$$$$ !!! !!!%%%<@,+++Z!<!<!sArc d_d_|_|_|j_t |dt x}_t_ t|d|jz ddt|j ddd  d dd d t|dddfd dd tt|dddfd ddtt_t#|ddjt$jd _j d d ddS)Nrrrz %s samplerr)terminal16boldryellow)rrrfgrrrr rc.dSr changesampler}srrz(MarkerControl.__init__..sD$5$5b$9$9r)rr rr=rrc.dSr rr}srrz(MarkerControl.__init__..sD$5$5a$8$8rTrack)rrrrr= indicatoron)rrr)r numsamples setcommandmarkerrrrrrN samplevarrUrr[rr!r" trackingvarr%r& settracking trackbutton)r rhrrsfs` rrVzMarkerControl.__init__s $ K AfEEEETZ  b{V[0111661Q6GGG b>-X   111555BS9999 ; ; ;;?4AaXY4;Z;Z;ZBS8888 : : ::>$1QWX$:Y:Y:Y%<<& W%$    !A!<<<<rrinsert_radiobuttonrrrrs rrzWindowMenu.chg_window6sv 6:./// $$ Ifj !MVZ77*] % $ $ $ $ $rc:|j|j}|j|j= |j|n#t$rYnwxYwt |jD](}|j||kr|j|xxdzcc<)dSr )rrrr>rrr)r rvrrs rrzWindowMenu.del_window?si # Ifj !  I  S ! ! ! !    D  (()) $ $Cy~## #!# $ $s< A A N)rrrrVrrrrrrrr&sP555$$$ $ $ $ $ $rrc@eZdZdZdZd dZdZdZdZdZ d Z dS) ProfileAppc||_t}||_|i|_i|_t ||_dSrL)rvTkrootwithdrawwindows windowmenusIntVar var_window)r rvr s rrVzProfileApp.__init__NsFtt    ,,rctdgtjzdz_jj<t dd}|rQ|jj<tjD]}|ur||tjD]}|j jj dfddj dfd ddS) Nrrrz cBjjSrL)rr r)rnr rvs rrz'ProfileApp.add_window..ds(;(;FJ(G(Grrrwz c8jdSrU)rr )rnr s rrz'ProfileApp.add_window..fs(;(;A(>(>r) rrr rrgetattrrvaluesrrr rre)r rvwmws`` rrzProfileApp.add_windowWsr!T$,"3"3"5"5666779 #) VZ V\4 0 0  %+-D VZ ($,--//00 % %F??MM!$$$t'..0011 " "B MM& ! ! ! ! FJ''' +GGGGGS  R R R .>>>>C  I I I I IrNcRt|||}|||SrL)rr)r rrrs radd_window_framezProfileApp.add_window_framehs* 4 + + rct|jD]}||dSrL)rrrr)r rvrs rrzProfileApp.chg_windowmsGt'..0011 " "B MM& ! ! ! ! " "rc |j}t|ddr|j|=|j|=t |jD]}|||js|dSdS)Nr)rrrr rrrexit)r rvrrs rrzProfileApp.del_windowqsj 6< . . & % L t'..0011 " "B MM& ! ! ! !|  IIKKKKK  rc |jn#t$rYnwxYw|jdSrL)r rrquitr}s rrzProfileApp.exit{sV  I          D  s  ))c4|jSrL)r mainloopr}s rr zProfileApp.mainloopsy!!###rc"t||SrL)ProfileBrowser)r filenames rnew_profile_browserzProfileApp.new_profile_browsersdH---rrL) rrrrVrrrrrr r$rrrrrMs'''III" """$$$.....rrc&eZdZdZdZdZdZdS)PaneDivct|x|_}||_dx|_}|dz dzx}|_d}t |d||_|j|d||dd |j|dzd|dz|d d t |d |j|jtd |_ t |dd d|_ |j ddt|j ddt|j ddt|j d|j|j d|jdS)Nrrrr,r8r#808080rrrTr crosshair)rZrTrrrr)rTrrrr_r`)rr movecommandbutsizebutcentrtopryr&rsbutbotrr'rebut_downbut_up)r rhr+rbsbchs rrVzPaneDiv.__init__s"6]]* U& rFQJ&T\       2qy  3 3 3  qD!RT17!  5 5 5 ,<            !Aa 000 Aa222  !Aa 000  dm444 +T[99999rcT||_|jtdSN)r)rr/rrrrs rr1zPaneDiv.but_downs( F+++++rc|jt|j|jjz }||dSr7)r/rr&r&rr+)r rnrs rr2zPaneDiv.but_upsF F+++ Wt( ( rc|dz }||jd<|j}|j|d||dd|j|dzd|dz|dddS)Nrrr(rr)r)r0r-ry)r rr5r4s r setheightzPaneDiv.setheights RK \  2qy  3 3 3  qD!RT17!  5 5 5 5 5rN)rrrrVr1r2r;rrrr&r&sQ':':':R,,, 5 5 5 5 5rr&c eZdZdZdZdZdS) TableFramec||_|j|_t|dtx}|_d}t |_t|_t |_ |j dt|}t||j ddd}| ddtt|d  dd tt||d d  ddtdt|d  ddtt||j ddtt|d  d ddtt||j d ddt| |dt|d z }|} t|} d}t| d  |dt| d  |d tt| d  |dtt| d  |dtt| d  |dtt| d  |dt|d z }g|_t#| ||_|j|j|d z }t)|d zD]1} t#| |} |j| |d z }2| }| |dt|d z }d|_t"j|_dS)NrrrRLzR-Lrrrrrr)rr foregroundr)rrrr at)rrz Total size = )rrrr)rrrz%Rz%LKindr)graphrvrrrr marktimerN totsizevarsamplerr OptionMenurr!rUrprofrowsrtotrowrCr? totresizer) r rDrhrrrrfromorowtbr(profrows rrVzTableFrame.__init__s 9"6qHHHH !  !)) {{   5\\ DL#sE : : Aa*** bx   %%!Aa%@@@ byW   1QQ777 bt!!a!!<<< bt}---22!A 3 ' ' ' b''',,!! - 5 5 5 b$/***//!! 0 5 5 5 C!,,, q 5\\ brC222 bs""s1Q"??? bt!!c!A!>>> bu$$Qq$AAA bt!!c!A!>>> bv##Aa#@@@ q  S))  T[))) q{1}%%  A S))G M  ) ) ) 1HCC C!,,, q#-rct|}|xj|z c_t|jd\}}tj|z}|jdjd}|dkr d}||z dz|z}|jD]_}||jd<||_|dz |jd<ddl}||j |j} | |j `||fS)NrrTr,rrr) r#rKdivmodrrrIrrrrr) r rr? charresizeextranewwidtholdwidthprrrs rrFzTableFrame.resizes WW ""4>155 E'*4=#(1 b==HX%*U2B- % %B'BGG #BL#aiBGFO OOO}}R[ }EEH KK $ $ $ $2v rc|j|jj|jj|jjdSrL)rEr rvtimeasctime localtimertimemaderIrr!rrJrrr_kindrowsrrDr) r lsamprsamprXrdivldivr(rrs rrzTableFrame.updatesS $(-// HM # #EJ$7 8 8:: ; ; ; rN)rrrrVrFrrrrr=r=sB8.8.8.t&rr=ceZdZddZdZdS)ColSpecrch||_||_||_||_||_||_||_dSrL)tfheaderrrTrcrenderr)r rfrgrTrcrhrs rrVzColSpec.__init__8s7    rcd|jt|z z}|jtkr||z}n#|jtkr|dd|zdz}nJt||jksJ|S)Nrr)rTrrcrRIGHT)r rsps ralignz ColSpec.alignAsy $*s4yy( ) 8t  "9DD X  crc7T>C'DD 14yyDJ&&&& rN)r)rrrrVrlrrrrdrd7s7     rrdcleZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZddZddZdS)r=c z|_|j_t|dtx}_i_g_dffd }|ddtjd|dd tj j g|d d tj d |d d tj j jgd |d d tj d|ddtjd}jD]}||z }d_d_jd_jj_|jz _d_d_|dz }|x__t2}|d}t4} d_t9|||ddj| |_t9|||ddj| |_t|_d_ t9j||dd| d|jj  _!tEjdtFj!j$_%tMj%ddz_'d_(d_)tMj!d_*d} d} j+tXtZz| | j+tXtZz| | j!+ttXtZz| | j+tXtZz| | dS)!NrrcdS)Nrrr&s rrz%TableFrame.__init__..[sRrc t|r|gt|z}j|t ||D],\}}t ||||||}|j|<-dSrL)callabler colwidthsrCziprdcolspecs)namesrTrcputidxfuncrspecr s rdefcolz#TableFrame.__init__..defcol[s}} 'eCJJ& N ! !% ( ( ( __ + + ctT5#sGGDMMJJ&* d## + +rABrc|SrLrrps rrz%TableFrame.__init__..csQrrrrRz%A:Totz%B:Totc|dSr rrUs rrz%TableFrame.__init__..f T!Wr)B-AA-BCumulc@d|dgd|vS)Nrr )rrUs rrz%TableFrame.__init__..hsRC1#+>rc|dSr rrUs rrz%TableFrame.__init__..jrrrCrrrrCr,rrZr)rTwraprrrrrZr) rTrrrr takefocusrZrr )rTrr=rTrr)rrr )siderrr ).rDrvrrrrursrputcolorrjputsizeputcount putpercentputdiffputcumulputkind totxresize totyresizekindcolrT orgkindwidthwidthbeforekind minkindwidth mintextheightrNONEr minpadxTexttotheadrowheadtsframe textminpadyrrrr< scrollbarr#scrollbar_totwidthuses_scrollbarauto_scrollbar orgtextheightpackr'r!) r rDrhrrzrTrrrZrrr s ` rrVzTableFrame.__init__Ns 9"       3?< + + + + + + z1dDM;;??? !UT\4=,IJJJ#Q 4 4 6 6 6&54<t}2]>> @ @ @#Q 4 4 6 6 6y"dDL111  A QJEE}V,  L.$t'88  %** T]!             U||  L !     # LIO     #& N7 ##%#%'(#)  8!455 14d;;; 14d;;; D14dCCC 14d;;;;;rc|jt|j|jz |_t|j|jz |_tt|j|_tt|j|_|j|jz|_ |j|jz|_ dSrL) rrr!rrTrrrrr#r$pixwidth pixheightr}s rsetchdimzTableFrame.setchdims $)//1122TZ? $)002233d6HH di(()) di(())  TY. di/rc@|jjdkr|d}d}n:|j|jjf}|d}|jd||f|j||dddS)Nrr@end)r12r)rArr)colorowrrlrDrrinsert tag_config)r colrrs rrzTableFrame.putcolors <  ) )99S>>DEEJ++DL,=>>?E99S>>D uh/// Uu"<  ? ? ? ? ?rcxd|_|jj}|xj|z c_|||dS)Nr)valmoderrScumulvalputval)r rrSs rrzTableFrame.putcounts=  "   Crcxd|_|jj}|xj|z c_|||dS)Nr)rrrrr)r rrs rrzTableFrame.putsizes= |    Crc~||_||t|dSrL)curvalaprlr*)r rvals rrzTableFrame.putvals3   *S//**+++++rc|j|j}|jdkr|j}n|jdkr|j}|rt |jdz|z }nd}|||dS)NrrgY@z---) statbynamerrrSrr1rrrl)r rr0refpss rrzTableFrame.putpercents OCG $ <7 " "'CC \V # #&C  t{U2S899BBB  " rc|j|jd|j|jd}}|jdkr|j|j}}n|jdkr|j|j}}||||z dS)Nrrrr) rowbynamerrrSrr)r rr0bs rrzTableFrame.putdiffsy~cgaj)4>#'!*+E1 <7 " "7AGqAA \V # #616qA CQrc<|||jdSrL)rr)r rs rrzTableFrame.putcumuls C'''''rcjddl}||jj|j}|||dt|dkrEdd|jzz}|ddD]/}||||z.dSdS)Nrrrrr) rrrrrTrrlrr)r rr wraplinesinitialrhs rrzTableFrame.putkindsMM$,"339MEE   )A,''((( y>>A  3 455G!!""  1 1 $/0000   1 1rcv|_|_jj_jj_fd|dD_i_jdj }j|_ dj|<j g_ dg_ tjD]\}}|j }t|tt fs|f}|D]T}|jvrIj j|dj|<j dUdS)Ncvg|]5}|j|6Sr)stripru)rPr&r s rrQz&TableFrame.setmode..sD<<<rr"r)r r_r`ts r update_simplezTableFrame.update_simple's? I     EJ(((((rrrc  |jfd|jD}||jkr|sdS||_tx|jd<x|jd<|jd<|jdt|jdt|jdts@|j ddtx|jd<x|jd<|jd<dSi|_ g}t|jD]7\}}||}| |||j |j<8t|j|d|jdjj|d|j|jjjgx}|_|d|_t1|jdkr`| t|j|d|jdjj|d|d |d|_|jt5d |D} |D]`}  dd | jz dd | z| jzd  dd| jzadd|jd|D|_|jD]1}  d| | j!d2 dd|jfd|_"tG|dj$|dj%d|_&|j |_'d|_(|jD]} | )| |"dd|_(t|dj*D]\}} | |_&t1|dkr7|dj| |dj|dj+| ji|_'|jD]} | )| |"d|r|j,rt[|jd.dddz } t[|jd}| |k}||j/kr|0|tx|jd<x|jd<|jd<dS)Nc vg|]5}tdt|jtdz 6Srr)rrrr)rPcontrolr|s rrQz%TableFrame.update..0sI...As7>3u::a<8899...rstaterrz-- No Sample --r)rrr)relativecPg|]#}tt|j$Sr)rr"r@rPsamps rrQz%TableFrame.update..Xs(888$S__%%888rz Sample %s: z%%%dd)r@z at %s r@r)rc@g|]}t|jjSr)r!rrrs rrQz%TableFrame.update..bs$>>>eDIN++>>>r)rgrc0d|S)Nr)r)rrs rrz#TableFrame.update..jsqxxt44rrz .rr)1r|rrNORMALrrrr>rrDISABLEDrrrCrrrvrrrDdisplayrsamps colorsamprrelsamprr@datetime tag_configuresizesrrlrgrRowrSrrrrrhr_r^rr#rrr)r rridxs statbyidxr(rrrr"rrr0numrowsr5needs_scrollbarr|rs @@rrzTableFrame.update,s ....#}... DM ! !5 ! F MSS 'ST\'2T\'5J $$$ E3''' E3'''  L  '8 9 9 9QY YDIg  Yg!6g9N F #DM22 1 1JAwa>D   T " " ",0DOGL ) ) 48Yq\4=+;+B+Ga#/:-5     q t}   ! ! LL)A, a8H8O8TVZ[\V]).q333 4 4 4!8DL L 88%888 9 9 : :D HHUMDI5 6 6 6 HHUWq[DJ6 C C C HHUJ$-8 9 9 9 9 I666 L>>>>> 9 @ @C HHUCIIcj11; ? ? ? ?  I444458>58=)DD  9  C JJsOOOO  eAhm,,  DAqDL5zzA~~!HM1!HM58#4QV#<"y   3 GGDMMMM  3D/ 3$)//%0066s;;A>??AGDIh'((A%kO$"555!!/222MUU 'UT\'2T\'5J5J5Jrct|}|j}|j|z}||jdzkr |jdz}||_||z }t||j\}}t ||jz dz |j|j_|xj |z c_ |j |j |j fD]}||d<|j |dz z|d<t|}t|j|z|j\} }|j| z} t|j d} | |jkr|j} | | z |jz|z}|xj|z c_| |j d<|j|dz z|j d<|dd||fS)NrrrTrrr rr)r#rrrSrrrrrTrrrrrrrrrrr) r rr?rrWrV charwidthrUr rowresize newheight oldheights rrFzTableFrame.resizes WW==2% di!m # #y1}H   !(DI66 5 , ,q 0$2CEE  2, di8 1 1A"AgJ uqy0AfII WW!$/B"6 BB 5&2  (+,, t) ) )*Ii'494u??rc>|j||dS)Nr8)rr)r rr5s rsetsizezFiller.setsizes1       rc|\}}|td||ztd||zdSrU)rrr)r dwdhrr5s rrFz Filler.resizesE||~~1 SAF^^SAF^^44444rN)rrrrVrrrFrrrrrsS@@@   55555rrceZdZdZdS)rc0||_||_||_dSrL)rSrr)r rSrrs rrVz Row.__init__s   rNrYrrrrrs#rrceZdZddZdS)rNrc ||_|j|_|j|_||_||_|j|j|j|_ i|_ |+| ||}|D]} | |j | j<ng} d} |j D]7} | jdkrt| } | | j8|| }d} d}t!|D]>\}} | |}| t#dd|} | |j |<| | jz } || jz }?| 3t#|j|z |j| z d}|g|| | <||j d<||_ dS)Nr)rrrSrr@rZr[r\r]rr^rZr_rrCget_rows_of_kindsrr)r rvrrr@rrrr_rkindsoidxrrrSr(rothers rrVzSample.__init__s I Z   ((););DM)J)JKK   ",,['BBD * *() af%% *ED} + +8y((u::DLL****))%00DDE#D// # #3Qx;aD//C&) d# "DJ. D0@)LL#('T$Y+0 i( r)NrNrYrrrrrs())))))rrceZdZdZdZdZdZd(dZdZdZ d Z d Z d Z d Z d ZdZdZdZdZeZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'S))r")redgreenbluermagentacyanrr,c \ d_|_|jx_}|jx_}|r:|j|}|j|_n|j _t|x_ tj td_t!jd_t%j_jjd<jdjjd jjd jjd jjd jt!jd _t%j_jjd<ddg}t9_jd|jj_ gd}t9_!t!jd_"t%j"_#j#j"d<t%j"d_$%j$|j!j&j#'dj$t9_(t%j"d_)%j)dgj(j*j#'dj)tWjjj,_-|.j j-_/t!jd_0t%j0_1j1j0d<j1dj2j1dj3tj dth_5tmj5d jd_78|d_9tu_;j;<dt{j5dj;j>t _?tj_Atj _BtjBtjEjFjG!_Htj5d"jHjIjHjJd#jHjKjHjL$_Mtj5d%jHjNjHjOd&jHjPjHjQjHjR'_SjMjH_MjSjH_Sg_Ti_Ud(D]u}jHV|}tj5|jX}|Y|jZjT[||jU|<vt_]j]<d)j^d*j]j_+t_`j`<d)j^d,j`ja+t_bjb<d)j^d-jbjc+tjBx} _etjBjg.x} _hjMj iddd/d/t0jSj id)dd/d/1jTdj idd)d)td/d/2jTd)j id)d)d)td/d/2j7iddd/d/1j?idd/d/d/1tj _ljmt3jmt3j mt3j"mt3j-jomt3j0mt3jidd4ttztz5r sd6jtjeuj!vjFw|| j x| ytjHj {| j {| j xd7_|j }j ~f_d8d9d:d:d;}  fd<} | dS)=Nrr)rrFilerrzNew Profile Browser)rr=z Open Profilez Close Windowz Clear CacheExitPane)rrYrGraph)r{rr)rrrrrTablez Table header)rHeader)rrzTable scrollbar)rOnOffrHelpAbout)rrr)rr=rCollectr)r7rrrsamples)rr?rrrrrbytes)rr?rrrrr(r{rzShow Control Panelrz Show Graphz Show Table)r+r)rrrr rrr)rr)rrr)r\i)r)ik=)r*))rrr)rrr)rrr)rrrcjjjz}|jjjjzz _j_j_d_  dj d_ dS)Nrz r) rfrrrrtf_wanted_marginlastwrlasth in_configurereevent_configureinited)rxrr s r initfinalz*ProfileBrowser.__init__..initfinal s G     ''))DJ,B,B,D,DDB$&**,,tw}/H/H/J/JJ%LD !//11DJ0022DJ !D  JJ}d&: ; ; ;DKKKr)r3rrvr rhpathabspathdirname initialdirrwgetcwdToplevelrrr&menubarr  filebuttonr;filemenu add_commandcmd_newcmd_open cmd_closecmd_clear_cachecmd_exit panebuttonpanemenur graphtypevar modechooser cmd_graphtype graphbutton var_tablemode tablebutton tablemenu headermenuaddmodechooser cmd_tablemode add_cascadevar_tablescrollbartablescrollbarmenucmd_tablescrollbarrrrrrv helpbuttonhelpmenu cmd_aboutcmd_helpr ctrlframera exitbutton set_filename id_collectr collectingr r% cmd_collect collectbuttonrtr|disptabrrr7rrrrrrrxcontrolrrrrr3rrrr$rupdate_tableframerrrCr"var_showcontrolr$cmd_showcontrol var_showgraph cmd_showgraph var_showtable cmd_showtabler=rfr& cmd_dt_movedd_trr!rfillerrrrr'rgridmainre event_maprr load_filenamerHr;rrminsizewinfo_screenwidthwinfo_screenheightmaxsizesetusergeometry)r rr#rvrhchoicesrrrrfrjminsizesr5rs` @rrVzProfileBrowser.__init__sm   3"x' f  .x''11H!h..x88DOO!fmmooDO%     UTZ1=== $T\???T_-- "&- !!' " ? ? ? !! !NNN !!!OOO !!)= " ? ? ? !! !FFF$T\???T_-- "&-    &KK++ L'7  t133   '[[%dlAAAd.//#'> t/~FFF  O         """HHH"+++"&  $5#7#7#7   # " #  #  #     ""( # * * *%T\483FGG**4:tGG $T\???T_-- "&- !!!HHH !! !FFF J   !fdm,1333 (### (( A(i26/151A06888 48__ TZ t|+6+B+/+;,0,=!!! $DN),*.,*=)-);)2151G04 0E &&& $DN),*.,*=)-);)0151G04 0E04 0L&&& !%   $    0 0D\--d33F#(>@@G  ! !'"3 4 4 4 N ! !' * * *(/D  % %)||   ### %%&)( & * * * (\\ q!!! %%'& & ( ( ( (\\ q!!! %%'& & ( ( ( "$ 555TW 4;LMMMMdh   Qqqq KKK   Qqqq AAA q$$!!!! % E E E q$$!!!! % E E E 111=== Aaaa@@@TZ((  $''' $''' 4((( 4((( ###... $''' q1Q???  7DN+++ *..00$2BCCC 8$$$ ""$$$ c$,,99;;(//1133 4 4 4 ""$$$!  4466 55779 ! !!            rc0|ddS)Nabout)rXr}s rrWzProfileBrowser.cmd_about s grhelpc|jj}|jd} d|jd<|j|jj|jt|jj|}|j |||jd<dS#||jd<wxYw)NrZr)inpickle) rvrwrrrr gsltextviewerrpbhelprr)r picknamerwrYrs rrXzProfileBrowser.cmd_help s X[*++--h7 <4;DJ % % ' ' 1 J      ++  (;;,A H % %a ( ( (4;DJ % % ' ' 1 1 1GDJ % % ' ' 1 ; ; ; ;s B CC6c8|jdSrL)r|r~r}s rrCzProfileBrowser.cmd_clear_cache s      rc8|jdSrL)rrr}s rrBzProfileBrowser.cmd_close s rc|jr|dS|j(|j|jd|_dSdSrL)r]r event_collectr\rrqrus rr^zProfileBrowser.cmd_collect se ?    '    * ''888"&+*rc|j\}}|r||jjkr |j|jn*|j| d}|j||jD])}|t|j*|j d|j |_ dS)Nr) r|rrrrrrrrrrlrr\)r or"rrKs rrzProfileBrowser.event_collect sz!!##1  1DL))) '' 3333Z_ &&r***^ 1 1DJ0000***41CDDrc|xjdz c_|j|jz}||jj|jjzz }t ||}||jj|jjzz }|j|d\}}|j }||z}|j||z d|j |xjdzc_dSr) r1rrrrjrrfrrFr.rJ)r rr4mx_ wanted_margins rrizProfileBrowser.cmd_dt_moved s( QZ # # % % (>(>(@(@ @48>--//$(.2L2L2N2NN OR[[47=,,..1J1J1L1LL M ##B**A-  b rM)1---  Qrc8|jdSrL)rrr}s rrDzProfileBrowser.cmd_exit? s  rc|j|j|j|dSrL)rrrGrr|rPr}s rrIzProfileBrowser.cmd_graphtypeB sC !!$"3"7"7"9"94:FFF rcD|j|jdSrL)rr$r#r}s rr@zProfileBrowser.cmd_newF s  $$T]33333rctj|j|jddg}|}|r||dSdS)N)zHeapy data filesz.hpy)z All filesr)r9 filetypes)rA filedialogOpenrr9showrn)r opr#s rrAzProfileBrowser.cmd_openI sp   $ $TZ150L0B02 %''7799  )   x ( ( ( ( ( ) )rc.|dSrL) grid_thingsr}s rrdzProfileBrowser.cmd_showcontrolV s rct|jr|jrq|j|jj d|j|jj|jjz d|j | dSrU) rerrgrfrFrrrrrJrr}s rrfzProfileBrowser.cmd_showgraphY s   ! ! # # $(:(>(>(@(@ $ GNNDG.. 2 2 2 L   5 8I I1 M M M L ! ! # # # rc|j|j|j|jdSrL)rfrrKrrrr}s rrPzProfileBrowser.cmd_tablemodeb sB *..00$2BCCC rc"|j}|j}|dkr d|_|dddS|dkrd|_|ddS|dkrd|_|ddSJ)Nrrrr"rr#)rfrRrrrr)r rfr)s rrTz!ProfileBrowser.cmd_tablescrollbarf s W  # ' ' ) ) ;; !B  IIAAI . . . . . $YY !B  OOA      %ZZ !B  OOA      1rc6|jd|j|j|j|jfz}|j|dS)Nz %dx%d+%d+%d)rrrrrrgeometry)r gs rrszProfileBrowser.setusergeometryu s   J " " $ $ J # # % % J " " $ $ J " " $ $ & & Arct||}t|}||d<||||||S)Nrr)r r;rO)r rrrtcmdvarr=rrs rrHzProfileBrowser.modechooser sGE---F||v D'67;;; rc   fd  fd}g |D]i}t} |||d|D]&}|||||||dk'j dS)NclddDdS)Nrc6g|]}|Sr)r)rPvs rrQzDProfileBrowser.addmodechooser..setcmdvar.. s 7 7 7Q 7 7 7r)r join)rvarssr setcmdvarz0ProfileBrowser.addmodechooser..setcmdvar s6 JJsxx 7 7$ 7 7 788 9 9 9 9 9rc0dSrLr)r=rsrroz*ProfileBrowser.addmodechooser..cmd s IKKK GIIIIIrr)r=rr r columnbreak)r rCr r) r rrtrr=rorvarr0rrs `` @@rrOzProfileBrowser.addmodechooser s : : : : : :        B++C KK    GGBqENNN  $$ "#be%   rc@|j}|j}|j|jj|jj|jj|j|j j| |j | dSrL) rrrrY grid_forgetrrjrfr`rkrlrH sizewidgets)r owohs rrzProfileBrowser.grid_things s Z # # % % Z $ $ & & ""$$$ &&((( ""$$$  !!###   """ %%'''  ##%%% rczd}|j}|r*|j|ddddt|dz }d}|j}|j}||f}|r6|jjd|ttzdd|dz }|r6|r4|j jd|ttz|dz }|r1|j jd|ttzdd|s|r/|j |dttz|dz }|j dd|j j|dttz|jdddS)Nrrr)rrrrr rrr)rcrrYrr!rergrrr'rjrfr`rkr resizable)r rrKrrrgts rrlzProfileBrowser.gridmain s  $ $ & &   N  C+,11Q  H H H 1HC   " " $ $   " " $ $V   L  # #&1)* $ & & & aKF    HN  AfQqS  A A A aKF  ! GM  1VAaCaa  ! ! !    L  #a%&qS     1HC Aq!!! 3q1=== Q"""""rcb|j|jurdS|jsdS|jrdS|j}|j}||jkr ||jkrdS|xjdz c_||_||_||xjdzc_dSr ) widgetrr3r1rrr/r0r)r rncurwcurhs rr2zProfileBrowser.event_configure s |js%||j dz dz }|s|rd|jr8|j rt!|j j}|||j jzz }|j ||z||j \}} |j ||z ||j |j|jt+|j j|j jn|jr'|j |||j n|j r'|j |||j n^|j |||j |j |j dd|jr|j dSdSdS)NrrRrrr)rrrrr<rrrerrCrrgrfrkrcrr!rFrHrjr;rrrJ)r rrmbxmbysfsdysdidhrrdiydihrr?fxfwcwfdwdproprs rrzProfileBrowser.sizewidgets s: z%%''z&&((l&&((l&&((   ! ! # # % JJt| $ $ $   ! ! # # JJtw    $ JJt{ # # #  BA--//C..""CsSBQB:2DCGG   ! ! # # " AA   # # % % " "AA !A ]]__ ]]__ #X]Ri!m  ! ! !$*>*B*B*D*D !,,..q11A5C  (3 (!%%'' DD,>,B,B,D,D Ddl0<<>>??)B)B)D)D!DE,,S5[#dl:KLLBsRxTW666 ++---""3t|'9'F'F'H'H'+w}'A'A'C'C$E$EFFFF#'')) D ##CT\):;;;;#'')) DsCL1111 ""3DK(8999 ##DK$7$7$9$9!$)runbindre event_unmaprrrs rrmzProfileBrowser.event_mapA sI '"""  4#3444 rcz|jd|jd|jdS)Nrr))rrrermrrs rrzProfileBrowser.event_unmapF s6 )$$$ 00000rc n|jd} d|jd<|j|r|jj|} |j||j |j|j D])}| t|j*| |||jd|j dd|j dd||jd|r$|jj||_n#t*$rt-d|jjj\}}}t6j|jd|zdd |jjj ||zz YnwxYw||jd<dS#||jd<wxYw) NrZrrrr tracebackzError when loading %r: z%srr?)!rrrrvr6r7r|rrrrrrr[ xrange_fitrxr yrange_fitrfr8r9 Exception __import__ print_exc_rootsysexc_inforArBrCrrformat_exception_only)r r#rYrKetyper rOs rrnzProfileBrowser.load_filenameJ s*++--h7# <4;DJ % % ' ' 1 J      ;8=00:: F ))) '' 33355AOOC OO4444!!(+++!!! ))!,,,q!--a000q!--a000!!!Q'''F&*hm&;&;H&E&EDO3   ;''11333#'8>#5#>#>#@#@ ub",,:3h>rwwtx~'?'U'U!5(*(* + +++- 85zHeapy Profile Browser: %s)r#rvr)r r#rs rr[zProfileBrowser.set_filenamez s<   #"H+h6 %     rc||j|jkr||j|n||dSrL)rrrrrr+rtrackr}s r setnormposzProfileBrowser.setnormpos sq  9 # # OO    8  NN           rcdSrLrr}s r redraw_allzProfileBrowser.redraw_all r5rc:|jddSrU)rcontrolrr}s rtrackoffzProfileBrowser.trackoff s !!!$$$$$rc^|jt|jdSrL)rarHrr|r}s rrzProfileBrowser.xrange_fit s& #dj//*****rc<|jddS)Nrr)rr2r}s rrzProfileBrowser.yrange_fit s!   q )))))rN)rx))rrrrrrVrWrXrCrBr^rrirDrIr@rArdrfrhrPrTrsrHrOrrlr2rrFrmrrnrbrr[rrrrrrrrr"r"sH KFKnnnb<<<< !!! ' ' ' E E EB444 ) ) )"M   $6 $#$#$#L0@(@(@(H$$$ 111%<%<% I(rr)#rAtkinter.filedialogtkinter.messageboxguppy.etc.Descriptorrr rr%r*r1r9r;rNrUrRrar[rtrrrgrSrrrrrr&r=rdrrrr"rrrrrsx111111,,,,,I,,, $   $      """""4"""0i,,,,,,,, &0jjjjjjjjZANANANANANANANANHH$H$H$H$H$H$H$H$V^(^(^(^(^(^(^(^(B X (X (X (X (X (X (X (X (v=6=6=6=6=6=6=6=6@++++++++\$$$$$$$$$$$$$$$$N9.9.9.9.9.9.9.9.x<5<5<5<5<5<5<5<5~llllllll^,^^^^^^^^B 55555555,********Z^ *^ *^ *^ *^ *^ *^ *^ *B!!!!!!!!!!r