#!/usr/bin/python -u import libvirt import sys import os if not os.access("/proc/xen", os.R_OK): print 'System is not running a Xen kernel' sys.exit(1) conn = libvirt.openReadOnly(None) if conn == None: print 'Failed to open connection to the hypervisor' sys.exit(1) try: (model, memory, cpus, mhz, nodes, socket, cores, threads) = conn.getInfo() except: print 'Failed to extract the current node information' sys.exit(1) print "Xen running on %d %s processors at %d MHz, %d MBytes of memory" % ( cpus, model, mhz, memory) if cpus > nodes * socket * cores * threads: print "Erroneous CPU information" sys.exit(1) if cpus < nodes * socket * cores * threads: print "Strange, running in degrated mode, some CPU are not available" del conn print "OK" sys.exit(0) T&+ԠApkC'/12O|CWB4h JYNc-(F `eH*ILH QM@[Esey=;!B[1maH"fK /O}:*Mܰh2- haVJHJgSTsm5yZl`r=?=@O8;J XZ,X.K|f0mbY]v^}N (⋚a-B@s9(6kYR`X1)\uZ_ҙ3 Χ=n H&bI1dttG?&vj#D V@3ᱶqƫ_gd$.g)\ԇQOl5ly2LK ?);P'HjǨ됻K{)J8PAo)r}lpCn_Aݑl2_2g82)2w8^g.9ۙ8!"PDy@參s((qY-Pnw5*94J"p_z9yNI3(:R<zj-GrSji1=fq5`Ș,R_Fy -\X!B5BY .Onha`I}2&׵ &H*$qjeJLj׮YMr~<='/FљYB!Vg.42!}U=%\0𘼟ry9s9[i|wgt\EP-ŀ ȹ4&8ˑ!p /w^Rx1vj.Aa \7H ysO;+C\@oDAufǝZnDqfQTFM(Fқէ(׆cnzJLR`uIz6>as꯺NvaE sOn^6bGAr[t\6sm^1zݜF\>0w戠0aѢ5bЮ(o[df: {eCci޴:D{R6Y4l9v4%Gc,}2t.{ȿ٪[k@xQFBb3a4[k9}axvti{ wI|#*%֘%*NڂRvJWzyҒԢp' <(]h⮚12Ycoɽyqc0v¹r߇FZ[(sϱ.F} FɏmxĻ5T/c f{\?1J(QdZt(NeӅţ+jU1"4 z2حWxߚ>I(G@q jPkoVoGR [O8O8SGe!XiQ_|Af9,'%KčF~7֣.ơ-5b7Cl[/15lOt[1P>b\GJ :}HmQ$xN-ѝL]#_hLkrOr{ة).BF4J8!_?u e2bk.Leξo$_5$&{T0QLEinN 5hEOExy&\;K LA0 -C'__y4ZUKQuΦ`.==QOl9qDԪ;xMDvR #pRڪ:A{2n|^!tָ1˝=lQжQV`;f6EFp7 Ҁ'։LlF챛2'ug=Vq}/?E95.Ҷ#F.kNq$7 Zͅ6;[ecCB +i.+BsqAMO0#]]r[sam/ ԇ d6;Xpzg|*?ZF%TpFՕc}eRAmah2!¤"Q6:>^S>#2س+ N^ kˉd,k8NVN+u~)t\طϣ=xBlr+,Ë cښ$ZAq1y)];n*ggh624j^ /IົKe+<ͿFrhN oG?)vZRs/ICOj3_RKWW(-C]T[J+-1&}x!IC6P)cwlȧ }fl2muwK_xO1\䊨3{>(S {=b_PcY޶<-\ iyX4őq@L4!/2u0 k7d Т@$¯i{`gu T$[ RgR&l<97PD2BԚd! z]^85΂`>*.Y|s<fvQC3aeٔ)QV#b1L&Kc8_t;Bx:2UO'Pas#Ao@SԾ ~m%_KVquq-0?{1z\7Z`O$qRɰs6բE#n9o ͉R_~+čL@=^ژ?jLTH'jTcތ,z8杌!`gy4"4X1I-Qgo5@yv !-3nR|FQl 86a2^Px'j׉>ndeQ7H3pWHֱgofG}VneC$& ;ʜ3#D|&Q3Q-K٭U& SƺY(:Ӷrݔ2[DD)(3OS.IڢnW$ DlR񡩐(]4ke+*R-fBiRճNSxc<'i()*ǐrHE "ۤC1O n-#T l˱$5E8eu[$SwYm&%gգ@HB4o e!`2⥅v~뽆4ɘ'q.#_. S(I,gir 7} ~ۘw\sMtnJV1Vm,xy-{&Kj9XpFXiöeWl웎%'fFXڭ7wY`|=[. WRgdua IN#oCqw3R!CiO{a R -G=[XQ| xS todfF6 WWYc^HE,?Y@uH#@$+}JbD!3Y*JoJ-N|#bsB[,.x9Ϳ̄n/&oۈ `MkJ%N6TdK H.õIAvKPBO8v6~>0[ 8NcpVKrK[N3YI {vWh!WܽgKe`NSA/=`0%F*SqvK\H'Yrfc[ɇ[Q|Lu6]HVd].D7iWzk@)`@=+kiwZCVu)" 19rBDjUNM5??Q"g0ȑ@496)I݊Vz SjxRDHBHcVhhYIv4X*3L0:Ȭsck!U̓=t`F,rv>Shc~'P5Y옾PLwGp@ωIdphN|)F>/orKsme+|*A , A3C( ik ]A,⼮@[5nNK(:p;KCPIN>qx $! ,FJ _vE1:m.ݵ2Lȋk^~G`#L̶6XnǗ?Kϻ尔5;JF$a_c0~F>3A9MOx~$mLZeѬYLĚ%S'[὆}E`^?Ŵe:ˆ VVC= );?{C]M9,K|ȸ+7"k`tڍ56% Qtd/vcBܗ=ߦ=׎tx!R?R!~iA7Xa14F)C*o=?q,Hc?9Nk@1W\RP=SUq> Z8k-~5by.}J Yt^gѺH)pT;7/O`!:&5GhG$(w!՚C "$z_[y'*F&0uDf@^.4NTc@Oq54tNClWШRn[UThuKXA)=0d}!qoiS@" pG9e;J9o֦j"BDIJ%M@;R@;{W V*ggS%iPT65Vz i.[΢^`Ojs}Dxʐ,"~O 1+;H,lɻr&}՝W+c˄ 7S2o r:t_f< ,ag,:H;qMeˏ-:YV ]6+fBPyrl2i<,S+77p-L Q)) M^aøJvoÈ^Y|Mh~_w|W.h C&:JGI `72rô\EvKXmhi)%Of#482\nA2W6r̲p&Ɲ */+,+j踖fϼȩGX/y7dKoȴg|@Z&g|sʭaXm„U8"hW<{Ds ϫL@Sеvk5\q Zxk@ _@?Z~f4kmğj@QJZXU'/ \gOB_ '`8TEyɗE}Zf?Y'{]N+:D&G5U=p+v6~askFyțJkhXכAw1B3LɄ0~HnI)侃 6f`O]A%4ے4,ÜaBh~r@Zv9 )YfQs-l|#7ܟMZqѺӃy#LUa({ 5fni&YԪ{(%׃IQWfMH+{ b9S ?mX΄UR攀}bsixqhp5V^VD;0 J\R8 X5 AfɫLA/svBh' Kq7YS@@@xx_C iB3/Fwx o|cMU=!rl$M(o4k_R>菡T'5ǮݲR%H0ȔoĤf7Fޝ\8ɦGXꖏ+L*X ӈb!{?xx:zۦ<‚}bK..e(R-e~^Ϝ۠L$޴O$i҄|f<'T'mVΈvo:ۤyP npx )jW(Fȗ$rr1˟H&4i}46S 2LmGRSNIm (] j]ĠS2 s@n~録ufʇ-c [l`3!1hCcg0TEu -t|tU ;6Y7L<[+tEHYd[; G_Ǟ Q'B$Y"N;:bU7 +|ZOt"G'wu{y%N!2^CA7k#P' R^UM}|&a;-b֭ds[wz=,6)9kZprkHUoUgSԸѲ_eFvW>Cc j< i E#?>Sd@{gVUj͐Ehp]vz!\`x*d7luϑ>eX16 f-#sZfÆ:mѸ@cl bм7+i((:C݅q z1bEx3Cx $z !uãỠYFWd@mQS'b~FҜnp{[@H8ˈ c6 IHvZ@L,AF%cf4#s Ji{Ù(jj`Nr#pVm]/,g¸UL1?]-}w,ctzb"Pg6^2> "dzhV*7{;LW#X06+[ _$`0h6R\?i 1,Dh\08Iks~L06r֕W%+PDyg_qj,6$cR=l{'`W_FmTI-^c]|&f$7f_ -@> vX_X{8H<Š"Z G˻ Q-HINĐJ#:J2bG>_`O໗=I%,;mȐ@7 )ur&8a`{XZیoy^]*Z4%"K|o@5xEQoUցi9_^כ>Lf5랺ZCaP4~ x>) Ʉdaf[nLEj^sy[ 2 D2 mr^ EB5E'c C3^߶pS. GY7}tRDq@J 1 %>qԍ0-;NmoEW$ zQJPAzWV ]0 %j~p`BBfa~sEʟ69G-bEF22P-u:&J3u NxZ1b|iݠ!7ևm$Pg33WhOIu=m:/6F>QZc|r60_KI7`@k;hjr8'B|-MR$V&2Žq'_pc !FMþg*DʇFPkv]&S2Җ8^?CC›P⤟G[MOXWyרQ[O.aӔ= E{oИ@ kx鍁h1M{9jgk6ХcK0ɚRUK40:lM;v [2 S*Ų%L#s8p}Rt0EUP|BK l*)rϙlJw=9 poqJt) npqXfKsy% %3޹We+\ZeMf3b^ƂΣo$X.y?vH`I6܉Wy?W-mAltC+;׿<~!N#Ji+D^?9v[Wx7.zy$<\㾜O9Ӻqn-c9וgD]6 +=m7X TJnG7埾Z*3=*|d'y7T*oSx4S&R7e#oHLdhI(]q@ JJV1lc?۾%(c{ 8[QQQѯbĈ-W|b# ozfPnc=]Gn[aZIh?E|$SS,_2Q^j=b[>YmUc}he qXXZV< ғ2֬%%Ny}-{[O5 M( 'T {;p&DP[PD1&*n? ƬR=GՐĄfmGke(m|˴=eqM39E/7һ6/HW{׭-gSX3['F21MS9״u837bKG0Z@0C:x -SK`Exk+ ؓab͐[bb՗%k*[sidžKu:񏛣fhfޒY`Y_;5r`Mq7ꗽ}V;!MݑNn&Q_|u@SC rʣO;̆Yga|j*CWe{  9֊M<ֆ'WIM!~c_ 7kДn6Iy/N/97òf,rEZQfrbi˂[d EVbI$2@:EiPIɽb/Pd)Ta^\D Zc8:_}V-qܔjR-:n){1P',qB|c/*OHk Ύh.|N:\{(G^$PMPԐeK:Okm.kB3fhp> 19v͇OŚ{T^{]% X2~kR:VQLNǶ] UZBƕ{q[nRYb "FvOn3Aw-lIfV.O-(dLH=?9AvV*>ܗbB}yPs4R1 GB>`;?An&1uX9LK[n9-)A*MAZ.*RPo,_ݠ#k< ս8/h-rNjyF %ջH'w) c}dۥYVQා.&y_녏:KZt-i2d=|/qO\imͫ rsү .O'LXwu4!؍ԅw3Ai:>pmj:'Rfa+o,#1z8-.Œez=,J;4278v~ *O*xx unUئd/T̐bC)ħ[3b41=ɵċH?eLQgHj<.<ig/HM=jA=i.x =tZ}Dx9EHS ٰc"_ovFl9UW۽A{NmL7 aGg+;@ZUt3$[}Ȝe'V Y/fKϱ{" fmA+ǖ4p9,cJ Z~\s$J؊:?Db8]V%D!x3F?z*}N=6\.Dfj1IXm:L6 )JYϷ6xG]:eM%P@x\2w+m98rA٥%|H9t B뿈(o©B<6ת ,6EW1~cΗrJ C`Am~) ' YPgGBۧ ՞ ɕMd~W=#솪ظ`?)?]?V|&V %"02ĺ1 g/۱/K ot_'Z4z6W5dƱj<=ԠR:V@`^e =1o,O~7 n EH ]wX3MRJE•Wae='@{r_7g^_-d/DƩskKc-iuvdVfNz>g!$ͧh^̉'%pkq)d!"/r۾Ď%qvǃ~?W.?{rڏ  f0]P#)pЩP ƧaGe,;wdLU (eo(XmDr:$ K(a7cs@E jpYny^ivbfg;GoO,3$7h@.=JC_7wž0M6Za?ֹ\oLoUť.EWVeiY3w;$U{ }ђ˵W8X/"FD|[bʷ@6 u2+=pKLiny3(e_r5:$ta&TuZɢU \K,ljybF{{rEQ}"&ɖenӝ2o5_gA2Oi&QƷ\*|!_/c'4\k5S`@v#6\NXPT]34:8H8rjc7xQ/k&`6BXa<~ˍ$XÕ[âA<;|1×t}S/|J2.y` Eq$%ʼ B02A0& U<{#U5G668T-5vy*,,rK" 9fƼmYZuٵg땣⳯مfwxq+əKM*2]h%dΓ9|Iōcp.5VjL]XJ]I1oXͷ+ez`2v+-~mȳT8HHU$0s>(3mDa昌qK,p6]U15A[SpHZܾbϲ97˦`LG-s%On(*w!QYꋢ}+T QsQ>> 0Z+=p9=Qޒmy%Z}|kh_^Voc9`DXƼZj_ÂHoMm<^zݼ0j5&2|SFq5 LziO)r`+B&NtL" Qh@:wJ>_^_Yi{!nF8߰l56["cP³Ꟶ.g)H64F)%̋f Tʍ~F)b &*Iv,T~0Z +&K܎V# S Ya4@iu[5mL(V#^ߌMk~ H&1S@S[}3ct%CrGܴX*`m-е7Gy* :(yP;h}:0= ={xPVǦDZ]nײp7֩s$08fqL۝3?))<0sj],P $}֟ ك᧠T#GYS}Wg^5n e/8  W80y|7ĜNgzO xk6c`in_Yg3"{AjTf*( #GS+~8pq\JȽ䏖'ݠW!jЪ~uA̞%}&|m LMJG Ǧ˳*Pp7Yp&(8eT-'\!vBb /y̐묎3}+bVWv|N2ba/vG-̅;>/&rU@#pT{BιYϺA~∡RFKNf38vd%i,t[MjgGZ+*dG!{F&9K ^qL YU dYR|[Mw o3/b^ƶ_~rL:6&DԝI3j= |D_B_/? B2۔GjyVWX{ʘgv\'|`8(;PtA}cNerEZI!eQ!p^@jimb@=m璃v~A<8!>ymty#^@})PH2Yb4%x%Lltd)n\W[@P"Q F5'8Q|1^=|=x3icgv3OtzvFu-QrpG >MzK޳"0Z/zw_ DJlB;w23cͶaژ'r`Z_.@0E1b.,LUPN ~ 8?&pE- X^F=Ñ{W%%ޡp2QIC C z 0m+/^$"$c69#.& I!yaN˸5"U% n pp <3Eߓ<$[z 6E hRPw5K;S@]P?f['x"<g^!h#ngmu\Q7fX]ZҘظɻ*,a\tZso&nL媾bmYؕwLF/mb>7Yќu>8@wf-yF ;&wS[rIBF؅$x+d2] |YOd'fՇo8> XGhk͇(v{AaHsLG=xi4gDW/ǸZfFVշrWy26,j{OݢWÍF%rwEӱZ dxmֆKDV"'EV܆Ù {ѓau: @0WsA6+]suIWj>M^mL:G&di%ƂXJ?xUIHnVYěd(Lsi#o'`x!Vu $VH}Q':9=[]{:A}OE\1r1(VL Ʌ1A.)U;\|j6ťS5#}^ߝ3lbU@eO|H* Dxm(~n出!ቭz` y8IQS] чtQʚz00Uۄ[Am \WѦ-zc3l;D?: Kk uɳMΠAb@8E8;BJ /}L"I}歀ʰ΅ӛ+ ?77yJ:! w}NRcޥؓ!C{tu;G-&FATg6vbNU.;5~ k7fjwx#O4Xc )#0 ~H6|`ҏKU nbc&- (g|vJŠB^M4mWMG>MMQ˖{TlJp)ۃ[8Hh*imh4@"F~up)<տ.M1;*YV_+ ?V70ɹ^osH3Kʎ B_)І JvGыoϟ@[=5`[K< )o YlRd&C73\087d }"j'@g ȯ4 ҭ]򔠫q} l%AX)'ůCm4?d%dDېkc]|25]Zv<^6I0A*4㎳mKX^|Qv^1 D%0MA OWX(>y$v?S7ss q?b?)98jq@B]:h>ν&oxӆ/!kO1WP?N.q# UYe-:k TvX^ \/7(T~.>ȉ0?7w 6b~8fsuxN/d Z5nz>f5!,ۮ825^U&G <<*(C|ìoHD:ZﬤM0_9] '_[A#:hRQ!qI' 5I Wv5=PFe,eAWh8Z %׼✴C/Ŋz!J8uhUgA.&-֪_0'MnJ@vD9{pcShwY3nQb2"y7b! o1ahj-[$~_,B 7lvP#`hZp]%L.7˭LeQg~.k鑷WQ=qzqX6^B WF홇"O0laLM,%t1㶅b!od CsվYQ&D}KC"ʓN"|F?ɜЊ|btF Q,\#& Yhe-+&Yb:i!`W͢ywg̟v~wX`yM-\iۉڇパ"x4 *F !-;Y̌=<4ߊjvD]sU(XO{N Br^ڝ[5n4t'SmD ~7=Z J:nQM&fl/`?o(Ǫw8T^_yϬ޲7.l<A@!2uş~4hZҖcZ1Thubsgٰ3Y"8S`U/)Pf΋ df3`r{.?A-ޘ 6V~&ݎB.P26F5=i 4$?Ss L +eO0E ?~XŊr5۹V]׿9Ȕ=Co>y52ki[F:U ^fnUA!̭61V ŝHd#Q|lJ+Սd4b8,irS9Ұل-ݗ`60]kYbC .KhwhU9,F^`A߻KǺSx QPA6mÅme ~䝿$ӿZ &2d go dn('&;*Gš<Š^LnM*Ev驢x G ɀ+#_Tӽd˄A~,ؖ=)Оl)>]Բ+iP5MGIUAHW[]߉pVȬ09Ax'5`VFLV}Ãwz WaJluw^}&4Ɛ:/𜭪R!YL_[G, 4J7#߉}=a%r)ٶG q \CaU ur4P#:S/\srT 6҃J9| pS`k5Ov2oOK WZ6 ~6V/=c;D$Ta%p>F/v+Z᝺GqbP>_>bY?ׂ68mPo#&phL?A kd}Tz&c'[jVl֢(%]wXoH{ &n)Bͩ)|![[ `H7Z>%V/"Z*Fb B'*.y鞤GREN"֮ jx)w%;D%г]O 2Z ^nCAO6 AQ¶5aSL/ȑe2.@K5X` 媄sV@(.Q(?k xa❀U*7i3@;,fPi>cblH}mђLN` ߘO^u2Vj;4=~aoYI]0Xr+;a{{Nךq7V{E*qn}Nj[{4&<]%[}giP^uoxlUgڱA6Ùkb|Q&nwԽ} -߁j} ✙LBeQݿeyD)Sj !mOW SPplj")"K%} 76DFSV9Z|6wjݣYx* -)/ҢJӐEiNfwS~f%"Z5ΔCNw7+}Spu=\zEQ<å=\TkлKV3׹$ǬnA|S_n-+3@FDE'@zf,=ߘu'bMtws{Npk3n~D׉.a~dN`C}^}f$O,3Q" qtPdM.=)O6jFĻh}qrߡy_?&0ĮJO8ݼ}E/ͷV]CEݻ8kW Zd2&%*gh#@ޔ6M¬)MAnxCj?!㬋OƟj65m\bPG20j&Phvo(k|f 9'*ldL^[5eQ(dWaٟWn~t'oLP![jm|qf}\pf_ىd^ -%uo.ʂOB0ǃ< "Sp?UJVɇ( _H>&R)y{=B.4)v- E@+p/ai_8$;qb=\^Q6S4p'fэ-g|І0a,T+dlIvȔR5iJ,un F6iAmm t} .sEMnp Uh_l*殰HC@V,f@,kP6&1w$Z-(Fx!:wO%*dhI$P9C-<縄EdfhnA%x_&G_$#bPfPϡtRӴ if(Td3P8̏p_BW*.ZDVb*[" nrhz\D0z umɩA^wW#(eT _2'Tʁ紬hhvD0Rר ]?΢ZgzLE݄+AΘ cq^џ% (t7j ۤ̾*®rbCE_4X!Qkn/3=ٕkڣOBmh;\V ^/ykiƤ{)C1ΕRAU_ =(5kS~ڽq]` f(r|RYWP3^:_xG9㢬 G2o-[]%OoEB@ri * ~ܑ{u?ߌIN((4)՟`.)<25-b\2G!, n(#̒˫kE2zFR_2PcW]qk_ abjr8np[<`W$sj ݒz. ^]#xy!``Ɀ)۸uէpQqʘ.i>RyCmJ2Hx|06$Bw=Cl{V Bd#V,ճvn ǔ%SizIi(n4vLA|=#EE?Ǐh.|mr˨Cu=PH:2Ĕ~ .20 0)U88JPY-`0iu8 zDn%v?sWtq0ݟ5MipM,7YT§?ѥ.DO:gg3{Q]]$l+S79 &s ＀0/u`%讞@ \v>&:Hp";.UjlUwmZ3.P% *uG`,S8T0~7ܬ:*PeifCݣ;uIjYt5R5 z7 !Dqr9+AIf%/w59XEwgO}#v0 Z, u7 J5 !T/8@h^k OѤ O@Dj+,bU#5YD (]ZJns LE^Ҫ6\U0mvOW("{c2Vl{MlI#G++M.ivTCz}Wv(} P+]mo|<'ilnkO#i󽗧.1 :<'_ɵ6U>tC*)]:h;kۋc Ӗe51X4v1.s,'qi_q߰ec(5z%4%_Ќtg3`$29lCd7՜_gp`f,l'dSg!",)LaGa'x 6P)̊39SE9/ntnƎّr*ru*b8Vpq 4r#NTZq0/z +DD먃~E fQ[;ӲN>`` 2"ת4ͮâ $x;N#؎?N̚Qz/^7g 0!fU "}t(mUj`h&YUv7%s;W̐^nWgs;FHBSRxB<.@G>YF*ȕ.qy߸5ܫ\_mƒomrYޅtİNb6h_RDUUP,8yG"WdE <1fy3!'˥֩6Y/=iTMA`z)ե膘)45Hw\,,r?5뼏X4Rp~BH?;9C\ )c0QCr3lH*ߌn׌=7 O7MxJHWBxBr,9hI!Z ٬{g# t%[6mň98 wl#rF9X!HT^nako) w XkS/ N0{˶IE(Րv>pnb"- Fac5pD mzJ,r ag:YuPy)PbJ$'623SEͰ=(޷,_!צ!j8k:2PA[JDeKGL˖`ȱĐ8$.Dax9 +ׇ /[k0$pO?:,Шvl!G@}eEx)$Ye_INJPEl]oImHJYj~z9'"6YzfoX4\5CֹwݎQ+xK@?]ٗr$QKgل+ *ڷWeu[-I=sfe޺n<ڞRuE( Ciq)rRc ]\Kտ)`8 S,.9bYsBfi(5NH)g+oPG&+{ѱݚb{ȸPD ԗ.)ɮ!w2 A !s/@HLjcjE ?J[ȦpA`| E+kdױ:BVZAVD^YW.ͅآ[/QPn.OdV ה>F&1EqO47x˅2u@-,-:VGjqm+ e.+%M;cFSsdi=LĩYiUSw[2iFn@L#Kd-&a |F"VȨQ9\wMOT16a |40?s+%!l#L#H)=gb3"3: WOA?YwVVc8ꂋ51%FyO»&UJdz+Il$B|[9dI*;_+I&4PZGrQ?S . 8AmƛdeD;ac mi3 q$y4k)k~ r*`wz  cI;Hw-Ճ$iB]Ã\A7^p>|*"\\7' WQ`Q,eD3l7|قj.Aj$A*df:(BaUR ;[|mwZb2T:&ީwR9 j S_͡M$ xbٰZIvyUDn)q܁)|P"ěs?QK0kns\F3RO5+t"N2H5ڪ@p u&Ќ (%$C9K_tX"l[mdoN\ ]EǸ P e1Z7]]iDy_2~iMF.7SOk"{3XOD P˱@d0"MLk#ͨH53ƌqJگ e Oe{3 W/.+T m)iG_/"&90H/d,WqO:^g+L41-4I3ǃwWaJpMNbUt Ue~ɹe{N"z0\znJlXPhe#,=[ىo vE%)zC7h^g%䞡rN#B/+Нw.`T͵\<5* ~NB +DTAbH!\.'W6[qV%Wyg<99"#6K}Rxc> \9cmyp1#03,rqO&,u!۝ $W!I&O0jN.l9'o<&2 574BZQBzk%ƨn5<AYF::t79|d0qKϘNw-WR%>;7ltp'^qnH^P/*=ʱ9Z:;Wq65[I}dZ>)-dPPhP070_5ܩy7"bd>%Wv^9d(0ǂ(]"N2bP ZE7@?>Z$l *1T_i~Ux&a_Z^0)qovROC5P$g2g,y{dܩ);O2h Ij9 ˰DNJ(vӷ<X2ZhzU8aKZ"A)m鮊*D,L7<S$>4xodQe^|9aA_wKX,L"1~]8SZdPU0E>- Wz.9x3d?7k Um136U]SJ4۴U䁅˜^eiQkg|qAT_Dzro+Kbz2WWPCƈ.37u1Q'%wXOB)tf͂T0FF%cL[vŒuĉqe~$s8"W> L%V1"QF?PƇj?xsrDyD.70gl(t(2pY.;1\B/6 (øx}r%J^f ǩdsDu;8n>>O^0i&dcXH"rn$샚\KQ5-x6+3(Q RɸZMb!x0H/Js0 ؞$rӓ-@sOu{N`)^ؙ9cP& ϐU(?#d3=|O݇2׈(\\|AOMp鱮Ǡ\:J]* KY줾"֊{Bb],ILKt%Rg0G$28섌[!0tnE_q6dqge~QjWDcүignB>R2g"`n0$3QiÔbǓ}J)کӉSC_^., ,L=E2N *FC,[RoF AgݶdZUe'f@n+j"g1|Pm~*utZ֘kģg15ݓCϟ DKUxx|dC0GM=@SFhт}\-y# U L\XcOy$c#Gp!LO:%eB`a ;tB\l)OLL){XD L/˽lj~ ˾='F{x11 pٮx&1Fl(X<Ƃk"̧pLm-`0':&b$~W6&~4>v 9S{4zg5E럱6LԟAnӠ9OH\_ggR3o#JjmG CX7@av|'gRG*/d\h݊g!)A!rpetI<-%kuϮ봿>^ۯCOV'̤tYwG/ kGLAR;)1)E Í\V~A%Vܭvw>Պ5y)'y;y(lZw|HTLjh X>:-0-z5uSS~hN(Evfz)  #Sk{:D#sþ'A.=ep̡NI6Ɲ; s=Af4t(Ɇ$9GceK@ | \ڭS9 'IȻ!E4UԫZUΖlє9zzLA\OŴъ9{W8Gp e]{c+Cڃ\Mglˠ{!-b.2sQVg^_k-Պ>&ikRh;9ߜ"k7NMZeBׇ<4TOIGN7`27Irm"^SC {'@@1dn,A0uYռa[G$s6 \`:l6+ܵ f]'&XDģB6I)KoQ*1VK-Ƶ.7S]臸]27Q))i_'n7F!2BgXZE ? FsМC1Q]XI ?YQZt4thpDtbY$;l`GPBK7RI15!&%Zx =Og џVi"Y!24F/s2 d>SJ"຋1#Tu:k9.2ꨧ:#:$@ f5D&kpK=}*3IfgSyZ%$(Ǩ3F&upphL_+vjGsi0BM1=)"]z*R&rxpKW)nSVa9BvёMC):ECNhzdOrkl*/ KqZE%u8x}O([jWȫp ϭ-`gC̥L2pr >ҽOrLxOx8Y%A%{P]e%xcSC%A?Y#fEs^a1O\;s-5O C#0ݬNޱ8~+]: MUK)d"QtIZ[|ۣukҘEsT@5Xg"Xialkmd.nnv Y\vjF1(/UEѷ݂}N .5 #Hŵ1;iWu;RKe+\l[}BDppOX*Vh'au]|*RSp`*`}&9#jPhl7R ^hGv9dCNg793|{ky</KCV Gč?՗<^˨d%sq%'/G E|[_lz.V7GNmz]x:Ӈ~r{]Gب-p~⭛aƒŤyQqe9CCb}[^m=iK~t S'BĩIQGH| 2z7ӳ+$q4k]|S`<|l\L (W8,X&{~( ?Qip?nl{xxDKҬN3EAD^h]D#o Pn!6ύzp*pJtn&Hd0m EBb{VpyƾP z*vL,q? ='{)>ǧ ieJ _eFO\nXm%Szkoe6͗0*?>]-S!)%]qY͏w@lŰ`Ř1*[|^3y3S;s+4>$buLzW#In@X򺬥c/'wx=S~#?}5UgV*ai~TX4\}w9X<3 t 8/ڿ4vt+,Hy fuS)K˞QxqdVm8~ B8,ZSFQ'KԸG2þ=JB)/Gd':` eho,{Flfv"z |ŌXA&=V/|]7KFڎdҲa 7 'y^7R_KiO}FwZVZ?9C<3j+(嵨P1}U}܄| C2ЧTD;ʹ0Sp03y;AuvKHf].{TԻyS'X_EpZ'[ӟTW'ai4A,%xѕ걲BRfQN>He A rBjcfG6+# `G0J eXx5_8~(%U4mP* WDƁU /cse}?љrEA?`$#gG6 h`]&$Zƅ,TUv؟Ts$v@E0,J`"}vH*r#-H'@:_=S6arPy#t'V"Dog@c goOLu ? AQwI9Taxi{4ʨ";#Y6a+- \yxfx<+/UI]Ěz#gsu|ZADt9qp9#8"!SۇA4; { nZ~5=8|WwԳ`H|ѭ^ӿ&jIkUBA!Έ/h#ɑaO+-VU9ܸf_·0?g;o oA,*{&r#ޚ66Kdٯ@/_V#s̮tJ--a7?k*&S $u2ED̬Qq?]+cAv=M*w`KI^z*W},Z!F* %=9!z-,"`lqXӺࡳl7dE[~X0.g|ˀj_xE [JlזUOU"_󀚺@6:okI`=P@sK_¢XѶ)eo򧂯z*h4`WKDoW>R߰_=e@Do*zQpc&Q$qc 76}Q( 3="/yxRHF( K?bg-⪛>s#锑M(_ -v;;7SYqju0,hS8ĭ8T,#ЩZ(⦘{wWlLzW- +}b WJ^Uu0pBQ1;>Xbj{-*נ`޵c},%6>PaYG2 NL\vXrn67پ/MJu4o~cIӑ*L,3=EKE\Qp͎ %SÁρ Bϰ[V![tsI;A@ 8ߵ,H`zh۩3?ȶKv,ҫq{3km$PRpd1Z` 5@,|-gz+Acjx,Kbߛ̓l('!oP:3><@|Rf[4ݶگl,Ya,Lot_4 :xY[CH V̶<:.Hd S gG>16*X6=1WXS 2N4LN**ī(Y@`9!㻘@N=4Ar>w+GOM(KY$}M`NIl?\n$*F۔IPɴv G^2;aJ}8 HRB$'G&IIF pbOpTl61բ}P$K5 Û ^?L[csLX*IճtH&eb}xKx#@1%I;/ گn%KH mL>OC~{*΁gV:&gFOYGyɹ/{s{#Ponl 'ؓqaۊ>+|(Z`M?_[ %y{o YVydw`_0vI ˓Y4-װ@}J S =WsĚFrF2p{B(L^@5@,0b=LiWo}1)$Qes;-*gZq0f>۳8ZËdJH%gg;顺p΅7ǍZ"&I@ǚ8fȩRw@H9;lR}4OhdQzjV3H XzeDWR۶{Ƒ1~B6E #Y)v%RT<6qXء9 &@ IOy>hT Je`vt, ֍6T.Y4!&Cفөx֖RŪ+|2UO縋u|]̎Qu#ȏ)i|~ٸ{ /F)W!gl_ථ/}=Dصno_$hDfPI]2`nH CHA\ъ*LP8Fa$*|Ujrr,;&eOy/Ú (+Ȩֻ!nuOy_O<$Y%Ho8dŶ߬o|Bh??%d_ְO`c=wo|sŪ9ʶ"%p41i mH)qtHay \d[>7CeM7ѫZgBp%G8i163<M$ͮ0MCA3LĨԿߢӍJjq^O(4y)/4LN=xj*hzfFsx"M$_TTFuN:_Х ~B"* Ƶ8<-WNvAbm,,Qx{ė~:W \|Enm4|eg%V:E%w'?syd+Rhʼ`~&;4KsR!\-op&oβ$=Oˏr2="C=YݭdX>ޜNW:t,}NնG@/ &k)Q$PԱ(d!Mw9tOq;l!J1)*z_-tG{>Eub&kJΞ3ܾGZE`E砷No Kh\᎟|TˣS>ė\3ue/غXH<>!W1:3R7qӥky(h=e§$mR_wex~(XCYߒnAP>‹MQ?W^2txoڇ;5V'8v@4AW~Ə=w1Eګʼ8Pm`Q,/fƩi'Yc7bM }M:6G W@1/9I8"¶~O \';k z]~2ITO_ws&862ChY%r@3APDz:BZ>y  !H}tW}UĤdF[kq\W$ss X fڷp߲*m} B$b(d>+SOkxtW25NR\pO 5nM ~r@bK e/QSy9N]+Uʡ8q<6D)S>W ijJ-#-V}PGi)zThAc$L`tTCR"4b  5b6&·CǧjFykJj~ٚ/k,40ʨXGsK}2E i̷! 4=kW-hAVi`ԗpjTΗd@ ~_Hא ir2YW]og^O#oO%Wj >ʴSZ9$E貋8HeJ460]7j"y5DSXs]|8VvI{P[Il@# t݄~Z,jZhax p$o _10늂>H.&Y"kUfwԗׁV l5zp[)*XN=74 &=i׵8kBT r1"7vJ ꬳs_q.\}d(Ƀ*n0ښp&2Վ#i2 ]|< 6>~XT`0@nʍVIvΑˮb"u,#MnˋݙszkI=xzjIoH iw.s)`5jz5Oϙ</UM"UęQ7f 7<9IW@B#+G=Uyݹ:AcL,߁ҕH+b*bn̈́ ɒp- !Ad}tKhnE^sPEɒS8{=j2D\0=, *륇abC<ebcXȐV (sk5@ETp~A]~"`.i5j XfuO L-#&8Ns]7?+n5`&1ڕhRH, u=+ .dvoH}LSF4vC7Βodl]AX73`l]H'6<@~n]`͔Ni%װ4Xٱ1ZVr_/: ! Ǜco+"}=nc'xmYIJuHbřxqrbzH|Q^KƷp9dd[ne4O>(gm5d 27%Ku ;[ْFj)WB+ M$*Uu U: ޮg`rǺ!5jO7m6raJk{uYR)zMzPFqZ^9i=z#O$!ޝ M]&ޯ z N(2v48/y߼+F6pqVɸVrNi&4S!aB1A7,c ̡&U@/`)/~9U9N`ŵ92>wN;v0clO;ƿd#)^qzKEfV02JԽت/Fk%>>3g5U#nHⲏ\Q+1Rbښ-[0?rst`!_T2#3>*uEi{KQ:ǵi_^ZRr. } y'*O.PBۘgߐمͥ5]~13<3ԙh/_`4fF\ϨuBG͙}){fx]u|/0Ki^iV'wz:NX˗ 6k U\3u$W"zdzOdZh6"ʊ,Pn MYj!" V/PTkة"0G/W9O;"0P(EX?/" P"xze5kp96=߳Kl@ǃ.3p0Nasý'w/TqpD~G Bf{:;\braz.mW$Ʀa׬:E髁w ,a;EIKsй'H<1f Zd+M2\0]oxn~J~ҕDfaxj·?ظWFnaEA%}Ξ Ӛ|gMF:HN#.@4u aAw},NC;\r5/KKfw*jѽ:eTY'OMN/  4׾;UƢaD3 kKYԫ5oԾD`]}q>_֛Zk-WLib񗴵gY|$MAb$f]*K,&+ۍ}@ʞcmԸjeͲN0$A6sA=m2yV0\JAz2d'1 0 #cx@|{]([>Tvcž Ԝ M6It|6,?k($jr #?B%زӀ[jEH`60JM))h ))o^)k~F'M8BSB_G&k)<]m\#nӪF_}MɲUJl@ZzyxqICOs%ƉfX+ia^Q Ae9ɱUjToU) B=zġ1kX[oDi[aXN9 KQt7c&SAiv2%h2V׫-dl5dLf1hynךsٱ g֙pMy !x\oDNgŭ=N" G4Hy2HSW@'kh3:4t]*ʩSqP_b@4D[/G-c_2(r0[WzUi{Ln(آ [d98FAo؄խX¯7 ,4}̲>RC4݇ja 2]Y6Y\z<(`佽bm@?c[ŸE  TBU (G&hcAR;cDajjFLJdf,FHF@ҊnF)XOǀ-(hSv._S}{E: ma@M4G֡lBuyo}*)$Iy㡇> ?A7`JhXڥ~(S-0 7h3yswCv3۵P+.( ~t4)(Ywu HRnv8D~խ #G}uCKf[Ss 9~L mtgVL'cݵ+`0Z Ffx]> llgieuGD; (-92Wgu:b僓EKGM@fb DT+)r" Ep^D[yPh[O<ݚ+(P/'#8f̿KP!ʧ#с`!ʜLws.Nd\Wh"l(4{2Nȹzm"6®=\&ڈUX-KpԢ>׼:\UTE2n ,K>❇@U|rI`XPk,̪Zz Ƌnj r\$dT\ I0KM=*UF5$p<[^FLɑĢF9 N8ۀ%L~^{!K/( k(oK4z:ZOd JY_P~fruL&S}W+ P|/ jsY .(]/kdrg};ᡸ" 繦lW4I3YKN3Ҏgc?cSKwD_H)4=z70 Pj 9p HS,%*km5sꓖՕF/Yw OwNS%Uk~Ϙ\XR֊8TRHH'#=Aw+!71܃W'a GJM,i1̓o&mc88W;5N,VՈeH K1yң^@wRS;:矼XE0Q~Dn@vOI1;#1FsMCW ԍt-7q+\-:E`4Zo^ÃM|ja}zSَև<N5QG:zdؖ\; ^&/^rʃDdrb+#{lKkN:~ M~Pq5T.c13h /pJݙ,QX~qZZX+rp4[H'=2M_P=F}-qI~<*""OD2?Lrc~ ~|rj@K(|/|%bf&˾7@~F=,= \T|NrEɗs.yAk꼖@t5 FlݲۮV~mRBn[xGͰ RzV;7NeXTÿE/o,g-%Gʩ[K' :v'r a~6Pb9b=V ^pkGc[P^r9ԑ&Kwi#7<UL4TZ;}# _@9$>"ˊD/[.GU3 DX>cHU <s'I _~VG1{Oe dz͸V`2>id`%3}4dҧԇE'MJ%mnW5^u1RPxщS8DeyA.0F,0?SWs̱ DM?W|VKg5-, B|;&'ׂ̼5ZlK-&I9@_y!e:Zԗc Ic-Gaa=\sBJJ&5ߚSwy ,MU ̡Wx!atXY¶|udĻ5Sw'*)cd z`RK`x~Olf )R`>J,(!̧F ן:w&?k#W" b,٫yf &6gd/S]74ɰ_fͶi{9F'冷pV]?^n?|gOf9NC !jxd*ߦ~6#n!  ھIJZsx^װ.ɸBqcu8PgLT#2ټj$Ec[XA6i9UlM 8$S,cTY:?BͿx 0X+T7\dr73慇,r;vco~A6 b]{x8 =XE~~5vf|k=ڕS+GIʬX0CcWόmodLҝdm׮̀R`0#[omn9$>ZhUC%# El,0!B0ZՊ`nA0gQXt8ܧoIf O_*rƐR+c~d{*, >C֥w.~@ }z._Adzj_ xs^fr3D @o~Uvơ;9!Am8WY$: -X}* kbH*@1m.1{4'sJ<^&?ڟPej|}hx8gM}^[$ z[{W\Afkq#6ⵋg p#.d#` H1nh>]B>c̺2qYթY*XQ_y ޵[)č7 qeti@Q{lLx/4o_ӍGOCc/X& Tĕe9jHCӻi zniEan I ~Hd8[@&S u`sW((4:^5W#aRh{뻝x4 d "UK én3]o_[K֎^Gn+CmSI4Qt/O~JǴR ҭOZIO gTI EVehl`DҳlǕOuYHhğ֭Иynq}{,pԒ|Iami5@TlifrJ?'3yI|Lg ˢ zOLz5,ȏ3]im*e-^ ҏP;9X*ێ`9,E'\]eFǍ4ʥ%q:tLL6ߺHR#m(0J+o0+?uOHmsYG5Xj0J" j9?><008 ¬Sؓ́mtWYcUmAГ ~ыTۗpdou!(F话&-n]eU(hOQ̔-MW̆u{]R}?x \}C]rk>d9VQ`inx<_J-]^K4V1g By0Z>]&;KZ_ӁE8(,TFۡbmKI͜SF%&s wќ-zv ! akqwaDtg/a8 Ҭ Ǐ_6dJb_9DkGIV7!أvA 1?+@ Dw3Mט`ܔ=0sDWղh}Ҵ A85RqJ}(*gMH("a֜~)\[!D [{hxu(  }3Ϙo l({A=k4XyA:T5`ѳWu1Ci W7D/ܪ{»@N|]A 2OD)`,[B؟bl~FJ:?2ڽL'0`Im 1_ͨD_򁙽q<칀ZQ>-!߇TJMtNK*FJR+f*H`592TiSFU8qHr3#c)b0-sќ{|ɻ7$=].6'Hs!|z5",ia ,Z@LYdsqF1VX;x] WkkӧH]y[$4_\ՋPidl6S}EO84Eϋ$):7a`lHrwcPcm.klE^~ϳSK~]%~SBS} m:љQ8Ou&z{-"KʊӾsbmŰmPxǙZ8l ob5'ҡ+1$| atvI9Q,&@?5Ix-Kkvs EJv97䮩r'JsRzC^66]f}Fu0Nbs o/MVRs'9t!gOΧlE t?:)(7G1b,$ ;OwXڞ&D:YP+M !?Kᗦ@'#BݻȖ |']{VXā*(ۥ`P<躓>40 ah_`IQ83js.'O*:T1i̸Z3@3g %+: ۭ()K({jw~͹+3!$$M]{?8\-߉?Zm#imj ]q  %ܼA8|l^ӛtw ]}O!6f@9J&v=:5\u@f?an[:lrbd0=^gb@ ]%0cL3h .ӳXPB)k@uXmFBesAA>Njr _5הboxԇf)?G-I uwiȭMܔ~t4'i[Z!9Q7J<]M{3y$PHS^mr[݉j.p4h}.Փٟ<=. ͪ+ l w[b$7nSMvviY:E6"6qK ͠4WXYvoG`B* $\.jshe\zb_S d"OE E EorK 96gנ>tRdJ]“Ix ߊa6DmKRa"R{ʮNe\}T\u dXӀ6{ٙILYe@2ّm}`Ld3ރ#7b. zňIj+pEh.a=z54e1`*.1uT JlOLk94|l4'RW;i i8^0nDtLͭ[m3G&6W;دh3$` _L ùRb"d1" ×*1\=#0/?F`zs$xn"9  TiKT3\t;/$d_(S2%3i甌#Is']| Tjٞdv!GLS+%'R\+p Fb|ke(Sp|㏉`ݸ#Zr~?g|T/0=a bC]K [> w1B"8u[>]E>#ɐcO~JdQ ir c5FL"g, 2Ď(%_FBIn^PdVY4;!9RȢD۶{A57!@' nA1߸@~iXYr('EHfPn̟yiesUKVj/}~~5~׋C(a B,=ٰQ21l[lr+8DN̴%&0RuZ?7sf৻?`ƿL!T&8Au%~}CWd-MUjl!p =ϣ{޸S'b 074wx N(:p q?t1N W;Ѳo6FHQqM(^υ7@m aC[3HYǖ7Mnrdd"nzy+ 1)%J+I႒XTȼgSI7l_Jqchԛ:aRyn|믐R0d ' <$_ZܤIW_97G4Ӕ0 R좌!`K;jlCKHE|KF Fp̑ Vl(ih41`iU!镑dH__d#{ P?\C[>by籂f /qcCODey}f/$3m|[Oj{q=+}%P׸q@f|QL(˝-׀L=o=j;Q8EJlkVAЯxoi(Sr_bj^C9kkU_ WRi~La۰-!nbK<ؚKm̥tNP1gE0#8u ىb^A9rv7kb n# gΗ{2n{9o=,xr|N#t񶖥򯇑27G$8$z먒Q;LIk`@^q[@-؎:/Q~}Nq%xU (/QlU(+1Nꕤ5m5:@jN$OG.#3`OfTzXT`V_HC?wM (:" Vνjq48P*PG< ?2綌?bienәڅ!u dەh *,[.W "` CbuGm>?ǵ GǁuK g\ݴBc C}=yVR sFb}lAWDp8Z 3u%(93C6gM5`p" `]\Iʴq".z3 GY7lfurv4-Vc*Ћ˦H^'[ETrᫀ|_9 95/,e%s ÀX]%Vx+2W4)} FHڰ*!+M0C=h/ziRiZgH=|3d#hF o|F#"l_(,Op@ k 0,trG< RТ/aVˀyFܐvmp#?x=qi%^z2(y3fl_W钰aeS2TA"fJGwk|Ba>[xr\( l9 Ge Os(eOޣtT)뭷xN]l4,z2\#VV,xm_*G6(yU6|Hu M'dS+5OHCJʔL ;m^=iZz~M)u_Ďz?Ťn/z`vhR !{֜GAT;Í BkƉl4&Dh" }Z8P&8.[Ei*7o\9)>;:a_&R3sw5s#&#z(U#AHJvZhQR9p\b~tiޠZ_|gQ@nej>7”9ET& SBς꺙x45l?2p.՝7n'lm|qJ$ᦆU߉E:^re<*'0i^q`I >dSpE+N=R' K`m<5@?YaNlgY;XP-nb F+5/>Vċ)>aӃk0C΂EUWJ#۠#pQUd&.DRl@Ezƪ7gb_/3Y?c1tl-ć0yF:<;|n ^VF ^ᔠ5 ڛ^Ku5]CB{?1 u;ƬlO( 5E9Wb\YL$;kk gΡe9q!-S }v7Oy2wQ)XV5ʝa{lCC}c+hkEU-'@%n~~Y%խpCjGw,1~D~C;8\9?xdcRaLF!,*Iu_9W̊njޠT(䁫 HbEd:>]Q5&ɭUHĶ. kT2E]16+/SV<)ƄUجz0%99 EYž9)˞XWeIz1*Wq4z`(r6}toN3l(RyT:gvs ji`2@b>n+XkgӳM`/n yqiݒe8rT ů(ȸl ޱ qW1EA6X"?UIOG di@fukH.d! #3g\1҂Ģ;73 R|8hK#GK!{z o "Ki)Ekc&[|=#d';%wX\ᘐg h]賺+aȜܯ-A&8nzhdoki9+z)-B_pTEFAMl^E] m <&Z^ 7:?&6,nz_#cUHIPz$nPf$p=/#Lʾ#rsy1_(B$MAumL߃TY})$(cs^hy^R&PK;ۛ3rXWp)- {HOG_0#@~  G.cľ_H#ˮ7&O5&Oa;- =H04^hA,3edT'@CwiѧFϪ Ey r)