summaryrefslogtreecommitdiff
path: root/Documentation/mips
diff options
context:
space:
mode:
authorVladimir Oltean <vladimir.oltean@nxp.com>2023-07-05 13:44:20 +0300
committerJakub Kicinski <kuba@kernel.org>2023-07-06 19:10:22 -0700
commit009d30f1a77795014f151ba317fcbfc2f17153c6 (patch)
tree457ca561c323ab36e13b4394bab66ad0e440621c /Documentation/mips
parentceb20a3cc52611cb84d164f03e466f64b4ed9fb4 (diff)
downloadlinux-009d30f1a77795014f151ba317fcbfc2f17153c6.tar.gz
linux-009d30f1a77795014f151ba317fcbfc2f17153c6.tar.bz2
linux-009d30f1a77795014f151ba317fcbfc2f17153c6.zip
net: mscc: ocelot: extend ocelot->fwd_domain_lock to cover ocelot->tas_lock
In a future commit we will have to call vsc9959_tas_guard_bands_update() from ocelot_port_update_active_preemptible_tcs(), and that will be impossible due to the AB/BA locking dependencies between ocelot->tas_lock and ocelot->fwd_domain_lock. Just like we did in commit 3ff468ef987e ("net: mscc: ocelot: remove struct ocelot_mm_state :: lock"), the only solution is to expand the scope of ocelot->fwd_domain_lock for it to also serialize changes made to the Time-Aware Shaper, because those will have to result in a recalculation of cut-through TCs, which is something that depends on the forwarding domain. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Message-ID: <20230705104422.49025-2-vladimir.oltean@nxp.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'Documentation/mips')
0 files changed, 0 insertions, 0 deletions
'$tcKA_z{R)4rtـctsGl8ztr`?4϶5|3M2;\updPbd~!BVoSgVuI˩5)a0/_ ۴|Av900LNJvX._-N*~ǺlvXaeAcثBZ@l?_:b%ZQdyl=AQ30>Q[Wwl`4]y})]~w{t -~3ޱny({OlyNpb=kw$TB,0sB!擵@Yg-_ٍҲ6//0q]Z&\R>j>7p6_/tM*xmSR e͚IerBl?te/|6f'i—G).8MW5[0RkW1&*UWh#;k?Ή:0{бW1mylkQXBI[J*݃䵞+4QotYcLޯu^׋QHk]?Lك:hÇUk}p`:IuzM!Raϩfz7el!'4Ha-쏚 ς\-K[= a({>TNZHp } =_z6>(5L௡^-? %':`2u4) daѱ;pʵ_xJXBMaRJ.a bkstNwjUR`JrFJ^D;y#O=WY}FbEunN i߷ nY9~ JUڶZ!#'|R\D^^VO8XyE~.gsOJ057(L,\zG\TnXxX%_&珬M/)IQ 1tABH{ܼM5jN`-d<pWŝrwI&UVU01l^(\` nE,eR]T=M!DD(dCzm/`Ì1G)FW({N*xDtY(X0LXV;:H--Q&[&A~k +mtFo.0&uڦ6名Rvmpp׺Bu# b 1v@U¸饐x랦lD`!" #  0%I̲C~m _Z&)찒 LP 1%Xh TTᜆPLK.ADh>*F|wX$X=F^;i7FT) M]& "ہET-LEAtino>2pT ?lGsmxlq̱dUR-m&{;I.x_ۙJw- ;Fl:&JKa(Խ0mVUь+jo-lgXPR399tkUqUQ_'=롮%)^M%v nj]90ٌ{(4ګ,[ᐪ9߶1\MsԘεxǔ}*~=*3Ky](Z9Z4YetZ}=COQX[2Iso}sU|]q׌WW.VN[5n;}.u>J8QәmD/nQ$fPB^^Sxe XddCûնCnϮ)/nnKDBe釜$bC{;Db޺W#y>7#dUFa b`q2TNưg0߽g#_,W ܰpϓkg}l/Kvck1շ(B0OOϺxZV ?O3Ƹ\%"o Z>v>Vd^귙&]ѝ6!KR 4@>*ƉVi_nItm !Pi2`9Cи?Pl'Dv `X:1B1%\#.lkEa.%RPEP.i6&Ï{?'-Uy)>RFD["GbaY@ҢOKuX}*:iٱǐEM^Q'k\޿u|{w,a.:ތ+7餢5FR|\ u.zZ^ 凓w=}uׄGn-'-vy)^kyw6Xow; g9kN|.oh#f?W[/涼嗇\sJ[G;C+{3[z:7QY{4*[ CyMK {gQC%b˅` VG]|_ a{2qyT+_ ʋ9 ~͘Oа]q hpmN4ߗB.ٺț1/M ( L!{#`rV._Zžr fUx;Hr{dz'cXan51Ƣx#JW\yÇ#l3}m|O2w𓁸ɥ?K[}oyqE[]>ܮ)5r3ŭ늕ne}ޓz~|z?oCsq7u Քsw7l}hUZ@q2g7:ցL%<,L6]@ק BgiQKN|Ѹ/MUZAL,ܒgfg2M\eU".."E}G"Q,aHH^~5s2=.(zj.hX/g7 YH ?OSsN&uS]ehFh rZ)h.Lp$b.mmuͱbBWVX#F,jXՂ1WN8U gW6VڪmUVgnsmV5obnE%nlΓ#Gx:;W6VڛnI$6m$R[lI {ML@ Wv[a*..mL\x$̂n#;XYhewn638ůp܃I1ƫrjqx9m+keZCs%G*å;![jC`7vmsUR[e]*Vq$ u5&s'˿",UBVu )\s&y:(w3ݷ|QfQX_I$I$,gV{w+ JL :|zn?Wٮ}(j1/2W= u[ ef:cϳ<_ҋksHsT$Z0ш`"&HˆU\?Zը#Hp(PDT5 G~{6Z( RDipim|Ju`!Y2g^>q8@wb[DDc: $?ubJ&k8˲@=܍ݮ}O,'V##(P2ge]U/!Zڈ{s>_c3^yDRr"~+=v^va?*\V刌$M{|ݽ #!A@Gh0t?<%>߿ϟ>;Bb@NoHI3mp[#~E{.zag>2ledž!5NR lojHcYI\TTa'$` (^=Bd݂~ڙ@%M[ T[u@_b~ڕQD~IG['tx:9!0l?r(u.e1 BHRS or{DEcwƑ/P@Y~|"qYUV6(fmbDļnX[]M;7S CW,W7KZSrȲQW1˼ꃓe>Cp}7Y ^uws)"Ͼފk?F1ĹS,kk." xwiU7KԒ=$Xi2:L0b1J yK{t.H͌ LPb$u1qx4z$/VkQw4xpɬ8ѩGAh7>wu~8Fm0vC'RmpӯgO olY aP"`-Ȓ#Xmh#MhAjL_}MFl0f*=|v) 7hpf$UGӺ\2źY|MG1.e[DjuOk$}px=>oiÜ`jWā>?KB mߜR /"_ Gcp_WtmnS2052; RY0tr5aVP.;!Ɖoǿ{ i఍0 #>E1$T]>Evt7.ڢ DPunpFpf@u>t5pW_GEjPLwFAlJ_ ̄~_}'״~洍harE|.B:":rkk6=#*q-P1*+G_;X5Up2О%P9IƂ=3A"DAfz]^Ӄ[M?8 :pIm#dVMK`\D:]|lM;4~=c@#.yo!vñԳN:SV >r*UAU" `D6(8UYKPzu5/(5fd x-mֶ@ Jxci,$[XýQ=BE9N<ԎwGLW_N0(.x.moL 0A0.FĚ ^ydè'Umů.{kuaRom6Bm,7! 9ISDi/P'== $N. ]t\a[CzY9.^cFHpzCTtA &zޯeupTŧTcu#HeۧX≃$k~v%e#>=8YͅiM:.b:O;|Oeiϐ$X`A??) }g8:>vd]VXQEn>(x6}X{/ƒ3#WY-1ak5/v07(!Yݾ==SZ:ݔZã\ݷAݜi [R:HŃ3A8OZƟ~n9Zn}~PLg7sÛ />XuJkM;vou@B/l'ZݼN~k3 R1$tH)\ {:c@z(O-G_yeh?/%{&x8F2Vsp8l=F JN7F8X et[֘}N{nؘ5[q|)[bKRm{O* PD ެI ܚA̐n5FSzRVKjrlDշWlkn|#~m-޾t/N>gθVB :Tvoc2}JX7AȦ[3C ¬,p7]3z  d`ːS ĜP.u:@aK ()畡 mlӞpo0 }rzza2>g渃,U$2g!'И3C}g4NJ:X W)yiënPn7X6*p%<~&r%͵Ñ+UTn㑃F1/" (E~mAe? H'E0;pSSZKbP'[> &$P4/=OpO-P~}KWb",^!YQr;^T [YdyknbMDfG #޹1EQc+="dNӱ~wBl\g0⪥}o\5N1)gy~O9˧;]6IKЖ\a%Yo즨 ,'U,`*_Q۝[}k1Fi}]^F㳎 |,'Q䋇͜5sǁ|y٘w.c.oUo!vpk/z^G:"'Xfuʦ)toV(;Y{z!9_kzA! =zC8ЌDTqlg@vKk >c*'{UT%)Uq#a-D]w[ C5 :$'HQDlU J67JTP1T@.uϖEa(WV6R2xm7MnXua/m5T_K b! ,o:aG%Z߯/=f Y9<47ܑ  F'E*-|K)D|y Wr8GKLs  {q6,jXJM=jOu$Czt\BЂ6yD(C)BgD:XAx :^Ja |<_zZ=>'nܲ%qKo{YmH|ZQK\e ~uG4q6ԓlGOGo>9A'd=XKHu9揭)MB^͜4̉Sw@ח/JOE l֌Ʉ5~7;?ǽZN"H琙\}\kBUt8y:G9[?J>~gyFb,:?'W@Ѫz'Gͽ]gN4ssh oW-ϣ9ݭ垜-8[8NxIscsڅ>c>S\-.9続j|N6X˳/j5v{[I},k#q5]dΔU0~<(vW}ScHR^n>tqeɂOx  ϴhktZnݡSnhªa "moo-^·aV^C7IO?f."O"úOO7;lQ#" -7 (8s>:Vgh[*=+v?Gk@ksg; $6*d(ѪTR 2.Cп-l;C؎AMGdv J`'N΀pVXy@u2֤N77/B]P vtr{}C|VC "%y2u83&,C̗:tI{Fi-@7Na繛B+RdsoȨdjВ}" Y_+l臘_/ ŘQOarލFAIQɿCotĆ8ݟ#!$\B=Ș :{Y460Ql3aF%ʍVsla/2#yD8 Z0 ;x j=qc~fKAE1tmV 5p~xZ݅i;H Y2!m@#Gp.9$4=|:1]/)th5*+?<>B<^q@QDEX࢑_y_`~Yy;%r]Rɶ'6'-3 _V~7H$#醨A5WéPoC[>'6$ g=uBp LIInMhXhWT ӳ;.UQgnEm09Yi as}( =:sfOFg6@Uma6OXj6G|ŧa :m%Pr5CbQQUWn])el嫢~&>E7=5V^D@R݄:$cnMtY^Mg$)kzVX@V@u1u%b}QXu[ef3kh̗DA](ZSlzKL.裂JG问}vk7Sooi4+Q{ W7Jm)^p.]Q;'ߖQCêARAau bՠ9V[Xg FfXVIEB$Wmjpc8=W<5K}Ha cxw%l rwwN%tʌ zwAŭZ<LIk[xi=ZԵ:S~ݳ.[q@`A0IDAO.Az7`uǫkkN̚Qnjn}h6v}ɷۃvf6u;szg7}y()!؎/'˘r{55Cx*#WX}ӧj{* ֐JH3(Ǫ3}=3qA_Kz,5>8(&G('S^~.y;1ro<ðͳJd[lH/ڇϴ+N\ wш8zA~~}W%O@fVJ)D ;;o艐]^wkJ@TT_Vn|nսNuAP-@yEU">!@no V0w{@3!d>CkpԘL gc2)tQlO<=t 2V.N(/}Tru5=~UhGX%;yu@2"66&c&x]6W#;)D(z>ĪOͻ"b0>NI=z=RE[ IU(($κʺ';=/u ^p*Hk ~Yc!ayrA]E D;!uyí^ka}3hro"}\a2V) AwI ai%fɫ_x쐝)2TB'` ToA?[vz>Mjݝ~]L-.x//O{5}o^+}4~fvyzw&"5|H)($AH>%ηN+x@\&zJ:@P)M#uAw.w۝ 0z 9goVGNI"zp, aߍaFT㑷v=(ս Oݠ *,/I@ywXAnfqF:>'rpZ8b6r3xw _gcU9ڀUȤ^5dGΊ;S\jA1ܮ6wW7Vv2Ǻǐg?ǟA<`Sby.sAEQ}l%`@\4&̭bm$AA8c#j4oiZl!T2$!&sSO)P^a8SNw?; ]dž }>;¡faG<(>g[Q[jJX׳ ;\ t7ιr%[3h*AƂu5~iwD79E~Ϭfړ&U`=uu'^Q=Gia#wL\+j#$PHpU׾((ہA;5 8SfN@#ikU]@8v50#Q![$V jkߝV񋷄o>4~g|v.OO{Y7l^t~24]>LcKZFԻ:Ѕ40> V0>|[ӽ2۠zga\9_0PO`Q.bnDabGݏ)`h*%O2tšZck )kʸ"~X6ZAfDX px =aP5nG@.kDwsE;D;QAoc}.2߽XŖ!߹m)U_T+8us},߽dc.qK'Sg޴qt,薘{$+ !D rwh Ē.ֆcx쟏]cq9>40D+Sզ`Ip:ۜ\La Rqu,?5BZkç9YOӓ n\4Z O=[A1U3Eje>h3۱ꛣiwjn>^W2xVo 8έ`D0]z`݊&9A>wlǦ;nQ#U֖tKV9. ,>2;.XР_[A04!OL:nrE@^Y*/wX`+Qj2:nrs_ ƸeO;8Kex<\~.ї7EPFJAUk^ pp^󯊟!Wp@=Q^$p]S.c#%X'}:+zVz-* 13_Lه[R>6 VcWz>)uqbʏ w{Ϗw^AGP!O!)6˶# *eS6g0 4#j9LI/7/+ Ƹ-ZȟDH1M2bevjIqf~}Bi;G3o}Rd!DbUr]|uA8M;`%p*J)BeTBYPA(P;}wm=o.f^0J!QqL:DH{.$~yҜU !|7O`|ޔ|=;?1)7lBRʑ w\U 3í.#qeżDdUũsd"8DY-P^$/̛λMF :T3q< &"|T:0M\M?7GĴ.hɗv[]9Az6q'aƜɯ:X 5/DZIwm˟ /T jrW`'DaMӗ6ZBf+rB(_`s_̗ڪUeO m/Ӈ#Eȗ'4u`> L88iEѵiMit]l^ڴanma3Q~v> ƒᕞA˓iiJΜHJ JaXR^ke0lsӱ,i\E}d~\/~2gBS,ƮH]3R;(ίT0u*"F!,&8jMhy4JT[<yR"eE%R@V[nC]*zd僂[~?0d%y48?϶5(ƶxm7s7O)Xc^ɉS/2ۄ7sDgO4F}V0D$W/KT˜C1r2|>g@09ĜX97 m4)UmV*@XדG:kؠ ~,58cN9Qu誷;:AD$Ln V@0c \ٟ(H}C_T]|ƹi5^0>3 aN~d/< +L~v0~x߮P~O$LC尵`9>@"ɘfա轾 u ] Fפ>fw=].JV.NT'WV_>פ1ST ,|K2Gk]Iv~=Pa#p~:{`C3QG@Pz+%CPaƋ82Bd\}NRTkHIC󖏀}ގ62ٮ_(U_L̨ 9ǡw6 sg|.`+]e.X5rӧ6^EpJr]Na4c", g K m3S y0z8!kY<e[Džg: ޠ^(Q࿪`/C`GkőPyQΛ1!&H,2L%E5 -d>|.t>'Gx܇MqK,7OGJ` =}<=ak-Wb&Y}UỎ'>l3Uᣧxo1 |ыs :_P+BDkqŨ𰜓oo%J~EbppҷzO&/w{xE@]lVQp=*puovI~c;͙GuxHu{?~)R܄6 w&d^p @x~}Pk}4%  3*6#;YKvwfEϨ&IshbiݲJ`}!#/71RQ RC酐0pH k_j 3ud|IFe+?*ОrUQ*X:E#>RC:6;y [/N6Wk-F:=vcÑ4M>&+Հ> F-;\YPHtXe&, Z*䗖/њ]}۩ZI6Y5(rNȩ9`3^GD3RnR{12Rv%Av>`uERI6G mU[a׬Q*V~`#I,FIo۸!ðlg/ńDJJwꝸd!0Im8h9_f;Mo00P jg-6="PªDi|֪∴78+Y ~D;)7ؤ(^j1iڑ`\lYT5E ?w'9EǦgr6~?%!֪,s:arI5v]GoĄ&i@9!> K^wjE*\LDzAG X? O;|tqY.juz8ĸ|Yp0 Ȇbn]yV0ڧbCB [9/|q~*"r- ]T6>E (ƈDέɕ|9">\ $>my"c_Cb@/1fr ҭ8KQF9?w<c^# \@ q-*ChůŔrDZ!D$|qkWYP^u"$^V *iUi;$(I7RluWۊ@C)&(t(0|DzjKhX$IM{U9ş07d@@/}*L~hgן8 yiD׬ u09kP95`@h:tf!YOharh6sSw\΍(p}#,ViHjT,g]N0KBeg^w'L)pdQA'W鄈xn{^y{.Rm?YTY9dV94A !~<`.b^iđ& J13= 31F?xÇ'Ѫc{S ZY0,60AX#g6  -k¢LlߺVU\J{*/ƒyI61v|q?w#m<~[i2$yA`!ݛٿf~ۛ8ygXJ zY@cӰm 2BFC00VC~5tsMIGGٱ"ntJ?nإEVUg. NG<׼A󴠁CUGድf<I-PGg=S3_Sf.i{8`t]*3fںu'ƚǞ8 L%0{Qn3c(\UB=d_hOlM]dbIzS̈wע<A=әŔ!w-/'"S:CʢW;ŇlAK6Io?~O}&9dHX๷:\G+gZplTMΰֳ`qޖ9 ιJb8s!3#BLIYְXˡa"^kٮ-MڻtK0UV釈>aFCkR~R*|~wozɋ/fk@ )+$KȐa u}TY(|Q>Y:qZg:BIL WuGb:GDXZi okDu/ d56r+fB!W@ZQgs9F Jn%s ØKQ:=W. %[ʦ`߶ALL҉DW- ="c[HwbvLcJ<9&ƎڋuIGo4L]: *T|KmmIfr3ێ5Y"}b pWBHݿ{}# ^@$qr^L< \-ڙbԈM,K:nZ%I-ЈG\2S֪&lC17z"t_EM=:SxA"h& #&5c+Lһ--ܲ"gp~FE}o|;lF#YMW|D{{iG=f. ,EǠnѕv P^@ G y4IK]okҞ1P o:@/mZ4D) /X@ }u|LO]薹f qgg%\.o[L'N]Au? $D/= HU,:l_È?Cڮնѡ L=q <|6o7"BzAbI(I Ug ^w8F0HzpsŞ6خydU@$h}`qM'∦@#Q/ڨ 3eӈb]p-᮷^ <&ηQȥ6^o ao,]tߊʓ)?T]3ԢR=WszpM*$˜əC95IR'oD`R([, 2?"_p|:439T< TGĈWk$ٳRsU掗osUck-Ɩ:>'wOJa%CFD ݔA?LP8GOӏKwH\/r ok @ĂI0pKtjfQ|vݜ:dӧ}׭LSzvY oOqJԴM &w 7h$m@9|~7\S<]QطSJSٵd-Ajn{e1s_̆'x~F_|rvup7⛕:_ŭ`]?=|UMKya ktF (G!Nh`ۥs JXt.f)6pmie/!G|2D;S9z,/t:'i AӜ@29qW8ȪYYu DBAP>~bwsOhs!Scnus԰yrwT~'~ ߘɖN$SvHI(0kw4=pL,g ᮝ'}5L@=3"<ie$3\;iLcL.dz&*m-lѦ#DLBly*o%zգQN-3 ycɃ+v˨06e&΅yzӢ3(p](86x,̢b_kEUfKM|47a*kFsoduÜ>?=lfA7||PG><@P^"K +0GxCÏrg]&S̹ wv0E2uPw={*D q k oLXfP !ϓ|Fx"58YifFP6&"8zbһK׋cE`h&1# #4BwkB(s8Oru50DC*4%*tf.ݨ[ [ǵP:7Πul8Gw1{k@q P$᛼Wi$t!of6ӣ{T}^[ ގyb.HҖ÷bJ!'AͻV/R&îtCa|":wyIϵRjԔq¾|gڊvco# To]25 Qj</CzU8hv#R j"5$CV7]vC pט0w.p9j!f-'[mjNU1N4f\w&5L5"ӼX}_NUUrDD9٘$Dܘ7&}zD3q6==GMuNRbÚ-ާТgK;a$9s 78̞h^(t*ZXDB d=*=8,A_ǹ닞bo=Μ]mY7ȷ?}B~gm>ov`*Us˴@N7ٞZMcsn}z0I|^k ࡮:$9„ (,9WUOFglCJXؗd_Ѓ+Cunp5:ƫh`; v7-z~h@s0s$ŒTN6E:؁ԱeD4IHFn4|Phu:REveZ>:ܑz(=Zs{^hH!a܅5e"Ȳ,QH'ҎwÎ4bDk>@avYZ@A) _7o6z?-K2sZM.˃`>h;\3i>/?N+MZO`Z T{fDFMt V9= QoV'MuJXEx=[̨b=Q,`LZ]cnX1 8;2͐=1^~zh/<*}=We'D:8+Đ5G9]دcT_}mԌ#PqQZyE炊7Q "ʨ}cmjxU*nv$"]JB&1nRgQ㐷ozvHiT>9p(1z$C[v6KGh ɨ3,foXOr .PsRN@s+^3xD\|ebΑR S>W_>f{>Qis҇%9(V"$FR7vOe=<#yu5j~ۤ(eW *ɡA@7l( : }a1I  rt= )/!,1h]Ӳ|?A!O6WS_!ҐYꑛ D*ꡃ`Sjh&{`;<-ڭ{l4MZ-z-#$"\yڱڶ2o[?Qcwm JT9^Cu| ^#,s|h\PsyQB[37y}m1HarC_W?STB_>[EJ_f$l얭 gx-%'Nݓ_JP8 t=KNZ%疖7JJ.d!!A.W7V'$QhDj-бxeLd^p{@\?(_s8t6sv^3~xȅAppO j#-+k(}tJg;ΎLJelŅUv.'¯OQw "RB@0'0hE W!'G3CZuogsH}Xy5qHnq)T$SXbutD gu#םD_(៘slp_ҀԱEDFapp򈙡Fbc ]*3⫯Lʼn !l|F 5L>Z533짚Y}d=@Ҡ;i!T"D 1íU԰|- 5jL > 2|BD7O#NN@/z?f:!VV?Ox e~QO>ï c33 OSZ9GSiAՙO8i<.V@Ȅ sV9CH{byh/Yyн *% .D"._~zg0!?wyxwRHqvn^עJ&\nDjo3@ GSd&!~V˄#Sk3ys*3=nj< 4 Sq~JbPxcQCpq;R4`4 h‹*C8"@R4;$’|%h>DꐂԨɗc<wXןc N(wz,#+:mCELTH,u &}l9`8JXsWl*hXyT`t UHQ_~y)ֲv9I]=\JN$Roif:s"B2$"Ϫ~P}lC^#5@ M):׳J#OC|o!  I"48w8TW=2kƑaƠA9cUz~OHGʽdYJJM0 FWD{$F pj4K ^h2&ϩg|9N_^VGyTW}ٞLjј͚&g$&3;%եûۻ-"_&a sOcq}ރX÷~,tL+Q{6WYwr޽e=/$$`r#53!4d@gq.Mt*Ip D"0N~ ugd@|yXcdB5vvq/Zᖛ'Kp>npޥ3}Ax.Bt> gk?gݥ'hBԵѢw#Bdz?|'x|TEBqg[jp > !N.~sS} )"  QЪf 2s3`}PAu.8(v`[hA ܛ6 N;gGb-|^vpky(~g--$yz)W`oEkAgMKH\0pqm""&Y^ 6{%#ܗwg "&٭g1ցb5`LzUH=F#= ;D2d/G$l&wQ:{0Rć'|tD#I?^ۜBڀU&{q2 !C~{v}YB"}Q9ӆ$^ ],gEêѲ@:L+Cm(cÔ,YS1{„jH[X0%k/z|L`ah\UN1:9 (x,v0F.:U7HZ{rfsc=_.1= `BqdZ'yHwЭWݱ$>C''[k˘/Ta.YVJ7<K.Jv790iO)EnjВ*hS]\5!lQ>c]؁r/MUw.1l:!b "sgpo/nTxelaSkNA`NU8[^8=(/X7OÓy2g37O8ǃ%Etf03c9 ڴ+_7rPgufGoz޽3$͉\-sd_GK㬨f̹j^QMb BR|jTG_w][E[\6!Lu|li;霺LMʚUye⤚4@%އp\RhɔorC8U`#yqjNy!rl1K!|Z䞴[$frskquf/ d9P,#sj ]9[:vwh3u쮺dFPS|Χ_5cx&s0AFlֵ1pNex r.K}wvstVƢ^{CV: 3g31c]ϫ^[&iGàvT5g]^eULVf:7X|n jYk |`M9`ꗌ2R-uJb<=Ȳw&(E=og9MpM#;ϙ֛\&hО-ܚö84frΑAA$%^'p$8k|MF6f)cAG>ԵgN~1tt$Mؗx+"VyjkfLɴ=B*\H.3$otor['fֳ&&!5&f#3#Xd׻Ȃz(Oa4Z8bG;w[e,Mm^sMfӊ*3fs?{]C7מIY"kR>ަ9uM=t#z$ᵳI}x1·j߬qNy'ׇA ;KЋhbqF\ 1q`B .Z%cQ2=gvO<|-HiQ+ɩ$2)~xq_;4h_gpP]E(:&Glc __ײq)u Cm< ˂@ryLDNRo{@+UP%Z3B2Yև-cǂp`H H9XßL?k\GϢz[pk';x`[[Us%T]`uEHz!BxXYm@fܢ_J$C&/Zᓤ8#3oyɚV<-01#XLC}jCx8)fȲ ec&]jo_Xُ{#[aJg;h~̯gWPO^*1Ys~|7g~[[1fmV\X/˵ByRjqkx-LɔVI%5.8o`b&߅jZCr s$qKιDSl5|WIZ[Qu "XvLJ0Z`I.4 `*nXS?j6bA0Kak+/3~*"Q Us?!o CqDG3lҷ D 2%-"YˆBd.K9=Æ3U/>"1|Iaiu*ئ?J1D GE\%ɞ5Ǹߩ79U]eUdu B*/1T{3!!B4ppzWy44?_Hy#Z"j5 w*/ȵ$WkJ! hz s&@=Ez~P]oC OgP8+q¥xX.NrPt=3,WR&˭ȌP[,i#z Q F ;<<sPG'(p%tє2ǽ=8 @a}b4b9,C(v`{<ݱm'e&5S3b]N$^E֭XI6m.w<\2{'ap"QB=k w 2}3wyx8`.U'[5eWo!Dze+iUg l|_յf W-y(YH2:UuÂm 51tЧ~1Wăcc2^9rCP0z}Z< \f,zn1f.\TE('rsztC~%ա>}ҥip>:Qc5ğ DjW?sO;'v FEFLO _2`f WCE@.ו+(=sú )LmxX#.uT }r ~w̵[;?7i.J'CT_,ffyذ)"1Hnem6ά}vm p뽿>Bfo) ?F}IEt6|mB!"L!P2ʁk^Et!UCuDX {g)L!xsR 7JqT+'kLk5 ^nRp@R@/Jn#B}Dayrj=PZNnN;G8CBCD"tj쐛)h[nPP:َH@]b<7fH6`` DŽߤD[p1aBgTu\!ܡBsǢnPB=n JUsQ趀E:6P#tIrv`ATeq |a @qИ K; 55sPEcQApɨ 7:e(uYQ5]bԍOٽpֱ{ePVK!vTbejElB/20;f4>*g>GSGŮFu_7 ;uK\&\~ q5O5\nj3v#Oqf$RLG+ݗv:/=W[ܵ@V+,60p(5xl>sUGZwXOѦq.{Z "QJ,P+ S[FKPa&c/ytUwG挆s`wz:FN6Wڍ9D=iY69_ķ0TY70G|9̔l~79brޥq H^4HĜ!^JT{f˝ ep<&-!(d',Pf;/(Qih%S f]٣enWZEmሒL7AF{X;aG>чd}葒.Bf wM?ˮܢpH MqP|u6f̾5:H 5$w[ՈjJ6816A#8e1R(ēNr[kBJϺm3]Ye/94U}^ipiW\1T )b*ng09x,9z)nqL>MХLy\^p)bz1W$-RFsHMY2؞jJc2O HgGoZm8JX{tTE60P?9tt?^RUXhß:D>^=2^b%Wy?G@NI%&/pt)¦Uo(?W,lpb_ Lr晙>|q1}`_\(ge9wG DP7PUtW^ށpڷvaI|9VS$~$'2HE$OPO.GGC"E$`2p!u5" A0% h ^rSr43KJCQ_~TJ j3jB}2R b.˗?Ricu*q ̡Y€?'xyӟݯtU`Tog,z JŞGC毇E *ַ?/.O7Rme': ptXPg8ex;Q'ɝ=( ))@>8 "VMµHoeUh!ibEFWp %7x2akݹGk8P՛wQ/VS;'mYȺ7\Yn)e'ǾٚOF]UIj]boS>{\t.\W9m;Jp/LE`aJu^ G7S1jPiႺ__8:,Lv]*zDw_S[z};)cѤRXf2l䣄QF9B,tl ?▵zXoNz!#@ ߫gbߣ@џO~ 2"R;/R)C"T&)N+/vYq^FWr?XPru$ q43%_ԧ#,Potc/D% s.7Ni57(rNW $=3^QGӍWQɼR0u~sc|99=o[|>ڍ0᤿i1+q(|p`!HJHX D&X`鍐JRd{aS;SE)R!d{S {eŻR/ xr ivOvȁP)ʾ 52zr';&PP̎Xf3/lucn؅\qpjkp -bs29]v!/05˕y'?Kw'FS_`ÌsܱY `U+;{>,7w:8m[&өQzYF:ϑ5a /{!D0Ⱥ17 8DhY9DX&k7ϲES]~]5$JHOy$f(O_<<q+'(IU =^.B|rO Y_? KP9=_7?꿲Vt5U_Qx?۸~^canE8;CW=|zh9;V St `'B><w˿P` 6kAץ&D`7AOb/t1i|Bjc+@WE:O.C L '}&<7~G?w[u:m2Qhh  [U,?1Q>l4q`>XK흭"kNNO 01:*^%ȇ0愰v}+TUW_^e˓&@X ' ) YSPAy?7iőO j՘Obp '5.?>]|۝ᥰoNo~*c(yz_0B]v7yGFzF[bA"KTZ_9TH_C#<@A/4PODNS>X%y$hJ烘<5ʽjmoOYV$HH]N=xok/:~igĘ~n;V5Hg^X nZ8鎤9RMG[Y8rSssRyʯ|ꠇz^&VőnƑXmf%Oя#m"~yx_}Duӏ5q @~gF/=Ӯy'J..P~nY۔*s)& mk=2QZoUKw]IZd~3gnxNV-W08SPa&'!ep1uл_G8n+s̯ZpExeOJ%ݢyʏ7pEq\f?{7 [? p&pcF*|#tJr+ݿz?NS-(D3&z|"ۻ %Q~\QSVɊW`)\(eDCDOS ^+֢"IT=LO{_Xl!y&$(*B`::>>ҽ(ïc5m*xb6-F0\^(?Dգ 9Ѩ@k;ɑ/zͰk}1?g7 9sn1mgn9ᰄݳ J]1/u`&M$7IaÙ9D_I&&Q5VEswYGho<|gb?RЂxAռA{hH~Bw$f_ϛ]hyl{z4/>ߛԐQq*:X qiMZ[zs~ΉAvix%7g2{3x'GJˎ7@Bh{l {,eKpg| lo(DmtpKhbr>2S"$D!v#<<f4@HWBeM׷f߿WRcvswXP6\&UoO&lrA.vc`-حJ$s#yK0?iDѵdQ@oxDZ1#3 gfBH,$uE*w *yjtP l@ڡ-@΂;PSp bC7XB"Qd:3%]\dPf@)z"}F|;YL% 3!0uSʀmGM,{;wtS2F$xv>ME˿Im5z" @puݳ3FQo @%jd {ށpG3Z'J;}Ԁ"o{|69!+RSQ9ȍdngN:bȎ\6.0v# #mTP{V*{3b\)pG4.7f)t b=6wוDc{!f<W ''p^gM=[ǣg~~h̺s#GAQRȿ]%۫#:([t`^mpRq+]&E}WfcH:mzY7}D,:!Vv8jHBȝ+Ļ.{$&c،`n_ӽz4zrZxb$U7љs[ dU!DL:bB>sn/w|Gd:tXpyעG܁~}};ap$ws[9F[tG-􅞫aO@G+)Aק3vV?ΐֺ;8i:gD9uiWnT0iT$nhx W# {E{.xR2FG#BC-w$BzsB ٛr'ǽ(q829צ 1K\T,d, Nm˛Oڕp}1MA @{zPӘjJ|7֫'8ç?_-%jq^&gn=+gd_C@ho~!7fh4Vް]|#!D$au̡u5>oV儣 #c讎\~PH$Pxx3r:MoBίJ0/=FU:LE`B {UgV,|X 5;ax|&ʭW)Z[;0UOW!BRaCR1u`E5XT쪺 Q>1cADo[` RTEkv^ "SsU쳆 7cC~ܸz[oV;d֡!CuAeH6$f֨Fňu{qq^%sPbBN[9TgQ땝v)ZdqS죣W47mOV6=N '&ǪQ~0mYBeQ7P+B9`{b]O6P ፄ JV5>7}1!Y Z3џF3'i;ASaW1⿼iJ GxşӍ_>Q_m*eBZ՜bh2Lɇ %~Q :$?ΑnGFwi0\ׅrb<<-5N-$酷[`w:`S&Ȓp˱1fz<>u!'dL(zo1Mia{M.)L Bϣ/k~&#ΌJy>p>ah['JZ0YrU;k䓼 ܕTW7ޢ_x}fnbb'ӕIywwNy^1l|>8pOE|b~G\ڈg stޯ[r g}a Q˗Td.՘'qX`';ȹmB/%Lqg倹۟nELV08s D4rmڸD@ m}=la:ArV x^UCņ[ ^ C9[}*l8xgz8<Ձ\*B擂_XՍùуVuQW~l_] .r& ANH(ؤȮL ތЗFeD(cMojX$ ﵰG-$C9b#ỵǍx $kmQj(wesdRo\UhgI609{5%l95{Q t?k5@k A~g:ȂQ;! 3' J.0|Jё)kk ㇢p$|V?M@!LwN'ϔr?k[m!C}HHo'̼pޯ~ XkF1`@h0&z.T+׳SBPxm?xS`6JD|qɚ֋fd$Pci{Q[RC{`Ǥwf@1["4Xpj*` e$[ \#j>F 7QJ5ZF',\[#5f+&n &ߧlCML:HK0g&H r F놼90lM=W/^=sQ䊣(6ǐ6j=pt@$Qyt+]/v}e^dao駝kh~ V>L" `w޻p{Ht">6M.)vaظdrp6` BL'Aem\H=]%7zt@ k]Եt)rX tZf$`a8􅺝Nܫ! 㕖VZXJۀ-lLS*[!ɂy_,sM \=װ8q/ )hs{>`6tP%IHa,]qq.'LO،˿|ku⣞苪̑\\-%; <)8ՔRj0,ĭ6\|EbyQo^u?Wc]2MG[" !Yv[Q|զge6Q"3ƀ0&NSMMS;)r{C+35;K>xu]gSTT%W#ީzeXbY X͏Ǭū#]^o ǫG"S[ vh6ᑿL"׫WųTis%U٬tɮ`D&3:SKr #d/emH @y|髑-ؔ߿ (3T6K!*hZjf9~_D7qv8n/pUI]9/f<רYJm.2y範{|N݄u4FM7#e  O[t.l3k<ד ^(YcgBwW_D8-*C36rpC=IV0\G<;a?ԗn$ U{{q҆#_<ndDH'1H%+$}H0|95_vs@=4q1ݪ rH<[O1'Y?Oڹ'ɎkN [,k% #qt֌w0,wˊ 9}M;oSj`Uۭ݁ D A'i  ۘ)ޯsgxC*ikApdž9%ONYr2𪥂žmPUM3hfԘd{ 1c`H[`8V%.8 E5@Q6av@)w:lB$ \6%71.TwJVzQ}U(OJcGRKšnc6=fyO?MT[g~.TgmCBk.|}T-fcǟB@H~{!~XCmbŋmՍ~ei4|(|)xrH}[webGxe!rC tdDձ˶#Ƙ#nY=yui:]8XDtO࿨9y KN[5+6iS ~ݕ/匡`=UM>~ 'XcM BR͝; ?t`$N ʥ#b F+`xrB鶓Y$Z!n !+&hl N9u<̞)V*Qyם:aPH 90lA3.fU?Ʃ"|=P[EQ*Hz-liP@z2= ! otPg0K@#1!;Ĩ\A]{}Gjn+! / Γ^B :lv2k  Tn1.;/! cz9Mj o3'^!SCl dihk s%/mF$xEHITQDTQHQE QE QE%TQCTQCTQH4PP4PP "UUDE*WeU/55 f:!nD0D!` //:`CGxp3hb #};$I33behU2@tx`넾՜n?@`zI;]nbu4 6)*HFy#CJ!(ץ<g]  %4T@4E PTUUM*ЕUHH"% H (zGs!5E|I3N&`ڃ0'DrեcjұbVKʁlh({Um4tʫ@RK9ɶ6e7+&Vh ]Vh Xڶ2U*svVvY@Nՠ(4cjڱY/?d30R}LBu `=YMП쇃 R1w9@ Ś7F y4vX&!JzA-)vy.ϖ\%f nedWx)9.캳ֈ%gjwx`?<^3* N!Oa nIU\s;2NC$<ׇ5Τk?ðO8vzz Eꂦ\( :OpכWC$G(s4%C7z@ d](JL F$I@edAvOQʡ- nf!\:5p0bt+XpԞcg6m4a#bI6zԠ-a:E(rʎ >](\6Ɏ;$Ky]@Pנ@pn9nO>0 HCHp״PT@ {P5ȃm`&xhϧOEx$ $wu9{M$8\ k+iBfk2=c3} 97I l'5 !¢ z"Yoym{P*RҴJR BEhJDhH&$RB PRZ9d@ WHS@5Wy"U^&@1.PM~F {t^2*`,(0PAFtBSJH'`Ѥ;kd@ǶHr`ILxC2KUe~@߇Hs(R^,M|>& uc?Fw;ȇsJDuKg5Dg>ɍN6 bm@@Ƕ@k`=QscAGf6X>k(\!EJ-BeICvw VL0tdjCErcD%˻*4FtZ7GiBp?]/?f0l`t3p[J%J?rGQڗ.}:$<`}-@c[cJj y+x/sf Q/m= y\T ̡M՞,>_Ƿ`W:enM}@8 o"MD>u}.Y>`4!WKV-9= nsH!x%Ž0r78Z  [emݫ0JjN_9ykٽ~?Au}rsv^~1bժ,u rw*OcB 1)~ VV%r{+l-9z;==XY U5.,۽6?[HyKY6w |y=K搰|HP"TUXD!X~2U1hTm?Ҡz;uxJ^,I.Ai}}LaS<ՙ :1ϋ ujU-r$FW mm i׿XMG7^3kRPRT\ḱ5刯+;.TNޜPf<*I\I6($SVv&EWn @ }rw> 0G>NW\@펽=s90ʒ&K% ;{$}vxZ^L%%wP˼|,c7^ ,Ղhl6 Rn]ASO-gLZi8*x`? wѼvWc+-C333zaפq׊L |?7凌8obd|%: ,ff.$>uȑU$(:fEnr9A:4jqBq"P'Lj# .sB9+OOaC5f|f6>0ϮS9t雈8X;c,{E4RQ(9ǹQGg%(7ThK(kvk?x I*ڸ* KJ Eb3)dDO~[Ux5Fo9g/`p/uNyKa]&4f4 Sec*)L)h>q #}~Z5*=w=KSjfhy1"_ЅxaeUc -r@8]CBR[QR>|LS,X*2`>n;)7;|8I"@VgH<Ox .H@sm–rD9/T I㟳d"e[Uټ&XR Z{Hд!zr^`95?}Q`%y_HsG|uw+i^uܯ_@q  nxU@ZdD||W/q(?69csJ:*^.NYĎG :sdлmfKQ@?Ƃʢo> [OA!]4:QC` ='ǖծ>L^q@J.ضqeWǪӇ3[ 5ٯe5usyL’2*HloڏZuF!G|_`r/|;> WgCV\ǎC333L+y3F/eKu~b"Be@e^}s224v:<-[[qEԌ6tKZGSGi1QF@A 0 -Ųl&zvl[|08*ч~r9ro5vI%W?ޮ7;n޻ 0@- tC%q)Uȭ;wlb5s-q*0s =gZ[Ff>YoHHHP2sfwy.o|1\Zf8S`K2p㫥IzFh:K׋,=%Q'7yB̋ϺZډ "XK4RD`7FavvlǺtZ PfI\OAPEЃX)U+M8z0Mv|Oϛ˗'   $D. 0ߣc­iL(ybnUc~ѲPɨh[uE"|xz,:yߨ@j3ZUz{+ׯ&TBlkrЇ7{;+$wYaTNՒ;ķ$MC2#Z@0j/9{>|2N`R.˿N}a% U )Ay*@(PH$AUB.TC<mI~KqPYp"!RWN)Sڭm( ML"D_S"*ۿO}ۜ(P&A۝fd2}giN?훟錨FOIiOۤ,`GC%F?wƌO3[0x 2 }wOlf|S$n) UO%PYP2|J'UmIM0v'/1!qy'R,̀"/SyILk7NHi*}о>tBrY}ZNA*ƗW+_HpKǯِP29 %!h 'C˰ @b)H$zH B>n6b %B=DCF=Q?V;-mwwS<ĒK"@AJQ 综aN/ScAC7f(ֶD7.PHxxleń$fsJ,RD$NDi|ߣ ݈g,؍h>ndCai_ADճ>0&B&wϦVhܞI$ c!q!p`Bqbczs9-fY=35,F&ĢV*|SA{3oVv8)3Ƣ*e: Xˇ*ou,fXC*?]m"Ep▐{)Q4nOhM(E)fJ]`,/ 5%Yb>==鞅NYܷƱBJdb\Weo<Na#%b(^=nj 6U2fBU/9|Uۨwcwip*m44$ƀi &dB<`- tbJ3hF T`i5{!?o-: $mlzKhMg^,Z\x(_s+ot6iC~Kj;už*`>R~*ӟ]l-`Հ5,gKVL Y]kHlvc{ߕ~7DF4TDNe~{{3L`ѦϦ2'6n/"Z;a#/sjFODDDH)Vޔ6Mn2SMZv+DVsI}u8"swliPsx