summaryrefslogtreecommitdiff
path: root/Documentation/driver-api/mmc
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2024-08-27 08:50:47 +0200
committerChristian Brauner <brauner@kernel.org>2024-08-28 16:53:57 +0200
commit57413d8e172c10c90fbd91f98d0f7d8eb27e824c (patch)
tree85ee8b00d68a0adf810bd4cdc04009c6f8042684 /Documentation/driver-api/mmc
parentf951171044762a0d179caf9f1addcdbc7cb533bf (diff)
downloadlinux-57413d8e172c10c90fbd91f98d0f7d8eb27e824c.tar.gz
linux-57413d8e172c10c90fbd91f98d0f7d8eb27e824c.tar.bz2
linux-57413d8e172c10c90fbd91f98d0f7d8eb27e824c.zip
fs: sort out the fallocate mode vs flag mess
The fallocate system call takes a mode argument, but that argument contains a wild mix of exclusive modes and an optional flags. Replace FALLOC_FL_SUPPORTED_MASK with FALLOC_FL_MODE_MASK, which excludes the optional flag bit, so that we can use switch statement on the value to easily enumerate the cases while getting the check for duplicate modes for free. To make this (and in the future the file system implementations) more readable also add a symbolic name for the 0 mode used to allocate blocks. Signed-off-by: Christoph Hellwig <hch@lst.de> Link: https://lore.kernel.org/r/20240827065123.1762168-4-hch@lst.de Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'Documentation/driver-api/mmc')
0 files changed, 0 insertions, 0 deletions
eo]H`'ULfyȝ˅}~2JſHV2IAh). &rCrdd$k7-<[ɗ eqT(GiG@7^"Ý9)#d9]/#pU>_@_~eBȅjZ{7?x#d+--L 0hd,ﳪg7hg>_'R.s˿}by>+!c,^e5Gsm0̻>jŝ8X(?~SRkeFu'E._}\RB5P>g8g!˛ZqB?~OyJ#MF LG'%Q5?1~|sۊG_ڧI Ww>>2v=\gӍFfũ@^?Qr?ʣɨK1t/YA9S!uK ~~Bɔ+J@3u,/cE͘*9BsW|MSՉAYetqv#_M'V1 X?ӈ׿ga(dT!ZDGItĊI\AH4N|ZOfP6Ԙ@ڇ4Z : Sno.ʐޓH?+tnɯ[m26Vodžo*BW㰑 a֨ď2[|Cߧx0>գl6_[cw^esW6 K >^"]Ra~ e"e-NX!f~, }y"& BJhW\Ao4a v ,EUv@W̃/0>3$bJfNqD3@Jb( WB]vwf)23â|OP+2TMMƣp܆C8gb(?t9^W ^k{ۅtJTPX!l|.dǛ>lbu-'Cv$&֤Ba Cod"P {H BóN͝kevmQJsCtKpT ?QX@-4~c~Vͳw;8uk5JP*n=!(FAqO}`eߗ!s qs|6tsRyB'ӄ 1?ܸ}uUřzt2~&qLvTt*Pb lIeo׭sD jbo-)&{všGz h9n2螠9u_p{neh2:ͳ \109Gph=/uy")*5 qGAۯT-n=/ GyN臟$/x-D=|uAy|3(*?0(v}UुVej}i~8̧utooMs?S& *P0QlT-P1ٝ7?uPɤ8vߠ?(a5ZL+_=MK ,2ՐS@Bp HT  L^cI,VtshĚ.4bF7v4sua0m& 6QDiC PXrBLRkÏO.Jn>#+1ak%Gs[ﷇ؂XhnPm/vcxivgtDQ x0Z$:Zem rю3#"kazl\XW]q K@iجQ2@"]y{0-lk]•?˿eӥ˂ikv?]|9O޼0+oхsiViVسίo3ob%9t2-l_ֆ!VV:zvپ3{ nZGën7C%sm gԆ62 ][cttqrkcW U>sm-Fh 揋^s:Bԡ (X,zm2>]Qέ.\B2hޘBGͬ:-gcZCPR<۴T2]Zg%T)msy-9n?o^ZKjx5mz5WV 0FAEb/mak[kwFhGXe {"4q wkλq6e֫7Ns, R1gM4THjU$Y\,qzlYn@̫,X+t:럶Jǣ9o<<ڱn̬"1YF^x[*PARy`jjSi^R[+xs)]ƾ_0k}R+X4U8 _]'`?丒ʟWwMq.G2tm}zk;X]t͈%ќ d*E0R-Gΐ [:0@W}d=pH M."{ao^IWK7 -g :S9ƞja,]+5/rø\^hb4 ÖR@ҏ ׊FɔA&=}5@`Sti2gMj$8h_fL">ub F9~ݐ<5ƖDJ{R{xLA5ARYЍF׎kG[dܮ/$B g(-7>7/]OQn֑yrf8" kGa.P%QF-{tƴ}C֐O#1GJHTTH"OܱbAP`j DLCIbaf eR;|>&:@&x$ tIj(i hcܔ)do;C[$~p H5M#F$D3'+E#ՈlFl=Sm҄deQ:iHAulъ[-¶aT*c Vs˫u(;~y$GƧ=5_loiQE.~Wl`!/?\ņN`EɤՖ+~"RuUo?;oұ/JC\4n>zGRkIIb:YV Nop4pi\!6'}'X K[BT&@2/!G^bbOr z'a)'L8y} @\&wHx#jvhćvAa}f eҝǗV͊|-?SAA`a@( ! K@ǧajaIG)#PDHa[VIʭE<'lfA6G@)DK*܅,!8XOMva6b=sr㓣ϤUuJ/\e&|[ GŇϯϻKnrm~j;n:EAEo'=Sy4oIj? xu]b})#Rg[lʫq+7XCG:,^2!ɯLumjt[^O\˗~>Ih-|ӡCڒC+UCoO\3]/iKN#p _na o(j/gl6M! d-%]XbwƐ|*:<; OјS԰z_y£+}'K/bQ.پț1/] ( L!{#do75ӱp?Gq[s ʲֲx!H{_등1tr,Վ^.9?1|ϝB-줳n2iO&~Q]OĶ+v|_]Sͻkmy_M8㞉KzìR|a?ޞC\|NDH+|/p]y;_}wu-wH]YGw.U*υiɼ[ivQWOq<$*[GZ?%t eŒ\$ڇѣga^ u4LVVeUn5Y7t L6OޗWwѺkO5yX!bpH%;:/ mŒZg?HcBR!ŠZXdU1VX#v1VX##` [XB WmUUmw= O?43Ѯ!n(Xn]r"q+'0MCUZ߿ֵO>yC;sd!JO)u3#ȧ"/Ȇ'{47Bb?UEh׌[6]{+A _Ѥ'Ewa h&337 BU~+H;:%G:ŗWӬ́#X- eeUXn{QUcx똳jEv9ˀ!Z;BkpCYwMX|ߪ9KTF38soͺe[p/`^ (𨿂e[j3k:bIZo%|}KӰ?Nk^V2.ʉzj}xk!%< j:*K *넙책%;qU]uaT.I̧uj9Xψ&x:5g0}z:>>zdch/)dS桦ژAׅmlm-6*^.ㅭ,vJDd` W{42OΣG<|Q`aM^,3_UTrkmA(Henc8nw+Vp/rIq"KN+C?KK,{Hz\;lHtn,uyq결Y!QpSk/=Kbսiê%ߨZFQ+A`/?aW`X)':_u.ͱmIͪcij|sJ~Ikt>3$Dr^_xu{㑃g8g{9>c#aBO%lp9]onG^:"&ջRt݇9t _\NhBsvNт04K aR /U5 %p0]79ms ׸3gj1/~P#Yׯ~ 6u7H &A!}SfGHNhӧu4wgQ2"2 s?(il&Z!1v'y I%xoNWXmP@xg*t A O^׆ Ba4ЃJťl"7wwrE1 T T: D@#e`}c-I"R c"?U50$ ~8_NSCB( AO(=Ae.Ɗ&&Xѣ#?т~*T Q8. +q$ (@L$T5CX;/ M9AM~ ~i%"u7*K19Buu2s$=@;YO,e 2*p >|󁞐I=W0;|d!1ы `vv-' xI@W-_>͟v'[vKtRՀsIq‡Ďl(_:^ 6f۞UTfPzt/T MۥZu&? s0nHHCd_- RHJg@ͰAWkSCJna| IV ର -ď?h:|s?ڔdj7S(yP.AR)z7:Sk9ʫR蟑~]vaQx8!gB8hAGI-H`fW4 8:g1Q|qf8{8D-ȨP\U/"KSf^qkF7A.{Ea?۲tN9wy='n_g2\2ԭךad1ެ*t S*>c"r'V )s*jE8Q)Hܠ, ':&#dk[:mX[gIAN6JDLMKbaӌE'9y'"ݍ!Dքvs)ot!t/BYo돞N? Pk}WO163kv<|E/{Z ;4Hv&o& f#2B bg=@]B{+lt1y1# 㝇GA7s^V1 v'gĿKn;O섄U 5 m4<4p]꽋׾dﶯK!r%WFIf #4`lL5^)N8{m^7?/_oGzo R^_l/8tP%?vltd3:8v~ߟc^>_ V3rOo \{7S# KP8>˵Nm\34sMǏx{l}<ß>_ s\.~-y|\3ddwE{j 敟*pAhjtsO`#9 9w5+ /L+<Rh=RղIDBv{= |ԗS:>X7 5p:L;1& (aࢣyq@Bf o̊| Rֹ 9nx K 6?SJXkW8FW, 6Svq?2|-+*J, GCrw[4:->Ke (]oWeuxv߅҆|)3~ZN3A_ST2%-H0Q֞8|l^?8NY^7H;rq?oL0lՇ6|7Z쌶A;OpJ$Fw_g'mF5m=4}%㷛hﵲɼUsa0A_(guP!JUܫןWRuQ2A;cH=H",>r\cssPz=#ӵ=F0Z,ž=Ϳwn^ZN<)1>u(e7y;_M5v5k[6Vs3v>;(0h|4li`U^m/8x#{lU/E@ LNO~6}tB+ -Bڕݲݷ$B!\ ^:H j(%̠Z؁qvЀY:C4![Q~O =wl@`¼lXd\7r.sӠnRe&0q$̀Ahkf(ٖƠur$:O'uIA_cɓN_ňD 0.4@|0H.DDxKfjhfdmOԨ#f2qyWEZ T#DKu:E>ƶ<;Pk[!wWy{_D Ŕð|7ӧaTM x)[ CA'yJC09#UkK$&²!]V7p . {]l?Z! )cxX?>~aYFd0])G ,)-kJ|~m~zEݵ}bEd 0ݎB9D:7μ?xi._d'mPpQw(ypNco: NdHI2 E@d5;QގmO /5d.@1yWZj!~Y0 m_׻6E:"2/sT*~GF/2wJܳcUsuWy~PM@zᇶ]7GDrf]uw9\_ϋF (+V30 MwTdQOA~; e& ˹Ɍ.al1Lz_n) MgTg_WVO+mG VT{6YIulx F%Hqp L%ccQo±Bgl5?h ]|^}k8HCԀB!c,涾#D5eHV^v m}{s9s|w x\ח>=u p$iGąs.z,73h`^|!xn?qUE.PI;ś6:!I-ܽv"L۽)0G Ŝsv5XۇÙ-}GF4qeeE{і%?/׸0E]-;*vsu( 7?cOO‘ks3ؗgvL+Ʈ,Wroڃ^>o4ooDG.63˟-:wtUi^9jlCÂ>FCH ~W]n4|eQvutNu9iYBGPr?˛՜w]5;9>Dӱ gܐ ۽vǍ1K{w'uXkcA @CbDX 'd@M#m BDT rzX:"}%{^Y9A0Rw+J0R>]#:23Sd[Z-UA8[<0)_FeGnK7F×Q֩ i]ٕ|{=>oiЎQp>SRV* #nX:\? JPP9 \!-'.a9o<{zb0+[^wԟdlL@'[Ddr{PL߇*>FeT<ˑ:v񆸻II>S?+ף F L&@NDH >P<6d9B#Ț_ܾ/ci䨙 >N3}\f ۽weB;T7dlc) 'k9ٔTvBVLwxw!A[!.{@Z#wF(-ѱk~92 ?e T`{uҼ%[@aE}{ ˁt{[f"46BA wO^WSȳ|*7Vs[EwsF3g?_>No?6Qȋn-9g$yUQϠ'.'`,eyVC yc_($G^;[#`}}ݻNKav_e= =XМfSX^h`m>Gጇplv/X;֬7+7Ipf;Hʞ. &ը' O|790oC\_eQ}ci>< =GuI#S|=xmA{u-Ggtr"*Q=R'-4&~Fm#8M`7r` ٫ta 5_W 7n^ bf O?S cɃqh^(ǯ{}_^χ_h2 NN#ϖ>mKNp6:Vq΍ tu.Uuk(ň?o/vv@V7;2^17c NZމBMiM C^D@A󋘗:W{{rŨ?Wg^%C92qq2psmr@D]|du5Z Þ݊ۜad["7qhyBꂋm:"%ht44{JѾng:hѐp 7c$vm,Mk,GG@{.r*$1(`2VuϷ%yRCf8=6)_n_oǬE] 9/6j_sLG10\IH &Tp5)*pQuf?6zi9tl8z%Y[]-|"YseUP`jtj%b dUEQQTUl(̊"(V*Κ3\ {@x)9LPKjo~QټI%{lJ[PɹH;q5n|p?屚:a;BDG{%SAEDp6yU !wۛI0EvD3]:D?X`Jyr(Fv* n$֋чXep4ḷr|S ºwCZ@6:%PjYADK7'cA z9 @i~e[,K@/8-wQ-Zm8;W?V-Nת6eRzD~QJ9w҇E83}d6 r}"Mt/1.B'uM{vO!&T'v_ẍ'Gj#^aۢRp$T:-X]47cct_ꄖo*\30`ҟKI{)`S3,6{W0E 7LQWr>ia# /Sg%e Qܡ_+ʟ׵S܂ uG|=>/AȻ5ql/ Z }:0T;w`Y$}~サ~=/M[ǯѺ [Շ</ } }AB&{;zZي.ȁ"VaB9rF2:VN%~h~/ 8 kl9A[E@JA  !_>P @(=u'Kׁ]^oAz W ݱI/,o7=n8uv{fX\okre`UuOOu}?eKϩ}>ojXvX< W8 V08# fiGc0"qTRBDphsCP[j8 0P)VK)ULP! AB ݣ{ݿQҼy]lCy埿 9-pstu(X|YAJQ $ )0ex~]jfW3a~("@/א{g 8$/4pUr KX5F3{^#+$_9!ݩjz3F3i,`EPns hMձk=-K{Ą XjHFsz~9 Hħbl$^wmnϞ/'25<׈v:1 _MSזHFj #̉4TaN@!'ˤWR6`>=>W^PQs7jT J'`4 tZEV<- h!u#\tyE403!$Q@` Ե_9=N̏723vb~Å n@@ f^}[Q>`1nJx \DD@؃@GA9h># @+e.eAcKXܾXpɛ'gv io=J-y@/|fB0+Upt5E#AUPIB.>>(].[=XO"rCM]d~YǽC {cAj]-QsaH\g%DANwMV0֛4z+k!}vAQ`_#*}޿^х6q GN3x ӏReN{}ul0/wU͜>gE[ $#ԣ)(72Ra맯/`: ugJe`_`PN>o C~i𻛡G,cPqWU|u^gj|On<.MN9 z[O(n+ۻgP'g=r,` A v^L-FƬs\A8rm 6G-,)$e7tֈʔzV.ݐo.ΉVaLݎs8<Kwp cP].>l<看z.F8LJ/`YпxЈ!FAiylA,*Y79BCm$Itǭ[kWh'7®@|nW63@76Z3 8jr -.rM_7g(lYW0$c_Ad:0iyP*xX o ~?̖()aDbkb]$Bcя%T1tL^mUjk0rMxqer0R1pODjm~x2O>h[m.ڈ ( &bH -C y͈}`)APk60ki!,IHAAUs`nmEqk(JPv|J`lc+8lt]m4cJD x.údV,3!bFc  Т!a az%߹w_KטY~L9jq)>/(w`:mBn`v4K$5B2s%]k-H=mV[[xSymBT&v* @?_W'nKA?(HϮËz~ދӥ!.J%uc"Jj|_y^jYp`w8i i\k4M=\pbD[IjXqr_?k &h[mˍN:#/z)!lRYU30v٩ZkgӰ8g8dt2KhbJHh#*xI9A{΍@9XxөXl/Z|H::9A.]!dC5o:Jq{˫rpw)P7gP 3z{}s`l4sK8tmZBW@5}CP q |BDce8Ia] 4b&7\;ΤCϣaİ9]ZbNek A\>C# N\`f=`0 61h˭f(HպK;5sTĢ;m{EdTk/oڂ5 J7a<>8KC`_xswL193l, ȍxzXpbo+3qp- S"7F,\@9XHqJ/|FL+) ft ܾYτ;~Ș mj~+!br^ad8aO0.5ǐu;ƚC__s-]]v}Ouѵ͓L]4A^]uO}=Ckf$>_Va]j%D)8H ߙ>,>"3v3Yć $BZiN"x3#qyo @:w]|$*|m%wf|}6ƺkYfb%w z*.^?1P{Dkŏǩ{Vj[MwL}ƲhY1s/脄bO">u[IX"#n}  uQOcN4S3pWV$'k\@;0xF˪pX:M]-;M ulw0uNX{*πo$|{c|P=:϶njU,=^D$2Pȁ 9A+·qޝǏÝ̳Op4y? jxտUK,sTL|MkK>߹&}:%U"v $֢MszI_s>NtGKDcH# QDB,>Yϖ?lEyY"*0<&oTҏ%\[;R/F-#Dd29\80g+!W sr\aN`=d{Gy{HgՠYaxCD q [BE;?8! ц $?}q[3^s^6ok+cs7@R3vaZŷ$QɺV7GOf꣒ +IN2;3gh;QFI`3Z h^wZ䊊(rKEBп7{5^ \so t<yYҔՙcUCF]u^e@  c/ j>"Ф~yυ#y0zDr3b NNtbn'3MYh"Q,jg(rzR@r|Ls@n" E,^=9:b8֌ /< 7剟G.<ƶ0OgNHV)~ &axStG:Av)9yY :k0p0m'-_Z#jJJqp؟@DZJHLxJų h5}s9%I@c+ٗ':D‚:yDu?.R睸b6Uw{PTk+{nj1Qd d{;f6,]x,̪|\ѲQ+=(2uֆ4uu8iy!Xj^2jj&[g^~F:ZNBÿ頏. _|'#00u}o_axc2wLV w흖xs;g=zܔ֡TxxE4NKƺpz9j@|cש`LB4CkL@%96 @Uzkhw*8[k{S%$碝M#n }91َ1i;=TX.nE/n{ U=' zR0ZS!un?v|:TЈU hkOpj<8^A(z"d]KsdP3-ځ_1R "A6(~%n*oh߽bYłn ]xq[qɉvٵGMXbWe+v8n 4Դ`({L9DoBl˵lVT\~}? 6_GxttՐu7r33O~|B)1Nf}[{ EpBID)ąr=ÀL (4F&,ΩQ2{(~BK)!6?B"BAb9r1>(دt<*opC/o7n\6.-[}|i8+&:z5.( k:a['WrRGn``]@J-;7}d(ϸC&ETR>/NV坄DPT[zU0Ɨ)xE`؊:wRv'،w04u,Ycp 4U@0"SW'(%m2#6Cf_ι4.ot)UE ijy6Asdn,~V 9?ob3 1^2r;S*fܴ(lu榚q=vh||VdZqx<5O0l~Q+;?CI"*)ĨƋg]w\G [!J#K詙 D!ؠc{#$ȚqCӲ=;CSnRNQ+jv}v"jQ7+)z;7b26wةt$!d`R78 6-bC<*E8tM5Nă5H133(P]cg=(r l,Q]v 3f!Ba&cbnVaI}a3\嫝['PӠ%_n'qD8 F{\()@u,:^&>n9n6#cmAg9a&H.;Qei1e V+(P`\% g4:=2^Zר QWUS{崠p1_?\-#VE9_Xtlڨ_Q^ό>Vvz'_:ϮsbōnuA)M$,[356#I M)pC>8 ~ByWl6Gay ~E}-3-tC47[w7@+?!Qi>4Lz1gVd ʳq@ ˦L`'#(oCtGO׼w1Pޖ87̎(WS :8>msցY!j"I6 v|r&`_nq3RL)'s7%I309z//?-٥mDVJ5[$,څx-yEΓbY27|'fk5tSJv dqySrJ_+~ztU? mw[w`#=R'G5#\%i'T(lhX`ɨ-8:Budghi霊t 7\2_WPža#W~>LCi}`f t16^%ɆeZAŅ,Z׏ cᯐi|5,'hofƟq1q0|W$«A5lZృfdSN nq{G#XaWvbڰ tG|8*h7&,ȶ evb$Cx [ItD&>N#lFvh⑇QmbMqp9oXR"4޿z2,([6x[G5Dqܫd\?}cb`Ni"Q HfM='FVV$u4x6 *Y4HW!>NS]L"(Zy0N}JGm酹uH P\T;K_u|uMRd#0PNkVѱʼn1ŕv}sPlrz#LeTR"I 'qע9\7nΈln6^{akQF ?230Nȃ@3ny(d2b88So'8.YUN%={}G!hkڳrqx ;0qs\l :#P-Hbn[Y03)gtSx@g~cԷ'o'|+M}ov։LV;}B^ .5u-}qb1A",f,AU܂/x4M 3jqT뫟F9c06?k\.gȤ1?u۷9' fk'յ$EE2CR/ag$æă&rp}zێK;,4$_C'#8L OxlݩsMh]]`n{/_ m:8@jitA(7 HA,%LGW7ZoZUhhu=k0yQ_)@i> Hok~R1!x͍T_zPU6Ȥ PdAVw~UWC6:}~ZqNb1̅E3g@F[l-d粄J; j_M$[ΧlYJ/>/r݆11~18E7懳słmwoKNȑe@MrԠ2m@\HrVIm<Wr<&T|oָ8s@ΰɒ @ %ttNrE"EPpJ?y +,~1{Vo fEbևJnlK){==m/9:6 7 f5LzFxA2`5Z ٢FJ|:(:. O8 &3 }=%zBCAn"]~},ˆKֈIC5y5 $2 rXqlhw +cDzU Dz$fϺqko%fRsDhpN9cx.*W #Hɣٴ SJ@k,}6b l%oJ|":kieArJ1C]_}\^=GiMߙSg &my[mdHPQ?{?wXsz:qkF` Dc U{ UQ \>5iWMtUs +jukc_>[2 +#Ca[ɜ:/KTUۃƅ (4#󛞧Y /cZLX; CϷ7bfb+9-˃9ugG!Q#8*wo'of:Ё޷6հ___a^۱gaN6=y=ouNě͜'[PoUK>2XX GۣA7ݹcRo!KmTҫƱo%v_sk)ok~" }uSOa ־%W7|7d.!v9Wݱ}ruAZ{X}ZΏ"FKO0~E>v+8I@ cYB 2}[G)1 ̰dॸlK!s( Xm֩k@P_UК D$)61}/CI1~\lc)٥Wò|ӡn|@K_ x9n#`J MsB7 S~Tk>&^S0LE/p{s/{PnrK@ZO F4C)dC<7gVB%7?u'\(%&Nipe>@c}=ȳAe,|n7xX1X.n":ټzapܳ"W+kc&Pm2Ӛ*j GR=qX+ ) /êumx;1\sv.y 7j`7ZlڧgI @frYkƺ2gYWEB9@&o[qha3 gBuƳIdp(K];BFCD4板qV2LoKm8}:fbgP&d5^Q`Jj˃Kw [U#l6)w41xīW؊5Y"K| kx`KMУ$IW3.`j,=T bʋcāH)׍v->8p@PR_Bºs9q 4B"c͉>$L:Ӑn. g9x0X\Iu7Et++D6PM]W\,u*ɻ0k#ҡ #;"?jJF<̨ҎIuT%/k>3͇*}R}-D%7o)a0rY`dy&mLfWH R:qy~hA_t^8[dl"\yoj9慑(C/ C3[0Ү!z!|NYp֯t Ch`q -l1fv[dUt7}K]]":9i Oo\s8E[M Ju57`_DO%ajW4E4NJ2<.b ars?ҝ`2HUNGj(Cwn;JXTE<;aXzpX޼`)oΙJn7vN}7 d,U@*Pf* 6E`cR΂l=8)ٖJ٠mZX_ <јY-J$lsҡvT~J#T<,ٕ;F.k Z %B J)@A\|EbpGpq+L|S®mV TC51O2%|ǤꠠT-"oF!q\@ C"HLP +!o[ }N,nΘ":8J<7wy=@TN@QWߺCp9yLdf,'Ķp ^.8O9Uѯ!.Yj'6D :6j˽]SD-d; YNGUىf{Q F#ȯO:G"T>%DoӃɬm/d#]}d~@"#jDdꇤAuRD8(b63Y,`xn=d@ "]>,ky»28t(6$8P@`{TvJ|^#=Pk$msӌ8=qX9MG7׀~WsyYta}d"H`-=^/w^4/6֩E|ߌBX|^8[XM4sXs>9٠LbزHm1AU(/ T٣{2ގEHȠcs7%jb`Ьt̼~ʛ*OrId!a7cyNr#-9yY!0d4 6Bϒ7 MOOc|r Ɩ&WMR0"iib b_F{sWzP8LHs D.(pxH34UȥBN4#f#"Nnl]o1,VȉHz}KHm*N /jb׾W%WZi߃+pL( %[б+!=`<z '7W8e/KA"Uƾ_5fXSr߻ØuǬ$2!@(VM]SQ3~9HU`95 Ey0bE>\! rANSxu4P)y #_ 3C g¶уR\*Ypr_@oBκ/Psá)hM4Y+ An 3,\"E~Rg쀟ƙme`XV.TeCj7])^֑Q aF b tP_8$!,#ۅf, Fp:bT8TH腆p9wlⵛ?|30D]ā%*"*8Y5Bc.xg[K@]\8p|=GGUDtd9{T GQn%|xTfa#_Dyc1*KclEB[l쁰MvV)K` . d$N{v,+)a#4"]$G^|V<ǽT_cθ ƞJS_Qݖ@̈CL>X,i?J"(&P,nfSCa‚N'{9CD82ESu3Pgm@ 2]psEұ"3d$J~.!> 7O3TG'/ '%Tז?-dBeYl(6b>-8SI8JIy-G*@?v%}Ȣc 9lDfT^t<<Zẁ՘|['@!cCPpbt`SoWqFq_I6 jb8Ƽj)o Lhe$#’wˆa R~Bp/sMmvEPllT[% 2VϢÙ.ֶbD RIڵ(c*84 !)oCkJ&K]G|ᗢgG NLXOc;a"kY B, J*a=SDO5hM7[w(@`ښxsP@usfeT g|![WP3=Lܔ:kdCul7{GhWM@j!xaWWu7Yϔ~uB$<~6(RGzx#&fC3tX3QX6* S3S}H`&>GJk8WaB,]Y~D&qV)v3e0y8;KB/ x*:c3왭> oI&AS7\GmlF@{tMm'Eppd{˛bL<Ԥ=q<.s;BSt«7r*[k| C6텺YcUJ&=p﬙o$ 䴋5Dq>gP/r 唠[nWUukyk C{Hr$og0-D1/J"}kNvYPٱ<_w}Y{11d k0!<ڡwLrxk D~~[qҰҼzoJ :2ٸ@tzP#[\_:gP{ 2 mR#%Hleie3<_eygdqzK_7H`Jq?˭6>]ӿlbro_ ~W^-1KA&<ueSMBY4~vQ;é~Y2WYxN5L&FXp({?[iv'>-|];FZF<ۋJ kWj>mP2ŠSgD^wLEaDě!;.g̒'BA=\g}r`.0>`zTYc{j=_VFzi257q [u#qfEdymuƱ{Q%d@,%IAR Sqb2W,sg'V6ĵU. xpr3NbqrڑɠdF80(񋇮>1Tt=$'jMjSY͞VM5i nb^*`B+i! psgᛈVx6AnFHg֨d/3'#08Q;? \}-b5aQ+M% \KIqof~7K#BG\{I"QD&%sJt4K!Ŭq0jQp<1fbE(\!B х8T9\6a1EU=1 3Tk򃞮)'D ,8Y_lĵu(e)ĐXrl:9x5s:9Ei No΍P 弣+ U$ CEVƽk8ل ^09ν6/dE4wbFĻ^C.Oo݌;Q{AS;XGqNڡbq fDT=U8- ݄-蟵p6>Į**yAj3;y܁쿭=?ςciK,x'}2$mM}}k?Y ,<t@9;gxxyV7s %(voT -@G =KB%ӢD]OP_Q\HK7I*-j4Z$3DtlX[q7ՓFsHX>\] ?64Ʊcfyg)d.Բ m]P\j={)ۜ|(~pE8 .ɒtrqs dUqE :g?Ė,}tfwكlCs q@2Prqp",yb}G^ ,Z@++,<$f3~?'8u| Y@%`Uǹ2F6R/2phE E"Ћn06]ce;[ !u@@z\cgcR/4݃dK !-+ ?D Ch.ZX,G:a;wٻ={O7 % _X?>L|6;|zH7fmm΋#ĴPat_GAwӌlqk! p4l_8gR lYQHSVj3| Ab;c"X@ )ĀYUtZao??*702'RCStuJUf9`xno:l3Ub8c&h 5\>b䉬o452Q=ANk_Sۛؐ61!  $3%4+'ɲ?X#w*?Yj:;1nL]/(2KՎ3Q2r8yah&ڋSZcw%L}HwPa;0 +$}e|  9q'}u^:u:"aaٛ/XD5 ]Wwv̶vLqB?t$,|)PDRS>g({+k$ Lm@[pǍݷyH!~@KB#{N-לȊM֧ iY~9LjHqUZSN[q%lUx`Q((WZfA12@V ul28 '㚭gA+57Y DE"Ox Ti͊x#L9sݮݡ|Bjl#\{e u Kf=2̎a3\=oe٫5U+&HM 5{G&/j]y[8Ɠn'B➢! "J5]+ԯ]Y[326*n[.C[PÄ7f^%+;Af]'FFw!ӣ zA&@XE Js$)iz04d#ó ;%!M{a\8Uonk2nJo{Ceʓd;WN:Br\g0(!Ö!>{<49B7F50*SO0t֝8ho q yowt̘Hqy8|];"+iͨn2@4YR1 .leNBſ 4 xH0L⭕,@,I 3'Y* B 9r-—jXY hmp.YD !RQoa#õCȁpwʀ''3Z"8, E2T}Y>!bPP%?~| Enc*\W$I AsR^8QN({0! ’gp">8f:qTGGIx 35ۚw5hwE>D r]Ř'?%v!;.5aQPȃi444aKێ~ >v,5Xj@]V~D(qx(d.R|eRQ-wh~/5~:Ꜧ}RVd ClXL:8g 2XWgEO9u8~cCI^;DmF4yp7@8k|r\  wxլ/Xf =#.?r<ōp&(3>ZԌYM_\I҃yoәprk}ѳvS9U4)' # e!M53~Oe@7e12!AhFFw|MW#B(P hg1)US[{:"y1MehV,Nq*;08}E820e;/S;׈4vr V, I멞:?dAO)R hCN 䧓uQ"` 2,qs%ҏۀ5" b%T%C?gՄ,Wݵ&v<]T{KM+C]R ٰ ?OIiDzP@GGR&:FJ~!7:T}8:/y 7+nP9B.@J:\$YaOJ{YԠtE= M9YMa?Td|J';IW;b-H @2ּco/f65 ~e]3v$u#x9bU^usYE.' Nem'Q))G!p_un2X!2 k&?u~/)`UwKF}HZC!k\;K3+p{zޛ{}$pDiBhEqGedX $r`uJO(M{&zW}=}IRJn|8_8 # CG|*Q`\wjx.Ѷ]]% _#r|=FWH\'cO|0m?_7p+ V|1H-~f\{n,HbtrYƿ Dc$*Ks:Ze"ZD#33i,KDcO?=з03pHijUxKo[p z$F`K#ZE 8A}+uHFx`#dh!dޟ޺-ʀ7 އGX7A;)C;iQ L18*zCI VWpϳ)q p &$=6 ~ \{6Ο;|"Q֩͛g xLXSFy_+x/mNfr , ;li0 U$A ,d6Bg! sQ/hd4j|_~F3{N BcIX(z9,Սqx`l PX~$laq0%I@׶I^;P91!L2*b-uR =5=S|{.._-Dfm)W]IeMl߱| ɛ al/W9f)%+?ŖJ inzU?@lGdꆹhYrDt^i@oW, 2Ԕ[cЁ@$D4rzn 3)?C)n֢Ky<~d?fǼw[vpQivͲAx9"w4I 7*KSv`w_y*}n ;PF}~{1p1N9]~ wdX΋$h`<]@}q :HDP!.a qӠQ!g,夛^G5u=8G/ʛt&t3eI'Avp6]טQӖaEFDAWբI&~^b:?-;x(ʃXB ψs%;.so}"|a98 #}Mi?Qm"ks47#&e손P.R{5~;#1<̈:kՋ2 ntx!%|j#_e%ZfsQŵ2;.!㐸^c8&X ǔvk!|HU-w mԸ reN[/4oҘ1э2C3)wĠ6k5Xnِ[uоT0[fAbK|XWpdTu0y?;Igfi?t=tJ}Y4ѹKNfRd^R!,v P=E/s*8Db#.E;36EUdfGj-ArAlH:D>4lja~ +* ŀ,TS7  ^tL<ۈ>.vqd5 "yE4nl#up8"EX\jO tneם7cf#wU:yg<\7-H :f^ E9zY(!C˵8};S>pif6o,BCHšs0hUPL׫M\stV{-/  A뮏j71` u^O)!2ZR9#ُ#~,]>v8t.xATa46 X5/b s %bٻu7?1˰?o~(+~VaiM`=߫db10{bHF&¯Hi6{X"jSQZhZz@A/nM/U#d ^4 ,d8fRv`~_+1b)'wꃼŅ @2|A@RVsd3t1Bf:&7AcK"F"'My+#)$`U2rXXz u$ʇy/'.?*Jܝz/VTkULzQ\n߰804B& ggw)"; HX衾pNw J9C &_0x<UBo&Q%..p;=OaJkWsZ3ySSsqvf- xhWAsoZ`z$<1&z>Ck9#HKtx!~v/TI+ e{{ A7iT4/>W$qewXu0/H8Wx?:Kw8sŝ_x``Bn2[[5o8IQ~aߓEl[xU9x`D:8H+htrw!s*Y]j^1Ġv"e<v^اo)Z/O#? B(Gz2\ @-KQseQnH(e㎿5>R˅4+BcH'=9=" fk 9`n&WŅio?>'@~3-)"kx;QEE @3Icvt|/r";J+++"?Y1.\|A!A줂@^3-EAM@c0+;6ےH{\ [VsRQ0fOmƣ|R̀b #X5K~2]e}*N F!<"r,dn CLL{# }P{mWӹ]$8pqJ<%^MW>w "V^GO';^ SvCRн~2M˽6G'!L:0W|Ul3ax/c6z\!N.ࡲCX}vQ)kIEW6uAx>aґ, BLEjs VP/)Od *6Q?*߶2)SH\u|B{5y]k~Zϥ(}> OG`9DA~-!^j;ɍxY Vk|[=.:p(ɽSgE|zUYş_q};`21(yNaqf +#(r0 m^wdiI$JuRo"3>cFYy2R  X{Y\GM\TXzpq2E?VMXɨ2ǝFpEՙ{}^E.ã,` -vK߳#Z$t4E0}s ]M}?Hwub:];)3#ߚc+y D!W˩ZmG=dVsV];_wqP'a/GNJWxCoȖy rW*l"Yjg?so?G6UXpa~l7}RQ}cF3Է!$ϋ1d0܈SFބS a/~.Da- At`+s&7rdXKXI: 0SVvL"\V܇f^bz,`"ܼy'ܣ_es"$ifn͑<]Ϩ q/nN=i(`A;BtQ7DnCBɇ|㔣7%be4x|˙@."\;NT9p !TDZm#v69sÎ&*5k0ns7]JaS&¾y ^(IVYSd ﺓbq}HE4n3[:Zzֳ '$5 cP*(Zq1㨠_/Ƴ.\/=;c#kM/zZ=B:Nyy8qԗP62ؒFِPE8l snirOD(L<2 u8[jCp{4c]Nr+W'JSEtHf2pny3faɷs̉u[>(u7oɅTqϛ? |['(IS wJEO=ARsEhtq8T@UMlȎ%qg`Y$*f3!fѼ]G1k$Xe`Qog'j̴633⹅SYq3Vd3S-Le]YyXHDCn3J-HT0jń"#fl36MTlj\b=@G`;uxdɳ/ǍƄPǟYnXP+(åU%pwebw6 b8PX'#5X)wlPҀI: eMW2tX߀(&߬}}Np"u$ Ƕblr_Daoz/ۑeӱuJl$XNn\:gCla; O1-1FMxB"S=x> _%-]_}o!>5t*5cbPI?6#dFDqW.Y=m N>,3 . 4">l :N+ vU4`ip\S]!X܆^bTz" 0oҞs38Yh%0=/;O b@ssxoi$b[xc[ч}, 7"u4 ykcr'EyCڐBEFl7L 5ߏm X $ xq~pGع x ,KىaoyOWr$?0<ؿ@5 &VAc[$FШKW}e%Zx1Lv`0YBl,=Ü1XϘ[t/EKNc'/`2pgm@ݴ>yNTt1"j!,Q)̅]mdrzKC{X!jN£6fD =|P^?JD'(=6&4UAG0s٫i+o6ο*N0pNXPo.z,m<'ͯAH}=vhN!:hʳUvn2'׷ <]_q(|R|s5R(:yG:e ]˩ Vsfc[ɮ,ŧfp:7$ ԰Svi{9twY&/rg{kK^aD8cHF/CA,6A-PdAtbIC( ?#W c. &G:NfC?  l.EIG71$C xӁhw\=FO݌]_13x~7 P҇(֬z9BDXAfdN֜_M|0$~>xw?uSpcˬ4tD rER~/d0>Z-W~L)oS"LypC1"=Lv%HC70&ylev_]W$'*X/*9Ir]'o$H *ɐ~ r9?~r@N'Sr!FR}xu_8զwï7@m@u_<'< ?#Z,u|s׭9$CGxUj]Ln4>9ŏxZYk71}9O;78wvIf\c!uիٮ G 6S`ψE-M!p.AgCn–|^NS&3Xwoom+ia} =Hu6z1nXo"u扨d{Cِ\#@cAÄ >G6 dqE̠\FO`,jmȝ/ҧ񽪆cx+2(a:2R`38}kbblȶ{|~>4vce^Oʶxjut֢CYpT+g]D"2q. cB.:4XI_龯ӌN/vf+lqeQi*0N2:Pul_ 4F>G*(ŬH`U_H^ռgqF35JB;OGC|D1#دӆ+t0>1<𿱔WWXQfi fD>g>37!ݣHDj;wˆ\ؾTBcT^q9;|4Kbn*QĹe 2Nj*e8\̐k"O2s0f?Qa?Gt]JmB*%۠>oƿiZzfP a-B~K er}% !UCZsYM[k8-1hXpoo|!01d.ryh '/.?udy?1ӡ0v˝HlSR^]7TtpP{z#HD4 u?Q?h&Oʮʾ>9Ga Y!){1t /0 y!#e (-Η:M(9&z#%ب9Xq?ihĽ\F?9\djt_u'WNSN/UW9)9Y`d ߿Uh98ƕ6ߊTdO [^Mu^<"^hMp** $i@K+~<,1FCpw",A O> JXe =(HDa>|פ;!/a{_68>hN)lFU9{Xn_.*Wj06PՋv]?'>x zxboW:noSiKRs>Qw46\}|F=kvY?ߌH&ӓh/G5AƏ(c 5.1X?OաFYZJj,7)FC1SXƥR:П]PpX!moˏgcxL "! :Fa:'C(@<5=I-P8NI>1 8(8srN0d?k?[5;u-0SyDHGoG.ۆ0D~xkx 5s5̾-"CoV\Q} ::^帡f_o +,sUxŋ,a$%(VPxxtgmZx "t)*K*^C3N"G] ; ː5h.v -J5&W"+WK,Tq5%}nI Œ{ luuA;u&vkP!vq현N2m{eӦYϒɅq*=`:JUEy@'y5B* - Kg]?/⿜Gd"-CnsvX,lm^`Fslo_aϽ;/`lnTbO 堶W5FrNר&S l#MPPL6 1=zsgT !#C0Ig+i3j& :88~"H>">Ai*=Sct," [8nE([tك9pTu54mgMx/[U xb7G3fq9(Ac\WDq ZD.+.ȀS,Hg5WY\&M!dH'{+vްiJ !5P)W:x-ՔCtY=BRkk-OAa][HhMSq9COf-! CFf?Ï_3l!E:@[e u+"go+\}huvTGj b+t>k(hBC윻Qt 16פ39Un]'/u k&ɾ{*;U{@Ea=?mI༒~g19 suG.hxqp&7h`wlp6C'Ԇ(8,v#NN[ij :Y&y9R.^,qryA ˕gElA _SfKax1sqnzg'+*,5 n|K*8NoxRQpRPN؆`!,8ϙM Z-&1\$eb(ytQmblfp^ǽݛm}S֊"X>C64k8&?,mpRF& 00"}'SB$D/;?qh5@l2w#M)X/iUHPjQ ;?u%ppLD*(0.6x[NXR(;_~#K͉CۋϹBBNS bGcbk]aS4~?}NW͗dzhNĽ"E?4>ϼW^; 6v?DTIp)K:hx*T]hF6i6@u:?@7e;G-= oT߳}/LTcS{.tcgU}YA(F( Շ_Ԥ:SbmUCy~\J~u{`uQ= { PpF  {?}k`;y  9e7B !>6Q-X)oqod绅fOk}h2A~Ɨ➖,nwR5vsO>ڗ6whFvW % '?0VT:c#tAT;$#0T=zȩ20'?nҋq=~X)HuÉ똞?W7Vc kS7NF>ݢ$w}mA! I O_/$?uCUzKAЌG,P$_P-W {퐿!h,Ĉ0m%s!Њۿ=\qF.^0a Wsh|Q$>(qJ;-kV>fָN)nEeIsBg|doS%J] a08\XrJRT#yᣩsI'{`OgݚsYyt9BO/!9uQ?[ hx ׽%7qƇ\P//d-t ~χ4SB|y O^$yDD"#{я1LH?|‹gOg~ TPge_}py8i?Pt~+t\%GA}% U;'~~2 K'>yt_ #ۇfW]!! x~z%G,{bC^;sh)sxcxo듸,ጱUKA>t"zcr?ٺCŖCR]EO&ٰä?j{U=|~-h ov۷0",}OIF>:8ft'yH3syngގ;)|r!AѲw:.9T8 VOmtN8DrKbk"S]g6t0%NGM0O38 %m)?`F)ς#'nы =Tmx vt:)fr3G5F$.Ӎ}pjku_Vӽ{Ke>We W 8s|>]F m#bYwnwP۶Qٗf*P{2ǮDs/(LX=6;qϷQ r-q¦G4o1lxyuk<5 oRiGwһn=?\ӣ4@Qr݇F]# t.?8Yxv7dp+돍]-mƺe?)ǮSل|aXAq%༜ۖuZ8Lnzo(5;P,i怯bzpab~eO:ݦƙadߧ& C?gW3M::* #^xpW]]R%^"_t`,[|28E 蝔~/TgW흽3D犌.-hu? XNK&Y~\]ASdd\msnBi}}-H 2!,88f,"g enn=&-@>5$z$.xᘂ}8VƟPgݐfe>P?\ W[vL ]81>$x\- 0o>;(\7ƚx'l+p7oIqC P ;8] 6;|ym2-<o#:<$ws*1a־B" ЛA۸T7DP+g7o)e|UE"0CgeLC W^愘1.?) >Igc[9?[z,⌞7 AY{)>nqv4';ݫǖqU.-əUyҗT[_N'J~':&K_&v*$ 5zDz<7O.e]ykRP=^畖rex ˿܁Ri_a>4A;xynp^,|J~PP[weץN(qVYmJ9?7~Onz>I' \Sx3O tpQm-<8ǧݹm_۳YWYwVqgU{i;<z=_sϻ1#$5a|W{E!ю#U٬\iDx]l7g'c!IWZ7cRCag.@UEdx٢|s>sɻ6.0uczD=Odž|z_J/y1Zi]]s_ÕɎ=)n??6u.&/G5$~X,kC5sG+:B/;yY_/mҤ-7~憨OWWyc͘¿=@9ח#C]E_h OVtD= 8^uGx·IT:w|/L0Is~=^|VJm:3v$bN)wz݋ 8@G>Kxx_0G:E!>]g@|>pi怭]bPZ?OQyAp~jA9. "M(?#1ɱ?CACFy"s_? 1-4xm wh<((IE"atv;X\f@!B3m)U$ oh|FF`- 41S!S/skd2? Pj {zljw<{@ԕ6$Lc)Z2=ҝhOn|~opg則grӧE~+1k 5u4Nsaw6Sg|KAWLo8k ./=#dG!k)1țpTP;kmMDg-:(Ad\sX+ل~+^<0oT_Ŀs` ԟ|y?FPpft C PgNtJW8>>e[(}cy!B?3ѯϻ%hvs Oo?|!g ;j Ǫ4Gg#cM/͘ Hit#%'u%4vM#נ /+Ĭ]qd<'|-={4搶c`?>nIVC+K-Aƶ@8Lݶ=7;옔ʺ2)EDуA!79~al=ē|"8SKq竲@ {ns"#LPdh\\@_EC덛;pxs!jF{wf$<:# M;t pAKS.[޻]6@5~c :,g-[Bp ۠0Q Vގ6UYe ?hc'gҁ@a_&>2E>1m$!,%l PkϷ= W!BBo2˲bcd&IMZ`m&)eƒK H̢썵;"`7 !a@ :=H璐'ORO(MT\͢\1#-" D_[! Ts(ZMa[T9gD[e2To2atdj.S2 6@M7k0TWEqJ }9ρk]c`hH>~( D@/VGR(f)fXymv E/aI8} 3K8 &w "\-ΈaJ@k|SiE3?Uq7hDq orN !+I;^'zlLu==iWMsKD;vǧY'Wh-X &!Op)gևTϼ+^g\ˆQnVCKȱ!g<nvKοHRL]v1C\jsZ( ,4 !SVM@#Nc;q}zRq*n_"ïTs eJNIvBymX6e}q󠜖[Yj^~: tttjRvż~5?A4 ѰWڏ??'9x~,jIx m`V#Cz.EO.f,CP@θNJƠp0 D[0G>BA)lS@.vx]BElna49fIJKaߚ'eBkAI[yuGP}P־ra~B{d:̓}^2 + 7` V_Lž.BD|nS3RCdGN qGQ8ZIȩ>7~w4|/w[2%m[Ц?)o=ܓgi(^f]|'|z:ћ7=q1M]7[Mns`!<'>U℔d98=o8z-f<'kG49 _Ϯ' ணn $mE?6*UH`rF5bѮē1Jq_͉׵Pg0x韴0WXXlϞkֱ͙5gNg R05KNz) ؐ>jykzU/UB Zey+f0}_iS@_e6A儧k9-ͮjJ}._GʃUim u{<)0RG,!%dx$Jq_ GI(}MqxPXTR\EC4sAt`}\n)6k>_d) ,b}KZѩstYI2翳?>RsmyHbȺ 0iۇ1 6> K=#I೎陯Ì0MJB AOd!}״i_b!jݨ ۂe_(OP۬_^9#eٛr㭾+T7,"E($d=I2Ls_lj.inR /*5.4CzQTL]B_:Yg,DURF!{g'XDnǒ6t*}