summaryrefslogtreecommitdiff
path: root/drivers/pci/pcie/aer/aerdrv_acpi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pci/pcie/aer/aerdrv_acpi.c')
-rw-r--r--drivers/pci/pcie/aer/aerdrv_acpi.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/drivers/pci/pcie/aer/aerdrv_acpi.c b/drivers/pci/pcie/aer/aerdrv_acpi.c
index fa68e89ebec9..1a1eb45a779e 100644
--- a/drivers/pci/pcie/aer/aerdrv_acpi.c
+++ b/drivers/pci/pcie/aer/aerdrv_acpi.c
@@ -20,19 +20,18 @@
/**
* aer_osc_setup - run ACPI _OSC method
+ * @pciedev: pcie_device which AER is being enabled on
*
- * Return:
- * Zero if success. Nonzero for otherwise.
+ * @return: Zero on success. Nonzero otherwise.
*
* Invoked when PCIE bus loads AER service driver. To avoid conflict with
* BIOS AER support requires BIOS to yield AER control to OS native driver.
**/
-int aer_osc_setup(struct pci_dev *dev)
+int aer_osc_setup(struct pcie_device *pciedev)
{
- int retval = OSC_METHOD_RUN_SUCCESS;
- acpi_status status;
- acpi_handle handle = DEVICE_ACPI_HANDLE(&dev->dev);
- struct pci_dev *pdev = dev;
+ acpi_status status = AE_NOT_FOUND;
+ struct pci_dev *pdev = pciedev->port;
+ acpi_handle handle = DEVICE_ACPI_HANDLE(&pdev->dev);
struct pci_bus *parent;
while (!handle) {
@@ -50,19 +49,20 @@ int aer_osc_setup(struct pci_dev *dev)
pdev = parent->self;
}
- if (!handle)
- return OSC_METHOD_NOT_SUPPORTED;
+ if (handle) {
+ pci_osc_support_set(OSC_EXT_PCI_CONFIG_SUPPORT);
+ status = pci_osc_control_set(handle,
+ OSC_PCI_EXPRESS_AER_CONTROL |
+ OSC_PCI_EXPRESS_CAP_STRUCTURE_CONTROL);
+ }
- pci_osc_support_set(OSC_EXT_PCI_CONFIG_SUPPORT);
- status = pci_osc_control_set(handle, OSC_PCI_EXPRESS_AER_CONTROL |
- OSC_PCI_EXPRESS_CAP_STRUCTURE_CONTROL);
if (ACPI_FAILURE(status)) {
- if (status == AE_SUPPORT)
- retval = OSC_METHOD_NOT_SUPPORTED;
- else
- retval = OSC_METHOD_RUN_FAILURE;
+ printk(KERN_DEBUG "AER service couldn't init device %s - %s\n",
+ pciedev->device.bus_id,
+ (status == AE_SUPPORT || status == AE_NOT_FOUND) ?
+ "no _OSC support" : "Run ACPI _OSC fails");
+ return -1;
}
- return retval;
+ return 0;
}
-
lԂ!\ :tu,ns52ijm>CT& eRzb!DE%0D1>PS)/4.4ƋiZ+86PhG E1]cڲѸHF5:Vv 8c _ə:gpRHZ}آlX&fLCiKiBNiN"^uxZ4ItWRtpun[I3pY%ؗ@y4S鲴UCTI-g%wI .B8mrXm2C#cu#\hb{g7,+ui, "RP2T6|1|u6;y '-]uo[ea%6BZG?5`?Bk/KH_ա>Lo >`ou:옅mYǢ?YI ]0giYoWBk0am{ ei^=c톇YuY-Z4Y7=~mUu̬ gt|mV6Xl=Q[sѲ^No1ǓT{je ?jpf$SM K1F[p|f?7w-ZDi̡$e WC:+Q ?'2Z]{:Sq|'E 1&7ZCP(hݢp]tw|Io Z*57)Z` Wq/0g1V:=0øE]xhаIu\CtQ;pʵ_u׍7^Q`݋~]3Ҍ.>#"9th9/{~#6|/x(<0~k*u[8뜲9r`s<x;W{I>DS `TOJ=ϑ' |Y<^'wtRe^i0עbyB ]w/c-RԩSBuNy2&VOه+\G)FW({Dƅٚ'3kcZDcxyPAF7L%$L, 8Zb]aZM2pdj4WvM_p•W͎&z^Q:yZP▦>9aQ($z>``?zil6K[;&la'nh`ae96))Lmȅ7 o}R&b\5͍I=Z9^'٨tj & Zר%NN?]:3fBȨ{3 k 9=36:}\Ό'3CcOcߪ`RET0.W()UJNg('& uZ]cJ宬kq->G/r~+YŎbf×+,x+5s }kG}=~(G)EsVlni\gHNA8|mOO2m}sׯi80u/-) !ڡ.}F 3 k.ʊ̫a 8W\ߜ[!!}~xhx^-hK%*q~99$@),ST@CMÕMp=j"0o=`Ghׂ4Œ _3k1f,@JLC,Sn0;oLq PICMDORr9~%(XU ˤ MkmtmlBT˒#<Ēm7}{;3U3QH(K` /'y4hho߄ DbԪM[;a8'`٨WW,7HrE Iˌئ8AV:9)(j 5{14IE4`ON5D?+mpsOERF+, մ&^QCtnw}쿪O>T}Ɇof]#W6DD"dd3]%ս[MӺVJҏN+*pD:]lddPc;Ys>&E&QmUQ_蓞kyrsׅI]alR7Nni]a:[a#'*hګ,[ᐪ׵)s]lu+˜t R9bW,q}zUv)o+H\8lO ij2 5#<ΥgF(k[Es->ޣ85tf-1uc^kͦ\Z?=盎⺸ǘR|z%ckKy氻&ﮡv]?xf#37k c=}}/~d;xb^اw(EKEr"@@twszH{8{=uly}}$A{||^}^YMQbo}b@j pcj5 ;xmD$Omj-16Yxރӫ^+{ө<#CM1l0uvWV͇BL}`tRhhu53؉3_fð:Erv9 "Wϵ13Ʊ=FЩ"tS;"^ZѶ cR{uo5Da@ҢNu+_BvJ" @-y;6쳫xgZQ GNqW˟]f%٦2vfzq臧6>;>DDGۼܵyx:tCQjt^l u[cMv|>eF uW}4]!}.v,TYȷv!Vz|CEc\<],lu0#^ %o8e5-t?hn+LWח]uWVQ^ʨuYy^˵c%;\;t-|C&At; mRkk,%f1uR9k,D:"g]ޮARV).P7'(?7+:`LVV ñ(KOYa;#C@b8lfk̜^o4µ﫸먳%0a~36Vm#ZA*|d+ﭛl ҀB2=gb;oa_%)*Y ˢoW{^';~? q6G)k2V:[+Z8oC}mock-wdҟnx|~>ۡVkS=]Sɷi *T.d ng5]HcjѽqƱW[[5\5懌\=4RUzO{gu *2VQϥܻgEf^ҭ/k'DH@Or}u Y;&=AƊԢ=8WjfSӯٷ:O}:E< xwCQCT)zSMc DRB|4qCsQsBzjκDX+d5JXAE}]K,Zvd 򇗌/mUUmj96c?mMUmF[`(l*|6TO.61mˌsdLFd6jl$cH|u΍<7JK2iGNIENj+cAVLOo]EgntqiEQƿGmmv6v3ŔTIDw-ʣtC膢0#/h\B +]Qff͢׮xMkN5?Q@ * -dH!&1(&?09˃OT_Q2 -3+d(:~HqiC0X@VK Hl1*k`:&'r5(_`vo?'az~NnBBӜX\<|_#wE yDc!BS|:,{?O?(Pu,DG;@. .P<_!'s>_hR?sKBNrsG &]_ 3@$Ow߷S1w>s5/M5?\r3wHT 2a: w8 9)|_kE= :/;ﰲ+N_K,1C(I҆?ZT铟3&W5u=(?%`4BbAT:տx07_/(.[p Gi'g√3v\z$> -!8tKih-j ';Wza H6ű\bu٦̣g_խ|s331l c+ᩙDU}9רp,?/7)ErYֽkp@v/ 4EGԎ#_QPA_I@(AxjZ}m_׳cnΈޟеWW;>řskq-a}Τx=n!]C k阬'f~XS˛" B{ Ol 0lIsDŽKkzP֢"b&]\CfoԵ<bX#\XkP5 Eo~ghu$ _{`FAQDpMyl>|H`N%p1RJf`P iCn/GKWa=ն=K<ڄl_ ?v'ù),car7dߏX]]ݍQbv)ɴ['Q]$MK2=~B?Dv XhvAh)ƯF]pV,W_. P d^En&]`h;?sW{D Ȕޫ#3pBH$nOft5{|ww<8k#1y,V[W$]0ܯsSA* 3uH!,us}{_ݾez".Q!F=}V|m=Go\pÚ܂ȁ ]B?ԣFD?h.]p|r+xx˒{?0V]m@!+Ȑ#7LuMFzw2Ox y#;z~;}'w9ȉѬ e4ꛁDG0ΈῨ2ᶘd /t#OO^ o9>D*+6UNsσG7mt $D8oZ@q ׭5dA]u#)]>t?Jhu?9R%V,Dza 3WZhYs />ΰv_ TÇ+ ti#;w{kaD}O0>mIR~חbexȡ};E? -ćV~2ъ\. rcaA8]ktzmn)>-Ept/ܒ@'@|*1`vQ[ZGT}^KoH_;[@}ƽԞ@0/xOWDvzllR{ =AUX2d8ANrPD yOpiZ\m ;I ">;4Z%TQO0 T|F "l/+9QD2V﵏A=ݪRQ?Ӕ,Nq@/kp_:ts2̸]THNOL/z=

06y4d v y{q9Pԍx^!b:a_8;٠?3Us$z(3<W-vtlsz-b Z* 7{;޶SMۚ 0u.߶8㋴ذrӵTXAv{y5 !56]kSrRVKjϞ;b&'eK[v37ÓY/_]%~}{}Op}Ҙ}UA+^JD)G0spr@A>!?~"5S"M_pdE:wy疒 I"8mS` 2iD[(FH4M(ɪO)' jT]{CcNy$8RH?.:ޟXѣ輫nqLYhiR?$SOgSAX&TDyG[wH'ݺ!L!&^IluEC_έPwev7vNA%*{`_s(pbj\?C6~Zd ջls ',.jh'=ڌ{6ӰBRsYd :Kp]wpLs .Q|/Icyx7͈L:l1ʹAQHZQ?D'GM¨m B=m_(6o`bdr-C%F9V&?OHԕxƁoU ]Z6|E㟔wE˨k˖+ FD*b'Aӎf )nO^8Xc.0k}Ш ,Blo+0#u3Kcl]8s]4<\>\m,gj H}i?O^} /ExK)g>`j(аh5SCm~3\'/7 <6!G/vm%b C, G!(h:)Pǩmp iצmN<a06l\컏uP"b@}$;rYU:ozy/uJ㕮GH|чOGgW+ý>/?D9˶B׸Dy0҄! DكA'Q~:>dÑ>p=&N ]^&{9b}"P;Uс\{y!t$F@-7۷l~iv1ch\Ј~7ny`,_V`n $K;a_Ŧ2 avBXmU!m_Ma!"@xh搈ҝF"zv!BG kt1CuƬ+ǒ eJzl(smSg G_W[R(dq5^&1@zuOnS5ȳ🽞hҟtQ;#?cu[J4g?xc7h+)9AM@$lWR.'6pNcљ0/;/wNuHq:xŻhc (;!!Gcv~!Zz #$&*߳ցkhdR }У()Ԫ<% >w:wGe՞pg5Z=~1vym=uyG75.V0m;:ttAvï<0F2Yl8zci$aώoƛ*{i,6f/#k@]=WT42VkBrgqк<7?/w݋bVi/f֣l: kTZz^:/ tɃ8ab1i K>N;}~xrTs*fBX)!) } l)نCK@_ÀT"3mU&{Q+n{z|{y dҗY z Ä9 _OL̀憟YtQ(5 DD_œG@4eh6YT ?Wn!pWdn[5C*,fq{v̑[D;S8h_tn߭B@zZ(뎱B'O5΀qVX!m[X(@aR%:9_NeZ[{ ;Otށg͍vdã\9C8qe dSKx h`?U7 .-<)c+P/F ,bqxe5_Ds]RoCgk/ԕuRSzϗ~b(W'\;ϳ`8TddxMA"J~ݽ5J$!zxムm!v:nɯЍv9@8+ Kk FXD.mcY#03#yWP(V_hMR2> v!]O>amU$PE:!ئٮo SvցH:zy>]Rp.lp@w_ъKI~cϚĆьKXKxa}epVx=ՖWP(*1E C3ר?}\(/D_[ ]>NX c _'(>6[bWlA;;\Ɖ=2x^O?ٔӏ{ׇk<@nUEZSI!;%P4N\ 4z^Zxl^ed^IR$2h^>Az#Iڂ+ nƇ}O,g72e^ߏ:!A`QQUW<)̱j?c}tR{ kѶߩp:usu8Ao+Û.xFDcvH{9YX60 VoK]G3զJWъTwV4QvXы!ʶ1;fܗDE](" a+'{^v%k{c즰nCq#gos/M/J>o 4m~m0IyuR?vX MF^4}|DqY[8eń+!vks|*[=Wc{^4Aw(>+/}D!ӲCU9B ZX 'seZq}l2vB1J+AoN݊[g? e$HÚAᵺQDe:)|E$G0T3SNjmBO*:< $axCD8~V ;w)>O+gƷ R]&r'ȦcU0̺KdcJ$ڕRS8=W<5K}HY7\3>b7')rcb+dƂ8KTT`J:lG/fZZrqR'  ~jvVbL])E: $HM6@议Λ7wXx>p_q@q Zff+ֿ3eE=E) 8#Birtx#3a@az 1 ed8[ B|ْ NͼD5N<ũq j"_jwBTRA@p~yúU/hJЛ*@ B"ë,8 #A:uq>tyrOwA-V mYVeA}5>)ٽՐiG4h!N<$x0m8gӹ_x̤z@nHm8h@s.0{@ϯ'kb$/b =- ꋡín:c$>  s (\ZH(> E Y7o>!;:u&h;p=M*TkQD] ϹLA.Ih iD+K`i;tp؋~m]];7$"fAX)]JMDxg ؔ5vKՏ!> De&eNRr-^/lWfo9ѣ =. TXqMΩL;CpRϬpY2/3]2ҿ/v|h[S:zz]!L#;"9 +%1b7.'yl a$!J<}^Ђ".ܚ pυ& Rs9x@s#Pj  ; }A_VϽ]K@_]TkE,k$'ؓ*pQ D&;/hGI(vM)oqg~mSpGw_s[ Kv4 CgNp&ʪ}cj-h h˭]?j CѪᠢ(*AH>eP)&˾6xC]ˆwBNZ}m W߆BNz[Rӝ8;ȺUpFs~_՟}$H̤;l[)!3fn}G%d4)ȈŐ*jwTcR-t -^[ldx!Jѹ]28\ӈ|5y5ukuG2ؖYPd48y%ՒG#XaMqyyl,;j W;=7|hv|Dx`n2L_pWM F؝|FFбUohwfԐӭ19y(~Ag,;!P\)|3ڂ9t9c]l$zR*k9蓶@(ut86P6Y`(,Pj݃2W?x#2/eyE8[qX4 (@“#drvnh8|\@.x]";N gW]\n4jGӴHe~O-ﷇkU?okr]$>nn-MS;/m=ˤN^|WnxmP"`|@I]Y[z3NGH ,Ol-8i ޙ3(U㧓yxl$|. 5TOu9N =Vb` >hc̐c$%%RJc ĭ ʔ9b@X}wVLs3lr( -kLxE|9H6i;U6xvTpv"9%s ,\ȍG~*JV9${ݻ 8ydvrNqeUV% Ų+-ފ3:wJzOmnٕf_1AIy[sMA봵cDm%1~j3p5^hӓJq!,S+YNs'Lΐs! QHIYIJ!hZP.8kwFE.hstZ8gRqr?D2Z%b'#9*޿ !KW<[iwu9{F5vru,?ޜV(ÚG_aSCjؖoTm_p: rLk 3:E5k(K \n d^1?OQ~P27]Ѩw*-\Ѝ%gQ8'EkEqF^1gyvEߥ2| gg7w[HJ^t_#ֹF#+DcYu{hkqs$ҳYm_p(!E'Z]ӭ0 Ǖ278i Hzs ~+Ly(2߲33 mE\ݑȸ,Ci3axϕYbۂכXx7}8szgbUxÂT^buNz[,v8(Y־`t6gt`$UEX0*46Ì d{{(VP. =h~-}WU-GܵvtKOU`'jǛ Q^ ]ao(Oݓ~pDAmw/n)0zxp K<դE jys_D6*AkC7 1~u~r(g"0߶۾fbBz `uTxf{ݺ˷NWY$]/זфgx=Lc:R.JrZ}OB[Hgδe~r3%զǁh%JZIK[/A ,wҺտpDuh\ve$%4i؈> .ib/Jy8Ohnaa9|*.\GV)oH{ OmA8(0{?qZ/o~Vɖ˟^3GD3nsL"R<,+{ꢨsP:IM¬U+_YJډs= joݧujX90VOu {7->?)Y G0:{Lt~xv=y{⸠Օxg" UbYUe5D%a1:a| UÒ 4bIxLR”~i\*WY#-gƙ3ۃ]7OR Ũ V}C w:w|G sFImaÞMDdbd%W1Vʩg 1 0zv~"Rn~*Jn̺CgeSu[W8|y}K?XE]kӗ?tv7MD^W]"߆%rW :)GЏxrVCKfr2WQǾ!x2?4&3^r?.UfaV*= \ά+AO0 ㈃*cq,,F| ^]űѕ xR: }[C-mSBnd@mw U^<"ۈ«'#υ$`ej0gEbwA0!&VS<%`틶;[f-Rlt;#rxABRC*տ W$3 cj;mG<;~q.K'sY0-Ić YO!hXIX9t$<54b=<&0&( )Y 6qDZ#2:kc+zZc#," 9Z2eݽpQsXǪnWInŀ"MhzH_cE4 1 Tx;5RA핞J'|,1>!M֝AΗ2LE4&jPÝWͳ܇SQn;@ q~\'WX.Pvh(,ĎST |(""@}Q!p0ZFu .To> Zo=ЩFk` mDvD(f>.Xpvg 6֔\U+NC~2su4- r_{٥5{}L0}`iqm\9EXyR"l١ld"W4a X,-gzkq.Q1( ,:a6_N g-P\ȏaŤ[3vLZ_俗/.!U>{i+0cgnUgzz3V^+qqdw{)z=C?_HnoǨXV%GPt22/b3( | )zAU~pʾ )QSP@ ^6ʈh+ٟtf>_ygmvQJU;<8U?apU' T_(m'+:N`ё?A_rswA( BAB>x]k2wޕ@E %N 6N?Z9ynq.ۋ px`kJk4 G~}^E;5pn߸\Pz`1["6we ̋`m)sض2(v0貲> }J(ݞ#Xa[8-~k/aaGi/<GF:cȴ|b,_|8|_pGgm.VΕ NiX/'[< ;C8 Wv"+E~pggێڰjo v3&>k"AU!¸0K mܢ< L7YT`inK/hh>M5>sP- fsu1[n#,qjgrpna@LHnZTkuF&\$?;k2ɿ_rrg1Wӏz8z^Z}` Oa,evcPF_v=@xF@@[B h+ @"D߈8Qi*q]!2=l_\>YL'b5FCHHo7zP@AlER%f6UR>\3iDfǝ~ `|z`cϢ@a j v $lFQ(گgU`8.EqH#BxCWDm:jZvA-DPKE#Se3_,~(Wjb7xCuKU0_1Ty8lHg 姦Lal(ѣ}GMJCe9Fkf`%ו4ck32уjlPy>g:qS:aГ Iޡ~;Θ~Eus=J?FI]qcɋX*f.1 d>qHK'KjRj`?'~ǮmV Ѡz_ɬR(Nǿ*cfiC$&WF vD_*+N7Rs}Lְc`(q7}mqPfoG,ʖ *~t8Ч-IW_^Copq{ſ\5lGI"sbvbZ!H0)dKj@5 |a#L0敚X]ơ[POP3Jĸб8|u<-E0=$% :]~iwMƝ_!ϡf8mTC0œw.^jmڂ]ii4DPѮ}jE4/>kH;p A^+P&x+a|Gy2W s/d#m迗o&u|wIw9] Q͢jsRe6Xv,AKfBC[3bfOrjr¥L9QM+R|J%b!JIxzd M*F>|/g7p>pCr_jt U7XCȓmjwQwQ;T?-FE`; } p!еtog9X}i._[8̿rkaKux3G@Ɏ 7qcBE]?zZ` НW$ 6P4 BZbCٺh,z#pdNY<-#A~鼔[޵,*-IV;33*6Ez/9BXg':s$̔'.=J|!Öp4yFp UE&הp8u맫~56T0CC"W3@{:իL' "c[}dfB/-СHѐ8GӛEI%ӼH->U"x8~3*R&h}A$5 R:Xc8Ak lV@uK_v/Pк3(_fl?pϘJzt|˨ůcȻs@M_s[9 ӥ>1~=uȆxq+%6(~Ngm|{U/4qze0]8扲]r OJ>ǏoЙ<5ꐣhv]ju`xM H?P]WK)*˂lBN=D3,ir/9ć$>y &cKxǑorI!W3gr۾ꍖj *=uE^u6ru4*Eyq]b4yNQ\Cy2&rgg:ZA68ɱ;|mf 5X -z!q{$rJ`/<}soTҘ~__ (0P=VSg8,|\#.f=CBTj.)x<<dkKb(C c޲t.<p_R3I8G>'az@D{4ڃUjџΌ>|#8IvO0;ӌcX Dڭ3J+qgدu6*Ԙh"¢"CZ>Vgڻs= AJ ꢯǼR\Z?̠Қ#&nSMw׺SD-gSd:)zGh׾dg YnRDv#264Suf\R+E+O!pi؁Aώiz9 6.wM9mzr}q5Q! uTX;Q@.g:.a3?BWc)BHX< 9<$Qn.sva^&}T=Z+SrBUf;CelHǽ'xDk-a~GCԲ?c8ӐK6#Zc,V:b58~LAo)0Y)^dWIٴfjx}Ψ褂(39 55 @@oLJo=ِko;2אVSrr޻G%ZU Ū.@Ac4GQ޾Sget$Ck=LDbƏb "'CIfLc!joKfVة}`4b^!dXĬI3UO#e:cy ^4d4k@6Z,b{!1' 'OH*Q)|=ǁqcY#%3NB@6(_|PdEE{sp~2W-9Lbsx3( (f,5[{ rQ;XQ&!ꛡ淿f8=g):A1P0T@5ͮΔr#*,if42ݶ|1|9 -2}l ꡇmmr`Z|:XQ~N?}?U7 [QW& 21jУ`B&BGti'䠋b#Uy*>$`ҡfP7Kԟ(NmcJȻ;$?c9=sULvơ"x>t5DpIٶ)lfcp[KmYbQ)'` ߛi]ƤrsEO@5xӀ"$ P(KFF@ :~X$W/?Ы_fdӞ{<Ȇ- k JU--;E*뛁 /U-/ez;|$/fWKt@|4}zS 2/p쵿Kރ4$xEmgKy^܎M lMn !1*%I q^{U= G^<R[hJ|7Ϫpqc"<%|1\keN:y+gzs;x'ol3"uuےH칃u}Q}OH[hx|aoz ]m3GU;c  MZk-eH-w5s5 &X5쾐kglr7%⼩8x/.1Kw^4uy. EDgxLNF"š!H$#rE[THt =H)T['#hVPf2*unN*}LS0 gKZ7bu(GC沋 tSgX%Y(bUW2[M!ꊁ%zzIM_9ƏOּn+ۭ qT! 2攬dP?ӾʼY2wNM b)~vL+ZOxgJ=J$-}Oc9zڊ2 DÜ=(!EHZEYR_VnfnNQEgEn<# r}%'4Qy&xג$,yՊ\/ 6g>Sc1l" ,bHUIǼ$:zoN?=rvD6wi[ ~U=`N,y޿<9T͞?O%Wxms9?=Ӛ96 rB4 I'1[QNys2U&pykwnI3#_6gMcp` b3EYbl} ]8ߺBXX5c"5c!_[co^Yd|L j/  (,i`h/I*Sf{CHשwsW@(sQŻFqC@G?ڶ^QFO9wS|xJx="ذM]skAmbjՒ])n.<ǚ`dQ*'|Hz1(8 6z*NX@9@!CBss+u]@L>bgeD㿧~46,;j ޚ~ۢV4{B|vvP8.}ʌ/#qTsC{:o'" YU`l J#h3lqޟvV}m߾)ٗ$a,Bv:%eԌ{$u>A.rl6`ж2yX3q61C9+pfldc(X>K @zuIFG :@lpo{h/s5͇ΧYYdxǀԙ' L8#Ʃr "89s#Pt!3Uӳ}FW GI>'؊x 8^^nT_GQk.q&oO׊srl.gb)|:ٿ磎b1ZN*8өY3J1M2<#O6ٮW38s 0YIdp~${iC (E/1K<=Wrs8}@j#^K= }OjR6s^ZYֺ&S1tJK{ֶn߶'HV-zG20Js[ 9aQ[-좶:Xbt t~4dp`R4fHL`AXQ~< l ₫* +K36jO GXʤa7:yC Bsʥ 8lWQIn,r`<}EzUP^K˅j=x˅Io>X_)hH.xhySF K?bCkBM~ΡФt(!h1Ul:"7(< n1S9^#a==zX Wq>8y)^j)ͽE)F YdDND:NRjV7#6۾^.%w3!eũiyh.H]a$G OX,\v?s^SoymS/cΈ:\aغ)~*ȊxY߸&*YivHoNlu"$"(F _K4[qM:]'}B$iMJ~i"H&rZ~B_eW[Os|`¥g>pfT_ϛ ZX 老hq56#3xu0*QzCNrHAkg_~t:>h~wgvz:44Z ŝ`{GpELZ_Ba k~٥s+ҁa2 3+(2nti*keg׬ue%Դ#&.c.A#+_LPXfPj%\iO}jqEg53TÛ]m 5`xv2dG0yC[]1h8 .FT=[- N^mbZ y?7?NWoZƻc:i 3SW̕WN VacӚ?eEaXm2E&ޓ v3XPj4b򄏫2xv_gjf~=՗_E*W<QFPH{N( 8g`]37eU?8*U:6yѽj9XD=50M-\av"#qH5;zeb:edۉ/ ;a ?OXtIg CvwiVM}~]5cޥ~Y:cHvw3ɩnePwu ;2ĉ5ITNUN# )R^b ƣ? 3w8Vu*靄ϊ#: I ES$XMDf\ r܌֠} T đ©7L?YN07=W34$jލƠ[}&Pnq٭9-./7}jdw/i[xinΈmnJ[QdHWMh܆Ԋx py1zk&p)4CTb+#C@5k]>6e) oZmdGos8MirzX,af3h,E۲XCx˧ucT⹣(Uj b˹ DW/|DD9Ԓ(h/αbcec>e [#TO11E~ ۻbڨa:z}Õ:1njnrphܑ ;9qpvPH@-kVׂ@<99qpaɝ3+Z|vzULA0+*ݦ׹c5#c[ůPuerurRK fŖŵvZ/)̱ݶ5+S:'qk X4%xa|#x;AqEC3T%ʨ81 6T1>"7Aѡ-`DRe}n9Fe c-%0ry!l1ՅjV3 <^-Dq:%^d2-Jd~^bD~wnq@PjGfpXXeLd[<ԷμgXvx6[w"L;sS>'51Nu̢ph> 9Lp/d,b&Ɉҡl<;7]SͫdI!9~ag( P) -ݯp#AE)>c|@]wF19$eV"O| h ;w3L>&ynbu9TTm0.H2ԍ(/Ըvh0GтbS#`"9"CC2/(r<VC^i hz[{8IWmTZ F"&"UkX4>1RZA=gg:D xTv!yo];XVN:8kdamN׶3A3%qDϩ*,F 8",\6š-|h8:Qi7ې8A؎Z5!~[6wT$$7&}{0?gK9.+%'uugq|PKu) K1e7fEHX`BqdFӂ)K l'h@*-)"L'،n0+ "X/ HŎ ЄO+fNOPm*#8+B.g%[)jH%RΝ/,fV 0Cgwf 6{s4b>${4 Dy ,HbQtV_F'`i9rOEvk}rTû_}LvOᎻ: |߈P.wq-$BӸY d{\'۝VYy,q.,\G r?/%h :;ǻ5$2,xp=9W-n(pٰ=WC/XUi*G-xP##0p H/\xLճqLǶD$!;q;)XВ_wNv9l1}ӸC`DgL܈z1@<]hU! 1ŦicoU׻^xGͬX>!Hڠ~]2(9ut}_[#n'q_yˬ+H9(*ySL:`1 16sUCPD90<נ #Ne<`L4KwӐA9D "ۘd1"507pCrV2#]QtZ+PCDv^Њ".GI=EleH o42!'Խ4~k=P <sȇxhrGR| `.``V1E$Et~UP 2߀.@zbPz}X`|n'H,!U ]6BIGDy OeݛGm۶msZo`q/X,(uT'Xs~,Whoh̫ 3TK~٪p @}.+q[s~+Y:?Z^8-hnD}*M>8;z1BTyҍ_ƤF3lLъZmkͣ!MTsrJC?p=:[u^-B(MUQy}%"{{&6$ݚ]#T oeu&BtUBiLY|,~P}i{L$>Nn;BP~ڵQ[Q]ڦ =Nu`Q@! Bo31p&h0K _떿.ޜ7O{,6D'|S sC?QQѠ.Q>rQx9 (v+%OjnZ'5uڛfw\seME4[}ntDP' 1.g(}8YكخWmXFN9۠(ںU~2#xQH w_R>A65-[\:3aSd0z.m-z@.1PmR ר~ь\|G&Dٮٰ3Pr_'完Ju[Sbɛ 0^䃾#r.q`/{n4ƺ. 0fՓ;m pXej6WOD^DkPGi}~`#9vf X<Z-鎖ADNq o!q"ÂuՏtv$'s't>'iO:'yڰڨGθ9>*eP/G$t5 Sx({1jo3 jTיe4BmkeGTXEqK9\COU){ʰcjIdr7e}3˷rt{\f/zP*˝O|;a!EJ%X {ߴrק )+XX%A'N`y`vBSdJLf ,r9JЕɐ۝]8n4= luĥ3\vԐztpCHTmxP5%u"(!çVkmp ˁbV;4B!FQ;<)a ,oQCm7ZϪJS9";6 KMvQ)UFc]))PHKR Ăܽ/I8D!f{@r(vG 9^_bY˾aQ닷ss31'gxC{/]઩6 c,츜 8bfig1!c֐9+֜okO*'DfK +~" [I3OA#tAy"3]D%qrpT䃎#mߟ? 2v}k)TA 7xI'F3>X8j`TI&ڌy3{bƥVW鹚Zm^yguXaSs;ss4nm8KfS&L7q--?t9X;k1s槳cg}?K{ռSudrDVs}nqX gD\ҡR삒[C#g6%jtW/P0XlS=hQYfXu z s =h膕,v<)L`GQH~3:O {>)mI=J(p9nu/8rVWev"|NRYdwwzXk0&1KS7=틸?䬗"%QtUd9.W#Z =#1c\[[L$=Ye<cn4r]UakSn~\0,Z/7}kns!(mר܍:F30ZNˋww~KAbf&"8'v e6gTc/ N^9OMAqMza}ޠG}e;u}D 3ߛwO%al^Tu%[|l"Hc:ڊcz&]8ϚNu889yI*\&=dR61> F]8q9!arڕ]ZdPĝK%CВ*59ߌw|qK3\w]k[B+Dr;O}:֍Fx CLusw۳Ά@NE:q8eTcUA8P2lӃbq[9˜>㛦t[.sTǎ*t$Ԛ3Q_#٘rlikrL0b k@_E"ʴqؚsׇHͯ\$4s^=۲N5&nv-D|wQ<٥b" 1;霮hIK>ے?~~mh̓im%s&Sr@ʋy8L ݜ; 񧃤A$uUwF cWZ@\N9BY43T!ƻTe`RKq]7gkFekyWQoFP+FˠPdpb1g88x+=1Xᩯɚ67y=Cu'T1ܦ[9˶ez5n!˝9,`bL8o3 jSCxI¡%=Ҹ`JR1ޛy)jFfBfÚ~xS ӗɝuFuwMaVQ/;ɚgL4I>qS'߿~ %LNI8i T˃"%2L I-('ٮ `D݌RcĤ$S9K<ƬΒھUAh"qbX+2di!p[yAHic@&"W\q(騤v 5ok}}7w)q1bgz(uڃ+ 23T6,l{2ñ1N}LdۡXYrG/V񇹼r?ƹhr>BXpsTN )8ǣIC8z^Ebf5$]2hҶ.x_PϮJ47;C"+5h8JA~EmvQ{ 2 *xۊ5܅GҨO۸RiI/jFG-OC1Z$Q*T@Ֆ3vlx+:wG+\z=zx˻eb_3T˕yx(௷-$0!A{^6!O)条X5=! 蘞Ǟ6vRg Ȧ?H':6a wƐ+f^PB~I}|okی}tA]a 'Ĺ{/9#ǎOvV/϶xr痱d}t[l?ҦEW=,]vang@f,*YVxra'jw?RH Yu$, GS_S $MMX*Jγۃ H%d0r`s`bAzl.DldhkY;bqH'1gỷMg?!|U}vvb ̊বIy2-2'jȏÙ[Sņ U>Z ^o2, 撗mXs(\9)}F2P4 jC /졝×%snQNъh٭-7ʄQ?#=^e'H͑Ɩ=|#{ Sk*?ӈo:W-C/'wḨRQqvP(,9`joT}3ӟ`QMJI8w)M#6;ǫ]MKJuPd޵SA<+E`lxȊ b;֩d&b:Hu - 9Csז6ZDWP/9| 1{v«kv;rƒlPq1(>d2UWQݏP Oh%c絜gp.[/VxQcR6OsMOz-% 0!ư#>߹7(tI_q@Z=[=M/Ӑg9ESL,#$7~ЭÕ憗W{qG.rJQ Q.s XJ拭vDL!^eD/xYwLa_aԶ#$.yZEL)ۧUq;]nNdIv2"GHa%V4TV6&뗁r4vܾDJ볿Ş>zS7Žy)]UiVPNj o/*k?(V!Fud{Uɘg.m!?rJ xRSx턮8 }φj͞?nE[bc~,Go-~^4h/vyDxɯd"2S2Mw}_GD$zvES=EyX0Sƅ GP`:]qo#'~_m{"Dź{cLO裏T7Q!Bfv"ځ z1LyፗQtm) yc꺌6S =VBN JV9ZP 4{AbFCU-p!n]T`.2`xd(9IԘ Kb?^ !΋f tվ 3Cz~I,8zi&A|5| \p~kI IHH0u؀OQ~u{sIC g@rE&WNAS:nGhc~9}DZw? ,#z;I~!UHBY!O'qVM3 ^9~5ѺW0tƅ+ cn]s SK"609o5ߙ_]4@Crh _UX?Z^Aȯ 5{I3~lMLgy&} 2c;% ,Hg2HEV{FQ\}]Ѹ{ ]Ҵvs9[GU0JV`l8X2CX=}VaCMo_z,˟Jl"ryc0h"nf)Ó J؛ T:Nݪfr1r DvTո`蒚_B"KA[VjH)Z|<ݢbrk.\IibK5!4s . #X͖*_Pu@8Fv.!R!7%׻Nm@ڱMW/sGͭcISfm|q|JՋIQڬh]$8 29bIKKZ+Mǽ9g0BGG^:lreQ5lop9 ~Y]sD[}Gtvh:mr攁_~נ۬/tz,㪺Fjs=>]C4% 6s/gw0tB;InTMy}>0" <^%َ$jkYԍ/ hCnrw:7%" Vuo}+w'.};#nރIY)_'9qnC/(qAħăHk4!A0]%+DHPCNAA3@RFQ+V9C / S"vQUDd) >[pdГ m%Zu *(L)_mDேiQ((?vzD pxtWåD3vo/ou%gk&,=&7̢fjnu :;V[ul3k[/dME5UՋ`EL‒t ˊs$_\f0SCGG쿟-Ϣ׋KXw^S MƹL6ΞP%XVbd@VBK6| ~]Зxqu3Ku^m:UIj]ŻpEǿB1[k)!7pnzK7[6Tx)|].p;TCJ {zi/X:,LAfSLwt~zO^| ѻf}Iϯ }]>QդO_̺6) tOwZ;1v:=і q43%uJ1Pgӌrʺz(eƼ {6bZhCT?C胴V ҽ@|}p_xUNk@ `Ŗ H? ϫ(4:;zw 7SU}ɒ {XatB)`+!V!(%PZA䈘԰"C]~iz>aI0BN_a7kM*E)hzA Cc[^%}ѧgqn.`XTO^3TLGP>_HG;~E3T0y|ujx]mՄ_+4^}:ݯ9~^?>F\;xà_kM_cYcd:5:Cc_Щ^ޏdjq6/,g揿r'\Mف\ ^~'s@B1 ]Y/g—mIi0b&EX|U bik 3Vw0W ?.#'9xػhza+h5&ߟ~Z70:u|@^1ˀۢ{6;W2pZ.s08Kwrр^mn~mًrx~s!˛8¯6hY5p/!;{pg׹OXdL5SvG-uoó-c!'̪k[%Žn-%h j?;&RM:7X)LV{%0l=EΩV燃]?<}i$lt8?Xg/wmz} n\>6_9'jݪ/ݓ|,x7;Hw9_ ԽRݪӐx֞ Ҋt^ +k8taY?=\Xnq&iEWqb5#:Ak7|gAhQt?{ @ӛ sac4 ,tsnd4a  bWҟջCEY(|U`j6+]A vcV{4j䄷EJAB"KRG* "Ҿf0S;vBsܾn_\&Y['7:g(IFhn.`Rd/t~;pqCFPHwn y\`xy*f]8Ua,lboɩ01/Ǚ}G @`'+eapb9--/=`ZS ]H%.c- 6oEeGm?9FpOt}fJ%`xp#u?<'Ag`Zz|\߄t@c:(}W$EM$w:sL9;X]DE)AKT[,NE8g*lkn3#b;SϦ`(Aq-Ƀ{5;шHOzm%:}vy]7*`G_|Z5ψnw*^kf?=AwL&La}hp[+V;:"\,, Yvd= `y+ ?;tٗ^߫dF֞z>/|%1aY}Γ)NTtjv>.(D(}wzNXj$~Q C:2ъ dɐӣlhMYcTڃ+-#`V°G"Ѳ|~/?ؖ ]8Z+dSO~BxIu4_jt˘YC[`=;Ha ϻ_!eUŘBPezY6&K*GZ`4ca̜߄_I&&Δ$*Q͵ NH%S0Rz?Bֿ ?d}uOfz}[?V/ xYNpMګ~neXBjg/㯻a@;iHZ>oZB!9@{5y%:E#~^psVB?̣V 0R~9uuO.}6s~Or~PшN)ȹ*5r`hL`β8fÙ.Gl9i ,ƝG>l5CYV3"+6thT?G,|ۨTGچ۸m<\?Auu[D^qCZ@,;W:H1 3PFBf-ȿCBLU=Eǥ۩q?=v]c S3q*10&ɷ C{lR^("b X$sDc$f1pVΠBJ> R .VH0̭I\P94s d絵؃vC비pw@ y<&5E a^ְX9wt4FvHP-iP7Or7F m6|M^w Ռ0E w /IN[/Gcf+Y{gqcw W㺆."3 kbX 7=*9ZCx]bP.FҷÔC[,c!(bMkC&$ "raİgW~xo4gf`]]w7ׅbC2kyyK9XNNpqݡ#9ȣ/&J78-^vN6 y&0m!7umcN%ԯػZpw</aɰmu ⃻o*dLd9R-Ua@{0s1mtF Z-sD`r+k, }V4 cLHJ9ժ%'[Ka0X$ z[MVtNS}cQmScōnȏ"9RU[a5mS}yWBv$zJusME,ӥL bGS@1E h{:tzW8Xj-J m&e (` bH~C" Dd\+zZBHì*,}_Mvyv׬{pʙvNUbݰ"2}v݊˖uv oHmQUPQ*Rɀ6/l^11{=@AdX b{,-/(km+TyB uL UZgG8K'rxuLoi JF J0nL-uV6Mj/:l}REV$dUGjJQǖߣ\lv B/(BdJ)T pveA1+!MS#ƎsnH xE#;ء{$RV-cizќ%q5~.8. Q81QPnq ͪRLefN׮^;F ZbqSW47iY vaZǩDݑ7J=_(Vy>Ō,$矪#PЦb郑[5/j *o~-rDUұ蕞Ix(͑L.4oV,P(#"M_@.Y9l= 8kW;^Qm\̳[&\iLV>se d'?LE[\y-;,` QB[T%}gmy[3ps9T}\Ӷy](zMV%<~`=!du` 4G8_ґ|(5WFfQ"3ah~7Pq37yࠁ׾@Bc%goksuz 1w8V `19zfWΒ|п=!@^*b'Gf^pX!O@?(RBW(( ZͿ;l%g>fpS/o@b/4g:l640WW|P;y1XŬnzw׫D ©h 1Ok޵}Je(._5$jᏵa eIW>-| ׻ZY0rK:J.m? 4Y=IRľ7׿м6!ʛ.]4`@̘ x}Cjxb s& *B9%{Sf8V47 O2=x4M{,W_KLu||d"#hK&5H,^0AwWu|ѶZ(#\"H7ڏנArsGwzA3aP=&B1VbC ``W:kŭ?$ B@t` ue0~L8 G aKM 79&صIlkh_=ӓ&1C"+:v1o$D _DA~P3 )E7j'F "(fj"f@jbF\V `-,F )DwzN 3cd=4ov WfC)tbߖػo %0!1p7!k˜*x*4 MbR7#V EJIGP l5j)3<5Y!P%Z2"Oq!(Nxz?G9X㖁Ywc~kծ$Sk߻~W|a{n9y~t  vi͟j@lh5ߢ9OlQP#7`} l)-e`ŖC u4pUkFc4稢~'mL7߻[Mp~oMze,&گA00}ڕA%)Cs@Qe ]j_w U,+K|7E3Lq9,~}9If`j .s XQXa]8#my' +4R'"P`XxcKj*"nђBsK)05vZjo̚Ηw.(-N}VX-Ӏ~;#YM-*H5`ЌqMכu fm;P\ |ϧ=G^+ *j /$,\}r& IA68{#6k3яG/mm54j<δLT>3@?C AotV'ĆkDz^)("aGz| V\ttZÏwX|_e5ū#]^o ë۪O j{di%ޞ]OGr_7 `̓0:٣~HnntH8 KD&Um^mV3 d6]YYm4z:,3:FDaB/\eZ) WIl[ +LNHZ߬Դ-ӓ{cuڧu[9R c['Br7W(f#XLCke:r#"h$S)tW~<̑{|{c ='_NNkN.1lpFׅt ٓzn)fxaق/F,C.VR:Ԇ*[la1 rp(w7kIe "{.t[ GzZ 7ޏꎀVҐu&N"Cۿ\(6 sz̀icwZތ,!WKGR쁉f %}n*Yh~Tgr떪fi[U`<B/\ "@\w=h;[䈝@#\5@"֖a)9vOSi>}( S9lCftזi0cJi븦󁀳>xЮ: & r읦?'=~ko5RlUPzlOQP>|{+EɴXg0$pQu#9 2 Po" -_Eٸ_z\H'a xwo^p\=@ ZAvry6 rgBty 5n-`=!FͼFwӃK$KpVD*瞑OnjtKH[px$*zøϽ3z[!Bfu- [ A|v/q32ECP)E|xS,(N-ilۉ̶WhuAQ "̫Z-6 sLC4QDEff`sb"}?YI3шl>0 ie܉G &9mv_M;Y_U^{߷>s췧8}#m64~n 4 ' 2 ߬kx*0t.s\K8_+Ph7^ bGMǦL8d&T{|ZBOOEBJTBFhB9w6p{U( ͽú=uo)Af NҚܛ\\4A[^7K[")]tWky! ">h&ӛrzkݽ<6UewpYPUQQecb =1^(M[Bt@wLCq^|$l6}˥@ep M):CpGmXL$zu|caݎȇI}f hlN5z;rvP̐9DYeC cW9lEtAdE6'WDb{¢~y)+#;8KG.CT\ w,r(k׻@4dk|St{ĂlYt ?Mwx>\g+)0 7t7 : S!zB3O8gw}, B4!($Wq):*DuKg5a7f`o`p1OHQW]*ڱ]jOtaH;q]N]S@Zgb(@nZp!eֻC8:BKΔZʒC ;ЙJ-.[cFoJD%˕4Ft~xNGcvGKIX+ndb%{P)#%d Lu +4HSRڙP xB)ev=Tby}5Pb?v &4rIUwG7FRM.ٍOB( pme>rI250yel$y8;V:d`ه%ѣ*?d8 +rӎɋMZrtTԘh'< 3PAtpNkwY{6QR!/rio;*XQ:=h?ov,=3ԇ~EvkZ=lV~9 z*,yWx؁}XeulVKhE [3̵f٠h=;kPB^7]۔$?) eZQs7=ʈGX7?矫oZyG{GW`}268VWO vCM0!uL9v@~OT6toц/i1e-gievn?79:]7Clnn=<]ޗa{9[x˗f}>tUU$ ( w#4P=e#d)U@B91A110qBL,?xpOx{Gq d,HϒÃ/X3 =qRHdQG^TV[ߞXX.xH Ma언Ȣa) sJ`dDCO|&/* C03Ls˷O|68fb\z$oP8;gOz_{s5:J}/gjBVFSOf9q}t_CO[+_9t0sq=o##-IR=Ԝ1ypK}gکIF %t J,(7Tja%/ f5qA< I<C'Cmi3H"c[X~=`?s U COZqא O:$F ch(90=HV3kt0:Y@Sm|.? ;SÛйc8Ա"1 B ̮Tn8x;O'C": +(aF ucl>n!Rr,3!02 ѵáGҞ_z][%.\* R$\|2{_ |ZFG (sֵ >JSu#f3|]e Н ܳj*/|7`ptYk:gr=b>9o-'ح ?3>]j)OmW_Ei|wB8UM_8r굩Hg XM%ި:>A}DrH;`:Sʄ!qe_ڀڐ*QîY^d`1PُnB(u!j}|'ؽL`_:WGճ oNd9QZ ȿ&W#f{3!鄂(85QQJ qx苄Hw94 2Փ,3>jQ?~̌ܐs}..Z9t 1+G@s@:[C-a&(~)DjQ|}~ãٳmY$"%HJ-笏 0Wk1fqw {qMZisw <1Đ$ @#;t2 בl2W#HuLe`LH[I[-.g)eZ.Q|b *dzX3 $WizP AHCS/»Ǜis1R/#eX(L=׻{+{sKE7Kg" d!@t C|HCsį/|}nqS39_n?58@XbRǟ_۫:}rFSL нʘu}YI C5faD"B i˟\rǜ2>Q u:fTmd<ۊJd-}{?