aboutsummaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
Commit message (Expand)AuthorAgeFilesLines
* superblock: introduce per-sb cache shrinker infrastructureDave Chinner2011-07-201-109/+12
* make d_splice_alias(ERR_PTR(err), dentry) = ERR_PTR(err)Al Viro2011-07-201-0/+3
* Make ->d_sb assign-once and always non-NULLAl Viro2011-07-201-36/+39
* fs: add a DCACHE_NEED_LOOKUP flag for d_flagsJosef Bacik2011-07-201-2/+32
* fix loop checks in d_materialise_unique()Al Viro2011-07-141-17/+34
* vmscan: change shrinker API by passing shrink_control structYing Han2011-05-251-2/+6
* sanitize <linux/prefetch.h> usageLinus Torvalds2011-05-201-0/+1
* add hlist_bl_lock/unlock helpersChristoph Hellwig2011-04-251-16/+6
* vfs: get rid of insane dentry hashing rulesLinus Torvalds2011-04-241-26/+16
* vfs: get rid of 'struct dcache_hash_bucket' abstractionLinus Torvalds2011-04-231-24/+21
* vfs: fix incorrect dentry_update_name_case() BUG_ON() testLinus Torvalds2011-04-151-1/+1
* Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds2011-03-181-0/+3
|\
| * fs: call security_d_instantiate in d_obtain_alias V2Josef Bacik2011-03-181-0/+3
* | Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jik...Linus Torvalds2011-03-181-2/+2
|\ \ | |/ |/|
| * fs: update comments to point correct documentNamhyung Kim2011-02-171-2/+2
* | VFS: Fix the nfs sillyrename regression in kernel 2.6.38Trond Myklebust2011-03-151-1/+6
* | dcache.c: create helper function for duplicated functionalityLinus Torvalds2011-03-151-51/+37
* | fs/dcache: allow d_obtain_alias() to return unhashed dentriesJ. Bruce Fields2011-03-101-2/+24
|/
* fs: fix new dcache.c kernel-doc warningsRandy Dunlap2011-01-221-1/+3
* Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vir...Linus Torvalds2011-01-161-1/+4
|\
| * Add a dentry op to handle automounting rather than abusing follow_link()David Howells2011-01-151-1/+4
* | Turn d_set_d_op() BUG_ON() into WARN_ON_ONCE()Linus Torvalds2011-01-141-2/+2
|/
* fs: fix kernel-doc for dcache::prepend_pathRandy Dunlap2011-01-121-2/+1
* fs: fix kernel-doc for dcache::d_validateRandy Dunlap2011-01-121-1/+1
* per-superblock default ->d_opAl Viro2011-01-121-0/+4
* fs: implement faster dentry memcmpNick Piggin2011-01-071-9/+3
* fs: prefetch inode data in dcache lookupNick Piggin2011-01-071-0/+3
* fs: improve scalability of pseudo filesystemsNick Piggin2011-01-071-0/+12
* fs: dcache per-inode inode alias lockingNick Piggin2011-01-071-41/+47
* fs: dcache per-bucket dcache hash lockingNick Piggin2011-01-071-50/+83
* fs: cache optimise dentry and inode for rcu-walkNick Piggin2011-01-071-2/+0
* fs: dcache reduce branches in lookup pathNick Piggin2011-01-071-4/+26
* fs: dcache remove d_mountedNick Piggin2011-01-071-1/+0
* fs: rcu-walk for path lookupNick Piggin2011-01-071-22/+181
* fs: consolidate dentry kill sequenceNick Piggin2011-01-071-74/+61
* fs: use RCU in shrink_dentry_list to reduce lock nestingNick Piggin2011-01-071-21/+25
* fs: reduce dcache_inode_lock width in lru scanningNick Piggin2011-01-071-8/+8
* fs: dcache reduce prune_one_dentry lockingNick Piggin2011-01-071-12/+15
* fs: dcache reduce d_parent lockingNick Piggin2011-01-071-9/+12
* fs: dcache rationalise dget variantsNick Piggin2011-01-071-25/+11
* fs: dcache reduce dcache_inode_lockNick Piggin2011-01-071-12/+12
* fs: dcache reduce locking in d_allocNick Piggin2011-01-071-2/+4
* fs: dcache reduce dput lockingNick Piggin2011-01-071-29/+23
* fs: dcache avoid starvation in dcache multi-step operationsNick Piggin2011-01-071-14/+42
* fs: dcache remove dcache_lockNick Piggin2011-01-071-140/+20
* fs: Use rename lock and RCU for multi-step operationsNick Piggin2011-01-071-23/+111
* fs: increase d_name lock coverageNick Piggin2011-01-071-2/+12
* fs: scale inode alias listNick Piggin2011-01-071-8/+58
* fs: dcache scale subdirsNick Piggin2011-01-071-74/+174
* fs: dcache scale d_unhashedNick Piggin2011-01-071-24/+50
KT Ҙi!Fiwgt ?#5N'>LYdKsiAoyvRo'otCLy΂nkD5> ~kpޓab:~%G_$9g.&4?=˰aL'Z"p' %JvyIw6'2UY-jX)ʂo|׀BK}^)wj!EVfb0JuvKyYǻ!^S]gL4gN/Ս[_V_S[ ӫby{'1F˝&g \gQ"i\]Qj6:#08qCnݍCwZ:EZGy9=VI$GLo S.z4$B" }SU>o_/`l0Uy'#D7arҚw(Ti۩qY QSj5V M:-"p\ofmڪʥzfzo ʛg xu9|Уa6$rZ՚I3!ږB3%k@%}dv."AG)[+:B0GVHkzwUU դÏ6h1nMU -FiI]>z_{zg4ߨ5{PU{w^`mfR TYQPL]f#zN_ ԥ+ tRɄOGQɋ—bB.͸d02'A2z 2ϔ2TЀPĪjTz/HEZ90 cBǑ] B>n'inφҿo`r.Mw3G|7a_Q&htjUjG47&I3N%inG*=h;ܾ{Kȹ̈́<\<Op 6.gZ.g|z+j}6kGN Pf;i:JAլ艧p+nm8Re5tQ )* ,85m*ZuhJ \NLGZ5-@[Rq)G8grgKz lV>@ h>V/Sm#+vGsdHSx?66-]L|=:@`A=I&3 FA\GZryjVݖG^ wp.@.'%٘z[{C_@ ?8f;ilh1Sx V[p6]-@wp0QdxΫAkTUw5. ܪ!k 4 yJĻ9}e ~zu\{nV-[6zoДW`d= _.IF]tOV1_c?5Xu!ٽ1-r&mR{t 4|o5 ]楼udБ%Ig 7!i4t*L營)K +^i0Q3=`j@n" =rcE3Zn:ܶ:d&fxa J DS1_\_x>3$FCpwSH殭~ݍ?#sQϬ }Ck'~t:X_{OIj^!#Z(23&Iyѽ6Q< 3xrxA1I*#u[-*HN?ݾN!ZdѐsQ1Й&ĸ=NZ9. g͛(#Z}:Et*K3M]0G!noVt+ PQ@+]gr%MaPdAW;hs[&#E͸xuU%g# *!f.%H-+)ah֪N%- c" by_[rv$ZES`7o$4dmu8+6K7IM3)qF;t^5 xb&@]P(z6$㣋=S ;;moRoi,p0nd[3!~qc2_ZyO=K}=UZD";YzcѺhیK6!-U7\u4R_h/gHnQ+ד%)I Ff(\10gg!52*U$Kh!+yt#Rxg#l;ffRlJ)"~w U}V+5ӏ"1`U9Y~S e/3)Slh4ۈAOtJf @'w`ɠ( J>jʓru4 j\l٬ {d#3LG-Sj;KVV^a3":$.炛/W׏#|=dӱtvΜ9;OIgCx&E+=pjEs ư^+?o㕤Hs[u=p2ݐtVdfz.V>9WIЪV{dO]eX]%:J!/ÿȗ+usRa.H&/yU Zh~}f?VP;kXv*miCQJ( N)(=Z{:_ ]ͿeB9}6`&8#`#*]ZT-0XLc:-~Fv%d6KkV oX|edaҐ\bv/ ԝ4Iz}5mVR8z7$=% b]S2FOGl8~wbmc705+n1LwcɵcV6MX+7-;IfAԝ߲rv %,ˇP{˔%Rm w9:r>EqSH), f1|) }?_ 7IZ$ln cVH'MZCMLu,s#l y2Dnk1܋ۿt1N%3A!ӳ78*Ahv3s'}eL'@Bc)d9/o῰O)^2]{5-u"It)59봧&;=E:j^+B[#\Qj HVjTp? Ҏ:{hrX&ýBAr8܍2W2?_PNI܀j˟h@\3کJx:QF d$-h 63᧮?@V\b^.Vټã/ڍ9f, Ma[~ތϬ8\^˫?`.NOi *]-$=$ĸRT ⻿.S[Rg҉&r}z\t 7SHw˼6&4I#2kqFLr$[5<柵ZD,t8}dr4c ^| vdY@-X~qœT:,{hTl|LMܻcҜVsRҠWdUU*ͪj[5u~Ug(CA܎$s\ڋ?IH@J~Eqѷ`j!L@ώmcaHUl{,8+9aA~&)9@2䋓jC*j2)e~e?Y.Sz[[h}.j:΅l^闖P7|Hb~~mŘeSi2q ލz6 d] XBLBwRVٹgli= Us$K?#Hr$t0]tB¸-ןG[aۂo?Dr|y#>-K@f8솶&8(x s{H޴N^?I}ndZі]vyVLǦ֛e ecn̚>s)}dzsd>H7+>: >;5' =_:^08A-'^ka^c_--z7w>H$د}PA;a6nݺ{w?,k61#bkTȀ~XƊ[˓-ܧl#I3*DQvV(~Zʑʑ W&m$Έ7WtnK+ZI[>ʂ%GѶnD{q'C 8vm༐SIm]oW_\ٍR(2ڈ$@}7R-?d#ͼk!!ҵI|_{jPr>#zV1IlęHځDTq־TҮ,8{m'E0=gZSU7CT U>]`YQ@h``U;(٩fIvYkoMfhTQq_5:{ U8 Dg(]igFB'U(bNv4hsntdƜ,8Dըߠ-T!Z澶omRed| IRR WӃm_9gz/2y%`yiD[X8NU]rCD aCAp+n)ܨu99XDڵuZm-IȸyJw0Ȉъ7̎l=[UX< Lk$N*\8)p!ɉ+(}1g9ߗ&<;Ku$,~7jw$jѤh&I3psd2X9a&D `CT2Vg3CE+s%afT&RWZ-ɽ_3wȌ%^4ybw<ǻJ_hZ˭j{U:Ui*5Ȱ7ǪUP8˔dhAtmMk&^v7$P-Aכ/vҭ!+dyOzX#N%N`ˤD vr`"d +J1"ޯT۪5$i=PZ퓄oG>Pΰ::9`t)l b.'͠8O&C5[ќwL xRo8."NR(׾+m$ۣH߻oswOL/hO~3.z]M7=^evsd}cd"\[UnmbQ`-> ޕ̎mp0ͤ=d65rRtz <5O0f*j9G} % .tz}&irB"KeqLTvlсQy$,2̏+}n4ein_ LE/u2~bs\; G1%l¾T<0_5IBȾ#Ү*#:U{\ac8VZ|ӸMsT땞7{}Uo+ g("ԯus3(hY2?̫Bn +yEyC7`{o^ F5:8dwd[@K!EtJ ~BVU2&k  @\,LO)G Sۄz7_uI=d9 ӓ$kyNV[4__XԐ#%cG 0>5SV9/F$4x1Wd9kwX-SR?|DP4.]ЭU"-Y>k.%ur~5$n1z,>cw;ѐmr1nNn}xy ({4m\Vp#zq! d&)ka1 Y&vB;ݓ!Iώ;zr Ot𭯋ԏ3[d4R6mYG.f rXMjɒ QȪ1qã#F-NzeɄ`ė9_l.}3Mk>҄w.7cML-=2e6"Q|gn碇 ,T3TaZĨ| 3Dꜚ 2MGT6l9翳Uɯg"G II]:s-4–wuCU2ޚԊ^`>A4:S?˭ϏFSϜ*۪IA~mfbYB9fƍ,4-Np;MW4$iE@ BM!b׷vS"A,M'GEbpt^ Lz4wݍ=3-˿Ѱ{}E/k2X0wt@v+ 掵2۟bx☿eN, +e4^[1#wjh88bǵNH. Eα>Q,=ܱ 2XJPhl~芻!B;gɍ7I_|:pXO?gy4(“J0;pTWNq!קN흵o]ZIȞg\T2NإHjp_@<馆1u{5Hv~cӪ+j<h-+FO^)5nရU7i0PuwaR.jQ.XhRn*Vͪ|mh!cr _e⋠ՊD'~.P7[H9q^b^^orMP]*//JIp]ggYp#}J @' )m{ `%r ٭d'A~F96m:Z7Sw#LCʭ,}ɓ3H,ή_?Sx]1yi-8,6 棓ZK]s@m#'RN숼 P&O}=܍nO g LTSXC'"qh[,eMILԜ?qEaB+=} KqWIlmj"u㼻gڵܭ #B4S=)w-.҅^8iS<[ iyujI\+TJ.37KJV+S%\G <Ŕ{9ǬA qk\$Lʰ:lWTdUX)J6\ cҫ!rgUW3,_ϓ|5aggb?mIdahxQ;b/"p9{x'p9/ݢAx,ĜhtcbGDc2MV8%3{/p.\OdGW: )R\ڍ!jV{H}:5f4UTFZjXO}U}V8{~P\(l;;Rq HkҗZժ|.#'(rw4V><2{2 ^m7ۃvvT}H|rkm#U*Ձl(#Fd$@cŝ攩} z牖a^ؑdp"|@7$Vb -ٻg~ JCHj$G zc; 7F mp&8{؅ wZ\׃Q+^" ]L;~wrCQG\RT>[gn8љ3 O\nմWAS^WFAڃ5xQED%v:ADW*/iա7T^xo@wmA5vfeGzW@\Tuv~Pw&AE֠j2EZj*LaϬR|yh7+jkMU[\'P2,[dm9ى3N^$W=y[\U'` פǷ^~V{R0> CPARcZ.{k뎰Dz':z/T'YNڙff_Ԥ[xUpƬ \sbC(.A K)bvit^*7&ވؿƜ,"{;Z#|&UUHR_MHHqs )&0-B/Dwf-T$A[Zb: iZ_gsKTפּDR,Ca{=oAseN[lFYEz=Yūفځz:37\nlHmYβs(@wOq0S7sj1k,KLb B*i3USFL4vLu kgV#M3JZoA`' qxfRoeAGt_@iv >pFh|n,m9IDĽCQAc?|}i94IF6ZCp _1O ::7COJ N .H@t_;'Tsr) Vc/CCqp (VoUr|`zX$*fSIsܒpd;me7vfV OU8@HmkY-k*+J4;YG@.t/^9Gl/8d ﺥ%I㥤Œ#G$[r]9^wìk[&n!Y,Rr } k%i(\ }8hZc6!H~en)Hf'fv%Ap-\|9vDN!q#d!XDpsNƦr7Nd_2C]aDVj(m5cO1){nf7KLCyY ޜ1&?Aso閾[|'q+ƃQU=EY#UUMI 1U#ap)d-Mtvca2zaLOy)V2'WgO:JЄk_gz7.~TJu}rN}fr56f+@~5sWJa)yurR>0MU;m\ӏV9 h:1^Z$Qz $0^jYϖyfe6 @1yٯ%hh3E]mG@Ұ])1[Srbi7 z6 מBKO4$轲f0891: Q jwq]?iCN^^8p#6-Mݹg2,ۓD+ MW9 TmvzEE<[vتsMzW47Y|w(Z#&[Ke̲=ptVn6Av| $0VhjTkj}E"H =:6)Zei̒"$Hi1]'Lǐ (aYguۄLzhkzGTT@n'+ /3wB4rУE{MgS/l;WC ydޑW*3T rꐜ\~i񊬔S2[Н]I̧ LbCD`*CNA v$.DD.ˤ <|:É__7Fܮ.h9HÔP(5zs854_jx$gOn ~S+,ݑOWNl!p`6rmpʵZVܱyHd@GVȟҽk9Ւ6vW·]5YORC>qʾ}ȯ݁Y˜.>/LiJsh6nhx euY1-wZ]z?6ϡ|Fhh4K̫QMh ,}6dWQRϺ䫅Ⲁ$H(s)Ma36g2+.C2~dl_l?US=1iL kgvT`gM7¶.n8WيPVw]؇%dRh@$A͍ b&))=iW5THs{S!)N{CH"ytu(-9&4_*H. Ff ۾N;c `H1E䯃H 2E42c4Z֖}zIGq*G&,&Ο;EPjϙqV] ❩ X7"TOqwiaf]|ʲOz^9;&XxB$kTڇF^n;gK"iduK0R 8wkY8?%2c5!Zd9rdRukCK>~"՞[3 WsuXf:HE([<:үV(-69fY N}e΅TϐC8&"t+UP."L Kqk"OӈI\a1YsKsdK\9w33MPo: &gds``mzC5. w#nȊzuE[?~!\"z4 ٕt׳ieM0{$ׅ\Z[ LCh}}CpT">x;;Ȫ9&M7kl9fȏ{XANaIvM2%"k .mipn2սBOu[b< \N'ainԙũw` sGS?ݺQI=vE׻ʁ%hХ_b`gҬA|mVwjRJԽf{gv$͢Dld;0Ҡ1}[uJ FI '6T*99QC eM=irQ+ei3!0KUmʒiVsalAӬjSTӯbJ֓=Ĕ;r3Ύ+$|=DJ!gUPR![!v\Uo*b/m -:ڪ.L7\5#O+6-l?NZ [tN'Ğ3jsQnƏy(=dVJRpg eWZd[xrt#ӭ8݅H(1U5{V g PC] q j9־!1#f1z۞^a2(@ɑGi_Vb=/"m3oJb $I 6]EA: 4ڑ[d?@C5 @/ ۿl_$k_}KXrr}7}c 㳻;}25WLpQ>XA<.WGMTlFELXD@H>ù'WhǏ>u9F#"B*.t8L6{;I g'<ݫ 0By(+y&sb ̥j媭~ÎdCJ7cO؝#_44by 8Bi GR\[._H! /ԩ |,l~pLoLw&{e X+Imyn֨!9F\@yMvuHieqKEg1]ّx(~wva߻4%HƻwΥ`aBWj0?U4 &/hۘ=6sy;%}{ u9tDfO Fc68vC]-̟%R:T^M#O{.𨃚CI'&xA<2W2@(0+Qvtw>#$爭 > 'vH`h\=|:T}1I0w]甆Y!vl@)f< dqc.vsP706` G/֙c[DvӠYRIQ beIVBj^?Gr_c3;3$QlA A/֡O9BΘdL /cg AG_<|>7ԕ,#ys;>`Zȣy'j׮KYͥ=neC׋S]Z͡Wr#!8k{5jOjg^7wf՛U\M`%<4fw]T|IkYfgNH]l𕌠Wi vX3[Rl$g47G2&JǼNI l먄+Sr|~ `(u# I{[|׍LY;[Lct%'Jrqpc9Nl -4tkEwh ,64N/l1/csTl-H>NìaLeYŏqjR{5JO3r,/@Đv U)>;FE!RgK3ijPRH2F4u6?ow$7$>9I:],iJ i=w#κ[aQ4|%Q\a\蓔H0]%m%Weg'e ;RMCNUM5 hrNѵzʭ* b04k^Bm H/0V3'A4Qc@ˉR(A+C\^mGVTypL47ۀ8ʼnXVG {AeNFkFjB#dQf8gV^ijT]֫ߣVWFC5f w2VɐNjkQQa@<6XG-Unxjc, L Ka3ǚy I[ SnLtsz&0+~uFdr}p9V >j3H֬p5<*Vj-ŵngK凌"S_eu:Im#9k0ggX]9N<)qܐ/0Nz. Jv+hpgWN8vjvqٱ٫ I]0 Ř{OO>xxY椆x_t On8w+{FJ\fh=)-/gOd?vs;mit4lڶ{z׹s[QhSF%j jA?}&_"1r\E9JT<܂x.;ݪicG\Mxk_&l.%&?Tz4#uªݨ/84O*O*L} c[J ual4 aArw!0d0 zG'-p:"\'+]Ow%d< <*PXa`ǬErSy{w6n>nxID=sJl7ilݬ6[^S 5+UOVCўFM5G#•>t)+#9q8Ήrsx/ݧ5#ӘDZ-K)IX!$AxY*ZZӕU6A=)R=ݙ;\wbbwgbְ:.7kjl"kjZAR`_6)p֔]$D8&C&SSl~zdӑζYdnܥ/tltp ˅.z )6ڒA%gҦ4=wx20OD[N>ntŲS ^~9K$)at+~4~)yzvfs8?+U̖*#FÿAѨ_!F7= m棶eнvd"?~e .z$"pl aQ{8Zwcm3gBQWZN*XO7x#d3 !FSxFɗNP]u5%|.utcP~7ZÚ"{g_$uvG?s9T !m.";3ֱw>Tv}sv^`܇ҏ^!YkRH)ɩ/.!ICәBcJVo:6kM]ԥe~;Jc5a3Ah74׹Ni[Miܕ%&Jg,XA$_&Duj]~:{aA=.}i)h{ Y2y0ށB}l8af0p"sŦl u0U^W~bug I!3Xi)u3N[s,eYXv*NZEuz;[&&& dfj{n#ٖbl2z"C !`uI ^O7 j4+!?>ޤ3H !YIHJ瓓w+e6`h![nY[9nf_Wsr$Ȧ-Bnݖ/0nYnb_r3b&vW`oTҮ h@g zO6]\'ow',5>!c6gQ4k9jVhK-ϓ4DrLQ:zg!/2HZѮ,\ZDZߌa|I„&NIAP:rPewsBz#G[=uAWW } *$˪6cZ}@pAZzqR͗f' ( gl nږa'Gሉ5ME+ހgemJrD^}1޲3)fH[歛r˰'O ƛ#fl"4[0rQ˷Uk6ʌWs Ou'0ƆnHnBDɵE1q9'e >LI{nZ;Q*XdZnq؏4͛ $K$DXHܩ+_.]!SR_I3I5ZToR>I_;>-3l*]RY1l)T5@RMHi/u%fH1;\~ ͳ6WK$_ٌQB^]nYy s,Er٣O9S2䙨Ϲ3΍-1}6  !v!sI͐ZYB^z9fuUH4G`ЯP?T&C-d*m(̉%wP\# =PSp=>^Z76ٔ_:oL245e1Tcl|:Y3΄vUPOTc1#(k6YbXD;=zۑdY#V(' O1V+娪zEy\TL+QWЪ$[I2Jc &ӾdK3ׇ%ua/MXUU_fZ,[:1L"yG_ڇfbM?zΕ{sԴ* cϣpd.sG4# XipuL4uVȑʜbVapPmp"7(, F҇oYw/+yH &cw`]޷6㍝0Z(>MJ<_h$wgQ[ROG|X,gzTH8L]pKAgAjhm_ ׃>@ T+a[UrPfbR<%F}P@VtIHF~3߽49:p4& yO(C[xe:%K g1薬:5l*D($o%·3Nyl^ $QKb-]O#|K+G;1L$SAE?s-Eg*tt4؛Ae5Kq,a8ZV.v|N}r5]΅(A.C/y}t=>T,l=n jsKWkWt''CQmEag6L{ t37"nBX+ժ}4#ҧ(#JVWcfWOٜswMux^M b#-x^p0,^Hc~&W2AZ/Z$U0Ĩ_Y*I4}qg)@6ZrImL'~ ^U'ZL9D72.A[VFGN8;K62uIA8dc Ã0=5cRUQPĴo^F\7C%a%<37ۃ3e0Ș L*F4n&ݪb>)=z ս˄fveڟp1/ZRYquosnM^Qr_t>+gwo8NթٲY^T$Tjem(oSaR5Zrެ*@4>1D?M\.^ G_70M~ި6VAxl5 \gɠx. -<Ԅ(0Tڎ.XɊ&t,(b57RFvUD}cfrX;q=see]LU쥕#<JCD)@c]/G=&TŢp=..(xf=VM llÛ˗/P^uТ%wa 8 .r Jƥ /būOwwgB|b1< I1g@?]<$4~GGX龊br oFFhF2ba}`.ǟћkoT۱t^7נ croL'lمGsq(|EOU\'08dj!Aغi^W ܗ%\ipsMRdzb?{]2օ҅,N>"&od 2uq},{WE9>ۢ^+V`quW\i̙ kR;K>h/`t:ݢƜ<L>]4,8I{1#.N'c9k;]SNF^]- ׵q I2.S=պx|:73nTۋ"Zi@;:}dKܿg G0=bx Q=$9Xht9ۆ>FG @_zA`]B(x r|Zp\jXh|.3!E F;.M@'5S4ru#_NZ~09M >..%̰o#`g3R?:ӣ)Ͻߒ>(E*N|h`f(7p,\Mes584iT攬O$|kr$~?FgݹO&4;S>Ip鉰rk{ v3'mj]gKuWk_#M6*MB֪ sb!zD*WtQ *keo>o]g5iboyLj;8)b*nnw(:l/r-W΅k[}[Ҿ@>jZG?!3y=ڨL~2TrvR׏$sﱗg_^GR՘aiYh\yqK(x% >S?#Δ3!)4z'q؍Ő_6+j^,{ f?EVGOŅY.)K?g\ Ѐ0.NB{;Yznl@nf?'%wCWU |{Yb'PR8EB(H,ʜvϻc)b"|d'}E(df!y+-jceJWmzEz(LM0L%۸$ǒ_Z89h[J_:*ʳlm24l%^{@OH&jQ@.DЛ@_Nj蠶CFx~[=* < М iR9t_]Zi _u7:=zwT}6d3Og.SK<{; Jպ`l @yOtGD.yVaE=+@L3V\qvRs$?Lsg{KtSk^K[w~zgTdZ5xMbЬ!:3(;9@/ϨÄ4Z,m;H8/Q[UJ,t$(cW|G~94{5dMҁo$eXBO& o 6Vd% `9tӓf'/Vəic'IO/@~Kk6& vnI Z͐yk"#o |w)x;NK҆qp|{G*w~P4JK7(7ú}Xt^8(9:<$*,~'PtI,rJ5)lƌ%, *d^&W ]m&gLf}Nq?ssLėrg16X ^sPzWgVR#3C(zP!9 J0R)|q} ' K¦  E#hk]ˢ 5ֆ`|c&רD;r]O/R[Da, 0zMә*G0eݛƲqBIr\o70L#'t}9 ev=:wɍNbYܿUS:NBfyÁt. - /+ң̥i$R 6;?UE}s b_-@}މSw|.uY2h  _8*]2~ϿK啞xE&$K'ms2j@ҦM]'7|+sk coWtĘ7Q2lynbFjoim%*,isƒGsx-9e5wdSڧ a"\[c)oKO"%_<8xL׉A?উf`نzƨV;$u 11F4|R5IcoCI_y}Ȇ>3N /_!kNc[M PW՗qPӍw=BR~zǩN`y>6'tSkT핦׿qpI{8Зs?-& ״F~WA{x|n9y.}c˕,b'SGt؉)w9Ÿ $$!^ yqZ-vIxxcZLqIv1=(-}`y4m3;ij*|u'd~[\؜ ͤq掐9'f];u4^:yz"5cR:BbzSK8+Y(F7=3~muEv@vN?]$@b--i ;'s-\ xp\Qky@GwZg!dse5sgt{om ?#=_ 9^Tt5qXēU:;sKZ9t.0[/taTr{rm؈%Z"kE=ʪcOj mm^_UoZoħ3>\A'F~2ٜ='w!ε_nr8]@<&f.9/=O/h]3(%2d`$^4=,0x17Oo"O.%?SA *!Ӛ?rUusNYb&U]\/$ˊpERsɲIA왏ZMLi75WgEp-ۻ?#4@,)E_na^#ˤEF8b@T!ŪU^44)UKw38hTۮe޾Ȃߑ1`юrY g o;A0}۲5[`cKO.P_w|0p+d@V9ECi>B 77zdɬMI.z/ dwBd4uW.pL.~9;~o 5;.p* 4" Tq.=toeS} B"G PtLMH-Iݧiuy̞zJCRvi6خYIH 'mRе6\% 28ќ9=s)-Ъ(-z,=q6ZgeWjGܣWʹEgP||s|CWPs]r̐Еoܛɣtoq~t=u[ܮ!7O'O&s>{~_Kvo 0mf3-Ók)́8{G$מ=mb?~_[O/ZgN GCә˭38EB7*I7sJ`pQ,BT2Z"(2 ri"(F & (5ziq:c#Hqkw+ﳈ [upAh$[kʉ<3' ]Rїx){iM'őA๯R#+Nv񾚤h҉[8$|s> j ,jXL4}tq?"]0XC`ʬT=iG r,&`^˝_<6[2 OҦy\ג륕b`,'*$H|,rvHV]Ͷ&\iQ?@@ YcvcښW,#USĭ q$X;oBG@W?/T r+SNr Rd#0ښxyOyftN$k}i?A..3~|'GkһZ0K  ݈C coͻ<*[ }^r:PrziGkP}.[f؁( Nt\'DY;3>Ժ)|v)͝L>lzt>PS;Es oqjB `*]/ooH|%@E*HwCb >T'峿 !w&-.^T.3AS ]d+ 44,o" ܌+ fنoVhm}uhCdcg-b)6H0y]2L#/[|VM&HzcxPəuE?> gV (B Ӎ,P7#6$Jx .I5!P@%n{ď,]%X=,֢8]t4@1 ʧ&X=3H@ ]8TV1#'s,Q|4(Uה 9JwեMϭr/cpl8s&;D:9#WiLY&TdS^ q!3ftYԗ$vW hQ'CK7D@{hEa/e(DK>M /B̮C=tOU~0aH8Àd*꘼7ePQqsnDof7/"odR?4/EhB8)7/.Lf@n";a/vp&2v[tKf;e/+6z{}ޜ8#vD=G;޼~",Ъ4j/&lކ k)Ư!0"UZX@wH{vj[ (5?Zd❰-zHz%?14d[?D-O.ZraUUc47'oNWS1<(dj2^hL Go44id9?˦7_KXAY.k=ozyꖟ3ki"MS2?*'mbp^o4εQ COOb lv1#R7av6K l e1(UT\.4G]'t{1#?\;@ NU#8f6XkwawP>>7=dkL0780\Z6s8G,=#kUP^D#;Pb tr|,J0ۮʡFo.tL&9/vi 'B,]3I@QAvl!@$bZMUu P%f&&!G4Qh&KJaHYQ6߽{uêwz^,k42> w8zx/ٝ^;#HX%&[E6HєL_ʼˊK+%tk.~Au9U"j >J[w|f-1PB퀕 <: NhDMΟvy8_-U`YW:[KIۢf _ 0i +20h;[ ZQO1mPi"+/Ja)a<@Z>;"xhuBCFZ1:m b})CUa"`c(9qv1\-I=}AñrÅ&~Ǥ>s_ZgseW"e '-i˃MoSLZнƦ)X .r]["&1R6B%!LZ r>;I(mwompeOi _;6 Pj8jwݵԙ]2ZIoWwnàX}QƯ8"H܈e6$P"4jRt;H0)d.VR3+׫Eɫn.V׌{73Ȑ;gnl*S00tTʔj.yQe{T-SXIo_쾉Zm-BN'Ū:!3Y&mJʨIns,Ǹ`LҌze}}y'[mp&Mw{ؗKLjG*Tm"qwnxd*h9q3Qa88P0`v[J*Tՠ Dj0>,P[w(ʪ^,xR(9 sZWSbթHeh!؃ Q3uhۅ[=ȭ}}w[ݴ;Z]@0k^4 0IQu 尞SnQZmAف%o%C e}c, ʒ+֤DB#.@!cbJč$W l ȿx$ 3swbT b%hRR" ;9k "hWuJp>ھw߱} 6 ?eę\ dkjW(S}q~erlܒ^fMYSye QsfJ[1)(ʯ#ղPynE'|0<>ƩI4u US t{" U5&RjSJuawtj7 }Ӆ=/F Ɂ~ҽF/Bt./T&;c>M)fkv/φ\!DO0;Th<6x1{{9zlхd"A= Kt% X wQbVb_:V阺Q Yތj)5nc쑡Wnң=Du1|>d]Zl\X2cbډ8 ͞8!qT "}ڮ2 $HhGFi;ILB 0dg ~u}*ʲ}M70ywo>m﫵HTpahNF:n[w,BS'K`(Ԏ冁'㊽tόrnslW,B`[X/KmEjëOzgNʄ:_]M-ӧ M򓍱Ez ]rs5p%,u ֙wO M& |FcSfgK1% I|}T`)lL6`oq-:ɚL4|EUl!)e %&^Zk pDZ`pӝRR4*A LR'XY=0' {B_]ɾI ႛotiYeayhX, O$h@]xw )PaΔtDބs}ԖUFq,;cr;qHcĘםE.iqlnbm! $ b(/l‰inJ\^>#_ " *5v/N] oI1)Zm>OEu+Ƀ$@"ĽNe,F|~inךf *TmZ4S낊ô~4[~+N\ n8_DK s )*YVj>8ݝ?vګMV!CG4L x=`X9MdR疺jxVp3 zd6j, NrS{ E?)a?5`RT ;"D(9y,8E~mwxtM8$U=dK/tlAV@t.gH)7@tnrMg%QZ/w}|3Nk؊y<)2! ey)'#BkOE\-Ju!1+JDַ5J1.\e±I ҆M*xGpy;+w v$4"u`cZf;nZT¢HtOšCإ-4uߟ%awZ3h'[ݒQ~-I/zpW$.YpmQ1'C2F}uxغjېVw6.^[-/dOQrd}(}_R` +OdQed A<$Hr֧~4 *+b՗w^s'-N7ʹⰛP66"WNZK!^m=0Ô-@kZXm\6Gd2,Hqтei%3 ]Qf`26MsbjmwR5$ od69¶mn52$ZW3D%%mQDԔe؆ATe%̫5^O~K".BW r>+E)ʹctч_W=$Ef1:2Qs:'E SbPgEcnEYPZwgn^Yty6cn્2 P7‹% nB09/7jVJ \b( RVy^B]g8'uP꘧;\xdVqb%BD,1 GORkʞ*r>5Oq^^ 3xOnDo{sG?'[΀cu0:xؽ_Y3|W_~]oz$5Iω㮓e /E&0,=rEUN?N;k?wo5Ŭ,wEE!4ޘlaif4-vI$'u$縑"$ PJζ6"O'Ud<(1/<0:jK:ib~X:iaO=xZt?N_g%NܻȒ7&9h{ooU/vS>nxW=FKu~FxSͤMEWƾw'CE9q+}O{o_g*eAuQ7++* 83M_e9Y]wb 𙃢U4+eWmf$z42Bal0hKL'=h|pdBfUt[Lbu+PtDH Mw N-sRCX(62pk Soۣ3JT<\q0J:סJn5"9~ĂXECՎf3nr./_rxJq/ 27 \箖1,(S u1 17qLgk 99zk/X mSD[jzsDosX֠MQG̀I^'+e;YK:xI).FBC"4ݗ⟘]V Vij¼ja&ɣ1?v 8V;9i$%QJH(WG}6ݨsf:In?<ϣ{h\3'4m)MuIgd %wV"#,ߧ9Hcڐyc+aϮ0h)/{QokZM>vW7"mqR $$Unlp G> Cx2X[ pBzlnF\6 xFu9!R'7b)wLAz,:Naބ<۴w,Gh0x6RB4 viGtBdcM^ARBeNwkzp6/qջɖޗZҧ1OIp  ?8/ϧ_~d7~iߴ~&TZmLV D`g,q׼X$Q2 Zc$!!1n5DHk)ʑYK_&.뎁:ȸTOaqmgKZ%Bœ`y/%imm"&iizbO:{}qauCRuB=>G߿XsPFgCӃ:p>yٓ<7O}Þk K/k`hiF$WNqUkHHQy!'$V3@gⵧOQjY[؏bڧ8=_;vl#FBUdf}XjMZe=qX,T%xˊvXՈܕ\Kw*c < 1l Q|Dm?p<ĭ5Zf˅'?y ,ذ^f%'cXyS[9l485aI!T mh6PB)`5y26d'cQK1Ù_kcƛ! 7CBj5&ę3xϢpS&u(9p$d Z."JEA^D,?rPy;E*E4Xj 5 F2'[Xa/GBI] 1IZ3_L$e`A> 4_+I ^Ml)*&ZZ"\ ݋!"&>܆)w*z}Fuz4zy8Qc%MC;RZJS$5JL/t"U&lMQ -dsY3s  n7 |wDCW[7Ff qk2l }v %rTṄ[+>%iE;L=%SAhSUC["P\o*͒ ~KSX߃7@Xs>"B zdrYT!pqJol\G In"MFAzB`>UL:Y>}&I9[$ =uȊYH=L j!v+No+DԨm6.{0'DuU'>0}8?`>m}EJ*7~LGbDSyK17,S+4t=Dj2d!'<`:NW]?I;|Mzw;-'eؾ ijn,mpzZ3c`l^÷kZǍvFkX`qgl˃Ӄwo럇(!J15FS*fF8ESB:MaI> $e|YSj=L8iHF]{j|Ýsq Ou<ޞ?ׂqtٳsx(J3 WpkyzCߓPXzEM7-p" 3ˤP]$uCL\qo~qǜ&C qS 7_CK#k2#cr[k!csv۷*FAB_|7n|q+]Jn 0@. s-IcX\W 8nwu!q5Ɇ͔AH Vb\AGXMRٔU1X ͙ 鎍 UG6 'Z)"a=$Αs)#fLOOhu*Q3\.0@H_d^ds eeU.0yɐ-U$C8eIb.,#]dkÜ e"ڶ s^;v u˟Ƶdt[ve/lKI)jF5;)pMF iEY.f#SƂ`-tڔb`V_Ff u[q8-rjA]£!}aIv;WJ(bg"P􌎰\Fw qֵ 됨T_@D %{e&!E >B⾚,W"+VP'A=ZnYWtQ#K-u]H1tֈ6j7L1+L8IDNTuõ,6,h<uL3Q8H|)xY]5r ) %^k- t:t"i lۨ5t.Bqtr Ӱ^&c--..7v~jNԦ" u 1 [mv>N"1P Z`Ro-BBJ~նSZk +c2Im&ж֨ )+ܗm\5{N>֦4 ]n$;3bK;sjUi(+՗]ӕ,Mgэ碯=MxN)ehLE~Akcj칧[ LpCiIU+A%`vlHʢ$x Yf֚eN~:8(DVnqSF bA3$襻v-Cxݢ*Ny3;+'{Mۛ3iCP &r(S[NI*yH9e O<Vo sX1H1&Xv:33eA1[^zgT?vdRiuK@_5*?hM9jv-PqLϣDeàȨDO򱕄2uX/ux&058H ЖӚ :UΩq }{j@\JrPOTQq͡Ҧ~(T&0v`G:G@~.8dApTK{i2#F7=oD3h }qVq30‰rfY*ů1\eiMX|;dd %()v-V!֭; kE$qd֟I e< n dGLVux+3I:![GCPM'&Xo%J'2cMe3| 5q0 CYׂD5)LnjDaɔg,( Qa'4@Ñv 1,izVJkveȫQ]#i=yZ;tQĻd*BQqtհf|gۅtRٱO4[ lHٍi dX9!yi\_ڎ:9kj &\; fAmݕ:|^p{i| \H* ubjm7R-X1˪@_5g*Kp'ֶOƇkY.A;lSw]N%V}hF؄)뜺b j4.|Ek};b*N4|3_6/ ɤ䦙6$f`,F.tu?Ia-,ngl[VF6׃FYEr1[t( gU>g3t @AZF)$ܻ̌M}h8 NU<8ZMJNEvoGSh% bDr Kjp/!y$Avt>c>C㭍k2LCt@- )(i.ބ%!h#LkJ 4E%[A"/eI\w.GK-ą\2pVBm˲!*IլMSۃf:% ],|],5-0h2Oٲ3vΞg[ ʀ Y]rܹ]I! i3Y"> 7#p2qj8òߖcEE]ఎ4'>ʕ镓Jq }5gaFkeE5,4\0)J_CҖ1J2s~5ܞHB;86Cowjef \+|Y֊ʉ^Ww-5 0`v_E拁P.6Uzo+{Iܸ) 4| 8#: 9ZGrf\Q4G-vB8?]_NE74QGɍ[ΎGv4"z"@ҁX`GWӓP 'f[GdJ1E#4YVCfASI0:TEJm"!D V[inGK8,RJ FZz^8J&xij\"u+,@_Ku%Y>W+#'˒c0pĥ"KΘh딇JSzWBjU#+q{,C/Zs:LrnڄM/U2Ez<B4o`+~dV g"J[ 0b .`vmvQt, F2T/V nd%헃rV1d­.P`] |<a@ƑMj*Tukęf#U٢ѕaMh߂d$aFIk},|d!p]3BڊT*lĿ)߯<89ڻ f>x?~ ?pP @΍cBL6uT9=*z65_V? H CV$PG-/-ٝJ"*ܢfbԝ!' (|E.EĈ _V\w"FnXPt[#ԅj7#j/styrR5]XشN0%i꠹bmMƒ+wFfemy ^VX>5"&GJ%I A0H!P&VqMKc ׊땙~Xyھ8d}KbD@P/ A\dl5`t 3RIZCY[ڣ/Tedy nepSECJw=eUو*2lp"g,Ӓ 15A#n1*}p11jL%z?b_/bxN@B 5Iଙ]nݫDF򤶷I"tJ:c,I!zDvIeJ^Hs0`=әF- 3wv3+-YV%G)Z>xw;_F#j.LuZF8Df11^b;+afU|uqvCzT8 t\HPO8զ:0C)fz$p /jjx>/J;\hUKhbUr>zճHnT5x\\PXF,™$w,v!R%CbakJ4yq^H5|PdNq#GYCZJp= }Lˣ32R"a ̨PL+AMna|Bdip#tWB=a'$5pK|eܨL s8gq,wyewҰqbD%XXaeZȭe֘H~Z۽4F<2$ Crܬ-zlT$[]QV]PBihàfh>F9ai1hŰڠ-'ZDKtz57atl[JIs!IQV *8"\VhdPSR5._\&@]R-;ľXO(RJpxi3㬘x,/#Lc$ZU9bhfX"epg, jF՚݀r'w9H[)>.Yf+[҇jtuva޽tGv&5,SYePoaE~Z= hD}BM <İӭ;?lUʗyޖP2_;fԤO~8>8!NPjB|Vbuʙ[.z uTCP#ןPZk743F R35*OR%osIqE^q,6O6Ŵ`f YLđY+G0,:#"R%Rd+AѵQ5 `CO6*ZzIfϸg}P#OAs9{ 4WD{%H#D{ z T:;Njo!dOpu;L?݅)U;4OAQsPB%-,АRVnuЕ[h"_Wb_mlf~b{~|p k+}}tJI/}[>9]YHY&qdylvp}>]V߳˳s}H֚d'S aa [!A+;QǏ E1yTPUG8m*:"+xHZR?]G6~'AbGԼw87/.יW9g7dĪB戅 PX牤ukzU4ٶ:;}DF,߽l+m S/_@ǻo7*1*9)2'Mr%ΩI9јQ!D4*|]14adYB0d%؈OtȲ4Vg @/,@(jBkK5dQ<*FŞ./DX!3H!"waML\ʈzLJlTCYΑX,it@EyI t/v!pudդ[<p8p~ɢ_%d#xj8kPa4-ضcHf@8uePAReHƈ%$D ۀqtZY17s%B)R M]֘"kֶ?>1C&ش qڷL`ArV:*{CJm4u,smi!" `3H5r.jA 6'3Vn;N1w]NC2\6P-cGn,%#bѝ*l9^t"uV4Qa2jL0l<җB}8'p%!pfPZq'FKށi~XTILtdv)c$뫅L&Meu ~P4%O+DrkԶzJEc5f'Ƀ>uArA;KZZA*)DƓNۋ!Mc(E# pͬ< EJAԂvNRNİ// 8#z=E<:З֍x&h/ F/NowOwߜxuڽ$}YR(wRd~&1M,g0؏R$6.be;Q{vܺlk\޺IZovS:"x5VV2P ˓rigIF<&DB5Rm H$ٗ$g R׵2S'@8 P+1N