/* * support/include/ha-callout.h * * High Availability NFS Callout support routines * * Copyright (c) 2004, Paul Clements, SteelEye Technology * * In order to implement HA NFS, we need several callouts at key * points in statd and mountd. These callouts all come to ha_callout(), * which, in turn, calls out to an ha-callout script (not part of nfs-utils; * defined by -H argument to rpc.statd and rpc.mountd). */ #ifndef HA_CALLOUT_H #define HA_CALLOUT_H #include #include extern char *ha_callout_prog; static inline void ha_callout(char *event, char *arg1, char *arg2, int arg3) { char buf[16]; /* should be plenty */ pid_t pid; int ret = -1; struct sigaction oldact, newact; if (!ha_callout_prog) /* HA callout is not enabled */ return; sprintf(buf, "%d", arg3); /* many daemons ignore SIGCHLD as tcpwrappers will * fork a child to do logging. We need to wait * for a child here, so we need to un-ignore * SIGCHLD temporarily */ newact.sa_handler = SIG_DFL; newact.sa_flags = 0; sigemptyset(&newact.sa_mask); sigaction(SIGCHLD, &newact, &oldact); pid = fork(); switch (pid) { case 0: execl(ha_callout_prog, ha_callout_prog, event, arg1, arg2, arg3 < 0 ? NULL : buf, NULL); perror("execl"); exit(2); case -1: perror("fork"); break; default: pid = waitpid(pid, &ret, 0); } sigaction(SIGCHLD, &oldact, &newact); xlog(D_GENERAL, "ha callout returned %d\n", WEXITSTATUS(ret)); } #endif (q2#{u>/ ~?>6adSBɹͳʹΡ'HFQpģ0)5uaWNBD]iA )(M!YxnΎDb޽"s(-N.61%4w]3+s~%jW= MO4'z\oMr4=?- ^_0%rr 9l@U`g!h$ ,`=ʎj ]h2ؓ(Գ^i;wр7 ݮ;[p4nAln.Wp36Tĸ4&,Fdg[\1 mS<)~,ǢaBrJ?+}B[(ycvmC+ȉZRLb"پfYi3^\;L@%ifkhW$tSrը~)@!ėhiOQܒX7Pi~M7%~/dv$`q M;>RT~)Zҁ>pU)I[_"Eߍ>E/LO&Y観E(abW_O |,[,7+k0R;@ϩ8{=ds9>ŝnq>^w%=_wT!tˈFkΗao%i PSAۤEqҬ Fh~ 0e)'$^2[Kz t ,0m@[q~5',fEW?BT8mDϣTo3;-lY``ȒdL1NF`cuƯ3̵ łw1?ezh>WfV) cȑ~QZԡ՟Fe=ZSxw *KN yv{r4S &oi-N۟ YRq9$ȓ2tx4!EgFm Y3oɊeaW!lxlXb~B{Fj;Ű6⠪S`c:1Ҿ͉yK.RYB355Ƌg){t5x[Z~e [&_<ѢI&`P\F-٭,g'`/(-;GS np9 +,斝OaY`q d$D; vj╷g/ !p'i6iiO <jnzJ9i)3:fHb&m Xft-ELU ^FEoaihJ3dfnvMCS=(Q;>Fx%IOɧzsՄH,#Ds0a6P KቃMDH=׸N[qލȄ<W6 w V}ԟyɌ+zV׿8:|E_Q4;ǂ@ޞ'gNC\1]4,E^S(2Bz,\|⤞O o_tǽ[[ `z/Z9~^N`w^ЫKZ#H~AyE0 Ӽ.iaiqgkg>Eټ~'zrKBŒJ^aXY0<麶G JٗJe [RHՒ<8PUǀꓑ(vCDt*yw+4zbc!ڈB9EιPʲLceɡ^FpМ@^h4r-U}D4IS4r ~a3LM 'YʩEp{O×CRҼt+_fb(&GOrrA.^Vplg}7tUmp(9t m)ٔ$(T:VExiL&d\0L.o/Z Y|NɮJ=6džԌYn2"a6IZBX NZxgx2:[ff^ ߆/!1#lcN_)_#Gt}HjPCJD'䶣gg|ՎYa)evܹHݴ2!I' .de aYZk:ŸeNKH)p ]$g>n?a݅ÌvJl ~ǚ`Ev. ==~LցFx  qH"d9n&ޣy%Bg;OH׈P!PBe۩(Wq.7~I8BLvV\AJ\{ bґL}S\h;ųƟ(<|*"_MǑ,]Ә.`%/~uˎ)f:4ߺVc\Ih"H[]ʜp൑M2Ԁ}%jMVeNZ߳aN|@p)LQ&NV5-dss:PJa^ U7@d{3bZ<4]:!;&KRX{uY͞THqe +;= ᒾ̾Q"l.;\-$Q^CL7x,# NX4 ,H㯮'öGZZn9w5 E({Ah C!r鵩9hߋ=n| H3zBC#iA1@MS}yRU/}D添`x! U;,,z=v3QɩtqՄKMAwqL&%TS+}؃:ޣ}o"n,hQZϪn 3S36vƂ Hܫ;Ug{)&iL ɇ9` 5MKwz">Z[KTˍwzOuN||瘓8TL:?Fښ@= >F~|&Wݩ-Ts*rrJD EnI" - ~|a3XYF:) 洔})9&t` ;,?fW8e&6%=`b\ 7wR~Q17 RDA5&0J{ 07 %RG/&ED^49KPn=z}yS1d|d3^UjwQ+?*b3N) 9+?hs0_ F˦͜3 ![70EլlkJҡ_ 5#]5ݾdҢc:&#^"vٴoaɲoEEyOdMV7yEj$+l7_.M cr8 joHy BU\,J=_! rImIgFf@"jk>JRm+YP?ezu$ >^Wv%v>"zб?@VNMӚf }ŚTNUv7HU9ƟYUBZ3ԀQ<!6W< ;$ t[|p7P5bf"b-՛kd'ة5Baid2glf_AYr}p_vTEni&*=qmKdhCCCk7hX#!#Il iA'"eڎqU+EcrˢooA'=$/2n $5̸t8ֽCet'^ЙڱyԬ,mZt2< AՆ%Ϙnݓ2̟*\; )ѮōY8[P \1]!@ޑ':(LEosY,3ry gluZ41lZdC| >Xuӂoۻ4oᄃ2Q8@U9ǣE =Lu& ;Ux$\q#vYP|)Sf+7KN_u|[kc (:c.]l[bY>V<6Sn~S> ^N)֍}FDH'~s)1o$ E:י\\´6H#Pg\䓭mv&Sm9w ڒ,e CPO(C{QSZ"r%KE oǢk=d!|PA<#j*UG9uhc~N\НjܦzomDԁm{u&Ti!)<~8'~!?h?Gذ^ގ:a8l?Y/;k (Ysu<ЪHf%ztȺo_aİ3[F|E y%˞9&.m5_q5_fjX7Ɠ}MBgE2Ik ]skSTdV7(~U R|EҟIZrRY"(Ed@U@YWb wn)T_j4];GWzקߧi07L_z~&[AԮRT#HH6͛~l_I)@ё8 TIu5yo!**%ӗ+#ug|P`gq/wBWۛ%#S bBNƝ^pT\23qHnK"鍳\CEќĉ#ۮr*U4 >4?F(Y73[5ź8Ø]t(Z/s&z[ Eo:l$;M3 : ƽrjtsf͕8(>-ſ؞KU4FBSmj3P1+@ W"%?~Цx0D@#NjcWq &ʞ#n#;y-dPbaV]Z12/ ^ZѝS03ɹ׵.X_9ONE"jPvN3ۜ҃E PPs8a@ o-` $Hl0y=^*ݲXoӂ <iiH%Ԍf>8!PD8Хbptl,|[_V F|iɔLZ\Y- v]GnQWr>Mt;9Ԋ:65#B_,Z_-,=R hܱm Z bά`.MjOAKժ8)Gy0ILM?ck]4xϿ/ 3 +uP53@+RX̠PhJ킑j-`Yf?(WoOsO6?Va~q6[b&d9(XEt+LRMc=%vFRن>nԂ=7u~PP.yXmP5_¥aQ~2snl&FUf'   iF*v!g a/vjC5~Y*o?V\4luJL`]nMP קEER 62;UC#"O_SctY0|bpTYdi^,X4:8I%FXnF4c˛o;o T e{ D}Ә`.|fT39]C-n?=ٞTıj\(cF0j&wI%D:3\gGt6h  ~łTko!&Y7M?v!o(XiaY\;W ߾ʹ͕chBƥ)lU`;-L`cυV(͆?2S &(=d*!ìނmSBp=mztwZ]];)15rRDIu3dՁw|ѐ LҮНjT~l|K=u8O{H[z;&qo`pE$˪u]xBsJw`.%3m 2*$rXݚQ~e2KֺJ!s nr9sq{Ҝ3a <)"tL^0/71aE#8eR8S+Z6a0yxDl$™6΄yE4lWyJVHiNa)! 6p;R>IgpPҩš=x 1BIis:fg2|7UĞ=C֧!Jm\Ma+j}Ґ$CG*L)Z].`}~nMS: ,U+Kz?533U 9Zf"ىl0hPE0XO&Pf2(wiviY򦼗? zk:[}f 9^|(5>/OUhY 0ۇYX*{zIzc+,kSqI~reȌ=j I,WϠVۙͤ2`2[AnpqΨ>6#Y`ZvYs:oW'A)x E}@n~L Ĥsl`S r%(4% 1yå5.HL(LDb*i16CQς ]Бq;ɒ[]M< *y?/Y6tW]2J@,.FrGvյaTNT쒛 lD g,z^p'heŐ"U*{iXa2G`vhۂ:tv}AFCP~[b3`=d"Be4Y1.0 _M/ BM[6,C9&" ٯcăl.2x0r1|LG5q6`⋃on:A')O`]ӡ}$_kAr5XIlj1bo9%})ZP[.C+^(P*xUkS5+cv )"y *h~khev5<׾$c+yz:ʀWSZ Pǜ7wKd>b *qFV2{*  ; f F/ uP;ҕ%[(:l-$RyѬLi #sNnD%7D?UĈk>gu*'qO|5s/eO$vJ3-S?3M9ZOV@ iWLa]^\* .G+bzFNƳ7gA>r~z Dl/혣b*^n:utN` :D*ˆ-7IM+R sT İ.@3C@*RV. PB!T9nOW,& 7#Z{&F'+QnyZ=<2p ;8'\`N'X9̄Mry5T;q!_.of2^EYJ)̦%ٓ*w@:"Łq kEXىUG>}h=y{@{MyLL1n%k w%$ȡ f9 Rh^tSJᗛb TE9x*wo0 ST!֒A1kO(R8zWmRː̳,C((?!o8۹M/&&6Wrk`rn;;b$xBQNil>R5MJ}).u93y'vW:U>8zNިnNf3yרOt/JnhX2t`Y!z(4= [o6ߡIk&:*Iu$(.Pزhj,= mV ^#QqbfFvFzuBi Fg_}$0N8cN-'Ev*]inX}q[VǦNkbLi@׬ucEqwhaM+ݸ.ƲXt*Ҏ_7s%ayduDK>PgX4D`|0@F5!D1 Gr./{J]^3-EfC@0j[]F2ĐѽY}7m||Q-TrhxJW+D ih)Ɍ88^SӴce^9\x[еqULn3-L{3'_e&#5,iD_ୄ3 BExo:[PyΊ*v>*d!,2.!'?~%2BQaMMe};|MO0o]p>™!e ifKʻ7u%@S60(Bi?jq]7(yXǸ՜dck0^Yrm"(z3uRX6KVexE'PUAU$tu7 $GF;GnKU]-8UhIz3{hPˁq(k4 bIc5_2@f`.kvJ#4 X|΁A[_{;kZRf=[U`Y5H/gQOe,!)np"Ǭ'P^ZJ)'.P9/rT ~17p FձZ5{Uˡ:ˋy{+>b1$%c5C< lof5ee'lQÑܾ#jM!jk\A',ڠF ?K֭:֎Bҋem(USōZ~Q>6USya8g17g6+P.gixb+-)XJՖi NL9+d=f:-2:w4dѸ_3F#e;oWzAGƾ!n(~VFvI.KX Oa2Wh9F=aGLK.EeNT|?(%;I=+,w={,%BGռ*@zUdr)"bFjR/{oyUˣrl)KVhC"@lsAE,- 'E43rg%5귂4Ds= !|wUS`'{Z=ES 71Y["~8wlsy0*ԍ7@}|Di׬LX{gC$^@hCCOz9 kmé Cެc7podL`E'!៎E!68 !;P5w,CCwHsQ-`EyU`ҍ̥bP x ׯTyj/!U0k.i$EH=(jkUuhKКxowlTsogLGmVh]bC ͤ*4CWzJ8*F6~w)[Rb EG >[s?D^HS}I':IW_B>aW Ҹ#U]Vܷz:KayT( \0IʌA^D |T?5#:rG^ f۳QɞH\ ǵ9)&*|XI_цr9iƢ w'{j>#_dZ@lR@~Xcu@V&zn>;Ո  dad ̊]&7j%>cyG6%2R+2 &N\ M]2|X)[L39C$gc@}Ôvg*R;q}Dڈs8;x7 |#Nn{KT "7}QږrDyh ?k&,ՁW3 fcAqR.Xuԉmy\52)yڗ(iףR,k,] h"+eTfF[)-hKxlW]u!rMb3Lq/!lY_WhHnL&*eznW΀C7/Q<(dBoRy+Wdq.fr16b,.uxrDŽ][usf58 |m;w-ia6[Wj-͹5)?/uyz;H|vFTyWTjYw9Btr+g_1}A*I*9[Gvѵ L)S蝙PIw%M̓L;r,2 /iz|-iDGkm1=zeΡ/σ+zdɊeVݝԐpN!ڸRD DV4jvXE[ek4bƥInQx+af,@K9IO4u4Fe"K?fn{vZ 8VaռQvw{jFR{ȼ=QkՒiG  @蜹s )qV(/Res}Qz gLV"YvS >/u$'4lkx<4G#~m?Rjc-k\ՠn(aE2*WCoz^# ۃj5=F :lpv+1P oo5#.S(B;slxlʩ-_Klnװf>^Uq" Zb+NrBp!&Fn 1 Sݬ/v5 5&'4+Uz׷hM]8~|#$[ ˶nC5oo| ѕ.IFO*WKF\u?݅ 0WLs {1C{[CajN\t}`Cw^,D*1kg ?j/feCu0*k ;ÿL9s4:prgb񧹱?yP$6ݷW>f7.]8` >h 7 aK2wC\w9^DnObH?)ڢWܥփY3:m)^t{l㘿稠Eb9J+Ɲ~:X%1+4zotz=Q-Bd3ap@:̮ݘyp핶as[m6У,(*MY%A{4z[![u{t,"&1Ywp۰ 'ꩆ\d^@I|z8il`/Jz_ʨ򐌴6mL{eIā9o?y,߄]h۲Q7")&i:NLd+N z˱]J1͆p<fCSo+:aYv۪dǯ D 8?E*1:MC8v)d1G^`)h q RHOyd{˥yARo|, U}+;ga? ጙ6p[<h:iҺ1ve?54YN:|RiKX^]`}pd*6VXҡ~Sz? gb|blP$v*!ɠm?y\q hr 5@-  ŀu`!?6xKws7Pd"\7g:* VTgc^+F:\(Re偨m1K.$щFxSۛ>Xh%ϯxtxAj`7T 23BZ!KH*r`(z{;%&#櫅2$Feͨ zd_lcK #67w .Z=s 1ϊCϓ6Wd'ߋi|"n!\l( yRX_p#}l7f4,'hg$$a3f"_&%Dnek5 9*5x/EYܨU>dS@Ikqn`@POg.+^Hδ!Zy-Xh{بF̸TWΗfzRڎ)%LJT=lvKiď[\,;'v6L Ir񧒐}lhG>ɣMK0>+c)^Q$# jAvv[ƀ}ZBS֞[(hm#td>!mǍ04C{^ b@C>f!iR1ޝ/U6;U]NI5fĤ1"C'L(9\A# Ġ5E]]%8|~_=jje $DͺzIRifeKW^cĢ5(.Wt]ڿ)@uGj(]7g_ .G@GjE{4{3-e t$dj%vU*V͚>_Y7ҜOuL"ԯ}z aء~š^ҎF`7#k@)mNYNcʀ!Fap63Ø{,:hA5SoBA7yd#s[TD7J/x6]B$v,Lt>хVyY_Q!rߒI>6oh 9L']^~r]OhQjjp4q/^8㼙 +O9W&bՂFr*zi\̮%'B~œIlj lC!v9ڃbG^w /(SeWUkhA@(=򤭛 fYi5 tv50K|eqjO17 ?-c_"CZ`%Z~xqfmC ^xU ,%L^ #[7fLɡjP 8puԃI@(GtA^D;+EO OZ;gsf]B,➁JjFwÇ#'!* dH3p;?Ue@hwRI[ du};Gs Gtsk6, K(ͩ7b_1sa~ dC?*[} &s~_ cTfRG#dJU1Q^_3SGIqH#P#}WXz?Omey|ѽŚAu)H@47@%e{٦;зg\SOy6 aل0UB|)3bjTocCDT=KА6(Mj<`hT;Sec q\i(̽zI\yK6+j0ܪë4 /Ҕ_jC>W197Y.J/<[vٕ$Ag;UrB2p/y;4/PKib> H !:C(B5^z;h- (4#/1E qL17nG#< `Z\jALRշR+ܗLt Ew -(4WĘxZmQФ݂ h.vg"](3S@UBDT?l=@Pݕa?|ē {PqZUsMISK ;E[ zܵNV߬HW^M<@O)#}~cNxxvWHȖbYU(}T+}8l+]p)pNl(ԣk$ SV0hFMÌ؄l;?/dlti96 ,?FZWωGAW4n8 RA^p9BF,hh*Aq?z<þL|y+тsқ@@ATДkŢC2J-!]Q_GWXɕ[(1mFvזNg5M/eٮ^ku F$DVG= U1ĺgA! i1ZIŒkŏO"!SIpSAAd^L`xr K|ǚ~g~k@k\`T s Qz,>xe S@6/nLVOO014k`HH~"^P8\ᣩJ̅ӳ}~ ;i< u^j [w>?+w:)8jA&xՕWM"!UW:BvrDMN.: 0gSfEΜwiL.Kڧ{="0ZJ6@Ajhm,~vT^J%k'U1Ѭ-/ju2R54 K̹Bs*U$Z+OВ o)f _ AṠ%J`lUESC"#aK J")M)(񸖠ETG_r q}4FaU,+˶?g%BogձLoqBǧtUIH-mYTj+lwv<Ӝ{8 y.l^mfi[PVWJ[)X>:f, u;}r&܏͎4.Ŵ3HW$K>" ;'b5/a5Ef6tBKg[AbzCtTx+OܓeQ!6O"2@)-m;gB/.̳7#u*PPH51ȲT㟗 ,Y`ib<}Zazþ?jDyw!VR ]WۻL1 wh. g iL= x5Tso;$EܺD,vVޥp-!;'~1ؘ 2, kec_Uod<]|:-GzplZì 3ewa){yEHjiD׷a>Tt(ut"s7 w̡{*έX ذBAc rܯ%{&j[*7nQH #SR&VtZLI3qݛ8 At0,?XV=/І/EHӑi3M7)[@'i}֤E'0AwZ_$1A t;|&ɃA /K;ZEُ4_@phMT< 4Jc6+ Y۠D=of!HӀt[۱#phCC뮌& ϟ-RR.qX)ҘW3&¾ :b`:z(CÚ1N洔L E/A A"0v\ TOhRjB۩T#)Ȑ%3ohԴ RU* *]DЩ8T椆Cun^'] Pn\zRWcv)h0WB-kAqR#hyj(yNXɃD/pzqRVhZ)hUbf12_AKi/eEkѭ&[*f[[N\IW楔uDZ6MLv+ M;.-MC]^୒!cŰYH8WaLG݀RaC˷7Y"ZJWzl|ؚÿkuJ BEͳ(.ЇHAȬz'M s4tK=$@af=ļv-Yn3 _4~Km.Q렾Kٖ͗C47rxؐQ>PK$STY[ҕBt^+ ٪gsPCm3T7^ P#jड&J/=s<⭞Qy61L.Y.mN߉fꎉb=e㬞g>ع'wjsPQZF۶5xs*c)D)nPV^yoV$.(_t(w^i×,̕_"4r n؍:/PEeC7 $1(%Xh{#N1|  D㟳r#)#Bja[º㞽Ԋ W-R IuX̀`^o4q$KhԵ@=>>lN;pdVﺉKCӗ^6B6479]s]0:؉nc.D n|98Z"`OC9๳#X ש>.6GDr\9破=em8Xh@ɂISpRtlzb|۩3;A+)= c`f/.,ƒΘ`s* m?=?PTNa,~h5M[O]8 ./:q%$;ꮰܟMܚjMPap+yy/d{RްWKhr<+-Rʑ;VV80šy`fwFjSu.SHrP5wʡ4)^vowU M^_ AS JP=j㥍Et2r`eqzVAQ}YR|3L.{ЏR=3{' r\ M:-8^R:\zNqHR 3V0E oJy!Y%G_=muS4t Ll~ Y-q 00GGT|JO_D\iC sr!:&hvy+ʮb0c~y!\ ux}SGڒT]if`+(CRnj>TD5SIۤFχ],gPTNQQ+MEg!?8~-^J\lcP`> A-p  XDmm=W+ԗU]ht@]U`tM* 6|o9RD /*d,Wat bhaͶ^\n[W@* SzgPZk5z#dLB<}9!",k/YG$㮹kO(TEK `::r>,Z98* k˜{V{! h=5{vȠ+l[ZY_}m_!.2t9־5"(MG.50ڹ z3v%}2AQGs{W/ șix_wl!(@FAB'l2l^af#8mI w{8U-#)h ~Ξg9w4s$vOz,czŁol8h?6/NZsBթo{6Zџ󸚀4@aP$q킀6xBoSҧ&dVm&97ڊضWZFVlL)L(1{n%k Ur= 8{ǏoE31buhZK IJ1R,W  㣏?e5Qm*m{8;cs Jt ܒqL@BgE9et:ˠa){PP PX gsm[PT?_L'(|:4d}_6I5$9ijrĠC*:wXfQcC?yрD&Dp1~iQMuTdֵq ڶ3H9&?*Z$*Ma;4@-68GּD9KBnZ1;=-?Oa3ѥXqd$ŀDm s #VrT'6K8  V@gGe&VۑiEHO:T A/(8Ts#6_/ܰIh݅!]@|n\JR|nd]>J3Y-1w"Ń0}UGN|d@ ;󐐉d*)(N~ZQ.oHl}}b !QkZIAJӚE\()DIbz,Fr7a"Q%ާ+>1ȣ@ |:#@bt1WXWNd)쇿]7Vti}?M녖4P1ƴxT#{ieA-~ZKS(Knq_vJ$db yC#twɅy( Xt,S&~4ATX1DbћPjcfx:gcqNMY@_TD@u[zgЫMdg,qmڐH  +(3CAnSC1 EѠuIwWol "y>v}3kMDʈGL([sAi#`Lחr֫Lio 7<5 U<~+g xwG'looݳ V/JrЃ(9E'*a'i݈nNYuJ*~ s>%cD0V1SWOff+j5:+֢?@{v vQb)&7j&J+<܅N.#8Yiٷ"ڶ+Y ڢ+Z+^f$((j;(nDUht]s5B.P]y2ύ^B5l(C\*.92m ъ/T1L\U0$Pf64=Eu"׾An)^TL@6 ݉P׭::AO$͎c,ztxWZLoYG9+'2rrZYϤ6Y[(M A,n\ (ߪJ<ީ> >mNS_ňꉙkmءQICfj 4H \A)2; h۲8ɸК^EXP6(Yy7QP!3>yG(.B|x%LS 0øG SN\&<`eB*[fclw %u^JfQ,UbsG{:&693o s)\( vPDJ}؈?ԉR#2FhO[JHNyD9^{'c7> m*u8 `ZL=.QE\#( ,iXflbbTPu:|wjBBi;LԞ9@q4sӖaɊq9w# 79}_nvaSNbDd/0f{t6DqyV-x69p)BahDP\FB4<V"@@Hd7112ɽD{dzHpۄRLtPFQ+42F(u11cwm=πYXŢ ;.¶T@c1mS-h<3K^X1E[]xBͱ1JafOiΨ˫8v#w2WE9'/v\#AoW$ fgF(="J[6~R.xN 7k bnꓳ^Eak)RJgI1xIҪr\82h&*4\lvE vo]!]t0@(jM(k?GOWx!6/꟱hE:MM[:bJ˅`t  {#KfEU u1_^;ǟf1.)TA rl{&w\Q!KpeW-h96p9\z3"%^̱Q Ǟybm"? ;D3RO;/:@ /EmBUL$}s;Hm=KmM \Ke.r|6JXA芛vMb]{lz\zU*vݻ|x C[&&+?=0 R`uQGO%,dI~-}FsC`g!gnLo9ba(6_c0Hc3y&xlA'LgN 1(|պr0̑b"ݤ'z4StҨOFoR$H:D'*]~Y=$^eHm"w^wi(twU陆PAtz@5/? H:ډn)e7ވC4z)2är ᨴJaqtcH?TPgQstGBS>)tmܢ,ę+[t{϶{UǦ:Qh.xQ7#|̳6w״h(p,b5 lfer]<Yw5<Mh8'b+]Dq?(G0)ʝ0mlJIh9&dS_@q1pKG|偮_ݺe^" Yj)oo k ;3y7~˽YТVW pJ mҾH@͡6Lf m]#Wwx<&1J5orN+i\`lt֊/GvjYHGƎ ҩ?e$N[Y$wxbNyEvCXl<>7xFeCֈuOsbub>-p:(c Fn,ҖӡhKBׄؠz/[{{9VKl;wȜjUrʚ ϷIsi'wX{ȼ`>zKM!ˣY@Ii.Oj1ܸX+2H㖴!a%!-&a^o߾Nr 3z=stNv2̩5tᰥ\ 72f5j1ss>Jq@1Px@32U#B%!&ԛU u yaGos[o qtI#govUEMȯHowA3rϖND*|+z2pɝmuxŝBL:M^'Xft7G34»!f @vz;} XCLpzZˎ̽Dݲr*o!' 7@&46($mdO Z"oTG&c`ʽ~5O>pldGˉ;F觀0&&XG;wjKܜI)2s+iOVޯwǨQ?lLG;j0yo}.~t@ gc#WҲ押J%HӇ4-gk٧O~V`)kVJ0 t[fKZr Fiw4Xbg?ql"E ,7tڷ 9Xhtԍ 05T:<!.P6tф9˨}▴YXKG5&*F h9Mತyf! mT_э:MmF 槾*GU&9*۱}1ŃD-VS?86[׿ݜFEZ)lo> ҘaymQsJ/WiFٵ1a:ayɒfsķ $ 裤x1~òi\^cP(=Jj|RհAtUAx~8 )$RJn7k`JNeMJ4iǭθWZIw DM<;tZASj]1>[Gp%@{Ӝ#;݉{x?~8w?F=lK{$U'o)N ;o]rkd0m%!;n[h$k[fv]WD3֐88iLwI(ޤTh'8LjRnǢjཪQ&٥XwVSC3Aӭ 3Q| NpQRcg\@uTܟ*w˵%PhDWFLq(FAo S&$} @"d%:je^<1JaD,ASC֪yT> py~5I;a3 {xCUů&xnyATL[ߙ?v]vaE3 xWQR잎q&I3|f5Pv`xLX~HYO Ҧ;/QF f|HC2x.yvwG`=N6|DM\X,v8JѓDZ3?$TuNCx~@Jqd:*F{Vd,tIߣyԣn23iɅyZɱdXۆa]+:bjcM/Y>Sw+=]۹6Z>-LVĒ/H >H IWف?DLΰ;S .jmÈKrD),wueN6ĕ->CFrRsaA  [i['},'^ܼ N1M-: eoѣ9hgI3үHZB,J9# !M_Pّ-C-sAD TC1_28lliE%-9 UO jl.q~ĊPuJ "ҩî8J s_]bn3Hw&}kH3+ :߁VF;>kXg^uAN5,yE 戂6xњ8rr)E0nutՕ⊾^^t's89j !J%E.K'PV$v93LcA{ѹ9`=OIk^~)|C|8\\L:IH€e)3{tFD,hG ־5W@~IİE iWQ.l&25te0_w[[\(3#  4Hr}{M{YseLIY}"}( 4`[SÃƮ{.1~e@!w24]x*,SOxÏI2w8[B-|Acf) W0t2 > <:I4DBu$ũ?}f D0kZqd?IQK)p8Z#r+2n"+$FXdՒŠ䅻wȜv]]"4K7knɺZ=X>&߬;x 9՘HklN><_evĚgF"f"86y w_fbŲ;[,̢)m"T+J@p4>, 5m1Ha7C9;vm%/ِMgžN|ե0;VDqj\oDwD>)Q\/!Pc:Mjd$I;Κ$hO@3i l%>̼aT>7ʔVϓg%1!j\1D|!N庵 CLlY<̃ _.` ZH>[dH_mHs#\jMcU]tzGpgdedg&Ga_IQ)?kc<< 4Ȅbةy aݎi8g뷌U]QuP[OD(+2 ֫S [ޮ/QGVʠ3y L 2V"۬%_9f\NƐ+%ˈW-N%iHkw@XU{u7 ']h1wiF2PtD'PiЉov^xKB5s[KmN[4.[(ڗYZǒ3uJ;`<π &brW\ Z9rKAřGsxzÆ2n\ )[|EAE^ؘ$者b{Ol2:F\3ϵ }͹hѻVy3h_oQg鬪^h02u?&-Mc,$?uڎe#uAvA1x:xBMNNA^ ض4boKdoy>_e;0ђW6[(/pe_f$DL+`L3}v4] M \,!wnYM 7<'ORVLcB3)ys|]'LJ(tR )6@փTR [Y&&AAo:Fzw%Dl9QaB5b#1|%>{}Q9)g)ot?? *i2te+ΏSBYh/&Ӑ;:\RtiS3SAvi":;ﭠMD7UĴU[g2dkylTo&!>FKa{4>w5pM~xVV&}K*R$j؍-]ˈ;j0[œEOaIF+ X(ۄP-}CH"wvq%m9~!ooAK6TقZN”)N %"HosOM_°p|Ƨ!Ch@ B 3M K%@ W SoiW.G5XIѕ+3@`>_Ɇn&#!n*i~*_#4!'桔&QFҌ{WNgJ\_Y?Fx[!QcujOu>0YƘ|oc:$-T8>eLm$5/}-r`lu4y&Q((&П=P9%c+EC+v9WTv ;yzDlL1jXwnsMXo ʶ>60^ȡv>2 LHE>·S"HԵ1vhbɹ.FUE L։\p6[a Ӟ͏y Zmr=\Q `I"X;02%"\$mJॷ˚V(?ȑ)í-YG\&yIg.Bk<ݞr-GA+T):# \xCCoDY~ž xiO5-jgK ӰĐ Ssg!G`x'Cw-&i@-Y#ƶD~2d3:0tW )e߄'3PIUhް6ONu{87߷D Ih;.58+jv/ f|C"`H:6lEv1ѥ*ڨP04CN]+C!oiZ:ME:pÓc I  z츤Ś+Xqqdva8yFYQֳ1Ϩ3;zl=R|mleMWch"0&jg@ę\N6X(WJ׹Hcz}WyBgK#?>+5cnqʉ+sŨ9`"ShFPX_҄Y@~Z?[dotB/N:5=Y_ mT(ua H}1Qv\Ou\!T gFNˮ۾m {>֗j0ǤI\910dGKqʷUmltו/EL@%E*Ӝ`DAd_r9U1Hh5HB3t|o rv&{ uE_6sdFTk߯}. k5&ֈ ̫Y;E;p[KȇWHY\C3:;%.N%5uM#6l%(= DuoP=,u}83,HGlHIAsf "h#s2%w5gAz~eUlRz~jH9;]9$NVU(VZq|\ |~rftSyầt,zD9H uĆcz#9HR9poč8V#*0 -쨚޷H{B>kLv_D)i}LTY_`ԋ}_'MݞG۟Y؍teƹfX`\sZeJnA "2$ ݸk^S4q *UIEʍE:fte["v2i\KKN!h 玺cw7cܻX\68 PᆱhUKr ϧ]k@'Jv)e|) b$eLHgїla~`LfKUL9wzuW[Qn^Ww.rhG]NwM G%-V]o~*Ne5aج`C\2*V̀(0S|0wLR. Hm8 T[n B8K^Xo-V~h w\7٫=.R9IDE.?XWu2TT,"\. X "=;6~z(1HK_fV^윳 =S:LU X svh9IuAp{r"8B8vSK<3I&Q 2>fJ6w=e+Oa {"՞)nf ט0?):C9fodϱV9m#ԠpD4?A=}UV5PUؖ)1&T}\L {d( IVؚSZw*=ɒwFn$@^tc ksgjY*DmB-}=8B*hÌ`ܔ+T̩j/_U#nB#oa3jcW^e_I+ SrV'9kQpkV~P#!%YOޝڋE+H1u7ۖ@QDɉWNB+t? !}(*V.:җ#qK`% *Ӿ*h0>iɼ1Dg O9"14i1zhxf$]beߑ^K.=8YJr G>;C;zPJU8G(EM´%?q_yJPޙS@hspy\63{Tx:7pBKxco֏pm/M)z32kW+Ҽ߻K㪠3ka =W՗[^vE͠2>2'JOg?e|@j;[IiN'كB*ևX. V[둻S?Xo(\*=o,ѵC䀀 ω2bGT yD',ЖD_g'"P[pHYM36uv.tH1f1 tX_S&YiGsvވ$בI$_}b7+6 7NTزƻt4Uqc'^!SHӹ(x%#_u3uhܶ !GW?9cX3_.-b;DI?esYs%cD֓8CUx ! .yp}^qjP T `y'Z`)t} >3u:a4EI.$dq>83,:ۋKYxq'Y=+8Oٱ#b_}91I=@%Û63I,07=Л >ƟBk`~  zHmņvN<;]^sOտMfD` ~Xϩ>00 WLm&YXc~cw@?A5 kb.KŬ՞ry1hyf %WTo07xm~VavWky6UN@'հpp^eA_wJ?%@|$XQႻ÷LP ?xA˸bNj,1D.i^2^s_ iZ]n%puva`1\s3,2">Wp՛HMJRk:whϚ"aH-{ɢ"tUrydl:5ZͥzÂz&"/gr~,YrǙS ɽQ]q fB,Ka QV:9"[IIuz:MT L43M[ i%IC tYDŽ:`tӿbfe\~"7tZ/68MhٕPqQ/$0V61 OF)n؏XĐGH{y2XXF2 ]21ghcѠט::jB/2W`ǝԈcēg?=LRRpmM}-$ ӬrR/OE>y@V٪@ 1_hg+a*ܴ.f4hSNĤ@bah6'TMOJFT x -aʧ*M/ r(H Rʫ{zWitq<M 8 @YHsBllr"Wjr'?@=VE5(#2w\ҸB6/}-{:b=:Y7xڞ[1m7n3TAq*L@ӸC@O<ވxac|Rci|i+H L>PyU,(-m.IGrwzaPz1P1s Sy!wmnoD M޴g}K9,lo$V`ķ*XAǶjՕalFKU͸Rox:^p0ؼOr N6=;sv;7q6֕ܳGz:!涗X-VTq[Xr^O7Z#8{y0y,'Ƥ)X!cfC9Bz"|b}'x*fX7C'*hY쾆Fuf>:s.EtJFeJKkL?:ce5tDGH4S1W!w1T,p=7Ϙت x΂7N+Qyj`2PKYNͮwBج1rX[hܴ1Huq{fMBkF -cPai_ϱv=(`9d }$ө*u(߫HNl:Gm #o6ULݪٖ_h/Z2%JZw[>as:h ^C1-a' ;%h'-(EsR+=ľ]k.Th{hsFxV YWCPî2=**+l.073{ 8ziO~ h{Kj":H]w`Lpe]' Vdz1m@Jr#iPř}O5Qo1˭{ EgcycS&[k 1xc~7IAe>~~ K9(JPZ}j.$!i?\Kc(HƎ/cf@kR}8u?&"U@-Fm086u!YK (F'gm+`םe,#oȷ&ԡto#j$1)ԺNtuT^ȕ0,.%HPXpF00'D'I끵I=Z $j'(tY%K,C"Wp#@VLx6ǵ #?W `9oT٪P.P7zk^&&\I?R6 ;U-#>-]nPULzGezjt୭@Olb] Bdlh#0uj!4l@*{GrurmSe]nh4~c uzsYԛqb7B'tgCqs&{HF9 B eGoa_@5a_迹ٝb3E%q'jиSfVClE[/ִ-;Yq"\塒b?A-jWƦ6N ѭˑKyiAla`qUqbUr п;7Fzڠ~ F >ZjӜQxe+;.pL%BJgqu&ɯ J rKQte C6I#[Ӵ vУ8迌s1f@Q x%tox)?1{hUAk'v^g]l\x?>W)P}li+p^z40M -Ƿ3#AC {X۪>pc7<nJ*Br`/[+Sbr rJ\ŋZ H 3M KuQšb ˘2~YvjB/W-sOv𤂾9ˬvx5Eʩ_GwīQǽԾK'n蠦9_?V8zrٍط &O͠V"@l?VѧЍHrr'44E($Bxs CnPz܍/lqnUۙ* q=ijLF\lBeADay"{PnKpS,]rS5,\f. Em u+b+O(?!$G/UI&p 0񔞜M/Kt|CXy. @#4PH$ϲQ)+AoU0-LvNsrǓ\y,,NiySՅ097JcVӭ<Ք&ni3Ǡ5Z /hK'\ hI+Uaij/F13?} It泭F“ 6{ y8(6N#as|/WjnzE;x( 66'yl` ~r4 a) :HAggQ#y'r$Ǽ6ߔ-~gT}Hg7]e {@PY~5l_((ږ0nC$TMD J1lN-+rN(ZR, TǍX_9:>}U^v|ҐƼ5M#[(צ($Dy~\oe4[fM^:N2M)k0sȧ ¯b<=iwS'\g\'RmFnճw|%;w{<~`D),nT@`Öoد_=$*TXTИw7+P8j99P[_֪}}st/〈IEXD_n6ŹYl;X6p`542ב.6#F'BܟYjpEns)& gKB_˦2\~AS2ævB[\&$)OJؐ~Pv ƩcVSE 93TF?rIzDZm. ԍ/-7Dؓ*yBy1/W1zݜhswSr%wjV͐$ .3Uj WyEaE 4W8 in]_wl ȫx9EZZ L;P{u74zJ݂_WkRUǔAE6&'rR16 )'4f7nb[U/-IQ?BgMt۷rxC%L2MQBaK5P y(gt|us'UJ@jɎ թx/eK1;{ B֡AGIA.ٶpB3׍$ފIIDvО|FUpL֪k=Bz)5X؄ۯ[>VgaqB/r`qDqg%g_/ҔZX¾}cwx(?m8uymܒgkd Cw! ԼA;WRcw 2c1UI!(sdKL wZhvRYY)8Di+J&}M+YDH{LNr{A+-"u/d<+FE),^d p&Or1y9<ݢ挆`$IW-Gy%xE+Z#>`^eU +ɈJ 9./؅H/H6 Xq"77z'tQڿLfۡBV}g蘂KwX'O ``KJ+^<) ge5 n7Bs[2 h9~lURcK)GV]VKLhࡓ1ZRxPGͨ0dCVI)j%(;ޭ}=S2#`6}25; y<ئ%4~*rϾz4gsSж"*VoGOqSx6y|U 5DXӱgDN;[ꗆj ͿYVu> Wu;L"d'/p2칫7J D@)}d?ӊz >lEpvZ`(@@5\Lv̆LaD2E%=GhBBY }͋`(*iJgF(/8$lԄ^Vqaz7a[w }9W 7\D dVTk%!<9m$"ICBPZfpqPRchw'fHUь}WD[\v̱AjP,'=fUemeW403~=E%lCXedBze4pVl%@pj++_vOzn5"!!Ldk'j0rL SėU5oX]L\X@\ܮ)#/:Qv-0-Yr*߈跧/>L&F&oPvr6 lfdžspwvM<=ufb3UOM h 8fPɈ_:%}DzoĄ* 8P;zxpэ-ݴC=\ȟK1LJx!àDQ͘hؚإ5U/B0|+/72H2veY!((Y1Z({s9^(ӲϨ"az/]@$s)[VLTآBc~"40p,>=$"îiU [#!k5AUBܙMƫM nd\LVܵ c *aj6UM&<66Mqhmv+$+-ͦE9*|G$6\~ӳQ 1|td8Ap Ss0GĚnj"D9+bt{)kNR冊Q+#+c@:t:#dԗ@wNTp݃+20f11E=!i4,{AY+]icj 2.狷Il&}:cpB: 0R(vPW487J}cG^|5cSJ xJrzقay5'.=Li䆬V iH\ މu0̠r|ڒ'^ GYe^Ě.[8ta745j?W@WoI*"o$lwJ؂oOH '?cݧ-S нjךSMBOr槆6#=EZǘNyŽWOX n<+YVڇGvI\A9pw5g&t$wkl&Nڗ|OMdV6({':/ /{1Πu $9ԘasNj_:Fmm>«mQ䢆 wHpXdX' ;79Po3p4Pu-;ΪJTXޱ=ץGdjg!Э(Ȓtۀ]FΒ#=s'oZpep7e_{]q"1&i?s+d8 5ZO荴!-zؒ}gدlV+3G9|y 圚43ؿ;U!ɭYN*Jh3>& 0X)QتP6+@_ ?XJaJSX5qAwM;1%\G[ !x)RKS. G仳ͣ vKNtITUz䫞p98:$QSv[ļ";3 m[|siRp@*Ye/7!ez2H('r|0v*>`js)1/I[%Ox2:d4R0t҈݈#J|̂ʩ(,׊^{i8"%`ifLf ˣo7 Z`!Zb' |ӨZ/{ft|* IΗD>-Ldw){X!ezAݨ {*-xӏN IORj9=\Lj:jAy׫g!Lb\sP`H}?kS|hg_ŎR|f| 4|ꕙJm892Op3NCʧi;#1J v4/%fj:snP]q=/`+"o]uE --o W س%G܃wBi'c:1.<3ôZtT(ݘ4R6-R$| P1SZ>vib uMݩrR i "WDSoaq>Se2qศm, %DoF0)n[]SS bӂGIxzעWq3("a/tf0l|oP=ەD66ʰIK)XidKXj_emn\ 4h2rB4FBFǟ.)vDîōAp5 z} l 9c=$5x`Ӏ!|pyLiS>.˒gb)0mp7Pb}~ix K׵ppRm7M~LWvnkmpyސkog qE+hm($$Y^=0GQ:F褅CkfwDcq#ffqztn2źLÿ4M+;ɧWSS؋=:Wa(v$8Iv7kiPPWF2)ɼ5p{l& 7X6HU(ɇ0,⛒Kɺpv - h.%] uǍoSi߈VKC7Lu:M5Wc[F8tZsVޭ ";:(PUx`GGorIE "{hϿ[TEA5OA}~ 釳tn߀TX#yJcFb o߁wb_hEV-Q*irn_+2dzmP. ؆UyL}PސG/"s&Rst=!shK"F=àհz`h5״;T ?&sjLWI`_8V]0t&+Hܙ"f[p'팁|3g#YzXT;oP-2!Nh0R^09n8 =)`V4hb%)Jo-4Yݿ9! 'l(XMâ^:kz2wOUWOyg^~Lw 4OH.ZܻNÚH&)2 W'zKwe(ȿO\ hʺC֌Mzn(t*yGx8)c9h/gu'ן=(m?((WG$"Xk-۲P>D- rc^VH3N,EPT}o>7r("s91n,.MT.]toz^@%FZ6W(dSQ(.\|u qqx2 0.XNNR9lҡm+"c~*녚=c|܄)1md8D-J] w$h +$-JF8X&*Q5mv@'h޼}8u}pdבE Dnnl\eT-k/YKv#'"s`8}]LS[jj@į>&}d=&3ӂB|SM7:sv~Mq d&5 sV+K5D0WmOsWvj3t^ė\Wp,)0BM0̲+Dý%SRSH.#]+G֒'JAôHSXʧIFNEX[ahQ+Ϯy"ˇK')(džQoj~}>j֖ 86Г^ ,ɻbq).e*o8Жk*ya5瘂 e5V$zԦ@VfY8hXR-j noZӒ tY{E'̵rk&uʤtwP[>~T;*Ƿȇh=I_㪫oXj o[hsxtu ^;xuW?`Sb֯'.0Ne.K 3_%ʈ>fT!oG-|)* TJ|eN8"~ޜT~s,SmXjawb~ [ε;3u?_f;WJ ̜ ?7a BMt\zq+XIPЈI>0tTUOnge--YL `Oͼ)CPtG㩸:.xuq'jrerډ[v^0ŏ_r C:kYso9  1\$Z؉ p!vs|m,hn-ٶ PfR=ȳц9. '')rp+Qʫ%9wE 5mjU,!,Nʿ;LR}n ,-⻙Kyk]4)aݕLAi~% ]?as$`($9r퍧l˓w2Z: m%Q_e̋ / F^ԵQhTVƗ y$[L9 =}t7Աwc@NN1Li*ɺUqET^>hw8ϖpqR," =Tz