summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/libxed.py
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2022-04-06 15:01:50 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-04-20 18:56:39 +0200
commitaa63a74d4535a1d97b60e46655a1361c42565b89 (patch)
tree25f6eaeaf8e1493a5cf06969bfa3a4e249f54083 /tools/perf/scripts/python/libxed.py
parentce522ba9ef7e2d9fb22a39eb3371c0c64e2a433e (diff)
downloadlinux-aa63a74d4535a1d97b60e46655a1361c42565b89.tar.gz
linux-aa63a74d4535a1d97b60e46655a1361c42565b89.tar.bz2
linux-aa63a74d4535a1d97b60e46655a1361c42565b89.zip
topology/sysfs: Hide PPIN on systems that do not support it.
Systems that do not support a Protected Processor Identification Number currently report: # cat /sys/devices/system/cpu/cpu0/topology/ppin 0x0 which is confusing/wrong. Add a ".is_visible" function to suppress inclusion of the ppin file. Fixes: ab28e944197f ("topology/sysfs: Add PPIN in sysfs under cpu topology") Signed-off-by: Tony Luck <tony.luck@intel.com> Link: https://lore.kernel.org/r/20220406220150.63855-1-tony.luck@intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/scripts/python/libxed.py')
0 files changed, 0 insertions, 0 deletions
+IQt0QeY-pJAl͚IerBl?te/t6f'i—G).8MW5[0RkW1*UW#;k?Ή:{бW1mylkQXBI[J*݃䵞+諃e(X7OkxJLك?RǬu ,0f&Z5[~PHςfIv2?i˰ա>yAU5P^fRIȢ|p#IT;~i ==j:`!C"4@O'O37kC3 WD vux!P BMק3E2_ H ݃H@7p k,!TD0zb_*$?=ӞD} tP ?%V|߼G3bJ]%]3N d[Π\/Z* -\͚s Uv۷=,Tb\BIΙu;fwmw[vRcY-TP9!y B r{vq͔NO+m܅S[4;{jڸ>îﻆ"N;kzi mN5x5 9`bd[\:&i>="~߼T{zhx#dVVr64Veذ@@V`X "/` k!J+haٌ5 NM41#Db ЙL CCiWx4 v=ld1g)tfcֺ 4e~Etmܛ1ݶڃCmME6p,2&3na'1`.mPŴZ@pY9ʈ֬ʼnBWmjH!g*pEcAkmhWʂwgh5<Ɛh`Mhv0`uit3'Mjac38%@h9ڏA|v+w;3}}κ[Z=8_u[u )7Շ9 S+KYzZD6 O|-g7vcӃ?btYwCVR 6ֆ!VVkx|=~[3{ fzzFeïa ,o-~mUu̬ gw}ceFe:} %y\fs_؏j2þـMTsD<-,{o,|JFʹ~o},4U}]0CⲬ_Qέ.c#|XRZ]m{:Sq|E5y"Su5 ǓvLr;}\][9*Ъ\wz:Cnkg#϶qFa g}D"n(U.Y)94T208PZ)Iu}/z%7V^Q`ߋÆ}3R.>C" 9t9K,ް..v"0V17xy WKRTdv/q* ? x4jxTE9@d`h~7 pdI!_wO7w&WMZ_kT űz.܋hЍCKVY& Oϰ'gyhI?yB44 &RF~p~E%z~}k8?1|K?S\mVzg̓+J~jt \x]qR@l\+ǎB+Q3γoϚ|峣_^0ƱR\F*hϛY_o/{ϻ#n^&Qr}O{ ,+H&LUP u5Oc nz?$bG˷0&xb^8\{3͚f q1%08 rK}xM\mB#>i.tsk FSSꛜ+W8i#⇬慁;z3p՝td>=QL뚧cȻxј> )\h.91Y#~mmvi=`U1W QW qVX#F,jXՂ1W8$A*]VڶUm;wwm[-Pj%߄ۢq[=gIEp}yWmUUmjcm8TSjmU)(ZF4o#*e:Nd;(UEXtf:Q! sUE)-ٲJ.Yp+J8ӒqSpU9u;OIn;qWg[T@ lǎ\8CcmόI$I%UjWi_Ǻ-|N:I`?Oc=r,6əs~{<]Z~iEZwrmw<ㆱ.^jWCA%0 @"E\t#c0D8ɄQau0\ PQ`E?P~ߝ6R IG+.% NBvO ^~}_Ϗ/e~!!<\KO?v9G=}Zӆr8,{2 ªBCX.X7I ؜46vB́%T=z?<6l>ؖuٰxՈ@D&Wkm~ʨ}8~Q Sߎ(*Wyuq|DeEK?>V=^@6|&,zaV,Dd%k T?1?;? HWd4qe>r]~|Q\Y§t(8rEl';!w,  ME{}n{4ylKՋĿ2ledž!5{VRU"8&;E>|6Դ T"` 2 (]F R\>{<dauOre,'U.ԯEF(Y%+ lZYj9P* 3(d.e1 BHR ́} :u(t6z6:3,VJ<+Rcr76vrO+~J`/2=°|i͑Ϡb&=%#J HGr芐ɰ}wQէƧpCbTV;X5Uq]Q:/ 5yG ܳm"$H!BsY~~t$A``-.S`i(N4lm)XnYt:oʒxLtR8sp WRm:ͻl^A$!o~Lk" KBZk>kcaODj2=xn2=#ʀ;~v{>f\ -u'gx{X)eܵsW nCܙdgfFpBY=F ;V)7I݆]rGVyCtC]݆,cMe|sȚ ^<^w*5sG^[ Q Ly(kgrzǶшG~ήTmRꎄ![P;0hR1͎!CCQ81 !>>q(fX֚$Dl{lqm1"I3Fe/8rd`V؃:p G]ͤf,:+<% 8&3O䂈O3%91:#BcbdPK|ql-ܗc d&8In22B/eCri1ؖp.)f`HC/@y/vkww햋l 80gld%QE.d[9"yQQ1Nzh:9R>}1r0ָ ,^Tz *!^Ɋ& ݭC%J|%λCs)}rzLiϧRU 앑0J T7YZm;Y岚Qim v\GPQPWz@S ~UT-z]N;~ճ;zqczKni^)lݼwuٌ;ɮ=8scxڍm;}vrl<@@I4IUQ:5٭i**v*w1燯t/P.ݲpyz {u8CRj]ݚkhۣ5W`٠թ3wm2N3Dɿ\B=˿ mclQ>or߳=%߉ӫ.}Ke\9utƑi/{4lX:͝4ig㕫<zmӫUu6~iCbczr,9y1AβajՇQ3f_ t! R&uȴ ygC۹j=2>gw7UI 7?:Vco c4NJ:SXW-YSt翟Lr-9P!c#w &$PVPQSNJx_7O83ZVgDwS4 }l0}Y=͡ R4~=| !ˤ r}gm{.,عY)͒3PI &IЮ~>fwG0ay]~tO;Y"5@\?X,1cdm(LY)YQ'ռ~TZAs iYۢ{O`vFv}XD~ΑwmE^[KA9Y9atP/k [64`Q<uF]1z\77aO@t(Or=x8j#fac߃_@\տ|7,yXO`9Hfu|u}aXz2~p3cpkh:HGD#{,./ D M:Zjp8mu aB,seDpvZ6sP1$l0+nxty1T3Pٺ3Mt[@16 t }VƦ˵Y60=gy|ֺܾv%qB o~j/,u[/98ᱸ^;W8Vy;o۞z_k$]ރU#DF=Ȗw4 q% v;!-?ٜr@ uyHy"$A(ɀգ nˊX2 逩>j~6`C: -{e#&(pD8-eƣp98QJi5e2$Gǔ Ry\GCg>ȠK6 R=;8Z EN@W5y\?TK'c;#U ptmo. Z/XS; rX(+d-;"$^ wlQ=LgB-k wA6B)zYB<q6SvfڒmuPyt0GnS8 ?& zg;?[<=0貢K6#\AP2Sw@iZ^u9(; Խذ~GCw@&"-é r~v-<<8,.=vnqG<ﬗDl]T%_7C/U(CWVyeҭr{OA؇(Qԙy>}Pw>=n嶞]<1G75.V0:9:y7C>|ovC=8?[q#9,q<ѴY\0^cg*kRzzEі\TfnA0nV-.gr\>KUo% vᒣ:QTB)Ӵ/nƮ/i+T#@ƙI{zW.,90Ru Wʃ3@+[#mURerg;0v!/$Zf.EGBXxgn:Q9*ގ B/ɗ8mtTx w9LI%!EV6Q$N@@'lg)np/xwrl=a߲p W#; 0o΀pW*@G 0ܷ.T@t2d576'ޅ.T|4^{Ju q$(kvhj?ؐ%_8u ]Y\;=)0icc 46 ʁ:p 4pzNQr iSyu'+ M!.~/a''^qn\؁/M[XM QrGɾbӰwܶrT?}i蘔TUU簿=9Yf8{n95splsZulE`D9[DmI[+ȼFx aR gLjnd SQQn'UYߐ6c6>\qDAr@56Ǡ8$~YzfjCx6B5wP!sx;kݲ%S}`7)F$~%s%yv rB}[Dh};ft3cm*"|w {;-Q~LjE}YUy7߉ß5Cs궒|9ܗfA>$$b8 zm wȇ d')gԙRt0Ogql7C@ax 8OBw7fȍ.>ՠ9\VKXg tك/}%db.vǨ"7cjUK[껰 -]8ygu 8? zwV!%tʌ @E='(Bq/@ZYJuOѦmA\q@@LBhsA?\Y{m tFi1ܛz9V`6|_{Gq{, cS HMH<3$3ߜk6aJ ֙S*D_aNBT!2gQTf!{fA_K{,5>8(&GV7W g.@;o=a GWt 4Aѭ1S(ǠeR!@|rNߌ,J`)1024z+m_J{H"@n<攐x׸MȎ`^@r2MAxg]{l⍸#_5\/>. td^U c[]&:Y "\=vr_>^uov_`8XA~gş~V8y[=s2Hz@=Ȭ,;T6unD {ߗ>H#Ps(LG0]17UI`];Ls7tDͳze#kg7-kʸ"~}Eh4y8IBB} XGzвOh\{~.X`߱jj(#\qm uOqvb^Cڛ9ڃvrJUrr#K~|wŇ%8 @,e.neUNb U\J4# s;.YxX\Xɸr7Z76Pz:XD0tjw/.Y# _}=S*lˍUdb &nAD>@?Q1\Mbx{;qr>8NE}eԙzڌPQjZN|eLQH!E)2aa.DڿpSc3]4pI?>yQҎ`<[UOޅ0n+c^^}k.dǗ~+o̓7hY E( =Lra(`%&'!lP|0ӨJLDV[p/60"MF.ɴ}'ϟ L xɅs>.Zvkvt_*}shv^+Yd-fcE  CnxP-3 *h=Tnoo9^6g'W p祙:684|"Np/H7+D!~-.DO$vZb=#}F9=.oq;'ߒEU BPvۜ\Laq)m%-QEa73WOY5 2TYЏ=TXpzyA3x%$dQ)9N=:H쾧 EZqly:<`;i0]fɪ(EsrS3F{7V \C&O+#J뺹+P\\&bPzs 7e;qr>3LM*"psP%Xy8xg(W'whQ1DQ ͼ 2ACDQАTZ&$r2ӵR0BNVAKeEpUn X4#'xea6QcVCE٧/&)p"&?F,)AnJVJ W)K) %mHSՊtUA`L<$ܯ0Bs LWZc@U/cP|,p.GuX`>j8T"S_Ρ}g1y)y_[O"SELFAUi^A2v=XcmӾ(^8=;[ЀTWifg%2WŘ95O(x?Bz^zWeBabWU\%DE#dX*rw߻"l΢ .N895Ԉ 9A9sq#;^gguvGOɻ 8l9bmwT1s2dR4D/&/G0v6$HI`v #> -Fo^[ ?f;P_H.e"E35vR0 0h4-vmvl3peNI" l1h5qF O 54"E'TRiǣbe %գzz˦,7fbTv& T)ds*Y^k Թɗx#۸70ɒ3J`Zї\nҲFkh5r4pwN23&Y3 M=ckLI6ߴ熵{e m3Ҧ~-v4!%F-;%?^85=KS{pD{B^+kܑƉpphI>%u$7Q&]ۍn2sNIF(|˱bo)pB,+f@hf,tqw6 /T, Am,1~ $ h51 ;c9uCv]z{GVp,"W.lTU \[[#3V\Xe Bזּt[%>Nu[ThV]'B(c|wAZ4` [n$5u:qvvxds(Wy]LUǠz-ٽȎ|e 2̝>o xcບ%{ s4꽢d[f^#L"c~=ؼ˼C6\' ![K$ГCEu`1a۲:% 1l~2#jme3;vo$F8~Q=B+<t!=zKB) \ؒP2AGolzsy+ؖ}uPru= bp/~2m. 1',.LԮcd"a'0u+Д}#]u&Ei~%S*-E@Ez&J[~$;0lZ 2e}?X\%qX v8Ax~OӺx 316jePwXX{7L#T߳"n\A7<vrdL\8yrp35MɁ-hUctV1?Kӯ^x֠^ӟ|ҲZDH"Aي=L#-80.r!zze }ceYW]Mb}_PPzxgk Nɀ匀1!^Αhl7P_9W#.}Iy9gzgmZI6+L%0.|Fns/R B| gϬo/vri?!6?&˧z$8i޶eQ]n``lT) i8,P,T^YFP$|zqC|ञ1RVUsIUE QT@uc|Ky9r)'_N;ME D͏+{0,%Ȣ aJD<$"a-_QNJsc-_bTd#r|V:9-)/%eo~Ϧcy;w[XK#^TzTOv%n[``T{Cb+cAGu9ṢߎʶⴞQh@L* bU(4qq^w?ÆEZSu#q::3/Np5I/ѓq_sOdGY.~5fgk 7Ѵ}wzs䁆LM0;%#^je6[SwtR|#~s=TjdT<''Oΐmf#cJ@62$C}HLiUiuv8PnвN7_p P,GS˷,5њ`£ȧڃZ`Cvbev(eLoIe@Ҙ߉bH`\!&Ht E|/٬5T,>FjX Xm˼9n=ATlۤ\(Bk0~X`ɨvn J~g}YpvPdKr(JmDK xŸ 'zgÏpkíXPpkˋgnhn BEDAɍnV d fy}:n}(yGliYt$aZJn>-"ѐD ͨ?$zzݍ?Ot\7?P]sAd/Q5.AiJ(2H ;+..+uâk4)c7SSr^ Id j_ mdR]<`˪Y#nTieNd}s)RD5lA78!(ejPD}tlu(:4ko1tMmQ,Go ݛ5Ç1$sK745#@B[[tv;hJ@yp<;\5Hn{= fр诙o)7q> ^DUcPHb,dL/H}]_Ny`d BI })x'5cK]({+([y t7b&oqy@ok菮)2I}5uF7 "nU'x-֟QsQ EGXef- Y[SSrE(5X7#}$A-#q+EnYj7%!$(+͂gD/cy1 ~7|a56jE]H[FY7F^9V:_|51p_KӔo y9,! az_:˳l;AY_/9^9ȁ@o ]4g$z'mOWY?Eb˭UUƃP#s X+Yul7R鼎/+_huD"W ;.M W-:;IP,%̄fļ!Kґ)j 9ꐒ 9Mk w@9: J1CUs9şj4 !,6QutׅД&j~lWWP~swںX5kXQ!3oNL52_žN$2[tF Aĺn0ku(E1K(ùr85rVc${-2mX9 ,7p;mRfno!Ҋ" AҽoS/q/xSJjOo (KUaIA}qnЙV[-}bG钡aqK(UU9b@ظ V8K#a:zC+#wh0}BC}$@xڏm,AUij >nOݞu굴:!WJ"&InUvmQavX݈Ip{ku$ E¨*\ p{&,?m,ZU(D( QCkA @JLJtԖ`˃v|ɲ8l&=5X:wMH?gC9bX~' 5gH4:lQKp"/Y؊6}˜caQ㧣Yۊ]uMrQ5f""v>#3I~,[,BxufBdE#fͪh',[I c%IĄ[*YlU|FsՒe+֯ k1GDwG!ճf]*VBy( 0x  Y@WU ΍Xۆ $@Ziw{[Hah X9([)_#7(VxQ7qG}dS4B< wٿǼtq4mי(b"?:zh% `aV|<#gs ;5%" kf[fAPCR"0$ŀ)\+u0wERQ乴?cϾޖ>j`󛆊,"(ѽnZ OΎXc{(w;%at? v< HQuSRv asIa '0ȡYEc,;vAAP\w+.UG.vy)_K{p($LЄDG.RN$~}O_V7Tp.,tS TV$, 0⎄H4 k[Íw5*s35sqjOQD/uz"4G.HU|0h,W΁9Vpuu%%bQ"͢\DoP摠®>Qy~Zb,GL_fδ.i{8Xt]*3fںtƚݡI\XvU~)6g\ǃǦrUyy:XOlM]dbxqO2!WPj1+GB|SB!w2!(mƱ?YrOOU}x35z~6"EbGK[Ec1sɘ9?o!uGoBds.eC%\1 v9ިz3]>g>W*'.^pMxYmlSK0UVi:a>oXQPԟiGgjYX%S"wwI`Y٧Bdv9aA0}XKx77uI'`Vdf\_"!pa.ef mh-(3sض3|P]׹ &1ȥ[_ob64Ri*Q&^q-FoVqRj[kl"N4C.qKs<9T/q̳pP@.-tDzP 7ыw7mHh-`=n {U}|́]V`ID2_xgA؂䂉'n,V2Q>^` uhREF(a( ";ȝMA AQna"Kvv9Ch(X.ADh--Ч#>b{ :u)e@:OZKؘ9l3˧kBA}6 ` Ny!:HXHN-@ |\72`SV:´ͽ++pR) ,Vw 3_Y"UA>f|`9U}y"('Dۗ y4ooOxZ~M}Jύ"[}A/`#O{WjhЇ%0HH̀;"-& H( T? BA(G{$AXopG5\Dzm1x@'aE!:狙AP)?z6莞^zo;Φ~&6T DO}ӶM/F=3!k&9(zU{Vj6ٱ!R..\Z}` e+0U*%ύ##4 j8p'¥G!St!kNl/fs Llo~j]10N'k#4f\x\`*:UOOeJ[X~d+]1$(Mc~ya}!:mmqE9?]uƒ4XXʬ.Mn:s?r>Ͷ1<̙lz V}4"QDjb@Nh,aN _o_3.g8}@]u<6tE6^^an,]tߊʓ)~gD^[M7O.`ȠW\??qUUkYbDf1>e (&gF1eL/0;J[?J %Oڶ"5D6|94͔Ԍ&O(wOt:\  n-9^|!F:N)|  ǝe^/?&O_뚶Q :m.SQns p(C"8t8'-vvch"\s9~'D&Ć{d,{k7+QvPl7pmEEnxs(M5׺e9*5;u0zPhgApCcz`{,\I[Lu0H[a. }29s^4MF.PnP.lvҠKw/ A] JȌ O#X< sxOw(8sx^Vpr9[d"K^"VOayߣ"(m%) Pl@.H!Jd`6ѐoY{0t5;&<=`…g>MTHMkǶ3lj yu/WGgjAJ4YG;󽶊:/J#g ]sJHyk_;|jڎM,s坑: "CJI o|g?ɯ-k8rZh3%-Yً]@%q2pAtf7:ty~ʄrJ{s5!"Vt=m1@RQi~%ʬi֣Fg)s6?k}M Ϭ5G{XPJǴ@rYrs~'DOOsP5#"Ûȶ`6y09Nlׄ7\eiW >KxxBcS1ԉE %#OϏC~;.^>5vzbLmJs) nc5J o}̋DQPDԭ6ZD({_r#i5yWvY9=J3غ>!prFAb>隣aQ1V *Ϻi<<^-ȳ5bc, I0㚿-?oYUGȼ!x -Q). ;"Qq[ /37(}5}қ@ M:sd. oH۶r{}7\S<]QطSJDi -f-+[՜#.t/ֆBFj4W̮SrGCְGj(̅xZ[B &)Ox1`*#$nm Ŭ)9Pf>(1IN`sK(y*?/JC"W'wsw~Kd/d:3jӲA܁Ӝ@29qW8BȪYY@+T}fGuN!&7~us԰yrvYx*sg%/2eω=Ep;$$uDEo"9D9eukMRVrxт>uL@<\79U96̐mC՘F>HnU&*mp.V˦$AH@_W3m &87lQS[L8_0P31ҪY`~*]H~ZCofRlZ'}אq1GW3\F pn(8CqOcEEi^pCv1U;փLՂ9dymJlvҾ\A&^Sұ 5ciFdy^&$~ٸ^4I\!ǀKj{߳{2Q>YӍj B =$y Zx0cOȱ9ף-uBXY vU 2o*PKsh2Ja&̍ mLMG1IUAI֗ͯQX<_fC!;9FDaήqӁ`Hn79hLcQ822'IVRUzEH/-Ab7"t4h39.1sOmbhn#S^j 8UjE$jgI2W1T}^[ ގBey3z-yN#n֚!2f4_ߤȤot xDu3[a;䓟Yf IEL\OZ~ )v޲׍,p3mU>ao 9e@˴5DZq.p)2G #Eȴ4vD\گ54&IR`iv;yxK;~ڨY~x{`ޣ*Qbh̹LkĘjExNUwnZrasL$ܜ"zTAPXhNFEg)k3%wU\Ýb$͵s#'4t>&_6ɘsc]W3Zx,A*s<m^]m.LdZ߼lu5t M4su]+T`>{QyYJN.Gu!Zkg<}Q`(No8@&):O |.[|;A(,9WZ'Q);F+Җ0͉vI5 3wgi͸;`MBdLj]~ťy4?.ow3MUU3dS}=+TJP~Mky7NGl>Dof53gND̓jTnFg4d8"W^y~t%sHfw٩ޜ* ^ղ"c3n.y B"f6rJyV"a5\s [G=JG1Cbv{93d])ݵ@y xk@/ٻCԈh?@Y,Ea%D LD^CT ?MZ? +_]B96?Þ8tkvڇ"$?R#~j=a1+b\ ^Zi nYǖ1v\ `s| 툹:Qi08^ُ1l`Zj:*}=4%ҲmZ781cy)F#=|==~uo20xq~o+Ubۥ'5ASWL\&5 {gS6X/׭L#PN; tpW &k a]ؼsԪ1#T"fE肊?VI{5xwhO}tkEOKJ7;yUblS/u5@(q'ʏ!ooznV5hة.'Ax[~QĚ)j/xSVSܡcC=oe}-S]ϳ {_BwDovRr0a{T@>e](c pL,m]}'{O[n=5&g@ҵvQmOPcscmepkn)ˬe,o-jT:!S9_< @)8se /<‹NJH G XfC(?zuh1m |EJ_fl떭 gx-%'d.&뾔/]% Gtp0O[4וv; 0^aB Jv@HPK6y.҂:Bct]ybΘ0.웸~Px6S !GN\EryT}>#=u N YYr6[(yhωsr/kr5~EcU~>zTjdm"Œ1 CCB:}/$tNwe2ĤIJ矤A3}!PA#o}Aȅh =WE#{lI5'/;(l[o/>] 4bl[<_,B4͉O'%$gP׌/N“0oC ݡ4~ :.R$2M35=m!G-r=3P%HVStb46*ƶwp[nۧS}Y:J&@KY26(9"H!a 0oEpWщϞX<:~eK>==ʔ~>9.֨6˲-swވR9fƷ 6€JX#Qʍ{mL[WA)wIXЯ ⯿i\;u cȓRH'*[PPlj O{n}+ewv#ݮyMZ?Q4eU`J+c Mu>$1/wi˕ækyRhS!Hܢ?b?$g7,3Ԁ]c]]G  L9(<&X caјcz!ڰC,&.Ñ`'^ * % $ ³ϊ-Z&=\f3(9> re6nAMyMinJ>+}<v@B" xHL@v1=hg s-p8/IAx}g,/i0hsۉڑ8G.ۈ(K%GSHI>JN4} Q[:U2Kcڠ^ P/8T"N6ڹZ4poXAo⟳Ϫo@zF*G.*<Ӏ/4݃H1vf-!ݘr%kGdNTu"FQ}ij\/H2b+a}OC^#oa(,$G?N=/Q)h8$/_ C䗗:Ak{^ޛtתnuݕ{M6hऽwW ./Đ>Sh>OW4+ ^XЄ9},@ym|l(EwlMG˓\X)Ƃ0CZcV)L7C&̡ӄ>^?f|nZA=gǼuXp1t<96{l\{ͫлG([׻ "ę} S_Up$$$.sGm{@&gqGaYF3ȟ^p[# 18^^cUg:ե6 B eXjdžZn.x%u0O.hVn  !M,8D΍9 ;yGʏK MNFIEYAXR ܤ%;Y14k8!O`fO2)]ˡg"cG فme3r6'𙏢Ѐg[/;85a}-/Kk I>zUGrCP0^kx2Vb /2.# E#u~{B¤n& PCFt9ZMu=kLdcCxGXMAe2"0:*%4#6e\(84{Iق$>9'emPcse[U-s0rM̰†P휟v}ǡ ŪP98T3"a+vH_yBekiCpPL?D=.3g(Id>Q!ˡ9 jLvS=lj+#ъ AXGx%$0 ~jxX;sBژ 6qڬ= ltƝ׻yQ;j߱pB:[V܆Npqu.ݯ{ureWώ~@%vjr!IA|wH03Tq!2qd>wpqn=/g0wf_^Xi;Dʡק ɰw"ptB^^N[TAF 7=qqTs6=M8!y~"r Rqbi} Y83F.6k[hZ[_UK\+vkXg7 6XaSs;~ngq$yt+ԦL|\pd_n'qu0pSqKUṬ'UNs9"ҡ3:Z U`(81S/y(>p(DbBӬ`#!)H =kWFWxP.S @ huQ-K8(jy+ΰ6IM #Re1C.n%r!6s#x?Eۄ`}:Po X#|"0nR}!*-罄1lwTnrɵގfV3{/DqAzS֝?^0uڊ47zk;XmT;pIiZ(8|9ӜcrXrz%3 Mw|BX4WMc'D/w2 E4ieBPpg(~xʭp&;_/ZNúg.hjj׷G]b)sKkXӖl<,wa ~NJѳFS%;D_ 0N7ƺ97bcƞ^L1K-|Z䞴[$foF󨺊;ɡr XF4fj ]mݵxMuޟٮ$8Ѧ@ VJ4mk7g/1xx<_9Ǎgk!4#f 6pjV1~{}4_Rioȸ[>Ƣ^{O{ql31c]ѯ-4ߠv*IjYW|SUM{[l֫`M9` W(,-sJb<;=ȲA*Lop,vg ;Gm-#6sPQLjciYEXv_X52Ùqlͬ@ j'9aϦu-sh4`Dk0<2|Q?dڈXY_dtcM_ӓ\9{cĈH8=cWOcV <]fuAp̓à2\gE(k:ͳNr!xg?gg(cL1lnVhtvWжQ m%a80Dp`6pUMqJ&r]vFʇ'|D5(5U5isOFɻRnn`z4>_ 8N[Wq\Msd#;Im|*aF_!,i`,.оwH^ PsB'd! k__ղq)u (mm.\@rK1F>_eKCC(K~3B0·-rmi 1iER[]u 8{ ҰzEmnК}m.~|"hw||ϱj4&/FgNu5dr#?ltoWnU9idS}tųe>Gb *R /s_b{۷?5w1#^렞e.qR~8&E֛\)v!Qh0M X5^֡^)581v[3ɔVI%(כſ}G6.;"0F=S58ao璻JڎϜwv8^O8-:#A w@HFzѵim-s}8k" pA+WI \}8Ƈ#b̵F-"Yˆ!HzgӇ.9=Æ |'F1XJX"c RF1\Y0\*9T rg`MYcQgXD' ~S-YCPv ib YO3(NhϫR~oJjCYZԡVqJPh#1h%[g=W m6 |[<ܪ ub!̣9nBңtBS )?c~qgoe .0D;GB=!q/2u(yRk`_S\mȇWhw^yWO#! *;<<s.,PG'$x]cH^fDˏo9f[7LS9!N+=˻0g=7su~}ҥi?$_$ä"DjW7s;'CPv "hCWX3HR)D(?מ=l$E'{9IE`QOiA$U ㆩ=;MsRQ= V˞$2ɴ];XQoH)̵&ĥrLV*M'w*̣D ״p[6;G-dQ<\^ ,,ЇeU`(N&ߋL3rvj'92c8|/Wb:Xjy})K *N^<#QN h;˞'OHM:O(ީ# œ'䲦`VUQ`H&IPK?AuSkUf{~CWo.q,QLB ()/ٚ[\[$~Eârc˓ -L|g׮L,6Μ$ޫ6ލDoWO狁 +مŢD՚/9 r±S7VEr0$^ wV%e#ES0i~vh[}X^O*8H|mQo6|ڭ6?*곲QpI˕]h$]\ѐ\wrA:FN6W7XH Dݤu>de"0# R8_S)}^w訸FF捻OD5aC9)oAz5|1(Ę%%Tt*9f{UexQzRBQNkkc/qmmŤKM1zֲ2nkY1(s㎕lt&@TIbIIO-6X&5Je2gtsk#7'܈ğ\1Soaî!ZirFն75}v}cU3:uMX8~@tK5v " CNNc+݃{/-U鱶.rUp \qm$ےIҙ2M$F6DD톏(zÖ681pswΦ9vosL̟>8u|_1m`_\(g u Df.K$_6۠V*:E(YFo|b^AHC?%*IFBfU~>N77vv4C' |HrGBPL J"z34N@DCor? OE5U!  p XŐ]/ ?*̩#ZN%e>m(O=E#yl>5AY\[&+E#%Y_z7F (AїuD^ &vˀ8$2)nHn3)c=>Z3E; Mo9m);yJP/8*KkKp`P||S=޿r@|00_4#g-|vyDByE:Oٲo-yo FE;XTEHNqVDcn,CC p\`w {$ɕ!>^u>v{/?2MU')?kb |\HJvL"^?hv?>]@'˅w+:]'=[*=LM_P s^?ď Fk'Npm;(Y"A+N7hs۟+/||7arhAW CyOȔ=| -B@*,Q0{cXadd|Љπ`kSE)"R!0q0Si28% ΩiCSK &`sɏ۟t%U7:ۜPD̎כl_S1?xۼ4 ]>6 50HUaëգ[]P??W]͏3w؆.J~G?9clwIѯX0?,VC?YRsCwwհm:,TMKK=֝NmtTs027fpVh" θdy=;킀 ) O0 "}Ad )z Q2iЫ|^+ua6jd'].ZF:y6X Keg+ 0TG ˫~x"Kчc˟M{!}L݁do>"l|<_-RóW ܻly&9_6]r'vd~iCO9ϩy#oYDE7 Mz0M8N[Ilǔ=ϿӉRY![kw0؝/}> fݳncl+x_=7>b;4&„UG"bö"@ ي%RGRDh:_$ӣ{lh?Bt23Cx9^ :bix"r$O 0XehJS0iRByU19N~?{Y1'*O(?桁 PtC:<7['ݟ.C ԡAш/bͭpxI5^ ѠÍ0iVv-M#f*G/ܢqϘrXJ_[?X~uQWW]n&L ) YF8odpWl`f:"LA@QQ_;ǩGهxN)_Ahk1!D$c0x qy:#dic}fvK H Qܹ_^ۥ][a+m~!6|5zzKmv^}CcG]3mr&/Zz;x>߾m/9cV_pkhtO<5b?^O:1z:ыo~OjS}ךm<ͩ@nWҮ1_z_k8s߰Y:[㈱9M|5+Yk C,OrOwO[Gg]9Kl<3ϲK@<)7ꅏf>s,e{!B3LK=iO_dbfOu}da3z##4os ee4 !H:`"['.z1C$H7[~=drODBsp;VhrMqr+ /pc怸~DDr5ݧNk`;.1'SBTG%g;9e)fUP+j~2|L'+;.lQHI鿟[O_ͪO4>gĘ~_nvj#eFr(w!]MG1Ա$?/kd.uٖ0~/9$g%'s4?cz iAmT#U ~q#^K[ d8%Sr&VA>Ծ/Zu2B`ÕB(|FχAF0^X~&l^nW8>q˻b*> Csӥa ͻgg0*tP?S=c6&K*z:SdQ}'0hDZbFawwÉ UӏpG@_ɫw%_bw2mk@f~w?X}OiAoHL`(M~Aq߬_wԏꦭX=L9yG<4yympzu5RnE!s~fv>G 6e~m':MI!v8>XxO jo g_7TK7rc)mj7dU'&OfP>Jag/η:w[<;;4?'\ gGL֢ }-+ h6jQ'=%$`گ1yif#=tmAdNҰDBTY4dfߪ(?HH6Ei rG;UdPgB ᆓʀj^QGNvMvπpjSUCo>ːe! #]mƼ ;y~۷ח w 3Q4˗> lڒ~1ac͈O{uD6 \=\~81r $,ʹR m=s"/E# #mTQ Uy7{3b\)p7^3-~/&s uo^CAz -("I2p4}G\ӗ? I )w85fDp~L ?2Lou׺W~׺+\*Y;+ Up6jX?A]^7=ʳ_Fo}J¿<,.6vGgDaeU r-r~Y la.k 8;Wt=_ <ӛOcVNŐH4ftwYP\1oEs*꟯ߤou‚p]rhLk# h_SP^B=ElG ^ 7A)ghd uu<];aDOZDzI{SOK.@ç:ja¨I,78pE3^ 8b0jZ^_,)jоZ{gm)`A6f+5sG{)xӛzk۳@AbB˻z_oURzsXYz|9joSM>511憃*pR4_Rf!%>׋'8ç?O3W_V@Eγy`pL3W/t7Vrikq[+d(d=lK<93I']|!rҌĘ[:{ D<εu=yٔǚ"/]&vuv>oN儣 #b~jHZ|>~Q$Qʨ;rnSfae,|Qy4*hf V ݓF-{UiV,tu!;|,x~J>}8%d/*GƀĭΖy .s>pwV,R?LArW/RG J*F?zj9g~<”4䚡RƎo~1ӑS4nf\9)dY=7 ҊL3nS݋GsQ "D*ҷSd$ feLŽfCФ\+ #/t;cjŰf#ӆT˳>iʢZ׭T۵%4V!w{;}$IӍqgme1[UV{~<,5_'V~~Hv I:[NaV S*_1[a Dit swΰJ\ ڮ=M&/^U±\ >Q*Weh/o߹.(bS,(JR5 (jQu`E5XTUɪJ:,Pă #zݾj*ܷ(aEkv^ "Ss%y9E,pQpӆvoۗv&xcvIiKj7T\iRFi-j$lX^tjN%> %!T/#WjATgQ땝V)ZUsDѫJUӶ YRNu(Vy|m2~jp\0 u=ű.(BpHZD(!+cSѓzgF;+6l$C+.8Ǚ|u*)?Z;b jkgi6Gӄ#2Nn8U{Nb+ƴAl\ fL:r9j]d,'K 69H7Ay#ѾWp@_X3mxZ(.N @QS7|kKn&<8I n "u*MI%Mzbe̾!N ȡxdoqHeM>ϧaP#Oo_S;~SG5zLF%<>>̵; CBs>d'Mzx79*+w;C(>aXٜ_p]k6'n6\ 7{b+_傂\ٽW'n[_0x$@{?7x GЅ4_ʰ3D}]]0 U>޾=~N_ D#m -SDY/'DlH{[fB'?b&f UVrng-g+ `ÕoF"CņX᫼#!xUXZkigy DPqNf90XMh] Y>cU-rQSq *W"璟D%x1eGMu,r]c wwax+tfrH~`R9y9/NI#[n YG&($#/s(sbUP=l 4z\3w)Ӷ?kF69g| ;볨?jkKmwIX+?DOI>'p@pqUrOY{F_ :ga@p$|KVנArw;7"9w[HzF/IyIt $M֔&^?PbZ#UPz7DJoy)BmZ Q; Æ'1hk&lYS~?_y' \|L˙K#?iǯF"ޤQg5{nVk/^A~<_QWwր'spځf'5 =P}@CIx /xoN9HI2 Yֹ\L]>k` r3p`"_[Rl/L2{߻!;=ɋZbv~'IWG亼 WEٗS[vh/ݑ8EI{GwЯn4.N!>?\5'1J[f8!|c-jE]Uj8M\n6ĥ݁no_o AѷN\AUR5{*RbA5XV0v-Q_Dz\Ay:"+'%]ǛrڕZ)=L'~@t`k浨D iQ7#e_f7'] _& `K]Ɇm78MF*FK,tq hNՊ DJDh+w_d .gZ)1[jpݖ/Dn`+ 74\׎7``t"%*A8ٌar !0H|4i\4zbȃrݗh]!@δGed{a.B:VotKuFxs푆ce'\JY;uVx"k)Sl˦eӔs K}q b2u{V  0*U! ch~ض0V!Pzȩ`fB%:~;WQ>,ln\cu'*Q k{@NFF8 xF;Jee ^@ұ-M XguX XAN-M/m#Hia0*%Sy n- ͣnQ7YYTvZν~svSv=,!WKz O6bJݓUhmQ46Jy9-)A! wؼp0p ~"D9W{I\ jB+⡱DP֡S@G(">)9 y2y#P<UE{A7u׈.OSYnU G>zC s~#ET,Xmڱ2 ~dSDP ST<)tAD-qC$`@,"iIA4T@XvDwigq \2/U hku1H fQF,G}u睲: o5 ;>% ATI\ÇN6Δ { R P4*:T*F$*K0hC J%(J 0 ('HJh,hq* hZUzDȾJA at CDa$by pPIA{:z(Rh@TJDaI&J;mnyT0cB6woad$7`ђuptIWUB㙜X8WNUUec\->{}c&.]Q7JENR)VL+zzvfs iGO ?A?N@9!I"TDd T,#8{nY~GP%d.wm+bڽ+I"S3\ƧN x&wT:s[t v26QP~pZp,xhe(\!EJ-BeICvw VL0tp[紏/w!._0{;3DU>6=Cw:|hV=3b)}XPG?tJ9տj$Rܿb\h@rqBREl#Yx-.eG?GX%Dd0{r-Sb%ܩ4߽TI4s0"Ix Q|ys&9Nfs~aK3 nQ*ɆOM` Eճ%?_ Q2zE[e'i%=o/\Iy_}:XSX+2Ni7eX Xa۰ۢ;iZyѺЩ2cCדՋfO079$٘=^8)FF4r7:^R+,Oo7j?Wuj~>'[&? V}ƓsetSu\2,[F[&S~kM5cݍ+c[ M]Oozz|`/1\,->^zٻ 3T_EG_O/gz,ߺ9^w/OsA$,!@PA@ P,2!'׶!H+拾P:`9 ^1Unx"H' o1;s0a΀b{ `I>OgLa[i8*w`? vls\-skwn)ʉV6dŮMZCO;xa8:Ys_,^)'=+;' \ve<{fn P9g^mtETf#uG/ 6P_0z{_]֙9>::=NQRpn`{wmXj=7緿|/}kM`dyWѵkwV%(5uG! 3?3ctiLfD8g#Z)N2RPMu ہk/{1UPObe9Xb._6Z@]Xm^Nz93 PGU84'iD{@PAr‹07IgRd`>F?AZ}|C&gA9Z䈡2ڿR@g"A Px;0r pm2GIHi#CVz"cܰU@>4D.!6gbrimW9A!!n5.H/""#+|Q}A<# E/(|xhd:d_:d~FS$QNM r(#o["1~>+l\)l+q%vz]xLmXH,߈T-7Xyiܿ?ɧ Ӳ/LPmT("r<o![fC EX20t)oSr hǛ[sQ:rFWʂdYE!-}f=9rj -h0yH D)Q.d |PB.'8Ahqᘼr8VfY3U3Y6sd~xs+sH1)P?&e__Վ]UMWfeE`KI],hގ3)1ۭ0k͙{BspF0MՋ]fWu~gv5v鼃XJ yh9ȎSC/DeN-]1B$%EV7 {2sm8$‚#;S#,P+BKw(0 D۵$e(A:Ovx(tH;r"/ipPu ge;𡒢`U%(:!TL/Yy`h >V9z@i=ނDІ ѻ](킸<}OMH

Y@,"P5b HY(Vw}I7?2ІVOuHqGlw2@5 |nakqskG@"%Sd) .=3\bPCH. )?ܨ鋟cXׂ3`oH~5Y `%DDB#rW7u+]$V6?ȣ3m|ݻ~>u<穅tda& 3/(KcٛG:t+|6gy}B8HrD)bmB DWtFȗ_c+|W|T;}/€7^q%i9Ly DkI+%P8~$ .-:[QpWSsUݬ"/CxȀҙ9e84̕q2`FBD7fltGj1b׳<,ZJNGY/47ܧ6:|`c/4#7MwTw{c[`8%RY-VB[H"QcH/(g̽n/a[_ v9WHGT%B>  (T}U~o@;A /hޯ/O zL 0E7#0O<`4R1 ,g.h,_\LˬN5u&eaF1q}^91W7gd@GP1==S +m9T]&*E4rNrf% A#ox\s m94) q XF197MOK6>{%m`}G73&\˯rt`_|Z$ ,GIÔ&4y+tksłh 1"t,|Bql ĬEetet+1'[lp/\m_> xon3rp4b-yjx2N