From 6136d6e48a0138f6be5bb3427dbeb0ba07a546a4 Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Tue, 3 Oct 2017 08:28:04 -0700 Subject: rcu: Clamp ->dynticks_nmi_nesting at eqs entry/exit In preparation for merging dyntick-idle irq handling into the NMI algorithm, clamp ->dynticks_nmi_nesting value to allow for interrupts that enter but never leave and vice versa. It is important that the clamping happen outside of the extended quiescent state. Otherwise, there will be short windows where irqs and NMIs fail to convince RCU to start watching. Signed-off-by: Paul E. McKenney --- kernel/rcu/rcu.h | 2 ++ kernel/rcu/tree.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/kernel/rcu/rcu.h b/kernel/rcu/rcu.h index 59c471de342a..f4a411964c41 100644 --- a/kernel/rcu/rcu.h +++ b/kernel/rcu/rcu.h @@ -56,6 +56,8 @@ #define DYNTICK_TASK_EXIT_IDLE (DYNTICK_TASK_NEST_VALUE + \ DYNTICK_TASK_FLAG) +#define DYNTICK_IRQ_NONIDLE ((INT_MAX / 2) + 1) + /* * Grace-period counter management. diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c index 419f3c38e1b6..142cdd4a50c9 100644 --- a/kernel/rcu/tree.c +++ b/kernel/rcu/tree.c @@ -818,6 +818,7 @@ static void rcu_eqs_enter(bool user) struct rcu_dynticks *rdtp; rdtp = this_cpu_ptr(&rcu_dynticks); + WRITE_ONCE(rdtp->dynticks_nmi_nesting, 0); WARN_ON_ONCE(IS_ENABLED(CONFIG_RCU_EQS_DEBUG) && (rdtp->dynticks_nesting & DYNTICK_TASK_NEST_MASK) == 0); if ((rdtp->dynticks_nesting & DYNTICK_TASK_NEST_MASK) == DYNTICK_TASK_NEST_VALUE) @@ -1008,6 +1009,7 @@ static void rcu_eqs_exit(bool user) rcu_eqs_exit_common(DYNTICK_TASK_EXIT_IDLE, user); rdtp->dynticks_nesting = DYNTICK_TASK_EXIT_IDLE; __this_cpu_dec(disable_rcu_irq_enter); + WRITE_ONCE(rdtp->dynticks_nmi_nesting, DYNTICK_IRQ_NONIDLE); } } -- cgit v1.2.3 I*M((жcEm=I׺5G׸ݺr=RGq;}azEzdݹN=c{>ؑEK@J@ ""Py}MN"WЊq RL甪vYm-=8RoY B}ٟVz}O1nrv}[, |Az]z9$fuxWd vt7\0P[hx/.cEs;E}xz_{'őmO@d(7t7}no.hi i0LhM5= {C"e3)L&24zFL#OSdih< AAh4b4Й14&~&TmOP4 !L L< i=)OSiښP4 LM&di2m򡞨4Pр A 14ha P4@he0L ScQ{I44y$4i=@RLF#B4 ИzG441hhM4@?$?vz_~Ϯr5 նvh_p4M_Ě-Y7vk ˿Q!.߸W_#EuuCU7l6n{Kc5F<37lf@`@ yf⽭^Y\?XIU7* gB~m7@?逅;[w7;:it4u2˲G[SJcnΰ[USWzD .a=bk"5ET~b5 X/U f(*e-8t60?7FO-u RuF`Փ #iIP qbN\ر6aJ N21p(Sۼش irC^* )jOow6 Q3 @x&qBa LTP]msHD_CAi#C` X 6*"6SAV&4MKx[PU&1YX"JI'~z-І b21 -V$)W@8IuHrıHAArT$y.>!Ȋ~ Ҙ] k _l"! !C{5Q 4pSIXI LH5,(f&(b*Y)%i S  _f~{kti%77W\x^-rA0055bP JAhRHHACDM҄ɠD )hD(b@DRDSCAD; (DIBSZ7X30PR)eCB62J8BBN0!fH4 HcI40@ș6@6\K+(AR P+SB! iCb@&g  $1(0#hAiQҦ2lH%*CHHA4 B:QM( R*  P CB-#2PS@"SH4 4(hP4QH%*E%)@Q04)@H R*Pg 0ʐZ К )tJti ZQ1"))i)JDq.4":\I qbZAҀb()V)JFJ D0(V1b:h Њ} б"D Lҭ *kG6B04 0|-k@@IASTAM E2^#``:VV.#Y E=[7HM#w/E4ϓ& 6XWd6RإK'Od(P)$V`^߈8l .t#UXHBuJ`" H=uvno>H:v e: !((@EYh""HWB QXɢ -$Dl/$!T4ڳdZJU IhVbq Q @DC5*A軹P*i Y(@`IY" &)eA"a)Ģ:`$1XJi(-"2ґTDЄL04`R -6V"4:R WtŠĈC(J1ČL5lP 8!TH 4)eCQy.h(āļ@BAuxX"&Nh=CHf@1$T™tQ hbXRAB, HЁĴ&foB4)&!(JE:RPRR%*4 RМJJTXQ(҃Ȑ1$L`?//fj> 1e-S@Pt GC$NHF ??:(`A"P%HSh(b)\D:)))%B|HB D"@@*i`4%!D60)_BJ"Ѕ#J(҉KJ@P:'tJ4*HHn##r2+PpY%Jbk6O ֛(Pz(x'6grKMiߕ'/,!YTذܛ , hbnw?uܖivva~/D_}fd؍o §U/ty%cF}i>.s)e.tƓQPGMnu\!IxiB88?5FrXآfc,d̢/~ TVCpQ}x~xDZi)ms;h6˃n=5s٭j!˅qP:x57"1ca{ #OˈR0(cX; #F9=n:P0@up. b3RyA}*-Ð6ieDǙ`YH-C(`,^E/}>Yb{ gB)*7e١fO8̞L? A^Buqw| eGiF[] 6cbg- EuKoP&`+Ř{+xCoHR4B~|3Nf㶂$*~crIvg,_. ` X#:>^*(ܴBn!|yšXO kG}<7&).kIJ=R/6u97X""(ƨR2u'ɌOe Op>%*ƐJW~_W8!ua(VeT$`JA,^Бscy_s*Ȣ)czKjVB<8r/ g=4wsӡLa5W:l3W:|I]"oުpyErJ IEf>VyUF'P> V0KYH>_BCR bhZ 5~VjTOX*npa‚o_^5۸$aH&%78`HgVë9 # V)W/kG:FV6Ai442A m4]#W]wor-H1uf'gߞGgቁŽH / A,e.g"QqD??scbգTMa nU J{qv-2 אgԖ >E $ڇvKa}~s3k& :L,QTeZߚ(i6wy,|]a&1Fq%'fthڲҍtgcO՟ޱֵD#ٻ;˳ާ)| v~[x8McVX,d`MNVyigv`ϵzA1Txk@ai>L5vז'b}36Si`cfV` ǼD!ޑm8ClF] ɒ3=4Vm%"łUC_Ju*5/~#1[!k "C,pt)8}Wt|= 7[Fr${=Wmj TRK '(A':zK3j#Uu@&eahBSjQ }195 .g~%qx}LӼ#?T1Ԉ|q"saNէE_+3Q]cfPOMi\Ua*Qrm TI%*B?9ZZA!^<|,im-_/|߮|!|x6%)s\:s_ X3If.$vX6"g*\u/Q˽cBJKi ( gGw7:H$gQF0/P*C$nb-[b 8R_x>P" '|R6?II 88 X HJ>\/$o.2u~Jgo16TYmdm }`IM V)bl~!ȁKcbC`qo0߁Fp"C/^\nw~T i "'f1ԩ ZӉlb1"$9[=VxOq#V /tø.1‰/c6nՄD',6rTtmR6p22p^fW*1XGxyp}<7??)(q~-]lL[=%)!H>;9K!8#{Yo{+dq +a'jG>ttS}c֙d!ǥaYɷsj>TiR |wmzC)iq@pZL}1m;ZZ#`b!YB/7{ug{[$3.sY>a:ႝtYcL P؏ь++mteOD!&. @{q CyD2!VέWˈ-GH05ecD>qf@[ BAW~tV5;"x)[[B=G5`q*=#>Љ`%2MUr|zi!As M*ࣚa*sGe^ itRgq9Nzy >+o':!/.t BVv %:8z!=gt>4>N#~#O:9Y%99vsk*nx&B|CkNR1t첗x8)W/s &i8Պ?t%_>o|mޞc) YB<A%Cɩhk^ Iu]uH.C1o#;T~x"$EzS?{ٕFKMPSza#"!QKr{Hs-&$pF)}3@pUr`ڙ4%'>pPbB_&9%|O ?+D҄ύ3ӕ ` d) cMW(kGn6yδ.&u?6cP}qXAL篱 Fwʛj+oJtg言E@0 X3vUԂ=ovi:l=W]cT[d_Jf,ҭZH̕–i *L3ON's{,ܛ~zNAx:Oߔ+ߺx?yTdkOjkCZL-TrB齞) I M qePe`K,lևJOg][s6&Y B% % ҧR*4nɳ样Eᑗ/`ʣC-EI0yFN߆mk:tOj7F}uM'ϝjAd (ތ_̛ V)Gꥈ M~b[rb9uw}GA+ t S]./ۙ'f#E+4znk}Ԭlzݛx"tU~x_g ua2,v|, -$kp_ [ G 3Ü(5٥Eq*=WmPW粏Yܞƒf+f7Se)5:Iܺ`!`>ppu8(.F;9|koH',:"s,U]gx|GkYwWQz_tцb-!X>ǽ) :edr"UE 'u/f۠R @HlCmji2pH:)R7N1avX)ߦ0Yvtu[* $JQ&@B ]kh?4<٩ 8.r? wzY(T͠/l V窍8׮6şb&7EA6 taTwo8gr7\B*g&9p4g{1?L=تާ}W\qN+n-oǸώj#sf:V$k w+R,Zi %-2g ʣvw?KsH/TZL~nS AM)CĻkk0O[A 6z=§ah`| G 1Q2C4e'iV%UW"1B@AM\V/,&Gioö5J ]q !6}|g~_~utgYg|n]=ʋ#vIw 7` >o!&WKbB@} }i LQh"L %5v;ygq º9:ѲjzpuH<"X" TuVuA%l9$`&$b6f7Hrgc 1bOxDap"))"ч ,DwZZdG Pל EM< GOMO&3;Llv-b۹78mAUULB|Ⱦ&5*A@ & 69:qs,c}\oǒ6lJ" /NEмahX"tYNF-퉾yXCY=[g%ir>b½.M( g@ $]X\-mDi#3MZC,ec,jq`&3;9Zn}>^|^--[2ঐ,=gGݡφ ף;ć^Ms|-g7YX![b΋:.6fEkuU`Ƭ-ՇG^:B֡nrJB͔~o|6z}7Wnw;zz]x ^+V:9}:-g쭖c-e<.x9.!%+>-Kji+w{\f{_u6A'Gt#1}T"1m_cX[lQ| 5?sF :Y)sq'hYkm%: 7cQ#f /"o>F\*%60)YT3 C9fM8bǨ+ (BJ7}t|!t=熾[i:vDKRͺ:~lsJNt߲i9 D92m) op2 D 4mJdfp9Ä>`HܐJ[Zۓ)WYy+ SDUt Fwɗ5JR91gX FdP*ychgNP`1aD/Me9C65ΜEre A_:j|Z4"S“Ѧ)9?& e ʅ꛴PZQcXݣ|G\u!.pPyq~2}Wy^l+lҾ_YS 6p[H(yͺ19`lEצ <f3jqa©@v bfxo J#:w=: m8n1| t*VV")X=AzlT1A[m}ь隂 ɘ44@HHDߧ00Ry!>=3RQ}Hk)C߮ OyhIJDžO33-N;iBaJXZ !Nu;m*(AXG%Ri9UVB0PM@},HAQT*qQ-5_꿻mSy^.6:#W6B { 2|ZN#eǑ9k|Ԛ./ޱ_>9.=f, 8}JM*(k2IE.n~9C_>gɪrv'[n0uJNdRǕ'9{^~~7q>6yV;=MyΫ,_6Pq5c: wow."D,zRo1QƾygOq<|?%zk&y~9ZS~:=0zՉkqGжyY{HP0{CikX笒fsc|͍lt$/$7 xvPX>Pߙbؐ(B! (V?lU`8铦a9b*;7fl3i%ļ1ɦ  gZfFb$|y̆gc <>X 0Ck2s+# ʐF}ťڜ?Ƅ'KS;D%F,% h5PB.X9<| # ]%(eu^0WcHDHy0-a:se6tOӗ?U7v`dž l,8ǟ(MˎN6Ѣ:e٪2]o[]WI=$s4Hˤٰ?&:v5Kד-?柇ʾkG;C+UCoGT3=]nWƷ=?pV|$Q-K!KoW'm{=Rv56XmSU!嚱Jq՜8>h6:[/uz, M)*bhUsbr>]Wrx'r.d t-[ǖ3`\9s{ƱK/%DLd~Zr'ZPi֋tŷz]soCa*3NQ.f*UB@q2o0|>r2sO.2Sjsk;qGRqL4I 岥P0! mTO ,j.~`Pۭ !ّ ,2c0YB#59=L1C]˒}?$Xbąʻ Sfq \'_b` SdUwmmcU1V^xA*b$XՂ1Vb qVH UR_Rn·:΃<<וv[jUVmlݶ6c⠴Z;Bdu¤:j]Dwwnx]v DGjI.ӕ%s6򜷕-:d )%le+9s'> ?*Kp뵭o[k ' (   pULd1ts\Ok ~GQwTl> 7ٕ%U}WZ=b?ZV e3X>[FP \vرvse7Tc/XXP,^оߙDJ@`fV ])X}NoʇիfZ퓵EX9$|.wnϐUDޕ]ȟ篧D5\:˴ሉ6=5m0WtF?!'9xwa- KY5O |4 ¯=?]NGFU}N@C^N:mO73snW(!. w&IKG4;>}Omyyi$vyzzu~G捔\ K?ԻE?Y9 vs0)~l9M#у|n |Vt <Q烇rE_L?]~ѣ?kgߠh8 ^Q/> 8Gm G43~a櫽WOV_guL-ǧRg>O^ge. AcX- ^#`sdszCcQfwB.? >f|-ջvc;?Dx ݱlr6uUĹU.+m'Dm̾a=(#;'Bl?0Q 6bϲя3/% t0,UN#aD军2yhd_5)s|&lhbx<9"2}@"^kGH"!@֑9I wxx- SޗuN0nu$نknV.\U~Ѳ[M0?πMpBoH{,;ܴMc4>v6v0%"d=XuwWE)a'./SI`z:;[bA{f{>5卷TkFnDk1U7sA(0#C.kx?0aƯEi29HLp\j ]/@8T%V֯>{ %\)&ԣ*qo̭sut 9q ~فwFd,1F0nL/a`CD\61t`#eKZjGF86BA#lHܭdc\:jaC Ơ4I &(?2#Awv@.h( tH&> ҅g-6qƒ<#HnaD ί w`].lpxzt[EeJ)H4rQ9zi v>SA]$:if8gtOau$LI0L+cAB=RQ[\}R_5;~~.umwʎ{A7ٞ>%\꣓c)5zy̫ǫ)o=\h ϣV 3D* ߇K;ضS:--$a½mxA<5_hG =jQド=@K$pۯa Xp@ {34?W7w> d9m؛EKٴwlǪ̧iNm S`]zASc:ϡ%|C6 ,véy/^-#7$c<|yuvyKvkeٱ@ƞVwq-rŠ%phu{8c4fd|>xC(.*\{!.oߍura=:Œ;9.g*np..ln YhA:zO?~m^~O5ׄzwy-ˇ[Ë0 俱>t:[c-S]ZBNS$:ݤXtBY(gqp o|_W_AШ40/$_y×GDttTL)Ӭꎛ'1ŲMU롯Z7].Vr>˸tk=bK=ذr[ߜyqM$wgY!2Bk܆SjSܺAPݎMj-m۠τr2>KE ;EmV^@ԝ,c.JcM@#_DAd'a\]0l^#'ؕK5iaN#U21Bj U1pa$ 5Dg$'w|.LdmpiA [B !5Di)!- yr,< ho-`GwмvG@Sߔ?$v8֨G]cA6 "Qѫ,L[Pb+I%~B'd \,^2N'0/gǮIߟ9A@bI9b6g\r ]d8B&aB`2GS` f'o8O覱ty@A{)%>}6Ή G{,-f~B^f_!n ?z 0?%qGqy6$dtGo٢T ~ش P ́!A#B?dwT oTUEks˅e@XJ$^f:{$ǯeGN&+LLX'P`R$pW@" 2}TS}m 5by41 M=w|]XZ- {?"i< T J%Wz؎t-jP1odnYuihX@4c ;^z@Wb ,lZ3#I=}z"ԯ_+0k~Pkc!QuoТHG,4J[X1qRbլjKnQ~23BgYOW+l`_W% iCNϪݒxĦ-94i{c[:0Kf2?c O+(pc[-"'0/QWj9ӈ_U1"`ܷsyn!AE;ӉP 1aQ:uV]Jo{j@yZ%ɴt?[C+P:m^g`!4&7VEY(xT c2F,{m/ Q?pu1 *O).`/?kXJJ{>3UcF[<N3mUA1A\;G:s[?dQklQdw,4[U5@䱣vyA F*Ǚܻ X˦vzMD e"FK,=٪وϐV,NYXl8D'ۿrt.kTauGAO؈ݹ|KOO (>~n{[A{{sr'4|ǜeH"zOwwܱoP-)y$DO[ƭ2wẄ K8z(YD ]8^! +0O*# UBU._e<=p֤ڣH1k-?QwIGآwoM$|Y(i{99X%FːhKѻnvB-SH?<}zU9Y揭)쇖ʋ!/gE͜_½SGANw4\ـm0 6 _O`q@ BFʩRnpޱ1pk|u[Gwh \ZeVB<<%UG|q;<ӳ Y6z f& Cuf mk:;vFC]lBqU aݏCe/Ie\퍤:J,wm}ۖ%*iFi~ ؞nYGHR;8 g@Kp]?Gn6z"ys[ˈ[mg***X2C2Ez*>o N>Z} V.:1G۫^;"l)*tD)%~u7!WˣOk\TKiтtW]f)kJ579*|hG28ŦCQξAtN^a;ut]+2ĮӰ [X$ 2w_`+޺^Y¨F% W(v[zܶ\UWM1a!&ߠm+G,`2 },Pυ^rEK7 9;#`9u ;6C W&Ӭ9nG]|rW˯X}M$!aV=MLO ńEc`.{y Z>5*`r 鷳z:x̩4~>[9S8XElB â;%_4\Q;r%EMN;tl?g?-|Mq U9wLTcS&ƨh"U`ZdEr>_3mU"6j19埯aP(7|$Ct4O5ݚl-^鷬Q(g kckYȎ4ҩu@bȧ衋u!Igl2)>oܡ_IanyG4;c(*2AW6>]_ǚsVxᰚaF>n#w 1٢aغ,2/ `J @ dH.(ǂPyz\9tBx uu70WVi@lPÃͰnr BPZu}RB{jxD 7A8u6gf6w~D\0 tHr Þxi7d42etG1t['4)!!?S#2^/S,Og_l4ԍtl9W-V7@k!_2eJsZ~v(؃Z?]Myn!̨Br5]r?[Rl"rZ[b|sk_>B̔  oag~A:iw8j&{_``vieL E4?韐?A jyԥQJ#-^U0 48hahX\G<89z Ӵ6y:w!8' { Rn`cv@ I1D-pBxCA-ZX@o"=wrֵ(g!7|z yb`WL+?ۭgBOՀ]ň@:,B|lS , w-)@"YB<#acvP!@6\:.ˤA O=ox Ljq `])& ח5?w]RW^񠋻Y9{돪pNy#KY(.' cZPY!P:WXϛ 4 ~ΏH(>tD@ה&AȆ7w\G<-rhDxOC<4.ojD@>vx.ЈiS_R\&jh҂zJf4A[@Fx:yah(7,LӘ ɔz = A#׌.lcE12݂&p{<9׽ ^Opr.;uO}<%Nbr5F% C헛Z,uk6 v_R &Rm9 Yn[$ dZ3U!ɆȾޢxLQ &9 _nbA[~믗)0tk?&^D8dτL=D4 uaWі8cIkߦO( 6bYv nx?#*K)@5l[E ߱XEU_h[8ιgk0o!(9{$ ڻPC>eDaL )aIhXd⣍߾ǖz aT';͝sB %s:)EJ <K$f.+|# uqg8p12/~* .9#=^wt@%G`jBpl%ʱbѣˣjA[;mcy S:qOnutmpJKL9ǻ0-Nߵt5)$7t632REA)1U7X)"oN AXk]{ajqõ3T((.*QJ"{o[J9uy/u}N0݌~ce]=.;nNb֔N"씓sB>,4 +Yvq͖\~>*g.)-qnKf:>;xh0Mxyǀ(LJ,o7C 0rRJ9=Lr? G@#]@%;/zJ7ͬ;̂E|+ԐA ᷛv =._͂WQ J3kn>&{nubnX ˀyWb#jO0p4MS,q@Bݲ0YѲAXW~qWy=i~Oo }1";..O a'~YvyGkޚ`ktܟר$J0jTώn8\}~<A<&Q@cٖ\BOF6 HJ g<W2?a \Y4/$ I5vqhÙt9ZAFc Z)~ 3 f*0D!N~)شHqS :gF} ~oN6 (A]M:^7G?ycxr=ڙ6nVكiEgT5 ;ar2B*pFx|G+-sBwi+k0<4vxp-+1g{!YaK1BTE񘔔ak ť%wƧ#0 @@㛪xlr 'm@$r_ g e^M8Bc## + \̉=<"@PjA+P&&a lቀqV$Uwg^1ḰשaZ#1ٜی]XŬ063/] -U.y ſʔ R+ؓsS"9<:ȴ_<;WS]4#9C"5LJg}FD4I05W@""Q91 yb c3-IMKsOy^Gra-4BM3`.ggTS37Dꃇ\ YalN7$i,Ls(L[ie2f+@zffB DAFvYӮیڶ09.-o_IE/Q 7AAN9?|1dĈޤD\f#)fRD?Unb+9w/K|L!="'V"b?ɾϗ+|e]a4>_fzs\cQEExyg_>ow~vwO>o |8=Ng;Ts'k8/W{:]T{exs:"Q Q6 2P``V;2?п^ytٱukP1uk|uőR4,( ktPzpk9{45HS8ho7,!szxȗ&[{ZsӜjRvZ }p0k8,'"S@uvEw>=zVE^ݿw\CwDbP遅^q~@A0uCrRquWk]Eh  @k\qO0eVB9k4o'6V;Gý vA )?G@ 3P9飃$k{A"(Ѓ[ M^8^询ٽe@{&$ʤ6}.bri/l%bf. $T>Jo'yĨq^?"x( 4˿r_^I '܊9: iz 'sͶRm[Ȩ{TS&iãq@}0)0d2*ċDBvqE$V-2F<7al2 `!'ITLWބ:M*QPtXb_a(aI햬dL+v2LMIʶ8e@TIFrwjamoL^0eɺk&^3!bm%D5 pU K(>>Tx}s ->9lu)`3(E[E5! D헪vr:L`ѳh`e)iFW~,L7^x!z'  tӞ4DD` ]=hcƘ H?~ 7?~ #sg_ƞUax,8'2;Q^=940;kC>}>+\w-wD 4 Щ}̏`Cպwt+]3+Zy qcԬ)5Ą>.7-yrbֱˆj+Յː.4ȁ8 L2 L <2Qea]Ԯdɩ#m5Xs*O7~mǧI94[88Z]|H0kX1jIW5ha[$Lv@aPVMq\qbg+Nfc$Ӹi,wVU,Jp":]~Kz?W`(E}p>TLAtmz9줰YicWl%iVVdt\rFȻ b)TW0ać { ~[r?BP&0=?f{Z# AgW\}ĿmcO} %}ӆX¢UOy1TZ~˽~sGp[lX`ͼP^ a ;8ClT| 5e -.źChm6ݔv. "/-=6DX,fpG u=!xڪ9Ghm+Zpq" |; m1>y61cKz;Ay }ʮ, Q\!$ETd!to-nHbk2GYzPH}Os%ꤳ ZΌ5FPm#Rb[TBچ˜<:E$aTTGLܫun , bUIv9:bMkxWL#b@G^y齪2 #R@r߽Xv UڞQ#ƅЗC`pd߫UNĆL;Y>imT_`~6C$7ZC@ò*IweoT wC!HIGI&d)yv&άdMtjyCu~=[p\iczUé@]c늉'cMXK*z6`e䉫5u)--`xUjfH9N=Sl]5J>J4RLs-{wz ibp.z5ݒnySvrel3Ȑ(!Ȣg ۔;sU Y ^9S/ӑMEe)Ư1 ֣8ı{O֌G[" qMnS铞V-xaDqtVӻDŽ{V$z1NrR`p>͗8QkIR[mb蚛$i %BZ2b4{ژxŌ#6rsFEުjLb)yJRRs6xJFv=5~BPK\6 ,f `H$$xK$6&kCd@sty}*ҪR MBAR2E-dw'}f`Ӄge^94VH/T! 6HͳID# :2Fm[X [$=Q 5W={nqΏP'{:yȮAG:?;̷9羋E/צh.EThoCc'#Z* P nOB/_당jc{]+_ﲵ&G=;pehа S_ F@gr,}q}E(QWlxϡL~ O'%‘WW3w +.ͪ Ke8)b +t\DB 2[7dpBf#@<9gPnhs@!48J6W3gaIު޶J~ZPt83$tt&6M"( \Nk&#/)?iK - wtF-aV%(RZ '9^^:~1ECך cu@x 3E'xXx&ǩ@_ vE8.ǽCKEìrZUϪVҋnZ5\#ceݜ4rE2]5HfF{j _\S:h鹭xܚ[^?n-鞓Z/ ͓2=vgF7m&Y(࡬=1H3wLcrͅUfS~>76җx?/"oE": >6{j%bW9FF7:Q-z#j.ڲD n 7qve 8NhAE. ̓6J1 f Pl2;,MLEgwgS7E|mJ> x\Uma4 R0| '*?Xſ w .Rp\QJ  hW{qV6Q$1PmqH}*ȰL89,/üK0^7+Yk| e=C۳MFQP[ tL1)?9&ג-GY` 2& ⊒^(-nF%j2ݤ0ވa Nc 89;7A W.k/_m/0޸t9ͳC^1%$ī2G|\n|؆)zrOd'?)╈+UVi:5*)ULݰǍKosz%N_qF|]n Js.!nPm88-*-̉(Rr}pu[StXrG#L񳄣¦ӓ!hD'i@m#7sW8=@r?@N1!4 8xZ7n{_(G{Nz"ޞԸkG['NI@/!(g^/LfzT&tpONJ:g,5J$8t,*-LAP(S0Z̚șvs*E䠡^?~uwm/s! _pUAַ`(I|68KfϾH_$:k: Ui"5P< &GFQYooдuIA0|4e}w :Y%܋(DuB26l%b/5x\9 ֓[tNw*ĐT%3W%~tUݩG.-KR`a7Eh}13>6Ih0r X gvAD%Ip-tU[yocۯHt:#v­`2ꥶ4N."f l%| /rIu0\IգQ_b(#?p>?Q6 I^ qC/P4N 퉶zmHo>ELV7KԒ-@@'hDzQῗHQ?B^0xlgp7^P g+U]2kdZo(aBܸ l:vN-^ H >d Ԓpr4rl<l4wQm'x'N?iyYDr$ysj`ÞBU~Ykc^|"a1tJ|st1Y5PM࿋~#w@wHb˜f+R"##@h1 j 8}eDRA|Z["[=!A"|{7!a(4 +Y"jTD; ]r2p*gjugV.dz?9|0;oCzt|v:[K찬vRSұ]~zŽYא*߷O-e>|Hu4lv%}BBd 4,Џ9:~jʚkw>duwթQ$Yc9T#5z \=8on%# ;-]ppi+ DŽb2 k˗n'^ϋn-J9#i^0ngJ v(>t1ǭc( [.ZENJ0.C02 -OcRx5.5wn t;0$lw΂"aϛBÜ8&i!}T/qHkxoL'0_kǾ0{{鑁/՘-rsmZn7@[%\}՜|h[ 0e$!"o U![?jQLm$׮ (>^ jI"K(JL6( 52,#4s( evY9zQ4xx-b֖P ֗F˫xjPi(Ml {|U󂁢k9}J.mmmS!_´\`.wV|@Q5D֨ 8078p}XGY­-\o;G*2Y_}ZMkYԌEop>S0VJ ND"OXM%ݯ7K%,sCfh5CB!O`^at|q R)rY " s9B#UЖJr |=3wlw_r_ 8U Q Э,QB}wWjʶU7(3xxGݾ~=.޼Tߥ8~k;cFvPw3>_S4!Q7${6|_[qjMCC\ʨQcBod T F|kwB࠵yȾ;@QÉei&%]0{=Yc$Î}aKPBԪ@3rXpfӼ;ɜ;x@ul?0#WRʃXfhh?;- w^)Y4hwÊe*Dwս9&Sxc*\i>ax ! (zDiluwGCX3}9&yA&C1a?64wy5 W J#.5j ~r0T {3F ݢr DwpDv!\yX4~YFfױCD X,2.#z exq"b62aԎH:]ֆ}rD5R"pJ;͵A.|E 1**27"FJQ{nޕ* `~Zb\( th-Zeď4!3Y["l~/gq?# gZzdmiC>H&g SkVIg] `I8 XnPe<^8իƺqC@ 0/$$F'eQ{: ACRsPgu~]iլx2qjn~g RgtZFp1LHl&{i|W^j+g$n1:bs̎E*tB5j9B lp,^s+Am#8h!Xc̻{!jCLL?F{ `.Isɜ {3!Vh ib$ G6.gm,ZꑯL#G962!IWTyE` |_Ɖ!'>l `]0;ބQQ!A̤ gHXDc+,ϯN 6DTY06>>xOߩϵW8"^w_a@gC9H%zd3m7(I̸-D͌xWfdtAExl}o') 1 qA5nAGȩX^U߿nsE'Ǽ bI|qXBud)#zQ!yCg>]?z,\m (_+_g$YД|wpy0ś} u^O'OX#r'i%s=ZDU}¾n/(--)ЫTw@Rc woxc\0C墈** ZkD X6FiR@ޣtub5ېjQ WiNesB8~ qQ~ר? :!u:g>*@u[vGx ?_샔Q:%A8'&{LDŽT`XhRIodXčGo嫹-=D n>HHbI59z?hsZdE;5Յ5鰲[DYXqoC(EywLA@?I\?ntb׏>sw^k{<@ I,c$il,-K}`ߵmh8x *xkUUOnp@} 8.g*B=r P>t#g#D:pڹo[@C̰nL1*>6"70WcA5#ҠhTs3f )hU6o9>Wՙ}6pQyz);4вrfG{&^`~s]`'JV~g+-hVAJI\Lq a3aR#D Z7R5MQÏ ^YQ"_UvPQQɣaWŞ{ܼ /T58ZYPC-1oڱ:'V)0P㭠@"TPJ l:[ѓT_,0<1Iׅ^ C؀~"Y*_{㌾4P ^Ȃdf:'FY$&͗zs-%z,jaB;oW4Hwݗqڤ,<+6{oH|sT'=12 do 7e}ŔzƗu43eS^sdCf9-IϽ1Mq(AG)F)dmzҩ)&b|_#Yi&+ܔ&gC)jM< A4efjSOfni*@^Ά0`chR1AD,^%X$h;Q TbA\uТ+H x+qЈ1zkVSttB}ЯXyU2s hT8ga_'%*Qʓ`F-"8P<5Q]f7#x[8Uӡr5IYk*UD!sr"j,B]Q1(dUmp -HDTdJF _eπ:},'&v/t2kgȢRRjp#~8Di"dH/ } BA"%I /?'l!r?1*F aiPS뿖rYDl{F1Jg$ipU5rX^g#Ks>Rlo Hf,J0zi=pIA;dW)*K7"!֘C7QB۟ٞz!JZ:^0QhH6dQr3*U9n,xe<%fz`#ʎyBb~|ڄ̟&Fj[kd}TI\/^D'{>0ݶh+Y!lgR3.[X8DžĢIF#JV *m,mکk3c'_"uRhOrv3% jh%PW*g*v%&ɐsuA1EDɄpi5b#4>=}wt S;7=0262Eߨ} Pe&`H Ę& kpCְ]!8]OLp|e~ >VLq/z1Y.d >c͂EW2 iͶNgaf(悡hw9L2p#1| ,MﷱX209D|ϭT;%.njU[MOpfP@;wVo^ !5]_+ jHPQq=wt2kARo 74~t=DxqNV$bC%+"P:ǒt20wЎLŌeRQ\.G\eBiTC<]1imBY!8#)U3PmeU?oFwd)Ozv@H\zd&!fS 6h623q1 _"X  gV]B+SOc рxW0߸~ ζJ)%$bk2$&0М@1U,tX_ Bob1"iT]>o&oc>֩X2y1X3&0 ì> ٦6RDEɄgD޹7v 61!.8+J: aRXSjMRRM=5D* "?np@TRw [/3ךڪSLDlرx~4 )F,d0}A Iv,\ PVCBR-ps;[0dO>4@|ȕyq`{z;i)۰+ȫr ~"=_N)Sχ⺨sR[Eާ 8 \!QAPm,μMm"HK/Լà7u`f&8p1(mF蛡b TE_Ơzl ,@t@, C]^Ce8_ @Ёc7l&$Ï Si B`u%vq~,/e i9=4`0%HJdsttRNzW!Q vUsV,rȧ cK"z&ѳX$r=$&erG(XQޖ6-סּՋj9fQ_](#c!qy8y oάbHGݰDh,c;lF>X}.NǘMP đT WDr*ohFø4~'4־7+ L|O&&tːؘs0';,ďKj=.3 8K⩸[f\ը=~_~>L֭?hd}=Lw9{0n/eˑhF" z8 鳈 z.R Եm'{Tu .3|t鹶zNzB1양|>Z_rn^ Zk۶`v4/ 5 }v)߷ˬ@H.>ڬS2#q>@j\^MO0"Q+ՐX߽Ɂm}׺򠥵̨2fÓ5Vqfr,U=6,7V㋵d͉71kLzu$9[٘f(jɽqC_WzDHDRf6'd<,dPRwL&my1Xhl]Q\g0>@"FI#?t#b f%:s*2Hy1/SQ zW/SG0ϟl:*UҌ_$vPPqArjj/69'HW;2M21DR y_C(h+8C.q2Ų}93i{0ry"ZQj?;P,nDHtWzpje*PSPO8 s @"žt!o*g 2E-C- G[7Lh=UuO0u]!&JJn4ho꘡x]JG1(%:9,%6>=/V=XΖ;^69@l0>"G"ם=ղ]@`.ǤiV7JM_jtC81DQAz Li8]0uLR|(e|M]8f/uIw1{0j$ )X] þ$m6O 2#gm9nO͆/\|͖9Pyo4[ЂYH3>y7zʟ\Y[-'7BUkWBgAWu}*Ly-MJ2e ү$&OISxT0!={= dZ@]Dpӏ^gz$.|B>̽ (>zm AqZT񫵋34('PU1v8FCh׭q/ߛd)F&ݩ,h^"*};4;<]]k)&gs(?@:VkѸ}|?։QLJDr;V u!zO9G J`i!!gFaA= .qm-}l|"!RE,KH{w RE`UN{Ox!A)f2[k7@݊R(%%}>>؉E"dWbd IUQNEӫT$@'hx^eEh6xv TPޜy.{=g~q\,eM rDw R۸t4$5şv`)E G\^^**Scc8=GC粁+Q2h~,vOЧK!yZ9qgT<%Jy]E=>h(j2P~"D% U^6+ Kf4'zrFp[Z)"gS`E$>GS"ty6бD BP'JtW{gc ZZRW=F46 4|ꅭ0J1djs߮&p0#\FJ~BF w~AJ2.# n lb4T+@w( eV# qIآPq;BqDPL G3)D($a~G8?yޯ]Tyy.0~H T LiYYekr.$[C2@gc&pZib>xQf cLS tZK/Pcx |z{]Y. j*ykl\\6AS&ԗ nT[=ȳ#]p '8=  arrZXSIg `tKg<3EVIYnUF"P޸'^s<=zb>|6mzXrE&Df{ i(ܩw|b~1wN:VwK{\&0G uHq"o7S{s kO?a,o pÞH -Tjls<ߝݶtԡmfPXU%|>=GڟޟD̂{Z{?/8j^pK%:ȨQ2!׀OFN53P9lÉ^v_~Q/;9] ĝs,鏫 8zl}:бH},X"fB4J\C pg\5_9n| Dv! P˘dⒹp-rwĒtNgg2n09ßf&ex'cHnB݃@gM=}S=:&b0I>PAͅ "=ⴸ;)Xy\E/ DxpI,Ѐs.E@eLԁð$: sthlՐO"iXD욾T~!=,uxAڽ_ԋEbn$cޑn~wS}vN2pC]|Ac ʁK+BhM_p*si$}~!e)=<,vW_f/H2:hsD5©&ryi%Cs/eu 4c#sjC ui՟ A0aT`XFwvV--k ,:ċow >a*g/-J)$Rcfkͦz,;H0(@ *. Xpc,T#?D\b;AsݫCސB/SKfh3,Fu#lLuTDG"7#rxgX[g/A i (HH2#K?-ŅCvjTW @P̌O%Ԩ e>cJ T=E/說E~԰ѡМ oV[f4k!CW+Űv*m)ѿQnS^XS,7nxhqƶm5x1k郵$" Dbz=vYd)( k(BHi,C >Kz@B' tOASC5s z@0"{ Є׊GXκu,5ݨ$al]!i_G>,Hyb8!Mc7+nOFC s: H@p 6D}@`q#d݁^+԰"hayY whr6q;Ü.,98LK9Gft\Fe<08)vr$@&4cU}' n|_k2F(SeB`V7@c]cy.n8,Ɩp;㑨6=pȉE ['~cTی ֠ۖËKcTq:ej@~ >x43̓s?6Hb(OAT_76f\ny9ЄD*xZu-(B/d6CSw5Scmp~:7aW0 !V\<#qt`,DHDۮC :=FnAOC;#bJpPwH\gQ'UyB(#"7\iA;_1w ՑQhCw;^!@Ǟ681t;两 =؞ޣPo,9ClJUcHfck KJaU/4"B!u<בjfAA `>YqA0cZ]C~x|ZqjȈt@E$! 5ӇѺ+ bdwyCYg6RQl$glC{pe8j=jiO-F#P h$)Ai oy.k&xRm|Xha'ֳS#E~CS4n'#sٍia?uj0U7'4 I8i]!XC땖 jYFm*pZC w7O!ehGj7 Nj.pi]hkZ5Y@[vDSB7ȅCq"˼#nx^2Jnz7']jYs'FfGVg_zKΤ:R_#VG" K ( zMYs7/@XƷFCт_aPCn +CUnE  ,~sUe.!`;͉>ݑq!\ɖ_1!%ns 9$3S*VKLir!0 4B'ȈUǧsp;/1%CAM9yW-%,ORf>u_hТ} i=0?*Th_|/a¡<`@rq36;=gWKOteLlccGmeY k Π@a"zB0{0/.=boor4#P`,=1<,/O@ a.ɳ_EKBgy?xۙj9՝Y 3ȠU/Uֱ3i&%c+a|1 ~ރ᡾%:._bD h!}=:ChC! 9lDDW:t>fL_MP_PYN,jm- R SyתW",vMz0J2ʪ?gx mտ|<żg.0Xx Xw C ,Wez9("Y}mP#XNvrz_,`^@XpFEF @]xHȰDb*G%bP!2sδp4yj \SR_usUwKVZ9$Ƅ3>fbQ3 p xna01ՑZ>]4 ܄f CXAɬ>0[\Kک8S6ɻ[ۍX$R6j{4m; cC#4 b0=/vd'3CSkR>!yy<~t󒄆w}Ϲgf6~n  W|n],4&ר/.Xc!PDgHR $-\[|B| Ǿ`B?bNzo%ȴQic&BXk.iW2A5͊ɚD?cmryX؝XZxeQE}T~8(!9#\JOW l| ⥔Dg׋:4gP0< -B#_c@q *PnsQ|rgr)]:,A+rD8/Z~?΋! +|7RKڣ2Go ]0jA ,6WߩEIeSÏCP~m좹zCbQy%R{HU9[͡F1+W?n*sT!y(Lkzk _o}z d. g \JGH箸Kܕp[x| JA1Jp{`AA @ v Tށ(!N@&K j>B:b3 .(,s5K(|8QUȯsTd؜18nߝ$mZ.Z}fFduaDD HcY?ci%@DDqv^i~pv`07ߝ='ZWhTaȆ+ A$nl{ Cx$ 5b* ,f!Y/YoGvmup@D" be0Fۧ,; Λ?d"w|~69Ġ HZjQ(lԆE-24i=Wg l f4Ӱw;]G$s{K*+GpMxri2o􂐨/E ǓU߾k]4; ώz27^E;Z$ G]d .Pg} cs"5d&üBocB,E.3ؘM-hK^u^dl8~r4j3V#-yp n Ĩ[B2O7Q#f Z,yg $~.=؈i :ZG⣚&$iu xGNο>["C `. &!~at@i,$J| $=(֚Ļ FDZYa.9WsvY0`Cazf /.^VMUzrX#R#1>~{ƘkN3~B@}8׍s;kїƘ :3y/r#w ڟ1yn7\=/4TەVRJ"N G#,#@:^BMhϾ8"鋬0qg [j$Qe|? k TKg>*qs>Z{9[Z6˜,|/;]Z޹anT&3;c[ûktXwBnz7>* I?s{} qr=YNۤ9npb3`Ƿ̃'Gy;%Dl4911NrKc1;~o9!A@J DwF0DY~rQ% jMR5)0t_1C0-mAU FAQ$@\25 Y ( Zh@? KYO@*~}/n0$'?Gw~Xr]\%KǧPnʭ1 (D@>oLoGY߶tRz,2[xE?eʨ*kI/)\.ىs+ýoJsw{wLZy׍[QZt~?d31n>@?%]jhF 0Os aTJ Ja)c m0ϬjPďBtC\V!Q R!`dL9Ss,֩]ˑ>;\X Q1>>\ Z* pT.6cX$ZDX':5׏VqdǵG<YT^mPC1ODZB?_í9B[5DGiw#HUFMHM ^hx[g_ N=f:巭 ݚvpQimu0O;,YNXf#u?f095?xq&|Z]*) wky- ϽL.;vu)7cwِ^3\Ȧ7bESs};\?7磈kkc^cvKlG- Ӻ?&rti*U>Y!m{eu}ó^wx6٫]R^~Pm/-þצ3%[VXZve\_Tu!ǣZFz!{٣)t.2\麇4Jˡ/DE{W=8~fz#suwa|:!kd477K,9Kf*ąßVf醯 bzv.ngo/i󰢐Ԏo[Q?/謹/|=8qg]Ns\*?·i.fp\!.Q5SǑ2:F{»|r $QAod*k:Iֆi(>9_}xՈwEtFgٵ&g҇5yĪAGੁ t?S/bqw\*[,#SF-%#ܾ&H` ?__;Guidž*g8tګ/qwkMr(aRE)~JfJ?D)9xv~;u(2 yw0Q<^o5ޫވ8cp@Ƶv/"2 "<|?,?cᢗk` ou~m ~Ѷ=W.Xo4(w ϳ2irngm[piAڊMs{xOʶ~6VZPݞv1߱vK>tcwY>|p ~RGv!c ܺů?;vpJЃ.+i siժm6Qw̨}0E:'`=vAj'š _1}5;K["G>|vb~/xsjղ=!d,s;SXwc,C^HrL, Ahݪ_uk}β\~XB>OʆA%-C+Qwq*:E&i \2vW]K %[n Cвٜ;+2O2:rS|VQGMdltTz7V5X5Qq B6B~$iϺy#lzuGl\y~V:Ht;ϩpHz'`Ӓcq"3.+Մrf)G1;ܾac_a,fx Vd_t> k)!engtuhDBxfټ htS]QW5簏=A5R ={18.B:M&?<< =v igU<3C^L= 2zbةOu' 3z?J/9V _s-vWYeQBbEZ2OU3#\xhh벩Q[X};mkTeW`z{_n',*3̀7Cסw]0`"\߫]md7C"iðv3D14DT4Lv,SMPLqdMPd e=A@k>H"=$J2LHD >&D@~@Xh*bBT󵘀ȦP1k{Q ow{r":#%M9Rϳ xS~]Kz9;z:|w$#gMMGz/7ϟq< u&cw }iOppv喬8jӰ_D"҃z!MD#ņVYzk TBjt AUUz8F$շ~OrsIax~*($kexp4z~G`cP ZKM= '~!DN$p볛eyO6ϮHD/ XN*Isn͚*1Cn빿nP%n(ם.׻tx#O0 Q7Ϻz6d*ಣ, |gQ}z1x\̮L tuD:0%ES\SR%_'@@ ;N8 A<s@ WQ /A6ܐW,~fw~ q(4/ՙoXύyTX&1?ח.ˏ?u5 ; ڠ:"o@C"%J`^4#DL#';hXC@[ASHT +d W)IlulPBMSDB`JD/$B,3- qVWEfUhA'$"5%tD*1#)gP>.o:Û< i FtM)dF\߭#(-1:U@$ M1e )JB&QGP56@dvj%J2L0SڈPX"Ő"V9V}4:vt!m4 s:3wtc~O3\np'Wz[͈Kcz}P5PV% \ضJr71٪TB<9 0 ?]!K# d-EpEH-J$%?K(-M8uRTaVCC9 ڝx9WI)8\~27w< IA@d)#A؅+Rp. `Gq'dA;D 7'f`\ˎ҂h">%D݅a0d%4;^ma޺cС*tf[=ѕuI&MIjat:~u^r;78m iE { =Bmmק6ٟYꍍ#NPiϸe訾s)= a~S$֜tJ.ݤIwQk}Z4K:5sCY[uVV§NWKRNwGzzY1}ʂOhU5~k͉ӔƟur܊bHdexٌjjGFN4F;+6l2]_ ijpMڃԞd\ۃ2.ZY H(r\޾}\4YFEO' D;^{7etY4~!1\D*^lD|\9+8k WLW K GԼ;QX* t@Q3(D1+O~[P&_t4'\K& 2 '?v|DPqwAk?,7INt;\=;~> U'QR#O#!@eNpw+"lK] fIJ[ү*$y4aܰ"'%rwBƟh!__:p Te㫼f {.xѳ VN*8x|?TKfw.'`K(Bh-њA)}\ݝ^4Ϡ$v|-l?Mm Z$5n* @B7~_z" Tݢ )}^]C6+,aZ@"s ~5BG,}F`]>;mXKI6hֲP޶ Sƌ80U&.7 _C CJoр/4$s돭>N  NDXJJgK^:p7\1 5ፔ:}XCHA&E!3U gX $$bG~))D#,a Tohpz "!csdݻ ' bBl0?ۤ&$?vY]֜~~a%j[Ӝ>[)zhi7mpDmLk}!р# ?؀sHtX{R>8 $*wbQېV5DZ4[~gUC;Y)k ACܻ6,ux@$!!sg[h[}"o/eM?m_>{o_~H+֐|!s⹻x~ߩTvd s|grbCC 6L\!WBsK(kZƇZEr|֪0q>$zlL7Zi[ )Y1b\Q(/f,ߕ̓d#N- E6@X2gJAebi:8p 6QxqEZK~0D(Ú0vh1l;49)YCi;P;3rNx Cz( >dL!@:HXWcoN;1Iqq^`o+x(qU9[!@a&*qAw`vr@y=>a ה-Tt"wylO3[.i֜{CE7['7^2b(R@4,BN8` F6u~xDlΞVdE&2/5rDY Xaup8$-T:F جç-]U-I yzl)2,XCnQ#շ{镖mqmELM+^jN}qtRf25\~cS,~@cDT Lڀy($a|VD_o#L qiىv:P~sk"K-R}]xJc 6&c@ghh:wLurpM\1PjXݘ@٢JI507aM8`/͢:F8(Ѐc» _S ֠G\tڶd϶Nz( /Z%d,ӯUc2'>Gi0pn*μ$YNg:"Np|-`$H`ɆN/,:ph!ر‘6+ڽCD(d"\N%i )CF  Jruskɾc"Fsqcz=_up$CxDGC1s}]U,p,A߻1{1"P$4-kt_a|*7 Qe4,h +t>ݭ>s|[7s+EFX}(9~|rsX%-_p&8ckGeYX,N{F@Z9ThXd%HBY@PpqM9 r b/P]$h[H!d%|Å舙^=je>RՏ{:lbe3^e]76pp[ ?f:=6yxj]Z3S֗}ϲ/.9F/ڬ%_?Ѣe!}:ݝfxe}#LݳNmobimZ,?6|jxCc{Jh 꼟ꐖ5vk0\dA{:WQE*yTAxٿ/gwh^t(4ABjB0'"5LV: |;JYhfd`j NwTu AyGKgLGBс~>k}I_qe B3Q/,/CllT/+ݫ|'bBI1K}1Rd+t$M7/5SQ(Re%%l*!CC[H_r""4<ޝz58j| 16[7P]'_p>jO iБ;|;BH˟Aҙd>#eS-wf>Mv-yr:3sz!)ӈM`^C#6PHci  0![kRQ}p;֩( TIG?'BG ?^ke d(oDy6d6># f^?4t,¥LQ!9e1:4n$6es|m4.pPt1 %`-|=>DoPvYj@P!$ c?1W~4u^ཱkO &RC5j ǿfqoJ7hgÏ]p P 8 rŋhb=0 8 [T`$6߬̎f)V8,jgo{#Ek}:&D'FUo54vP[ks#)3!FB`7tKW>8 f6qm -c1CrUYGÒNJ@zuh T۫>8W"U N[?.5gEK+YIpۯn;5f56"zŒF@6-@Vdpyf`Z1~<ԇ4:|vG:$'e9͓Ֆ (((j(j(j(j( V ":}woa ҽnS>~Z8Ku+Y@'2Z0N>{>'Bzk:ӂ>c #R>p>49|aVGZv8 xfDq[8mww27kevܫ} VSCBB2EB`Ra hBF"%ZJGv5!L2LL4443DRDJȏDBKhD$ B )$$ "( B( Z* Xh*&"&&( DEMۯFtdOvR rA6u;pp%FvdDd0L~A:ܭBxB'dN٤sxBeFU0Q6ရ0{{g%v!ez׫˫^zxw0Pg(tǎ\ iw#`$OLInA&gmMn9# b ;@&EؽEV|MLf܏+Qβg>A կKb_ ύmvY칯ƍMxYm $l*B iB j̉*񒘄i@)PB"o`ɪXH +"&AN UUQEQT3O׈HAΰ!AxH-MP-R!%G@JdIL0TTMUUU UUQUHJ?MܠiGb ݚ)%(fhX6y1~ҥ1(X5RPL>4,ӾI$5epx^V{!|YCyy*i: %@ P !Q,#H/w=RIр8$&('+}}85(I5$!7yc.<\x\dS!X;vOx_uVX}.ݙ>7 :Fl|hcmVБ巷 }b/zי986xa B@j@%dM@y+fHp?{؃Nu2Q$cKBpmJ 4qo?~-߀4VXuFB̫.fDMƒp۶ll$${uK*.ScX"|vt\Of)ڡdA eU#(&@( 2u&i*ȁ'1 g%WB)3|-9-(p,T_c>xc(;DD̋h8-a[U>j艬:Qj*JRs:uAtMsLBttr(@Lֱ7/v''a,AQͦoIzsh|_{ySm*EPAY9-P/&S iz=V0š8vB2!`p8ոʻٻ=(ܞ7 'Z 48ɓp0Q]Lp`Ň7K6ƽ4C`Qr) 8,/U fE:hgsgop΍J-1DA@;(H}upmy*\õ;_Cdckh|7V&$H8q^4$ jY=QAClcۃa:rt.(G!bVf{(|f?7;h℀KƟЎ8_c}r@Α A`iYma8a!$sMEMwfD  2cKJbqr=h|O_؏jۼQ)T<q^qys#s \7 1oᎯ^?̸Qn)Of_› w?;H;AԞI9~RrۇEkP4fׄnB͒SwFh쳏T0ijI~HWiW*h~z?c_q>p|%W\ӧ~@XBUCEDTK7ur"ۯvLwmQQ$vfUH px-($Phl }þQ^ 7cKَ߈!r @Z^?bF*вon㊿-7< ,#_`׫AUEQ- ruꀁ/w{m #?9 m_mmݍXB!&bc$ jJZdA!s1ޫX& yEvpq4:zBfurk>ˌ^s 1?o !t!vB" 9Aabl2a _l=Ά \!P PiuBky߭_#`YD? "v(i՚14P !e5qL: $UϘ~fG rCZ-tn}6zk ϝ#T5йhI~^h\qlh$梉ebH]OUsѦoya 2~ɒ?~uGB: v`WZ oĿ\~0ht8+jZ|zPKa`n(&1-E`]ҮY:_˯dz6`ɈN ֥U.`S$99cSw>}agM~|r RF^T@