summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/flamegraph.py
AgeCommit message (Expand)AuthorFilesLines
2023-01-19perf script flamegraph: Avoid d3-flame-graph package dependencyIan Rogers1-22/+85
2021-08-30perf flamegraph: flamegraph.py script improvementsAndreas Gerstmayr1-27/+81
2020-06-22perf flamegraph: Explicitly set utf-8 encodingAndreas Gerstmayr1-3/+5
2020-04-16perf script: Add flamegraph.py scriptAndreas Gerstmayr1-0/+124
qaEl6UO&D6kƏT{׎f+]jΧ˃x IӖ!>@]:,Sd$z%MJ ‰N|Ƕ./ʁ.yEyj(nH[甯%cY%S9OddWw ͕o0 `$kFr4P6.D*(M>k'sjtKX]}`q_8sSx,"TΈ{DTlqAw,k<٭̌ܯكi7|WPةٯ^NaϠW3G |i0U0)$JSÃH}s"c;E|'W˾+O`$ĎD1oHBkhQ?KNd#DD2Y g\!&X bu\B$43XFNiN'3 ĊWފeV.BJ!aH%ՋF09[[VyX8:v'e 6'6#JF6ix(^,(`lӟ/sp*xN6P`᚞|f&X)FWحk39#:׮^:  +l9p"iװs1&^U+94DW2Re/Wlnu=?IK]o+}V~t,F,#q˕?d:>0h|aӜ/xo3%z s˒SAS{ K}jle&_A/Bef@d¦{xǔq#0CvnqK8 Dk k8U$[%;̥x 0-bC%QN-S>;TK׶y,"萵GO|ނ=nu捯;3y+Aٶa1t _N GdyJ2OI g %䪐Oh@+ԸЕ]/3xp1Y (U &vƨj>Uł- /aa˝Dbo&2;IWmN`56a:M%k}I5ПQ#| >W-%HeFLunC}>msybQT<-J ^Ÿb|%Bk ]Yd a0b?ç|vv1~,KA/٥ClJ"G$n;#*S 1{po-i|^Y75j7z)p;A W%K#:r^ 9!gt<2n{`WzK}`15y5U4P7"Tub J+q-bb٥ ԩ!lxHt{f7좥SUT9W\tN[ee!!o FM=kxZa|5C#AD8Ko{YS4 Nz}>{ֻXp@݉5R Y T=?[ Z]'2T7n_9PWTIl?>`6zD샬MmI bK ́/ԊR7Υ v|8W󈘚=Kn2]U0if<0OΜ(bztKmv+&2]w~Gw:@w|R$"5#1@>yu=wd/o= ngo|5:UEͅ],Z-G;Ҍ#(xONSaC=&@ԁt׆F)d:HJ I5(#"w rra_\ N0Ku5,ɝIH|'Pʵ$z It/! Ȉpm-:}A^codA}F^sDfC)mѣ+1M7F\ +5&\@D D/d]#>1|DNV_ކ7HyQs$ӝ\ﳯwNsaMgs};Lr-h->å|j5.3](@_XD4µI( '=^u`5|lF%M&IFطAFp!iv8w/$--rȈCO|yVR)0滹.~}i"cZd$C{Wa :7c|`:7~n8?mM?[\6`HG<}@A+ Srnm)$u0DL C 삫tNzD zVΣ vt rudOו&&AGOC|RcwyDw*IH5\?\ůoEN'i[9m*;H9$D{ aGo(.iԏ^$.ln2tS?^dd9utwML&dd?& x=rvr [hpw*}awO5}eArTs@i#f?\CL7 –PZN}9/c_YT tksM+uvV=iTy#}hnX 8JU;t?჈7)91^;`sֹM;$f&OiW+25K:&!ַqHg%j SGOW}x/XGOObׯ;hbF!!]2&Kyi|P$cy~6b$BVA?pˆ^k]i,i~·4>Hrh[qͻIO;;//۞~MeR-ƛ Ŝ/h jRyXނij[Q@joGFMF$KT y i1Җc$'H4,̮z?E?*{[b9h#✭g2<3]QyɑS?t@M'o>wa G V&]Y>\5jyGY5K_$@q)[11P78Jɽu;Istng7A@6n Bg͛~F;:G7CXT"P*ջ돚Ux:7Q/^KoL%Evty1\'>9 yC@Qd8{('YIFmFDŽSotՑLmCjg̱{0жq3=Z}rKAyCځ<]3o }Xx`T'"&A/c7ڪWgF 5R`ڡ) I1 Lٽ퓵(59tD,*GR* ^,Blz7߉OeeEpP(.LGfAf8X|r䐮 Er]?ʵϮߖ4ل6EYs2ZffjkŘobo> XhҖ[gcj =d9Oo7ԃɅ%}77odh!fw&RX;ߌT˛BҸ陎|m2y#rpEDwUR6( ^`Fjooy 04f1TH5h;?6%u5PzE@ 5pW>[Ĺ`}+إW}$z:WTwJbPiߕ^I HicӰazxbu笑G=09Mx־UцvNtT%Czv.-{W] u5}T񗶊KIOfq[&Ez&-a8(ٿC0x{V~i+0?x*w[*,ˋ˛k+ J}xwURE@H9'@\' ;a~>%'ݿ2fw_L?2LQcTOFrZ7ꨣMrBq>Q`LOwPX6n%d!<;z`a+5`\~!v3v0t Lo@%¬אՉ"H/#"n;ôharY\8ow4d2=|$/52wYm5Ucc$B|dXl'e;煝o{\k",쒳~~7+`ܛLj0VjTz5T;JMI4Um&UIW5jXE#?j2Κ]%4 ~\L{,tI.].Abohl'M9 PvL0+PZa1& %@N<+}ʽo7.@ЬV<."=h4HO 2Wwd1m3JR+ ->XZHEaC֊]3ǿ٬t]>ӴQcA/#,[ڜ£ӃOZF:0RͣR !J=fm( Cxku'[4qeMFRk5gvD6{b>ʍg5 |F3Zyb T2]a$ȷveMHީM̝Zɚhу|4(+"E)&yh'A[ݒߝ7hU4ƶ/ +VߢyfĤ3MܵKsOVa`jcA1XVCI8$*f菏Cv^ ۪*g%#ד=dOY4:f;ߋwݵ%:0ۘUXZCszV<߃$ģ02yD+L;FuTSuԨ&%mhFj:Rݮ"N#[.fs ijw$=yY5*^b;\QBFe7IOi"T/]HSrB8~ܓ.f#uAR62!YU5z=V}F?"=}f,G_^GSvGd+&. Ѭ`.<}^%Vl@zGcpu5 ̱H,C[(|Us!Į&h0ȁawtbNJBNԚJ9噞̲;{BJ*QϦ0z5%hr_\nol]6!% vmGQR4+ Z=yWk7QHٴX+ gm`eZ4ySU$\\.3vm4d MhvP8܀yGK+)m7d3^PhhIT;xp2зh (ԝJE܀/$^ז%z+uu5/G_D^Eqz#hٗ*A3J̎;So\IM2XWu:5RwW/4;azU$(Mb!2v^20.'}x~c>3yg77pz'`nDŽLM%tО%D8)̣[!N{djS6)C5)2aBB3![{K b .]֗-?KX!7C#Y5?yi OSN1[Eo-q~cKB%xMұ%lĒǤǒ*򿷴.-x"UV/7sMx0`壁eG_QACK..]\*mFQS'f.emO _Kv!cexK\u 1H6f hi_hݚa#w(IZ807Z ?-Uecv - 0ZzrWG~ue5u sl-NcɳWϯc CA&i:\YGzq.OqzQ"LO2 LuA쁿X &,|>`g^S`]LU *ƫ^AIchbSNd%E/lq,MZ K86\zϵ>A 2fn,ԙ NBmB5((#>cr45PyyO@CyU^*'s>3DhvsQ]ֻ!}z1ن[¡.`6bQdhw+JsP$ѐ?FKW PlM9C5U.Spol!fAX/ĹG|RE& }sfMRpmW:4M|ǧJ7:j] ֱA| aK5؅E}UP{` !Vfx,nѡ<2pϓ6>{{F׭zUB%#vB'{/rŨ }Mmz(; KXI=wvS-wfr-ruqsuF>]϶P3&mh9r0+xwK2۬ڷpګz$s5U5mګnȮT ip k#eXF>x$PDr+ > H|r؞hkpS)P<,J䰘%,I(YX9A<m7{nnW5K3:4c$ GA`'yeE 5[ j/tQ+87}$0a 3ȕY>6iLBS-d{j0Sv]EŌ%oyx(8?t:gFƔTjUIʿX殤 `%Ē:hcfg1{ /Г4VH#'ʊFfV1w`(2Zd& K]+D"[NkҬoB4F7L5׶_H(\p? .7وVd\__?e2d+K "9rݠY$uW  js9!jL Z⪒n ]Ƕdq$]&V ͞ëA][§!*K#Y.N6,ܢ+f}M{2iVN tjEV:$Td?GHrautz|"q op=`?wI݃K!xeanϦ]5 qt\H7-,K }[h/]93YYmv N}R*fTɰMҰHT*K g(n2Z\IhcϛLsXcvH]qqys-2i!_]_I3 >(d8\hgފ0B_+iju9}jn$IJtڍU!<.[%;QMԘOCj g#CVD ~IahF=ZJ[ġY,^q#;2Idޮ|M( :ѯ_%|!ٷl, 'ߎ {noMxW"|C<:i:݁vZRh:|V2YӸ?hsX~#Ȅ$]fv"*hq&V&7-bzj6OSl9:Frc<*<id<0ᮬkqu#:e}ݫmOt**# 4""Տ';<:u;1/)<į4"v$zoΤR K3@9yےzN-CkQpHx>׮v탿'%\+6ٚdwd['z.D+OIıdbvG8ڥS^~06}ùO*x+CQš>D.ue+4V~6b9LLcTs@ XҞyua3j+4N#a{RTMkv3jT*p#`4a#׈< h].@>^b $?!zA?ɚj4ҟ>SKL IДyieGC3K=g !szF6^&C8w;赦_-ɈpZq)k?/'C"CHL}S8O'sTv%Cݝ;.БDOW*Yɯ9>5/+OT\J&Fj`6;H. 6};J2fn=u=!U:W2_jd%k?zhR>d.hhxn̊dWw6Ӻd;65תm  g(ªؙ@)iu~xCh^|&T\g(ԛ ԜZ 6$X^ΕdDM ,3u6͹Vit/liF}`%Kb0&UޙZ ,S #ըŗ`0mS4#47dUR4xA*R^8_\4| rʌ_냯5S#DŽ~# OhV"M^3dSj彘0 Cl}jh߉&;Z2ķݧNvT7Y|q5VG*X\lc{oF LO`ںgىHN"|ڞO&#:FM#V%B,BF* .B'Ǣ% :"  Ǧr~5 wo LBnH?*,IJIH5UesWUvs w9xF 5mw^ո]NFשi)t)ʹ@Gi<+4c-M `H@kIH{CR ðr%efDR\ 9/pqi2^|!HaġGJZpTJqDTDggWDS;IЍoc:op';+_2tc;}Z]Pɝ;@żh!I5);o2+BF}np9ߝE5)P):tlA_Lf9P.^Y(~3 . xm: sS JAg:uj{o 4أv9ن%5l[2;.fSp)P 98|N5|LW~HOh>1FW 9"|1n:s]~Hi5:, 0Hq[,f6ZU`gGqJf~ +(*bn] WooU|TR%"n ?)b ~I;lJXSΝB.2^9P@ N>K3XI;MC= 8?;ܝw0| `Af Bl!b<1c@I$vZRKRlx\>I~}Mott(bH=t[GI\J`S^.崡&Yğ8*>CF9vBaIN$_ {Ɩr T*vyw,+_ ݩQUdivhM56M5iiWz@COQ( TgN=D$rfmMN wI7-|ZRԄTzJ#C]dj;KVhgn]b;\$l-y4z-(Sʴc-^Քlڳ|ne-sB;{veZUIq1R_k P_+0IFVy46 5~Z7eOVo6 =[C Kڀof0떆O'$ni}OPkmD(nR(1&6z0H0:mtcI$+S.Lnb)#fMJSCnɼZVW&&g7`> #E ff>VITpm@Bb^t͈ӆ\ºo}+2<ݵ-7.yKWH,f.E ϩ_e҃3{?L/Gd\>{1dl}_"e~^i7>a_A0AH<9FBt 3@k2sY }mؤcG8Cŏ- v=ٖ&x^!| BCsxztP]:֐fZwqP?:_ZY5V({OcqIU;| B`t(HkD,"ø8\JKl.hηLPV53\ڀWynF߭(p˲ `'l̏B5:-u/:@Ƕ#\U$݋) _gKI߻sRkbPn7E :).O”iJA6Ls_³uo9Rn[?~gdthBQ>d0kB$"SנּQ%a{PuJ3QI}ײ#=wDq;RX'zVjFζ)Wܕ 8jXftN2Ձl"=, 2 qGj Ϙ6U{6ţfԏ⼼xou|Z47s+%xũzR@H ;ѩʵ'js6/aBz1dp[L4,HG`X;Bdȏ?#1DJح ybAp{y6UY :ޙ[1bEn2l芖#jJi9:FZ*ܹ8G~o-)@Qgr+t.~E3ֹM+zg1e͐ þq^ޫӛ3>=o\{Mw\#oYadl2cEqo+J}TϠV8XͷH 5+6yܛw\\OJh64htKB14ӂ0AFzΦ<#5BXKdYP|3xx~`.N87$9D6]uS-jTz.x5t{(Kꔩq-$2-ySWd^MӛP#igjޯON@/dmr YaI]6 f]W-eǫwag>'iD! UGӻ|tQф=s6`gK\ru4l2 (IyA/e}yY҂//rͤΣY,%_vֲ)4¿cs C=ѧ$&S)h 0(*m1CS 赩1򷶒nk]NЌAbӡqڗL,3.K:K ̤֎0H⬼IQ Q |02AßWNQPCR)K oF FGg 31I.fb e>75O-LDYПf9D}Z4i}txB[9u,)>5"I}ụ,3i:aK @P.;M*QgR*!L^fV*5TbH4Qi~/+ yNQw?ͯ5HTϻP%eP28@7E)P ]_P H4MTIxO$lL9'>fM ;SN7ՠ uL*zSd oO<4/4^qdĒVkcZpuD+.')rXv^dZ.-hokr:I:ȰyfJޯdEzh]7W&4ԃA֪?gϭMb_mUv4kXiH: _bYssR%WʁJ^Ux\fRm̽$6F0EvZ4}}<2` n3iQ"q%PJAZ1aY,|ͫ6nlmr{.wjIGR} WDˋ9Gg+Hvf4[>i/0jDp/|i> cЧ.0JøSE8O<.@UyeKqx]-(0@Lhn4Yf] 5`?~ő'ը ȍ?tSI] AwB2Ώ*O|o`H6J)u^ag{o2v5Iį1S>&]1I Ojf]S.+H* :@-_b'{g<'#V#A~_%{7a ܑ9;'1h#,hGƱrZ-O7uHժ~+> RciO8H'$הӀfRRY_="I͛2$ y>:bNI<BosEn[C(dB1$|IcI3@LHn`3 3ķ"K3 8+3JJܚ?0N5zUt<g,WoZt 7XWU:t 6Bރ4悸v0zgƗ(7^7-"0/3̮=u8k؄P>9QEYXo8( ^v^>y3P%gCvSSsS̐Z+)QQ l hWVca@6|<Ť;?ڧ^ȧE:zɽ~蔝i_qr+UMv2 c6Jgn"lػZyJ+P+B.LGL])cFR*^m%AR)u%`EF&GXzY&xچI.]Z,ǔ5s[3:$Ĩ0xk\<5" AZYMTA;=x]\ɺGTr41Bje5zI X5)6i U^喆c՚t@<)ۼsmYꣵN׃ZqP0usG%:;Ekl[q@/SQK(D8"K}`Eۤ4ni5T6sM\fm%X0ØҜlg\ZFoo.HojZLqc0uc]R. 6\f))2/2q,4pIw>}ez=kF-Z]e2hUS2 vg-$'CEzθJ{:4B SA8KPKe-uY8iF|*ݔ)O-* .Y'?sL% ꯉr9],m\a"˖v=`~ڑMe!jK2^"wd0hI&2QȴʍiqZ%]m`]K0ޡ)ÆbQ2?KY k $ V Nn֪yۉtuS yUvHߧ15}~VgBSOsHL#Nirԫ8𯺢n=u]7)TIV=}w>)ҘֈO~ ij7P057|՗KJ}ҭէT&=xqRW R:\͖jtT 1]w$E:j~rWjiHk3oS9}(#iiÏȂ[4T4qkK*ͥv} (.p]?-cU=^!tĦ)SYu4Yee7bXe5}!wWyl)d'ɔ:}+5,2\߹hʆ;QMEx '5Ң{^v·0Ikh:*9O$zz.mvFcӠTNEvocΜ}prp%cf|L{!FR1(׫*m >pc$Gf)=Qm4 >k0袠Rk_z'15Ji·E>s *qI %HIHδZ}:K,$qgF8cej^W$D먑kJ@ %z=?' f9ly6/M#ۛ9^,Ҫ6*ʼn2~vuچ5[]eN=tWmGu@ۂwXaIf%qUE%Ĉ䈑r7#xvߎ$XZ!=E ,Vk`K&ܘSWT{ 8m*vynbbf܊jJ4E[ sFN@rd%?h*bTdk6ZR[:1Kh{&)`E욝#߅m˕BlT8tweBߨ+d,@[#HI6^"x80BI:5wbA >؇QmWWcISAmڵN &3퉓0ʼnRtF"q9dn/Lыrmh9i1dr-D]XӲ'0 AE(IAOZR$O(asLM`4Ij^_ҫ|]lV $99cOt}:YI4*Yy&ۥK(,;ʶHq>HR[xYrgց)\_`’%4C1=(:eD3+^E>]M٤{H"g:l9[ C=U@0O[v˂̀˹/V~l>SRk'x=:D>WPg BBB϶tVzFͩIn_}ʎoQ"\jٝ[: }|k- wNJ-z9Z&S8a޺|1ʠZ4h>צMJ.H+)w^pZ΢&yj–z~Vdڢ(^f qf597(0dz[6SZ LUΫEWZx>Q +pjו 2Fll j:m$$@3dM>)pDJNz\("bE*V.,nJ^U3\l_M~#i qZ5ڜ ۅ:`ָp yU8C^Ң03~xZ1cQbz>sntܢCh+%_k! C8tP\TA:Xa)Cl <"GrY~I}̍6v.V=Kq5S'U 3zL:]L4g碢GNb#ړRܫ)&ger7:;шÖ.KINU y (.dXtjxY>+$ ar gPa}9~̹%j$$T*$BꒄIVu46}>NKj,7wf2!m+$F˛+tX V:5.JU7GY* k"'Oܫ@ / ,^O#p ejYL>GĈ: ћ SgX9 I "vK* &߶%]\U&GUGgF6u%̫hG+cRBчP 6s8&$ Ƀ9XzBhsgPH  }Day-fg-6Мo=iYNeM+^` %; Lb`7j. {Ws7K>aU`jufp7J)?u6ʵz?}Gr-^o/`l!u4tSjy~Kkʼ`,kbJoz7x+(rH=eؠC1.'4Wa'jnM4y}2"d>Iϭ'Е|VIE$smJY[?5rӹ{9w&~ӭ<[~܄٩5[K j\:;.F`l E ak~_R/=O{C˗;$S:YǬ |1It/Yőxwߋiib2͝?g}Z\&k%>WCҤJY%Uɜh. O_B?؜ZoF#PZ4?!}2 2O>ZXqN:O|~w >P3&"z "3VMv_KY'\_XiӢcP:m9{o#f>䍛=M4k'bPemY4. ЪizgZDMO^::^G>vXXC=yhRׂ u=g\v< +C.%pP&f|2 #5u>Y UYN%J']h9 < & 3IwmUOLK9vp%A~sS,'7dAGށz@ MucUvaŞ0=35R-dswٲLwP룳StcUHv}J.1wɘU}5lSk%Cs: ov%Y:LR>k5ZR"Y]EI5jj#TL@%22wZf٭x^l?'I6|0Qh1:f@[Ĺ 4V'O%2UguZP.@"1Ud$r;+@{?\zA9On6PNy$)N1Nh2VQA[RX 4Yq)x/)Mrp5Q蒖=\28`(- )Xq </qdV?܀I"| |{(zoؿ@_}c!p0xR#k1, -zRK O\Lt)ONJ-{!MU+=|h"E64Zc"~ m/I %l?iJS{$j*qcz)IhV{$'#58 }ȻL=U?Ipc 9jwrijDh !K:ekHwfbqo)?[D7)J>@0 2ytL&*d#ZV]R[/#䄂!%mh]Rr Ҫkk鬝L֒5R.zCJ?ۣq.lж}'t`i` BvqzyunOFIFVs<"BԴ:n:-a $p)xBBjc[w{RjURw7@nng7dopz)wQF}/k vw@6-#ժh >Bh +w!y#9 -#SCaԅN"=; \p<9δv2W}o=4)td" s %!ZLoLW1"fxn] Ag9;g&"5\ –ӏOw0;/c8%vt3T32 (_&ߑ̀iB #5z"[x5a^ő-1p\QJ2*X 7BG/XYmS7yՁ`b[XwdC&0VT~:,SSs%2x IbV 'βVUgr7c.q9|!$.ȴZ%۩wtlvi'-llQu|#$v68\rbnFȘX|^Mo I&CHPu+",q[~$ $ۛEЧf.i)r&(>Tg3PEvFjERŏ:0c˿eQK?9AK/N9A&KG)1t K/ъTtF]K"x5HR܅-x21KUC+W!ܹXŸ[hV)"\>H#rB%Y0jjA/5Z̀(e_st+h͊nbږleIEƅv{e s;@Y DVPe5-7NRشZ;F;<MRjM2cf!܄0AȀ a.m?XWQ\^\I&Ӫ&x! G(^oQJ;P;qHKm)2b=EVm Ӧ>6n`#m5& MǤ !o0%;rp%aFbtk@V%n1gu]Õ," ؍z%N}7kTElW]KGZ˚jZhz(sbmv[s\䩤QHCMXaYBG!dN;|r; FuQvŝGjbX7c[j-,O*a9>y: ]HW |[IO_lx[RѴѯ-8! u*So4ڈ sK]1XנppI^s!_v O_ O VR-?(leF+(RY_8nkU{nQ+7sҺ6p44o '~s9vB)MaU{]i@åA6e\bkM| UZ!JCÈs~翉b;n$ F=8aΏڑ qmV+R/PGXG%רRgrDa@~9$Y+b Ǭ&TKE\)Wnxmٮ6Z.ɍ\&R+~pB+sǍ9diҌdNG .S렪8S*%`lՑlܪ.a4|vHW3၆ K 1H1=#\!nl$ͯX?O~r7FO緯q$oZ֤.`NE]U@^H&[}ӍP024o>jH䵋񤔔w!TQYqjsR)MꘙYhMrRвݜ(YjkrdcLHΌ`΍!NVT4gߟ_M`IIT2sNG#- źxQI}GdpP,81#:K8Mލׂw)p_vއzj'<)Q|%Ũ.Won&~6jiCnjAɫ[}y4vU'!zz{պRm |0N$܊vFYQ,Q`ݥ/"i\ 8W-9I*֪z;l!x9/RO,o 2kc4BU%3fUa 󩃤/ZXm5gyAcs3v Ԛ8nIx +b4tz-!S>7^[Nt3.<Չ2SF}2]v'2˰` ;Vroo +rY r) S~.pT{:߭GxMKkxQqXLwb,c(ja>3+h|b#ayyN iIZ2$%c2%D o)48h6v#EI */Pݷs 5Y"rDayH"ə 'D(pb i!%pbg=sgngٚ=A$*~b%6 )ڰ]X95Π(sBihY:Zn>iÁ6kŤ}++I{rAM3VHkWW*,@ͼrğǃ?&58'VkJpk~!οD4@h]vn9l.ӈ<ɝn6|S]_[Z[9)!:GuʢP^_KLy% hfs|:%umf7[c}y"[s L5:YrqrN7`ucߕ,hDgga)vMf#4#=S+;g:h/[ܡV O!/xY!'= ~"!q$5&zc4h_b'؊1ev,84n1\iB"7Wd\]R;Y(mRLfƅCP{oS>ޝ%u;6mE27f#j]5Cv47g}J2.^BÌWv까0Er׈ Rްry5W֮^m+kq$zC5+{x ot->`GdkĩwᄾӀ%1v$ן._a=A P> = .lqG|M:v=hp] nK_7id8\ᗐtJ5]Q ڕЇˑ#Iұ!xAZIqd|[6S6U^,?[}T} jgt\f0HBj&`,lđԋ'WJF$^YI1VYo3O I<> ??AĻfu M'44*$% Pɏ]fXRCb 挈+ })f%RN˃ 09\׫dk8 F#iakCfRP:f7=Փ=Ӡ/b ٪/#-J]'Soj8|6a0]{N`)CչLA=q _`FTbg4?Dbk0Fa%0%0vk$wT`ĄI^H~,4 D䎈 H }gͺ9o/]%,6ajDA;zҘ4%K('E掭cvO|O*ZA-׵޾ū\# I2Gњnkz] 'UU85?`;_s꫗4)ЄzΤO`XU(h[<ΡAj_4Ȝ8UR&O;V.kyxq3]u<TsY!#uC*;R; yu@[ cɲc?oոd5ع75՜X!si#WeYV>Awt]aYqf%H^PuY4ٽMlVFٌY6؁~bH_FT}PfӺ\nLgKmP8侹 30iuﯝ'Rb_jjUZO|wiri^ʊE p\8qw ]}Y.<&ϫJG :Dcn:ϛYӗ%c0μcZrZE`ߣfkX]ԸC2ʤz^O75S8.;/4C~N Pme(mJom4l. ".M'tSrI_yAOT14K"9]%xk@P55ٔ**Bݤ^ٕ);/I>ޥ|&TŖX/B:62c ؜BQW'F]*˘q} <)tU&rn<C*%K뙧,fF??={'$8'ً{s ѤV頣zTMG& TZdawQjJÐ p8^VC >7?VhuIy%a5+FU,s/ GpsCM&n#k|XXkeZF*Rc Y.2Ev|+r9SwNgv>u "4]TW,R!@:+ ,GK+}ei-R7Nv]wxj@WgQp_Yn3 $cp5WMqG7MtYaRf"nn` w ~\6"ncg1%QewG=od;Ɉ1id#/PXeICukm7$*ØȹcΎE]K%Qsm\>Xc`HWD|<(CX{]u/J j&]Vuv+=V}s ML55ωݟ\rxIOh,+*.є :titݬ#ڔ\肉ij8v^~t)T 6ocwUG\mitZ#4:#F6lT}04_56:lOUQ*p 8U2W&*><Ǖie0*T6GU@{m2Mk齸'+!=ѡb䘻fn>X,l4ь]>cIӣ s5`Ri_VkB~XwUgL{:EfA}H;(HzdAM STuHgKGbi2| 1x,Ȣם Fcs|kX,pfهDwߑE8yUr= })菩uuJo.gB:щQŤ?{TZ9Ӗ~Wl:"rۄ^N (쁩t0CZ^-`>ttPRiWPΥk]ǹ#7QD(wLp^.Rŵ@ -1idvsuwjի ˧"mĎR{\UN]O: $/K ߒ&$;:49RtNȨO55n]?i QaUmMRfmP5]8MSxd_^JZXNӓhUk_O$O]ف.-I|̔u?+F4!H4}fz=NQ}e( fY6 ?f&4!qW)x9d.ӦSZu誟nc8 J#Yj`, ^Wl[|knc.d"Ҩ5[6갃\ҙjl7i+%@#x !%Vƀ2M.f/w}V4)1d"oSQ`:k(mA4t"?uE\\Ϝ0]e^+z]60MAг!ms>Զ듌| hR#F KQf]&0cg6-&ɥh>)0s]37A:i"`q 9"hjV@3aD~- "m+.r#^#u.,-f!.2p |ͭd3ˍ'S~mQӴ>KZjƷJ*vZ4~Hcе&VCk.r,mrcܺim'Nl@xrѰc&; cx8dT8 ,Q O6nANu촸 _j3$>fZOܲz~v~uBAvT&GW M&Zͭ$@qiQ okJj4%">t}]'*aj^$2\;)$Cը_uҤ!j:>$bjUp脰U;qX5 6@FfH Fדkpw^r@@k1ݐvˎ j&$xLpMC^@̊p)T/ 7{WlNR0;7Fz<)X61%,huHV\  ] #:*j9itG!ȬU5{}E/%VY8sPdӒ771Pй^.\S+&ۓn;Cs 0&\Bit-J[+Ye>19noI%dˣ 1\3 TL7j,-74W&@:3U+./!so7F32IzUZÅwVʣ58qVΞ?.`~~2a<$w _^д+~O(v>sعuM|)M3a غtT)C%M!4b7GԋӂT}{3(sG>trsZ2'!ݝjv)V`6I<DկK`wU8H a8D"c>%{E&f:n{݆jLc<tܙU7l+՛:d`6-pJ̽%v֐'QqF7%D)I9?~TtG%R5PQYS)'UAUj@ECiKG\W,Ӣ_ j :% ;GukѧFW(wi:Ɇ>~U.ԛ$\xG9S_Kg1HPsZ/3 Zꖀ8.Buި=?+ wfh~(_OoKOI;kƵc=9MWeȨs|aKnJ>W.|5N~+gTA٪u!̈́a]|8T9Ip˫oâ{-"+&yz464>w>8"kIѧNkBc ="@c֠<ľ5h n/a7zd{;K;}Z8<+g[2p)pvnujϙEɓ1R\qlC??9k4:9#={OjB3Nl6] X0o~A"bpu !Cv}Rd,Of.=QD&R r$Hm?C]Os+'ytPy$f7}0\*T=q_ 1C'?zu>$*1ipx8ކ!W6t` _|.7x amXU%eum7dgnMp&DP g:M/8̼̋W2(B(n/:h[FdF/eY+fHzB˼feX:9a:G[p"JO*$Sc1!Io 2hy sO"iCr]g?Cþl>Mt=(?ڥdmQP9mqB1dgtyUȔ{N)8sF,@K0ZXvS% ~ϰHu\Y"ݸ[8)A1|=q+TI/3߸V}{)Z5:!RȀ4ە]3cuvԇt{>u: \%Qڸ>nAٜTo6UєjuUgV4^@R5u>#K1Wl^v=jhO3ѕҒ{@UG i5〞jgg:v9;;{|*6 CpSTA. V;y p=o~;VJ Ir7i!3C]i担4}1GlO+JZw15aB@̱:j&hQfqƕ'ޫw&&ຟEs=ʭM\$~]*˙D%0 ٥ZnIF`f{B=A |59Ot/P>_WɎ&sN'n_n9C% Ez0W=k{Kx-<3 KyHYr~?OY9 MxO)9+(4v>@ fvZ1cE5t-7lQܑ8R Ls?Cy:oӊ iQrgXX|^0(x p8RF%*vّoA~C Oג.AbBaiT\քqz 4iG,G<%7R.s#)ܳ>AgE]缢w|f:YH{[ \Pca@9 #8/GB-d|MB<[ =6-Ҝ*_q|E B[Rp>\z^v]XwUm}89Y/*K:"^i$P16ha Dx*YorhT}o8R2ƭMtnUخ 62 ȧ QYBXi_JH y>N;xX eFiNVrrDӆ,^hg[.\v䴠&:QM{E:NOj8YmFVЉjjӃ;RNxzI_5WW h\J%ǥOMB7K321f0--Pb?wfc{ {Ր=)5UvPZ3xj`i4Zo09Nh VI07ں1tIQK=U%u;aN_S[0E`fV:H8^^?H:I?F }BXcA%L VT|FQσBW]b~5Rڨ\sJVY3ҁl-@k.%1]>݉peѢLj&'.s3P~>Da}>Z:F[U'Վ6I'4Oiwtބ}p C_ `$YfLB_UAr,dW@:2M,pL>(\L$)^=o&+`PH}a18%v { d_Ҧw&|Y$zyzVf^5E"Xyo9<N#[FK[}8,2e]o̹<&5Rjec "mg!Ðlӥ5}Ih]gGAmti9+`ժfFwvby˝:pٱsz/;;s3X7;z\ f۵VKPτ*x{|ub#$z;?|;F4Z4hΡXuǪ>U3 xfhy8pƀ9_ǽO1%k8mbR8X:~Di\2<+dR,~42S$-,l iNU]vY5=+A9IqETQue6zUbҬ L L0mt0\m!+2pXނ.b'6s,6-H!AuI֪ - ߞT:#;4uk.#њNwh>#dCimG%z).$A=KL.BY*h۫֫F s 3:܄GqwHZ~>H_3')Ȉg~gC iNը<ȕ`d>ݚC ~9a,lDGD!A4m7 Jl|͈P17e*0Jώ3֤r&x&,0L'84]ΣniB@s}@ڝ5LA5|*CLf I&&KBcocl. Z__?`Q?jr|B/>bpoo#}s|"lhnMNH7HԛM赺Jͪج5P8's2ovh&<悎@HE{bzuoT$@zhJx{]Qo? P-$E9GgeIlv 7!%K7IȞpA BV Y dC O}kt &qG߮ gt!Տ1G-\ie`?햆}$EG;%Uqvqn0_lL/,F {OiEVj0 )Kߕp@cG4)t{_ھW_t*d}qVF/[jIBHaxyGtGD.Le_6JaжC%zY"{Vn!RLV~^rBHG$&W-L QY]}~h6&vdqwV[(!Du&1TWSto f99v+FdJCpgU]c,{PXhC͏HBs`^`tщ` pM$E]_{kEX esC\ֽj6$<wdwŜԀ(}pL>INExM*3)m5>- yqg d^x_tPh59GzY-7<f|_Ѥ Z$zx}o8,`GS; [yq\xpU't~%ZRLhWNfz)N&x?~rNoz!APK-?'0<%Yg=0a1{Yz6 zd >y-9zt31﶐2`{ij@?f42o%@tN~X㫬>ƽy,bg Uk0(jxU%< X[p$n|e~q 6XGEmmW`QYEKK(:EAwd--yV{_>"A'rV5*v#nfSveA~2KP+|兓s2=2{e}WPhvdOL~>콿ܧĘ|Tg:aފ_`H1d pZmcBmN3Etĉ4tދ4bLt}YcrIf)~4).mt\⊚W:!bFs'k4kNK U|g!)+QuudLg}H43>5 #_GM\z%T+覾x%htR߆(ò{:}甛"^ x*bAW<"̨~VaXly;w8IKxG147})%y¬d*nԌg4վɊx45oßhBŔ6dX|@I*5g昖ysKlK2޵!MzJi3J){aj{yqN(e]J)*.`-p%d ~Låqگ/iT{MybIf85QǓO޻xs=L 3L[M2/T]P s9/#nˏcQR?xol@#k#1sjӔ63Jk8\XM w*SW|;f=٣ lyxLV[VؒxI6-cQ IH 'ː,W>ى jX7-blwMdF/l?TA9Ā*a"\ S"hQF i>ޞqJe@`њ_ ڭ$fad:Q|[.nIdQ1Leh[(CْV'3W~C0O/E`>MRlsaGxG2grtif*i8⒨v,pmqF9LAʑs平1N J-GE#|*b9)䊯 >$lkf㠶P Todobof;&8VyItR%}e>?#B8JtmΥϚ)AM(kGB?rR`'B.MP]\yZ̟}Z6VoVgߵ۷{2j徔Cdif7Q7`ߵ 6ҿ5Tcu2UIK!47` )%y]+& ^uKvӨJ8]kԠaoWg̡Q)]l%nJrBm2-AS`iER)w&:T,"1M؇2'j-vԚ1N\5 ?* ޛQ ^U[@Q&c4 x95A gIL?\NPV[4NI hd_xV*RQϗ]Cvt{=keVngG#܂$RoNڄ f<{>6U-Qe},@Y5[!<~B1(rt-P(3: vgȒ,$lbpExIzQ qo":g~bi6o[A&A_ ah YUD(l>,HD?/}0L9.`#d~~gSM+CHwZyJ_a}I[k_.9XBopn^zK%Sg LW6=HNwUA+;Ɯy;)|qNj䶅_@cLhs} $/srNŒI>BfhVش!,Ur|IS424 9lYI< `-Wq$q́*Qs/񱆼_kjdHrq]竹j%5Q ˖3#/FiĴbKG⸽ ;FT6 \IpJVtIܽz)+ {%O= yW&-Yؓ$D҂~]VnHDA}]NDl ~ܤI]Fj3?_" ytjZ.}$֓x(=b3Ç>RR\IjrЕ_]atԪ460%MDbN ،(wRJN2~_Nl~O0X[^,y#L%X)>l2;[SzT(@Ӂ%>쳻Xit3|`G+5l]GI QZZC+3V@mYkod^}b1nOK}9Hv>Ҋ>kv5ɶ2Sq!ÔxO1K'A}SouPOXu$tyO2dTg8UJâ.P_HiCYtU&U&iݑp:`׷62j&J%)kyUư-kek<+˔f._h gbx\s1,L7@\e <W3m>8FS(0u/Y@:@6M.̠ӭZ4Jy?H " xT BYs{s`VݙnG[^ޔlI{"ZWz8Cᔂ-yDWe/gv1.}RA3)+ge Gzn+_-IJݚU;̱4|R1%,0_v['6Jd}[17kג"2ǃF9v? wHH N\+xf/aLG*hoհy 1j5`6tiz:37fE2jOz%/RˈI<ɡ$Xyv>zyM授twKc30LLc!g^!(qV_e*ʒods)hլi,uk`R B m۽B쏗ϔ*5 _ߠGO7 I.:ASDD}ǺL_L+ܐq۠_bӋJZXdAfBjӋbXA\Y”|{A%yT7S%B7؄3Z2`z65;.-zj۹B6V(ae~FL$k#]Xk=dEnƤ nN;Q,&^G5$#үHr;:Hl g(  Hx90`zvɶ* w;EOXbLu|n`w"9P~ףEhK;24h i9k b}\nїʥd ^P"V˼xw5;K gX&pI(Xx,i5'(תndDm~~q^M.X,WGo= -}Bߌ6:l Y:\g 0iQ٪u{%yCߜr"QP(|.j ZE{>گ pz%= o>fa\rI &'/$WI*Hr"-[Ek1;v;uSfC`k1yG$Xp6 )`G \`#V%=!&Vّ$XlqIYvYnIA3g XjNC+:Qj2 `&u(&ME3`2Vӑꌁ'ڥc$cOzl 'Vu۴`vQA:!I܁By)At @#- fAxsr8=Uy>|GdY&`hjB FMk U=Ӻ1Sc ?nx 7nԚMyc;"D쥪;WMp/ϡ>Aj&Qf`sH<%} EH9 ^ec'I˰b'7fɏP՘{z~mxĊv9\6^ H96hXNA>}<ҬJvnW ur`0VQPE< }\Vv96PC;;0_xE;;J<цޙfTqPwz8p0@dɥkCnB*hU0 I"@q)`w1pwIO*jήOJd eUu *"c9?CCa&tig^ &E=B3^bhE8W+ W5!Wv0Cg2yL^ۅ7 06(5ZH˔ ;v+ZVpԘZtfjw5joMhv^5T8^3NaGݻ29k)2*[`uĬ9oqie:ۏG܁f~' Rףw#aCZ`=Wyg.+r<OE DhvZjOlF-X3nu֭gv!poZ)?&-ݼzAʌ-ѳ+0Id<2֢% B4EBњt 50cT~z@m:C),֒XUaoEdbFǶBxLGyZTvgX0VlFZ+c_IkZj:LA7ZM0&.)*9ܹlDdp; ?Q$ۤrh7'%)hq-%G6\.9 Ov$1ȫ[忈5+>tkm$co\$yzqf:Ɲp,%No`|S?9)HqAAİ۫dJdvz5Yh-c^,X!tZ*;=ZX!V|LLﰍG+ph5l͸]ʖN<8 J&ѣђT[ 3EꓥkpȎ2i2 { ȶ|B$e:9 JN)to_s+$ޔTjZkL WaN=Ns~yWRuIЀ.ὐԮ\;$۹&}8b8:O3=s-]J=٨.=#vSֳHEOU&'<@)W'qq׭P.S|I-ц,YZsqڵnp g `6,|N騷xMg ,!|:rRl:%{f8-`gY)E@~$5K9?Of=<z~)Hv+ ɥE6LyR/gÒj0Lt82p.iuc,%fJUS)+53á2ˢ|GW\UM uןH8"Zwk1xݤ4 hatN!j=;)7MHBÖ~ d缊IN]s M鼞setjyX~ YҐyx<>%qt 8Ȃb]ci[UXA˕T~H}r9H'R?:f98Y`Gq({iot9ǧIK "!)nH36((!KSHZkuRp:m6D$?.g&kX+0NmF9X Q+{ۧSA!DJ yɐp&1Q0 J" '2u):?NݤmtknJ`m; kjm^ ;tVD> kWǨl5K{PJ HUδ'( îPꚔ$RG-al.k]f.|&Ԁjg%m^ɏ׀;yf:D4d2 >'яQ,m[TD>(gEK ɭ P$(xZ(;HF2X *;ytp֔C*C=]M3;8FsY"yWPgC+|YNn'DZ#U@00Ig5|auo>4%o_Q\RR2f\\Oo!XI֖]Qxb TR Qd8oHz4,hY{EՎvƲ/!Wq!c u.Ps@W F钚T;Ay0}K7$"4I>V_M}{ZtV7 AE@HNV_7T햝G2כH0Sz",^Bɋ%b~;7{[k I{dnp[xD؁nm_b;o$}0z1%UC@ ?}G)HYhwA" h7vKUW$̞f1R_xI +kWQ?ikQ\'uNC%Lu!44TGիmi5Iŵ6p/6K]i2[3~%X rޥ/[!YA`0eiȶ0jF KK:ui:!UKP 46;gݙBq3DKa !뫒vB9r>͇&΂4Јx/L|Or=ҝÐaӏ/زϹ g>(VKTd2PjNzn2BqMUR DGM NU{r\E>wQ"Uo>؎xo3id蔿j 2_ Ү!wdSO(1|MH7u7eDkh E-}z Oe~O vNHOYz9e e0IɚwgD#~n &,lSRMw #svy1H$R!˚i#zr uROw`OjэC–Jvdac`W w૚;>[( E ~"ҳRGմdLt Dj+%c6Aa{m5(O^3~ڎwȻW=^P:Sp=\`jF"~Fד^@,mKK%uIryGh՚2AO_- qGTUKJmQG獙:KѠcJKc "kس٧[C`h=ǣחlxᖣWbe/Mee+u_P`%,_Xsr?UWIN]֬ӠLo`3z0_ՊXEyUY9oL_A&F_m2, /̓{n-S9+_'ոitu5Inr>!?;,/uK\c\E@ YR☀EN{Pw@6b QM+s P#IC/{_Ы^>?xhr?ytum4rIH.4x]3o9 ;>|\*lX\k.=Qbn^Y Z{/w m2{Wa'?ẅ́Tro I<.IICL5pnT1*==/f`Q*gEsuAq~8rZ搲 rP/.p]٧^ng7h7xZr_2e(u&3G||xW\7QkjX6___ޮ5F JV_ZZ[[“[~kk4{?淿u;z7?QsұH K|_9]F 7~?w?^Bwo}1;Ӯ_Z;˴ܒ1{ih,=!8Kڦ4oֶg~L"G0 0 ,ql7CZpdLL@ٕp\(,0Ə%,6>jƳrJ&K' IW0Ҳr#Ny>I_ ד[p~&;A}Kp=<([ Vi7‰ IVlZ.X-mwK;Ko(nqʛFD2 BM_>"Gc$]RKT.K/u#y!PDO]o|K3l0da,9Ofo2.d[`יh܋ BAD~SkyLAHDA-z:fKQ滅ԩ?y<_+Q0;Nw^ӳڞEu4h2s4ᣗ l]ӈ;hX#;."h'/o}ovs]"Mx,7U?_@;M1rj3%}Yn $./*_o!SϴĔC=ͅŎF5H޾{ŤL1(Eyѐ=;LOwgӈ't+pfCǏoN25 ^$}u~FSwӑGY(a/H~NGГEA,68;3&+y%)w%r<7*#Sى7,Ȅ OÍRҖ08dĩ8e(" oc{h|Ҙd柞ҙRfM zB2cs,?P*ND8W19fd쑎awtCo]̡0B^w)l:\IC@IqMVU M͵OcOr{tA*a*k~qkX{[R Pԝdjƒ#Mo[l9>U%QE.c@/3E(=a. }&_"_iQzGAVM$y'z2_X y/jF\F^TvDe + +&!Xfl&Q8kD?G麜԰瀯,ΫE5d; )ՓX{@G?:2% '2 Jk2c^қ4ꃮpWs˩O$ 9 Bo@+f\Tu鍥g+ϐ]tdl0柖RqQ[Bߑ<7%ޑ~06%oe)yRjtɋX"34 ؙ{\1V,}Q]ѣm'W*{L>oo'jO?zo׫7O\F 8UmKA{ (LSUX/2޴tm^",r8!]E`~P4 $n(;3VDAӴĉH5܌.b=i;Jʈ'H LE}I}:|jl9b N7Q0^ `Ӆ_cJjaY50FݚY41"a@v}h)/87~{kjxכ[q+q+ߪ6B  v 5`TN&(w M@4L<Ǽےwsv)Ѐ4&E#cwăCvW$j|z\W\`oSo^#9^X@}i?۳s,Ye=C% LWc31âCzZwi/ ΟN釵*Nt؁BPɔKl_K^ m dʿ$buL?%g }I}K]Ha¸Mn0򼗿s!XKGS%F?H1E3EIq_#%;.X)qGtl @Fr$#/4,*|ˌϋHTVbN/jэYM2ԂߌX2Dʐ% ۬5㭛hCXj!0 8t$Kc& ;}H_ZzE~_&f{%#F/PD#D^Jt,-}j{ħ/DohXtF*:',@'r8ļ!49G8U S_k%(W3K#7>JBYׯWCT0jpקSg&}3Nלzfp[vqJGmBprHVӾ7«-POBtSiSybu$wFN䵶;8Zr??;rªKd6>omIi:=FA67cͭs">e>OkO?$!к*5 \ "xsQ!YяI| hZK.wGolC<] VSb$ C,-g&犿i F^줺 0X 1@ o+zOߋ u% IK!PΐL+/_̯o2CΆ;|?^d(vs~"QO4[Co:=ʕ3%`ITaX3^')blyU$#7MeeuTʳstw|`h:Lϑ,v_,$ `2/s_ at"k w"ėJ}~ŐlbIlv,;p. (?_ôm]ݾ2MΤcq`S-)2a9~D<'audMF}cv% nhkΚ5gvD 'I`̃7N Ԋqkoo薹 3{SxY $Zẕۂ$Wݒ<͌F Z^/Z 򿐗N*7PYO/OIrtա?Dw Aǔ/\@f(@t`!ő SI]]=zgQKDD:9u9zs0yN<G\F^.TpFbt Yq"eH|X_U(2ʉNa_u,Avbr}oPbX=c-k<6!L@a5JPy9 * U$PEI6xkH)uIMf0/HsiZ(Esg  !Ӓz\ֿ DR=MYuăkxEFţ3K(,C3NX%T.-ۀZn;[* -"Ц\3®6h qܝ2ܩG$.35_|hrHٻiT';95al\^ёg\^ާ,k~]k@E](w"w">.3Wz5A <5VRV>`wB Z@'2 " G;L'rѰ뙐keKz$'#./quyl' W鴦%pɾ}$XfkbNw<"NTAxK.AL9[[1_6kC4B5~έ$}5^.X/]yQ'/ Hf]?f9R$#̏mËF[iFg5R{t?kdZ]|*JT !XVb;Y 9A.}F ָ%4Р%F\xUW d qЂ35qſؠ(5.BG] 5ԄR" ЎUQVt,r x_?Ut瀉 0ƪi54T0Qzl0u@8l1|N%0Y:~Q(|ĝ=ϗձqx#ipL̙#s:/{OzuħNP> a!4Ig)aQ$<"d|ͽE jņ{L wH"`A4T[-"μX' 8l XH $J]uzs㧵Q[ Rr1UcJ+S=,σ =MvYFFY[)%HF!8EPݞ$Ť2HR*T+pW#֏"RL9BeW"WYHxS8і]Ҙn+s&[3]x%o}N]7|pclҽxer]wN 8k"jJYM]%ߪT7J,pneZRGYsK)Y7L!>mNOgڒKKfh,d)Cl*ny&?hA0CVxL ٗo@_@6r []Zߓ4f=6yǭ# cF3iBYɱyW/3L&KmГ JN @F(1"Ţk:kR;`p^p[ <oFtg^O':Pi'o-B@zZ:yȔe)5 `cӑA9,a~}O(Sa!˿խ?[Os< 4f.l{0g Z,xX+Qc heu~BYh~pIf~p!4(N#s{Wo3=so4 /?-u G lQ,"4,\YUrh0UQ< &ɩƮz1}Δ\Gz8$3 |?X{CbdN" kv3zlîx=:aց4O4g2=IuruEgpM$ ;'6p.J"cFj`$e^'j˿2NSFu4