summaryrefslogtreecommitdiff
path: root/sound/xen/Makefile
diff options
context:
space:
mode:
authorOleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>2018-05-14 09:27:40 +0300
committerTakashi Iwai <tiwai@suse.de>2018-05-16 12:59:50 +0200
commitd6e0fbb82e73a01e4cb3631b8b3dd7aae09ab14c (patch)
tree3b25bbd880692a6db4b44a0e2ab9c0a249939828 /sound/xen/Makefile
parent788ef64a2caee38cc4b8890abd3d7e54dfa3bcc9 (diff)
downloadlinux-d6e0fbb82e73a01e4cb3631b8b3dd7aae09ab14c.tar.gz
linux-d6e0fbb82e73a01e4cb3631b8b3dd7aae09ab14c.tar.bz2
linux-d6e0fbb82e73a01e4cb3631b8b3dd7aae09ab14c.zip
ALSA: xen-front: Implement handling of shared buffers
Implement shared buffer handling according to the para-virtualized sound device protocol at xen/interface/io/sndif.h: - manage buffer memory - handle granted references - handle page directories [ Fixed missing linux/kernel.h inclusion -- tiwai ] Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/xen/Makefile')
-rw-r--r--sound/xen/Makefile3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/xen/Makefile b/sound/xen/Makefile
index 03c669984000..f028bc30af5d 100644
--- a/sound/xen/Makefile
+++ b/sound/xen/Makefile
@@ -2,6 +2,7 @@
snd_xen_front-objs := xen_snd_front.o \
xen_snd_front_cfg.o \
- xen_snd_front_evtchnl.o
+ xen_snd_front_evtchnl.o \
+ xen_snd_front_shbuf.o
obj-$(CONFIG_SND_XEN_FRONTEND) += snd_xen_front.o
?*N$udd1IYP/]7iK$,͔-VkM;t2paf>$:| HZZxþL9QpM.6{|WD|N?2nTK *4 }R2GLM b\.d)#;K"g=h/}~=% bJB>bYgc9BQy PDS%o#Kt4[OhFnPcmAm3{I hYqucmfL#N1qa֛/iӅg0hqda!-SRz,j3e+{ykZT@wso0gpSq22A S:˧&r,ư71͸yWq t 8B&YF̻<լf4Ĥi8Nn*1ه!S8c62q֥\K s+qH5': s)1ZeKķ luI$ n{rO368tzE].n-mS^[Ul_Bd>{w>3W&v7*ć^x4?ɍ34+b,賫g!YHNRfd[pؿZXV j]XsGJ]c>dr'3զZ8C(\nz{+^x\6Xn=0wZ=-%y'f{_$OKVZ9=tB/AҾQmK;gK̷EeXZ |]F!#j]Pk4V2YO%֐Xos]tw>e+>-K[= ϖoT-1t_c|ӏ3 @Fb EbN?nckmE.Hc}W4z|_ ](?lnuHv-ܙp7EWc1ҺA;7{IUKuS+Eg+ {"4qrjcy]g]9 3MeV],N i߷ nY9e~ JUڶZ!t $׻ ?vVYf@̫,Vu5k꧲aqKgn;|iIwגk٩ *"ؽ`U9wM}}`xxUTfRAr,%8E![ Le=G]|##+=љ[KE6I\ $~, L)okĿxeSH:LJȭ ]H>xw1s MWpx]>!m /eS[tdFыv-6,ᯂ# .iUhQ#u+6pNſ;oI3.D9[ε{] %mC:r5 Ҫx6۷Ì{f%GSS^9VcJQz#[R[ p#Αk4,AeQB[ns 8h8戀TA$Pq>TFK Hb#MwsVw_GrZ0ڲexf!j9 dcR"zv,>{~ ;n}&;ncxNT,ֳ[O]ֈ+JE]ՓIGaC# oNƑjgN*" R舉HF W[ ѭ>l⒖551]'s?VøF+]&Z&s!`*NE 5f/:iZ3(]c.ccμ*9\3*S@3@$,JW0C3blty"%01 9MOGC\sU T5%RQTDD̾I" {ܣWwc鉤Cr?>s mײa)9H=żUpeko[s֮xS5#ln~ni=_ Z[~p4ebG3r|9%EWEQ8.n?[Q+zzy[=;o;5uw>z*lH=rN|ZYZ[狎bKu+ 0]y(j":&|}G3OL29"ETK_gHd}0 g$BAmUׅx ~8&?6 !:,dexf~0R=[&'.z0 &Ouq[S&T1 ϘǼL mJǮfL|pYoUT4bTZ`v@_Υp[id~RG{}%|ACa ,!Pqקۍ^73.՛;y9Ly$'r@Ȍ3.@t0,3Z 9NMݮQl}-!)'&!Ry ? UaoI)njeJ5[7X&CG:,^g陯Nq^Ij>? kW|^-+Xr^| N]vcmq쪉˲-+xo6a,?$r6׻з>IF]$6ݡ}nckT>+zO>Me^̆ގgqzy^ 轜*`܍5.73isgMC'l+mCH(wa<<gl6N1l.5^`w P|*M-v:0a_y3£+}'irweKo&`6cJ?^;9<ܷƗ]? 1V\¾r%7 ZDe?;q7G)ylvuʱ\uOG-}W۹d"޺K? M)p>?\nVz͋+J~wt |x+7R!lUo[|!kMJ*g-U{3s? ZӾ#3bjG/?cϗu w@]9G?UYr@r7{|}hB}ÜQN$te'd諸 AK֡AXL٪\D66x}bH0?>X}?ˇ?wJ)q|L>Q2DrY})Tؾ(\ewT~+NT$D(IzJ#懬 yJ0D8;ax_8j8=M#Oƌ}ÉdU76mۺ xU1V^nA`U1Q,jXՂ1WN8U gTW1sr/:sj[jUVmlscm8}E%-:clp5Ӻh Xȵ˔G>˜ǃAL1$cU&9]2oƷG|Sy]v3&XII+c)Xd JRo"@՟nxZ 6 K jC UUZ*fc-*nV\ ҎrO;*ɜ˻GaQc$ۮ-Ϸ WU|N7eBY u{& A JKG>&+0* @(j{OцZk"< ~Gq\+߹s 0)/**ZA_UN?q{yM2*:?FID 64"P8ETT9H"vnCWˏfwηy_vĀHN  =|$^H,T=]&IqjY'Y"Oп6qI6|(q>U2cD*$_PJBaW(>a8t< (cNe.2h`e-'iDǧ^;26S('ow?ptvDUQa^.|ǥN9!E+A&zjxHmO 5|;T_,/)FJSuo&#!OXƂҾ?Mԥ}-H]8!8I(2݇E$;6qD ׇ fMgL%Nf,#!O7<C|yi_;%Q~GndXaN;)e~Cl_f9zr;YzW289'ZۂT//E3b#͞7,9鄗˰Yz}N`굞l~u-Q|9OW<=)oVCw aҿVU`طs`,bT~x,ݯW$,f?]݈u)왨`wy{(9Sb9eGMݫp,6_-@})I65_b1_+mF~nd֠:mvOZw( .Wd"Yxm0Ny2G?7䳯ο.Uo Q{sAD 0AoP収;:߈zd;Q [bпV'q[#c`xH% e;iipB<8r۫}c>~Yk]l~wN)E爷IToROG^ ٷ4{xx>7h1@H)ahp{W-oq>aGn{b1+_[٣`]ˀT,g!{ILXU|s$ا- $$m=f2Z0vn:O^XrV#8늧ԄE2 -P (7hm[PG rkM,Mjkdr'> 9%[m6):Pf.~*kQ:vТd)x?Èz%݇Ǧ᧨"5%G0}_pvTY/ݘOm}rMxʯD.QbݪQقܿ,\tvU]}k:?QN-EheaHafrv& \N? q0FO>čzrivعBC M-)݇lv$,!w3yVwi "B^:ٌD1 c0LYF0 -3/Cgp0A-8]TCMr&h[WϫF CKs;?/X5#Ç>3Qٔ^`3z}~~ѿ!ύ'Þ*n0بz!:*)x-j,F:ˠ&o>ynx䨖:]]fm[9W)7ݦ]GVyCÅN4wUF16Hy_[6C>8 r_ֵ|+!Tp-m6+WK 7]f[L4W\gA"7H"@/h$`AE3MGڨEjPV!T&ގig`AEhx=|{w qᗬi H R؎`p<n{1heY.A !ĄBة̱`mlF00=bЩ2K`j$Lx@~F͝З/C&]N$\'ma7I~[IEԆB 3&$2* (p %#g[CE.utOeKfs g]lT%<[9DQXeg. 0 .r[/s^bo1)Km8 >OLu^|c7l(CJ=徴KIcel{{'ǀC{> R$y,+Ž=A :E Ӳb5Qnleh}:r㜦n<.Ϡb9qGvw-+% HO=\ӄ2u^7H-4j ya 42xj?x~+Y wDn]TCR:n=F`.Aʿ}*-Y"t^Zuj0B/KmE8Z?%:}ps9ۜA}|ЄwHscX֎|_فuGWV>|Yh8BLJx-rn[,TKZkr:ߡmQqkzklߺ8ҫ)]6G"n֬I dfHMuېܔA.ho&M[~N5}Vʖg7@;EvWBүV,=M@=M %u|L(\ddžcQas ǽEksNbNU@zKQdždvZY\^!K# D2ҏr8d6%- (mAj2hme=ϋT{N]ݾ>nBO@,<3Ki`ۻ <@-K݉f!~B?͈;h_D:5?&dž-D%zfĀRm@z3 ~ Q$9Ɛnu $犢r ]P"3hD!֭]pǂ f,c/ J\\sց-.0 !ȶ. *ii'~C{+U@z_=wëmШT[AX^̺//אw^JzYw*TK^!`:JF3mX.'QЎpb2be9q}?8Jw3YcDHX/DCx@4HlTUb#:7Nq9.*b dLcw(Rsv5P?3xGQ`,Hٻg9钷b8EZ T p%Q;smzc3 2/{ ݁s}|bXgV(kH]J8E%u65vk']tE_v`Q~Y,1* 4dXG;a,] l'OI]xޘt^ s ?g[+Vj =[(Tdku2eLF,x\t˚0p l{}րyi>V.x sj1v & M mxpe骕qrr/S^8KvsB o~\[;skZ Xy=?sd2ǗɀԽzʵݲxw9{Rډ{F7#t޷ JWyg*6/b|; w6JR#|AQpskA_ mgS>oA3JJo{ C*Dd٣&pcݍMpy5zTQյSY$/=ʜOT Ą.CH7J}2W{P:;c9 σ)xyXH{VW乹Po)q@Ӷjn~2}) )~3g6Er.Xxff0,\ovcgv6}"Aй޸?%G~r? .tw ! ivw;H CQRm4u$Cχ¨~4-P۔ѹ !x ~\H(e 9UA? XOȈ nrg>_.2u}8́Ywo(&bjZ dd N!TG='l@]ћ}- nxQ~Md {POK]{:0NM3,u%rz>g7=fdr^ΪŜ~yJ{aeE-F3g?l5[U&t&G1OaM$W`ܣ1Ǣ/\4; }4P+v6x6:0=aZR[T; sr0#+pmp`OYH7zǓDrcav% }?w fG"%r9 BNO"MTx~KEޛ>k= :ZKE^ ;@4z@zꗒSսgמlV0׿c|r]Ԃxeci%6@+ߺ=oy ij;Ļ;ԅV+ V_$[N j:caпϹq O3Bea@^DΫsp#uS`XuipT.dpR؂OfgA!K lΊi vtFR z8 C$AItߋQ' >}z{7nƏ8zZmGe@P"aņ]bDtUnW Tp'EpQ!TmA h87.Cu_ |i,rUc!J\7&+f>x0@u2BSXRnh~`C)rϲK7QVͩP6 5 NuNk,Y'/M,/L^-ǧ9/Y~ W<0ĨHPAe%M;6[1蘯Ϗ~Bwރ2:˯X8XyzuQ+_W?v‰DI2 2S>mܲ#⏋a_4i&N ߃?R4G9^8<n„NbSԩO`2\ EU!jBc @9BEġ~bS5A7,%UkOilz>ul #^wCh@nzH y(r9KcoF F+sGS g3;!gch;Q*ybڃ`U"DbT0oD?-t?#Mĕj$Rɪ2hrN _,/ r"ݤ €A*o ,lb G/g2GhsBm6GQ I5]xy!tuʫPkHmoM`Hw> $<Ԑȼ= &YFߪn`ٽ7eṒI2>P}$aPP@RwjӄX&>u[!F$8k\hAj7cfmkH>{l_mZ Myl bsZU_5TI+N=(訷6K!ҫlv6a+&LDX-0Oӏ/e+=Ѝ`$uWI;i>h<_OH@{荢+NYähP/$ ȫ}C8~c_d#LLpۜƿ;;kQ[-,Vx{Xl& #P˲Sm#"(YӀ j" 5C!xg[ml1?xR 5  }BT]k+eړKP꿋nAGPARu~B€=NRv 0h߬o#xkuĤj߂ ߟ4!"7 ^Nius;ɝPV˟,q紶'ʴ)! ?3*~8DEWf.(:$htl5S~VbSQ%XֆN 6B(@Y"~.!@02?B}!('k̹we>W,.@R(PfM!=Q8{Y(UNABLuP=Ci ͵soؿ̈)~卺 訷ǑTfCL& 4vSLAfۃrY>uOt &]0wL{v0`6_W 5phڊoFOsz@p׌Ri \3l[;G9 G@|ԩDs7p]a]C@xr]ʩ'@8/Ӷklp! (.ޖ&]9Sb\{<$MdRo#fy(dΗptq5o-?V`"b$9,(xßF*! ć\Qo5\?+Qצza">7r Ȁ[&M5t SE2pv")m݋0P *k{Fb@? i:OSP?w.\r:Vfy4NwϝקᇧeN0`2Q{Ԕe p\< }xėu2^3ÓF!/A<]u ȃLC o~(#4aOdČE<ȘmCwn?V.g*1W&$o ^9,xFg%b\ -q`)pYErn>6vwic$h p(7zTyw}8\NemuU'6]v{܁w۝ԚD%גz jP;)TyiK3y*xJr:yh5 }%G.An ߳1^LaBrI Tνv(;yyJ RyBm/LU%,a,Fcс&jq h `xQCd8W,Un ~_V1dXSY,Z8hXJRi؂4xBP;Rȹ5:90EͿ0vy:`]1A'spٱĹsELWO9""&W9/шJiLHhˇGLS% 7'>Xi+>-P oSG2[6%_nf ˄;b!S_ީx].5c;c-7V5vˈ L+u1u96 BMΆH^(928 A?b`V,F Tˬ 0vgZNߗqXY5Dpi+0o }%>Z>퉴T\ N@gKc֫g2CѰϻP ^8w/??NȞ#꧇߀V6EZ=0~;" [vxx:&B)ᶇ(Avj;/A ʟR| |;oFo_ۿdB^vY0:+9g*}jt8"ђҮ*/pʱΤ@uP9_:"\CgS{҅uP؜b?ię*9ə'pi&R׼];W8-"ʛthREvg\b`18'yep,wDuƮxqCa̝OƷ1G;vz$KN6ǁ..:ܜgW\nC@%2?'}1kk^=;MoW&>a?~0pzM6jXV[5jTrF]ͽh|ʽ~88bߘUeNG83vdC-Z֦=/ibdj'a|0cQm{{` WhνM|ϵ/n)1Yijb";$\>Q[6B'k-q/{כ_wtYdSz/T~t!Jʮ0{Lf++0o!l Pk8Ô,D05zoh5d߶~dܹ׏XL!Df^ 6c4gS Jmhz|s&Cߗ)F hl`OaF/ hDуLuܒ?q!zxó F H *+& p=[W3Czkg8[((dޗrZ}Q}K)& ebIU⭼#ʌ&gc[,.+f-N-\َOk$RW"Hˆz;{|;,g?r:)%r}lh*uDd'ސH~geCZͻSK73I9uEH2KW0`o1*R 8WgJ6"y'7{=6?( z`y[v,cWُV질xg?,n {{VlG/zah쮘Q́C*or/DL3^XBSeM$=d"1Y`P4r($1Ehp[{6u[mqtk`(LXnN)4Ҙ.kJ+[5 tKY^]x3(Cy!K5KAa~V &1.#GjЃDkkǖ &Lr^GȐ ч՚(@DyDA@.mqEќ3׀@vځPrVElw]PH_=VY. vH|zk͈y"X~h*R&p#k,=B. 8}=h#ϳXg[0[ns` !tG58ٺ8·c㭁[۸j)2";hC,!Ӊ2-J0}_(-[QZןp԰r eӼ/15%P&nLL 5b#Y,s/xfcS&Cs(l'#M [/($g&I* |&6 Ua,mo~lv!d!]v;1DL߮l,xiOv|չU6.]H ¡GLNxpѲ[^uƮ)sL~;,Zk|$Z+EHN;aP;t 0<2t~nJ.-a`Z2_[X^"C;Q-@9-G |l/Zg.JH3irxo=4 #|DJEI ?c 3Rm l[ihR_E"02I=hB 2iGوiR,Cfh^ҙ:& GGyyusovhsٱ- URENTt_k:ߪZQ+j=Ӓ:ӯT.&H.g(%TO$ 0PzMAv7nמ=Z x siQUWwd X^!W6kلc`N*u}cqbrf{0pVE!p qcZ@5޽BjN/a}`l28Kp83Y52qJd͵x.X.kFɘsS  3X̗2kS˧3{ۻJmNR8hXjJF0˫;5nh7dwJ2,awi1z76--+.-E7i{H&.P7w [tک5rdiVb)OQR(c[f "2UA`4dҕ/ zM;J s-*\*]ikhӡf%$x6n[W& *',o J%Gk,Zi9awd{[oX.%h/مd%n= Dsj?HyiP>uTlX.P,`ܑRzn_A]y5?f*6=ACVozM~*= URmuKyvh]O$̓3P&l0lPE TͅaRlqk;Tia3}i%:Lj&*w8/Yi>$ɀk@́e{$̥Rr49PLRnl\ZGo;wOMj~CUR\>NT>9f5vE5+3}~ßOCʰ(b˟#ˮxU[ͮ*Ӈh'hTH9:=`Wb,a^zr4Q%,ȸaL^A/&wK_'b?I ez Raxd# y0RrNrQh Wלqwsa@wY궷/%<+C1n Pd?D=8p3W6 #5"'Znzt V񩅺nv n, -zurΖKsw33bhq+N{[b_?XsFKƬJ?_Oa|P{ͫu}/V`Egz0q|Dc?ūjR:/5:X.Vi8%`AYrRIpN܎<A}d$!d髃tɌwW΃ XPnO$] q _}y\鉈8Ls@ 0#90?n~ Y@N]("/Q!GpW Qz:hti9N5Ȋ JS:yp\,Y䖨:U]P=X?I [Ndz$p:oX|6 4UP]-h Zz2t; ?ocҙqYaH^1 wKu) Y\ a$ _kk#5d=yGGG$CmW(oW'|4~ν`̼Y8J9doLËAG?kʄy0wG+7ԙNMvnr UhqQdh^<@ 5X j(s0u.s#H™I\nf袎-"q/ YS.!+#(2ߩ>AJRqz^/-:v#Hdb.eN`4oek&1 zY[DkSD6[J&?lG;0Hhx2G6sY\҂{`I4ÄiKu a M&0kӂ&>fCy{ʂSʎ $1ͶBq 7Y퉹`y(Mʐ/ʓ֡Q.Q\ߧ5́`,2Qcޱ&.PYQ1/,` K;T!UWΪw 08}C E%_c?yi=OG#^?]V#aTA?!R׻B P8L:JYi{l xV":buTg h>2b~=y 5(σW+ڶW!~*F9YA>ow_,˒ٟ }'o-ҍ>aˡuT<—LI<@6b7lu,2,m,{Y/0ZJC1%,2͢YRd5 /u '8GjS-6P%DFڨ: ]ƫR0MkL $N{>GX:?7)mefY/Dїyd2/\kޛmJdᤝc'yD \8l T\6 JbR-phmU(%Q\p\y^FfF~}׶חe;M7(0+ >ݪ@ѱLW"ƻ!lPN̕=w<^N˲@.xE)1Cpo8fO<c$INmjK@kT%@@90yA+4vӿZ>e(y(AD 2%۞|]|gu/OOtԠix3rA3¾ * ]ȼ 5 e~e]#R5)5v:@TkHV)2)3.FGsYYW<GVK=|Z ^C+v-cנU-IRO͋_q޸R(IFY-ۺ,;;|aߛ?~66~@PJ׷VؕZ.P 9YbBBd_ƒps_QW}}MKe۟yfDoaGPAH"%ٖ@7Dž+VNet.ABF.ˑo>\=6#C~kdFw*+\z\v!7T#1*E>jR7= |[}F3BN 2 Q=uNn)v@\:kw޷FM[UҎuvHS\.N\A d RM;N8oӓD?C<_~z2z'~3* j}.{3IpIa\<`:ݖKp`S7{h aW KŘ< wL[E>\E]hy͂mOɑ>{<͡V`qꡍaFG=vj vcc߉C D Ok ׅQx@;:I_>-k8jA`; +uˍUticgw%~4|=X*`maa{Ed 2Y`[R=ec{ms&ӖuJ{[聗8J,H̢qP=I$zbg(A,uE{% CA" )Qn۹cH4:-Q 6ЗqE< X5j;.tFZ&ͭ5`w76Ctg%]9;/AL@:^P '9$0[*# d -eX@94 #S[Y'9M؋eHRt2t|ZSe*(AUm!EQY4Ճ̾{td]V~:yq?[3xQ1( 00h~km}Tq=p9aUY#vWu}/% [z0e9ǟRTwq5IW_tD|*<|^.#H;tF(%lf56ϛĥ aex9OK>?7 ,an|R=ۜ u|N욱cŹ=^'(ԓ919=1 $xAX|M"@b`S85ۭXϒ~tE:;Az]+FܤpvE'ҌB;\NJ@^E҃KPKhw!M .y[OK@0l,'жΕ(P<{7y5\=Ҡ {H5T zPl^@S U3 v6q߶r~4å@t ?*=Ff]Fl">Fi9FZ?vaޒ$=z.p;ע)?RjlcD4&ȽKxiԎLRU4= :v$_7+-uw%qg 6-X$@;h^Au $8EE cct\qt3 S|;c!'pPgu|`{QڵO(6m(:Bm W#>j^"zdGtq'M 7"J E*)k9pH~W jo{2o&DbߙWƏI< #im0+f>$9_Zt/Ӫ\s~wOςXӹqhe7]i=2es10&Δ?p6Cc޶W& 21dVAz7jp.koԬFV$_hs`)B*2jV UΈ"lg) Mpٴę,"N?]_FEnkOa;ș7ǘ:^duX^vk }4HB"`%QnԔ\VyB؄ͣ=ٱZC|G8S#}C&^Y@~x6nI=pxp!/`Q糦T/1/P$Y 7_סgi ގR@Ygl?j;^oo{G?*Zے\"|AhfIJ㯢Sj-, `ӌ"+aw7{#im@N#je"pNsUEB+lanܢP,F?١˵,!cntKXs]c$<Иs:G}Dbv ?%cf Ԙnoq $S[W:'xxL,d@@N+x#;O> njA3Q>H/ID mS `/eUP +e,& >U~^!Brwe^.q$c h+n"fsdv"wZr E]S{t| ެ;7֝ q1@`mTkD$cf5dte<~dw8|$p)䤦*“\぀z' m#u".# Z<-C;vajLe@HDˆ2sٯP5u/ŔX0nav`:4d,6`9@]#\b2- ,v aiDbT2Mb0>$)BPD8+~@>F2 X$cόXw;dmE@,TkBC<0 ;W/}B](uA BA)j E"H8:5MW>=}צB|glh߃QQʹ3d}"GJY?|o/3HC@~Q;qou#?{cI{\#ł\jW2+!`WE@, 36/_̌B?߳5Mwe7_4e]~ݒh?X#1`SYv% 9SgkٕJ͋\zJ*I@OQL7gR`S28){qJi7XW~%AB!>RvrIEKo @/n}xEf^P ~UISօ'_3L?D("AСY]먏DP W~"%xW/ sd8.|c(qOr#_X r\ߏNLSNTOϥ-$d-躁PDBBS8eј)VGeW6uѫq];fg{6X𚖅^}v8ƦpWETH=u`GAY@gZ'^~%Y[3  sldbtHd@!gx䰸G5Ϸq.bE =qcs9eZ״9.w0#?[$ 7*]F$rP9ذapK!zʼnXД^d̾rtJ %9ZL !SbؼI@JEmREۢ^2EKǥi:~q_fm>;vAcs‘~,6Vj_8˿AceZI)*1W|CᔇzGmcu3l'-&zlԻ0)ZY >+Q eAT5%xԭ75;D$(]==]3f#H8lMgq1{ c,U~Z'I(&ACX(pmT@: 貚|3G̀Fxb=rCN.i퓾 IU\f yYR_nDT*tzWr[[aFrIgcE#YKȇYnި )MoDﮠ>ɘmur M.y)~OwyUUU/o$À|߰|+n7IS$`jmXr͖m&Y8` R6G8XU8}LQVz洱ӭdax'amvf-8*!gxmsa m4Uޤ];aoOP}&CgRBO. `<ՠ4@jfs1Aޭ"J…s鞢9UА'oB1;E˞_ݟOzzBB dDZZ=DDR \bM]­EPnQ5{=,ޥ=== 掠~2ogKVTu&+-Vk6r9(-Lv~%DKbH"~tR<}/of>=aiɒO>dGj亱 #dQ 2=JͨĢP"NO  h.&kx}>Tp(ic`SuI~-I-4l,!y>g_BO[ JfU3x8)g+ITK2Ubᨿh}Ni=Vc X8bجK?ݪ9蟌_wȆ&КP3R5z -<k n@&mP9>eDM"$EԆqc_:RD[u?z{yd)`U~_ 򏩊`a$fyJ &G7>,1N /LcGg@ 8^ڜȷVHq Vbhu*#335LY=ڮ>YHU.;DQiۭ͕L-\_ ʤ"bY.%b3qdN8+/цϮuNVR7IDh], $2k 9fGvW(LeY/*x1Y $:>8qR#.2ÚAl|0&X.ZZXw뾱荛k\g10[HQ-u3f6Hcs5B#aK8Eqq Ff IDV짱cKOwǰR̆7ڥ]dɩHk⤇ǭ{79"m{4#q%E,=Xiɩk(vNBAʎ\oD@~^u!?Fo,ə8>ݝҽxɘ(ҡwxL9tZ661H4Xu:cHG{e}yxip*PNC^a!1{'K"9>BbW8 /dg99)CU}z{1j Hfm/_6Kvonwn꩷<|:SOG$W=8:'NLԊ.Gg/' ;i9tMx兄8=5xōRks{L** x)Х^H]0y{P$$Q<#")>v`IFg4isrc66x犾{_?Ùt2u dF]TKO4Vc*r /,f$mtB|QƞzyJHZNM"0gIIǎ %,|j#O|@Z#DxqAkЉ n ~1JJ8'OH:ꌷ^^'pMAQ45Y.iմE"Ze94rO^`uR[CeP1ֽ&X998Aml->#כKlm$p YŴӚJ?S0ΧaT=Q`n&6:$ C:|5 w oWH.x* i1p;'ýZ3SYδeEv{ͩ9_"fµ#5+Y{D:?Q3n(}aXzLYi 7Fk[rY"nIz4J":y2_4BA&Js}uͳеuT3#42Bb }~z28kW&~1MQK[s+M^xoX1_vWPU,Ksϒ#.}]{ѵlq/49\|@ge9r^}Jce)8V|:!9{w*m7XOP# Mmq?ZfXC?LCLa1$h9VVI8ʨC L$ Q.Н33 o¾gG?CLV%։J9o4>=JK˭^P~ﺌm[38۰2ړOo3Nm(R9/1 },0gN DdM0." >w#-|=+|֩bU<(`Ģ9_-G.C*ᝣ3^pd+ujHl gke}JǥtBb07 eGSU]-Ձ#aiQn4S+F:9"}yg( ZHB~sfV̍v[QԿa-(RA֬S Id jޞ8{N oK=QLڡmab35%H0qw4"sGT7h錮Ԟ< N n@npW$+15D%:p 9:hZ&pr=aSAPq~87}3? z {rYlZ jٜ@%mOI'Ig~7-xaAG{9D4*?7j1]\)>L'KWt wP<Hk"XOqt@Ӯ_mZsL2|5?MZy5_U:W{lĊN5xbTE}c/zbqnnK۽!"&^$z*5&4"[ H}vu$wUP*"\"3wgg"jQ^pq0,l!ӷ'U%Kۧhۏ2X@%cৣyϾ<%@v/*rb4 g `)`Y|nB<%/u?' RD6 !+1V9̨\vqmbg9ȣ/u! a~r a/Q`#jvlpDLM ۄ,C1z)^;sۓXcER#gc`D̗zS7)<|&՘ps, x8Kl,+;]G춷;Ad3s̃)ķErRxK]/;3ց1H hz)&n# ՝תh@P'3YU::!@[ǗOܲb@} Ӡ7h0|AV$NL1Cn+qbC"O&Ү_BͨIp^s=*۟7~%ԓ^魫935?<]Q"I6L(GMR!5޹'=?Lsܼ-YTT%G'xEĜ4:eF0دP8Aʒ+0Yl?"N|)e#B/<Hv%6B(`oaAQu~)vҡ6%A]aic#-[,w\#gcSҮz]x1|nO1x7B &g2֓$}֘0eh0jb|pwObqk޹Oe\u+OZ[*: Gl<~Fv{|8圾^ pxMB+|SY3x%m36B73=4C$pvS7M@3 Z!?dz6t;A<;pף@ùx HԀtzOZp3oiVw;#/#ڒwkYꚥe4g|N0xWnwR|!QIu`tۅςEo NpA x")":Adx`FK81=r:]`X?Ul`o@Z4zH`qkx3^T}$e ݏ$V[EO5qL(t7쫦sVJbi}φĄ v|>|߾9(En+U[qYj +L5hpfRW-.xgJ!yoL5n2l6}X@DX:K6/{&w.]MeY&1| Ak$ /ͅv求<(E40m'E\ۯ5qwH?8l(mEa78e 5-m!~ ZB+̓Ȟ0ޮK;Ak/' Gry88 %f2>Lo, ,2Nһ@hsDu) [mcw1kԓy]C {s;q֪"[N8yeeK? "1'Fo~%a8K_ u-<G_9 =0fAν 4a8{-": Cf!J*LM$vUT&5cxFnIũgu%n/ݲ?}oGuu:!NCy$;]ݮc.y^A"=yWҾ: _gs;ruAK= $f,݊3ܘ}9{ cL5ɭl=Gu>28%'k9WicLr߃X\١B}%yl'Uc<8M3<9yhlvfC!۴f^#ی#:T;8XfBNs71JR/xuyxZ);H8% Ō*/o+*gHx!d'QYۛѕ/6i5|⫼52~v'}>x3`N&jOް7A];&wM5~,)[H+lG#'lے]f*6 ~lFP90Gq{M1@_\o@nKw^o-v3%9ӝrtd [BejQs02 3sNbejb;0f9O;[ߥkRmԕ?z9wO@+3 Ǣf0;d]B7Q|M&yY\p{ C2ѧu+#^1xROi &aÖҌ3=~r)w8\ޯ7F,r)ofnqlʬqa.awޱ^p9\Ď 5mrx}ۦu&pRtqs٢_p5Q}eΗS΍5v#~=N1I>ĴUmisA>\9оצ緅ãN~W^xO壶XIȠpɽ|L$9=Ǟv?ER XpWˎM`ȯ|U>F{1>-?u6KT%{x&21*<S 9G{9]vSz\N!T1~noV2x>K b:<;;=uɕi o[&/y!\YjX}f>+pIk`B_&| fQ'ľ%..GJUN%é%9'%.DY!+*N7SZG9v\vcr ߍTzIa{8+}JUTUA_w{qn-d]NΩY7"&5jˢx&ꂮre -올q<2',QJd-jn(p_$!tyq7{͗gH1RPK' KbvW2TqSMTZa.J/f~;LtUK(FIAiUɑƇIwV%jz+֨ '7ECe|wCrY0i;pHނY{N{-4:#Յ* +"3?EMm}j ;L8i>,ӧx# <v!ڸ!ĩ7PnxF"@/)2{ 'e?w[yj7T,0DG"n]pTkW쮹f!gF#KfWGAX8MѩKoNqB:{f>d)Z"eǂ>.n s,xFajPzhjB^ :K5Z۬nKRX+A};g8ݭ7aEH xh[U(Y_aE"CV!ɪc`-AuWI؛MliN`/7[h]Bc@z0MJgSB*uBQz7a~9hLx)0 nTe!j`0zl"mruL/{@@~ PYM eXӹxs"ׇ S+U3Žn j4a;yIMX++I Չ=Zl($9F^5OӨ_z2ßNf2(RmwL:[ z)tg}e:ZXgBtV3tOFq;GxHF/7SNIoBnxdj0v/C'>/aS|"Gjo(d:Nܞ7s<^y]6|>wge|Q/{ɂBDvloXgԥ69t*-(ʀLFq-sE!1+h7;3F])3oX'4ż=| :uc?6ݨ3%O\Q-0 uW j*ɴ2=. NQUPn(A@sr|{c06oP)[uŐhHyYHԨU\8z)Yȟ=W#u빖 XfKp phDX#x!ȀDCPSToj0TasRaki}p*"^jDu'eFJ9'D-L$br yyg`562XwF\ E19]sc$( Ҳn J"^JzX 40l$:E"XQDi|RQyu5hځjbWu$W|u܂hxLHfs\.g) -MJ*--ۯFDzc9mWp#D6X-Mi֌8~5 bnUv.;Yض\*L-ŦM~!DbԽhϙ8^%˷+gZU0;$~E-ԆT* {Xqtx)dϑz:? m~3I[J~ECllPJlۀZԾaWKꆎlcio_[@dː_#he5m2bi) CለrD,{DbSuQxP \>a[R=>5(1$EsQ#BR2P>Pc4Ү#ρ6G3Np~b!KxDٟc&grI4Y&![]9o n@6֣TPuyd4a99<6-Or[T1]g?OUMMǴ$Ə;o(Tشg~>#ix8 ;rKY*v󴡶kg_GTeCjul*p>=i?L:ףf8׳ݑ}qzٔhgZSs'ݪ>]Ռf8)pka#$uwKe p\:q;on%?GN]҃ t.y rK121>y._ȩd'ݘ=>I>>"pgzoGQwtD G;' TY^\JVB߆;9r|2 d| AW٧d2$9JdҊ'ၾwJLԐ[& gY8Wb]æO Y#Œ9P8<a 1 2[1qvIw8KG? kl]\(ڨp.Hpƽ zOջ[^JfGsU>΂AHDomO緙kb^v&}PSȏ(bF?% H@M+AD L2e/ICYC: @&қPP@P̃?umA-2wD=at%~^wW}䵋a:;o^·k>9" yjj3vaX9zl~|j;3ѯQ{`úܩ^az>ٺCWZS!FrH9U;TZ0B0Za# ܗHWݏΗVTsyrqk?oM\ >0%;`vþ~8t2=nv\D Z( \bܶ^ 0β_2d6@~FQXgOž oWJt#gtcٿaubwiR(֪1L"ą+p ͟+p~_?{-qe B=Lr~opk2?+6 ̒U"K\%Ra"t(4YjB[f]M6}4HouWFo^ R% ax9r[L8pxkzG4RG@XQF0QO> pDuxאꗒ f98fhIٲXe8A&?X/ȘťٖEzpZtޯiNj476yg/}9pm=X 0,(yo[Zl>Lp+Y^].2R{]XP[=ۺm ^C}'- 鼝dw쯁p@r?jLW vzLVAցx+`WD:wNk#2H[tR Zhvĕ`j.s l"dEW.@avn}j~ ҄}4d4ʹ#!#^9|!GX/?!3wuHZu*H-Yh6N9 8c5QYFZQ]j cW#e(Z:DtsQCD\cCE6r 4ryPUW rs,0uF "9n{:(c'+ug~\{,I;f@k#DzȤX4FuG$a&UÑ<}h8sN@B+;dâW2:Vx 8}F= ||3..]YDE:+Ja:E4+'[tp)cW;UIāpzA50 _w|_!wAຖ'U}Ytԅ*6kT:"?_|}$:M+}n!cXn^~yJ(-.<͔"V{$UBѕUj=z{w)j:> xg's3ՒVe WBs?[HsGu_SX}C.Z;tEO𭐙y sm,1SR}PWYPZ$_;mMDh-?XƱ V`w(s ..'[,16B{Øs;ʽAf8sKWM"v݊*\uo)Pd EOt wwxu|oKo܁}a #颉AS=6a( );LIk%A4Ry.)T-Ƥ3gW=xev0L|̐DP~LL*/Ǥ  @lb`F~w!( _oLJ[d*JGOmu:Fx2CSƤ.O|󼟝|^$u[ͫǷ戥sxl8ﳍmԢUov}|=>z%Ooo+?{0w^5oQ`:p_Pwd,'4O CQ ׶(5Uh^ !\zx{ =}@$9S`<b_f0oƯKO]6-@i?l*" )!6~9WW".uy>p .&DEB&82tk0Cu=o} ,VOm@{a+zwc PI>lH ItBdq}}eu>S|^-KQDMYdxs.m;̯ADp~8.S&S<K!7=*#np.vؒO᧣2a&ZU>AU᳆43h'!CO 9~T&;Cr^5K EV0yIpjF;HZGW~,=24?s .#R%$-Lk0DEԅLM?8R#=:dt'6:2g3t.?INm|?'D1sۋ_Eo:l'׎.&ifz=~.c]7=!j+Aʝ}bȁu93]O+^Q|p\z"*3?yC8%h]юkX<@ cTI , IP6(|{bJV׽ʏuPI].UdQt{䱒+ى=%XC-_1Fld ic槾=:b m㗑$sgO]^r( BwGr쐶 x:%m9 Z z!M#}o+ՕΥ1-?o-Wb;0 :EK))e@d) (֢h,ήqq?^o]]&t5 "ӥ5(5mç}֜ǿ8HшXyV ;/CڕnKmpmɠQַꝮ\`GsgkeQ{ jVF0|pFNJ>j-`4\ЀZϯG4/5_?*Ľp}:w~+:sv_6~n09MzΟw0s(x5壜F?Lc#0,9"}ܐYt~Tlj>:Q(k>Ғj4m6"y9U[ث_/UG$cJ/>s.訪eXޭ4TiZwg0R/o$SNデ]6Hvu.$G_-v%c5~2RڶdאHG%*Yg4@gYlZ`e 悫Ʀ8@$H+9"U?qH5[_UVʲ׿.+ϟɋRwe#\{y2Xg"P^2]}%YD$9U̗]9w()UoMY%mq7WDwh0&-)<&SWzWrJ1y9$̭+([LWظ9ZΖ>4H]N!ӳ8>E*+ &؂qw$\PDF BUiVqVG+ fH|H.e:8]^w9#CRW3撤j*%mYaw QŹz]'TRV>CrLrXo0C5QkVsDѫ s[ i˹k I"rn<' /Ք-U|UB4)%퐿 B*!Db+ AEaZgF;+6l6Ys]~թVzȩSƒ6eDގ=t]@ZxB%m{/y!-.5WIm<1U'_fG Q,W+guՇz{΂&W4pb:/-̃~9[ak N~>bM'78-~9n&[!:&kU|AX^ nN3Rb=HEy}H+$h.H?D0# X:|CXU`.ܭ%_ن DVulMЯ-:r9pK{)P{IkA-F7 bu41Bu^`"싈o ; &svѨTPpO-w>0Ss]cߊ~ӥhjFt:YlYqb${B^d~E1,9M?S )_M58zO\qa9 58(UWK(Juw'}nm焙} `y\דh=n ?y.\L EAm~\(p!-5f"[=%r̳s'1k"rw|\on?āV#Vgw >LG% 'B_K]ߥw숀a>|=?3o37 cgJxJ]rU&\$?iIOm0%gUPg2 vu'3YG6p9}p#:~csWgp֖NmxmL;;d1CtSU֋K\.!8 rC5i6gW,n56HQzzp $Kc g~naкOF{; _'\3S\5=@dA@ n˃ 8>' UQ@ ^ŝK< Y 'Vuz븣syf9Hl3S>ρ-Ie5<$)9?f lQxé0Gb8gS,0(aYn6S[ͺNwjڨ\ h"(*'&p&!PPU-MBwx뫻vk0Nal Ӝ&؊4ri{9#7-ocK).qA^,}sWEtKitX,s)vȴH %2ef5Thaqi-߭sόޢYeBƓ F H:o3٘Cd5aZ(p$` VX%bDeVl0*fE1(-TnN[5ԭjv/pE[ dх u[Pe٬Nr'e˭ 3&cآA$ @ -6( ׈p nR;F3s@!]Fx4.:`Rnc#s6 }`|5 UQV"Y" heW`(> MܷH-)/bHe')ʚuU|R8Dz8٦ohLyoUK-k2ts"H2B!V\Wخ u5R?"-SUhpf6vժx6\kvz.b2QPLTBoI#`*t }δEZ@ՁLљ ě' @lr| ;)#Z %8 }GMS^@#==}1G~ϕ~ }k1|`(,SXcT.V1xz)2AE}50L4Q_i+pb`v7DGr)0^;! Kao$/%>'gHzpՈ!7r <~CJJ_%pV@24l O\,˒4WZs Ы͊:FD~dG[u/F[}n.5ם{9ƼߊGfǯtO0 _IWYӏ]HdNiVM43qQ ~4M>SI ]'y>+ 81ఄ"`-V0$)OIX3:2EUrl Ț~dap L7sZj @8@c@"9髇.f$Ӱ+2ᗑ5}R!$`O?G^ 03 L1pb>:oGVRM 8S}>ԄF)cNE=xh<U@ՐNX׿;305gxʴcgU!}'̥'ʇP:ho&wT/2䪇a!Y luse41\ayy k[D 3@8 m WM7w@pE/XhAۯj3R?1 axZg gOW9ï;9)mȢQEO,۰][gGGX *-vuĘC,S k2,(-(>=vvkLcs-A%QE%QE%QE E5E5E!TQCTQCTQH4PP4PPEIUUTDQs[B!5w< ~\n*#ѮT&͗T]RD;C.O  @mh\6!]iCpфe7ɘԗ .윊`1" lTt->P=08I3<4`fOHM)OVfD$I&Fc z0}CL 7eSO"GT4UH,03IPUUAB4EH#L@Д (>~'DHDLDA 8LE+JDh8F" B )|*) ) BV& ""DD&:y3"Hפu/ qflGo_'cG ڂGf=l3Ou=je!'iY l_Dҽ0$:?qr@;}Rǜ=_Aپrٗ9:E$M z_,AC_oC=pK5&\a$P Pvr (ǴRHGܶ)+klԜ0ԥ-z筯fߋ ;tx 1PmD :DuCmlXH(`T[nm4ڛ$+RCuаwǻ{7{fb>Q"b=aïשql7Qּ `w" lp2zdޣ $aI%`pu'U.?'bP^>\g[(e' .',=&H_S; !,qFFCV6?dh/A77 ^I7qk w 6͂wKG>>>|fe߰;$ngr'Dy,sy> b&X |G)(rHf-"\BA$3E. npX#!\>?&ޔGZv;jrT'I-ɓC_Uۦ֫B 2vͦ[.KAD;NתjכO%l/B}J(4LPHhT()Q&@0/ hERDaQ^Z(J!M(UUUDU@J TU(* v]DP%RgXۆ4EI@5(WCgʭ")T.Ԅ$ wӢCb?[=UNgܡuMs B+WOyvɵѳ.Ϳ'ASÜ(^_pϴ}|T߇=S"I4@ޜA8zTK~M~2rj7BpK^Kc~?ǘte5XZAP<lDm@g z*D`i4LN3d@B@!{0H'Apw&R#Aꓝe+[KtTFq5 =*89ru|U3,3WU6F/"\BVF!*5)-V!BJ3 0*STA p=`GDprˇ)L$ H_}6$ X9@N3~_孾Oۦ [ s9Imt%7ڡ==~L5iIuD bq2ǺuRzwPŭ2-4-xZkg>HQivy9ҋPRPf5%DɈ]n.%(ɓF9\DK+T X 1 *>˺#cuIC a5a9#)xJӠԗ)A8, jE *)DPZ%[%ko"tPQs-ګ?/ӕɝU?ZdٕYF%5o?i&>Q0; 8}nh~pH@>*H`BL oodyn=W/ʗ3K{y@҆a_;.xn 3HԶXʭ q~@ŵ?n#\?8 4⨐wfX-3%HCgVv{.#ߎaT ~mgL Ppx\}:a]#x!?$ 1|;쟖6Q>x۱ CZ(1- Y׷=mS~|iD $k KU0yUR.+0s賖{>? 'Ǘ;߭m)H2|ءz8Mf}V9 <5aSXBFJ0 W}OoLǠ!eIH<>hnS`hP 6% ⽙dUq qࠤv'u@&>DyQw,Reb OUI@2B%~d"H3__w&5 !XǑFMz"[5`M"J\QP}'^sl~$s GŜMG v-j3vf%"a&9 ¸sv%8v?U4b1P*F:/sV[L>zC !$c^却/վ U^8KrӦ; B-2{6þ>A!9wX eG"Zm $$b 0l;LXMi҉S 3&z't׹u]=#ݤ}՘)ZP^·qOL7CgD|O'*/Y!g(hRyb ۳~/-$.T楺l3c18~۞BP5~.[yemN+еzXTBB75~d6`ӳpӿ z{¾=b]tJ㯦D||N_6'E\y,!쮄^D@O/3EUy#:osO_{_ <`0lBR$PepL?>}!ffh;pDĀqz7@ѼZK" YdWk]qXQɄR@2wz7tٿX Z9H~  "0iA9D\pt ![y&мh/Eph ApG?eUs!-Qqr?uf=i`ԈaMJ*QׂX{($wHNYX_ !d'92cZ8Hu6' xQ/sUE@yZŠdyB71 >} 30%\R8*f>H@4޴$ $5?_.̫9o65(LȽQYgx~kɘZ| 9B}vf&6f3&+"\YIzAU/0V!bb3. (l@l.2CBL {Í2 ?JW5FC7xe#=DG0,5)ftju^