summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorSteve French <smfrench@gmail.com>2016-11-11 22:36:20 -0600
committerSteve French <smfrench@gmail.com>2016-12-01 00:23:20 -0600
commit8b217fe7fcadd162944a88b14990b9723c27419f (patch)
tree62758e7afa8e799256c362c69ebd15ce43f48c84 /tools
parent43c4f67c966deb1478dc9acbf66ab547287d530f (diff)
downloadlinux-8b217fe7fcadd162944a88b14990b9723c27419f.tar.gz
linux-8b217fe7fcadd162944a88b14990b9723c27419f.tar.bz2
linux-8b217fe7fcadd162944a88b14990b9723c27419f.zip
SMB3: parsing for new snapshot timestamp mount parm
New mount option "snapshot=<time>" to allow mounting an earlier version of the remote volume (if such a snapshot exists on the server). Note that eventually specifying a snapshot time of 1 will allow the user to mount the oldest snapshot. A subsequent patch add the processing for that and another for actually specifying the "time warp" create context on SMB2/SMB3 open. Check to make sure SMB2 negotiated, and ensure that we use a different tcon if mount same share twice but with different snaphshot times Signed-off-by: Steve French <smfrench@gmail.com> Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions
Z#G59RyMc#G%Q5?~#F|v⍎r=qp~53e,pEYHcSc("*Bpqmgg _uᮃɨf?7}~+6('C R$Iʐ,Ϯ0E)՗qTse*_ϭ\!}!#x\(< 2̱.d60|l$# D%~|JA!W] ZX%P0p?h>HSpd*P<#kډ3sB$ {@g̡Yd$9|Y@zއ|2?CЧHx,\ȿE_H}[Z("b5rsJ-T[:ݭIlE a2z6vчw3_xop8`sB=Ʊ9(TY #5" Cxk^>t˒sB˦4Fu69yll8 ?sngFХ RRT4DP4-4ISDTU4vf?2u;#,[i6o(ZB0B!1 , !h.+¹?PzH;f?=d3Mم%skoJ릎Gvcl(ao@9C;55DD#6}]'COU6\JEVIjt`:{Doc#6nY8bk9^1|-fs: nF{O^9{CyICƧ={ ^ؠ(D 3٘U5KtX*Yi b*u41 R~̊ZGfNa}+ lCdvs}D\pz*{D?Q|Ese<2@>"]yR)[j7KTMwoWn, g=|V4U1)E0%=W1ZSSמW-Ųmdo 5TTIM Jr.&ۆHEb>@\.yȲAy<>8cm]1ݧ?7(>֣\' %eXz%wjG 2uZ.f~&Kި=τsVX̳0]#1S\$cצگye|s0+׮e[Qe¹t10T%g= ],~<[߁aWbJJ?- uu:v@s:&x/@2]lņrw߷=a #%<mM³Zp'(u-GY,@٭@0a 9" ̟ʖ\[W@L1BnC@YBu8Y6-\tpޣ,[8R;ݓ%]$ GJ~,JJpiJjOuȦ ;en[SG)][l"ت΍qRpr<v;xUwp^z `U * 81z-L\{R8!#j;"Ud)hf_oMRs4f0X{)#rN+خ4rm6#n M7l"n >d4稡dugX(Zp4B4{n<:yC [{:uK٦/Tg3C U2X^ceS\yuad63{4w6Ul[KfcmWš$Ir$~!hQ/q0H6kXtpy1q2cN!/D`2L_ 4&, ޾\N"YҚ^͗Mm|?iBB lU$LAm6κ@:DDғ]qX,Y(=_oGd=& M2 8 D%4QA3~~nd%CTb cHb#I@耤UQwԅE5giwÇ~f. gF#G|TVYtFIlq7πpPq iX>׆ܮ{:=u;۩;>⚂qF9קpH 2" S>?6p9* 6*?ջ=1Bjq:HAs(";gΪmӁ;Krϳnk\ĴŜzNF%{7>'2޼s{̈́)/ZjOMV2%Ҭ?b꫋2dL-8c?T_ŌetΤQU"7.F^ @IT)BnLWcy IꝤ x#jh(Y'Ft[<6CH a,Džw:WayOsWojst_ kv\y /7e(@PɩQ6ڒ7*U\6Sݏx|+փM}ƆT6gU*?k?}]ڦ'sP7췁xxk{wϚYLE/J$Ae\c aU!dE{AY~r̐wS !B*A)"%oNS|J e~q?{gwE}*I~C=Qόy3lukX*[hgrD1}6b U4j?'jzo 0Nv02%̆Xrs^CqD6eXCä%#8zfHaֹ6ȔPK6A4,Y)Nnk65-1DQE X!IS3u'!t[ɩ&RRSۮ֦ @7Ft=kտ=Ǟk^ •?|>VtyqS-W7it3s4Ƭ`Zݵo7e{X&![Wb%IuA2-m_!VV:{[f1Y1-}u7jsXϭ 9J? :W(96N˯n ]MtfZYGKu+j|c$-k FZ]WS>_QЯkUCԽGQ "[[.QkSj G~S}~uFVdCB=giaOE|=L.SWŰsѪdzN0Y3W/mwՅuv8?{F:eWjz_~-ܽOHMn(q-4Q ݿZJ\=bVat%HӱK;pَ}'F*R͕HR1Wxy~`7#cCBJ⚷s'-[^ vs|טvݦV>Eyڻ>U~EaUo/ES%oeF?]kUOp<{(jWeW2!˯umju-'Z%矓>mBWυ:;,:T7y%7Qv PA-Ճ9-_ɗ[_{@ 5{]ErƯs!F׏{o:ѽ>g!L;av'Z*gl`\/-se|'Zom%Sɥ<G9u"-bm?zlꏟP˫wל(5(]]y*=uNgPb_K d~okVҊ-s‹gJ0":=|[&arzz$bq`Mp{}l=F~a~C*2`/Gj,2?c!?++$,NQ K*1#/ո_Kqo*K}?@U` (I@qK% ~JO}TZZ~-Pwo] 5 U#nlVZ^,~5e!3bqe54vm7vlnKV 4g]͵opI-^+ `/QVB&Uh,юpX(GG4F7j8CO(!qdCVWZQ,Boq&zI&ծt}̓W{n4ͬπ=Ϲ$XsdOҷ*G ŬΪl\Z-rHQ~P B |R<@v_Ba+WV]^ dkv&/*&fX=BWYHvr̍뎙W.aw6ϾTs6 'c弉F9ų~7;Mo])W*<.*%s~8s>7JaqO InXf}P׭p?W7rWzzL[_p*Hk5c%ȍқ98ڗ pp&\tP9 FUx 8zs58Ɨ_߂C߁sBq.O~ &-J"Lbg![]y凾trZE㭩A"h JGYvGZ³_X%Y`_?ꐫ \9*;'[jk:N-fNuC^7UkxtX:PkoG Z\H0 sS/LrSy=5Rxlz1?S3{H<35=yO}.*ﱞ9e$4뇂Gѓ&H@K9D5\ b!5N x=)ǻ0K ˢ"ZةG]J :SѪz>@fK|Ų!BuגD @DT@<QLy?kdQ` :\JJ@.Β&kyX* R1-- 5KDLm5DA:D Zi(R(iR^S~<|G/ Qv0 iIYEu% U1% rz(kJHB4R)J 8b |=!Ha!(S@>y~8^zzƧc*\4)@<>6d+V}w.\d=]XaH#@]~Zn|_<͈/8s!Bzȁ=g)s&@JA"R @@0Jy!@D/ezGuJDSD4U"PPgwULJ?W_􁥦5{?4́Vz@-48B  DAO?1^o7;Ol!{k}!E.>TDOH@D 3HMH4@A DАCA!B4L-$PP)A"RHJ>GaN>&iC8Rβkk+a :nC\I%4"SCLPA0UDQ@ jF((&!J"t`c O&S+V* `)%2Њ@Rn~l&w*)7 W\hԛ͹զǥ  ]c3o2LB(LMY)yc[ ue(_6tt:N'>>0GU y4߲Fd}^UNҞï#I6:61.ƺ@4R4'@yi>Js#"j*"x/s,U-o C Q\<:yıqzP`u  tfHe{/SOACFPɂɝnk=W>7&x})vdI7cyOmܸ7}'V/fg궐wO>Qoƚj\`x݆ 2o4 ^o |M#~W&e]Y<^h} NW3Է>tK!+9RMТkkBv +bnkGڪvϳ]}oF%s X7\)mDD/Pjkvz)(ES#n|@gW_($ EUo 8H7rEɃXt|_$Ƒ)Rו,--?'BCMZp Id4|6y)i;^_j>*wh Sk[ۻWvuM"M`nttGeP"}d;ЈUuy?^t|C/k_+]^j)Z زD$u_C9nt[C3F/7߶*H (`TPJl(8 D D1qݐg ".rqV`3ZZ?IAaKi&Əmeb} 9rv^dqÔ9wX_GFv}My85uo c7}`g>C~FO 7yǽs)}_zv[sv{wܗfB^۳S X}ZӪ~c>R.oW2p6~V "S!-2F3}kN˜b#< }C Oiʟky\Yͬ2~X|}vֹPh\8y}WG]F&mҽg;| ˜x#'nO@H^/ia[t{yio˟JVqC9h` 5sPМ(ȈekP;k jfF4("RsM"`B)b۸Vs U7ƠoEgVqvBf5U-aWG@ü͈®閞ɰp2+z}M'S([ubq[U @$G1L]m}u\:aϧsC~.2c=g덂IK$@}qs5RV2%7g'@Qł\/hm +演|j_I/j}'Iz?f:w1^̸ť09JsLh7GR뗵ǏOfKHuk] u76ab1{OutAt!BCK,~]Mˮv7FǦ#-^yt"w";-vZcT:4qSY7w׫G2J}3I'Ղ7}QYm8ԏO]q#س|%!~`=__n%BR~8`Gx` DEа1b0eM@IMjg$rOMN;qKGtr )H4mG+m{iht<l0f jDUS\yT( ֈPB_G3&x?>V?Z֮NwK ʎ 3AֽOW\{~dF^=law&"$߫bzǿHW&G^ \7|TwO?=\GkC}f> ?ہ,y/O6S7V:~;a]XE߃; '&x|yZ)4>TiXm>E¾c9m.ޓLV9ٽ5;|ןr՗mށs.~v5)h迢uuvcZth>*nTԴُa-ҫ¿Jq_̠H}^~=>eC>Guлi{0xr1E?7D1>|}`[ ;Q6mtW:oz= po nj[s R9H#/A#&z x˰gvT`oKzVhs8gcϹonyϏD>ao`04r}\1^zVCO0J!}jOa+6}N{oY}/?~ {ml;+-;y!ջgf!QDa@PhX$7WK[+{)%&1DƵaj6AmˢQ`Z}~DcH|aںvVA 92ENAʦŅE Ӄ>."[6qԮ] .^` Dr9#EĊ#ҫ7bp7{Yk6˒Y;vxM0CV#2^Ԝw b([}BǬCq5VWw%ExnJN;4ݮĔpź%-ׁٝ 4" yfaPS̺`BsD ߸ǽ*yaM\4#>~Gj=lFDIT$\3?1 +MݍK$7g#|>:H_g9"w!JчP !5}_dvˆc-՗WNSY߽>%g#<ϑqϗMbӃֱgR!~:%Q bԙNW~.0 rD)pH[/OnqX'_ׂt}9׆Yu 6쾱ۆTO<y$}%A 7e{u.(]B" c[;5~xnWŦ+!ROwәejWxQ˥}%vCAC&Hz7?/l5[b_Gq]>k:=ݿ/S]Kr:^ݔf"UhB!{^zʙk?qC3P,BFw OgxvG ֩bT\H&w=rS v4IᇒbH3aGap5'zRoRQm`"t;>׳Qn8>8ݠBPJjЂ7ɸKH'|T rf#Ns=K| ɫ@N+-;}U'm9~I[C%!(b ,W}J#}B~-uwzmLpђ{gcXLh!xV(]ٳ-[GGwk]Cgt$*A_ʻ+w7۠@yF~8WH"aD 0o-T*ܫ~u}^=r{]y˩|W@!}|d|'=y:v?(K& 9|'îgUYjlCH{>݆^ #`2E߿{9Q(@-&]Bl=p k1Iy >bo59Cdl6eqߚ79Esmӽ%2& bH{9nhsO](|1$v3 ,t/{Ჰ?;h3W lL+]Qwzb*12#b@(o=]#k69PS*w+\F?bT{z;SmD aZ"u|P30C;d_# U0P0uL2U1.~t$^V Pn)y5`"pt#*hI5?jE}qӆ|߳r*<̻xnC1ԩ |Uo^#PuWTyAP(+j`.t9 H -?n.'=e7|.p5 '9 [ OEu:O6RI?\HkYw8tn15bPw_o$č>JHP >DzEt~~fҨ><9Mϔþ(l{a/`}~ ;X:E͕%/-Wo+;hbN #;!߃M%˽qg+û[9ئMt. ,"MUXmYnGnWUyJnՋi%n>Na爷Р?}?v#s:OF?FӇO@'̕Uo~s btד(qg4o ts-}bO^{T=P{=.鯻٩믫*5lKϫ;]~YY>)~_6}>A$k؉b-._G;/ƾu(XoqkC^L@+9H$fgD:ܼj5J)oՙ'hs@C΄U'p__1׊Htߛ̴ eX<2L|zK8{IŊb9KGGfI ~[r 0=4j+S~ظ}Lmgn2N0}L`_@(6Un8g7WӊEȒ$saUPŶ)% 8;A|Z;g ?5O}T1ٗˆNΧm+,:ZypNZJٻja+;c٨x̆Att8O|zb1|>_ϿTS+=^LËetQHXuRfoϫ<{s?QxHep(`&,8ZqvV*q?)SjUD+8"b*fhY`|UDB,IuO{(* lia#̍$2EoϾQKk_:'p/cW3 !(A)b(|G .*  `Z*Is"@CN؇9'4FI'B- _gq9j=?ŽNDhg]vT}\A~Hq{%T? upWsyY̯uWO$ȷܡa9@sa}hXGNP,3#&q5[gsj׻.@N!ڷbٷqןqo`/,F/ ^xZVU tm{Ϭ;bc71<1/9}9LJ _=ï:" 釾ܷwD vslQ||?]z{36k{x}d?EJa)(*PAWPzo֡~P[VVK|lU&H5Q5g\  'a%4.% gUGT.p"!V$-{4fF5bַ^&~Z_JۻeP`_NuN.|OهM)}{gJPD_O2(s'X+qw'oSwnO@niǓ;a ޸/Fۆ66d&ZV0F%)k#WVRfϴA֢g3 -w0B2Q Ӹq3LJWaKDPk.1t^F 6&$R) f褏|uxqa`]]ts>-g3>wNϪSX2s|ϻ?kvn`2PF(#bJp$QcWP?An]dH`?F,[2A=7Wg_޸%^gG d4^}qu !GV>0v?fN;y2 ޞ޶_`ngCwdSz>aK$nfWy8 n#Qǜk<_5`Ý ű[7ZN|kOq#_R` &$\}hZ>"6xxd/TA2}7"-kL|ھiL9^ɽz3EPzvhσQ v<,Kd3NTN:O'ϣd+eJa]25PT#-]n@xC;ਙetZVځ/2Zǧ17]9JS.p`{*^@ħ(?5=<(ע1,4Y&BUgKDx٤@VA-=Je4@G?zސPa| d- '5aD^|ޱwc#\صj;v6q/[71n 6n̾=S6nH֚;r{<9? ޝ@| ].' 68J}6YuÙ:*3bih+{3 e0)((d) ,#璍^08J8 LR\`9,@:=}pUv+﴾j%Lʣ.YylM:,ыܛ&pnb0O\dC.mnpZm(IƻF׻oǾaa k`UwK/[we%-v19' JPuO }#N)['|9ZusQn=:UNzV}.dG(%qu|w| 7svb:,|0DxH)~ڙėgBQL᧏n>:/уH׿^N #8)[4{cXm(C[8uN.rF֬90D~Awi)@Eo:=^EZ 3}ڸ8e.<|lwM ոKþy%&D&T9nĬz͛稅:#S8Jqٔu=`w?i{]ÿױdܙ~:N$GTz{%"ʷSScwst|Ԯ_/KzsLcvͱaGlxΠszQ[ȲvQ3Ԯa P;ar@*z@nϦB2;ꇡ3[ 4I*7[J"1EUa3y%|b&*|8`yPƢ}FWtBbOl~ K@D<S'H":#"f)dHf-]Wԅ A0U{GŴJUlb3?糰olㅄkfk';*<a^!bpTf2SPVoyfXV:{򇛿aZ2mx`VhtK(C.qo~q۵*r}^8g+8  Uscqc`?\D MRxwSnD >87gXWNR$ q:7A`*3X> 8D:!f˩1%A Y_}N 8OegVV,ۢ3Լw2c=VȑD`=jl'fC`s' 0UhpJK'INN6d$!}U<>њ$!s F/T!`TGOj>Fqd أ2?uA?(Zګ6#fXW2.94|*VS5CSA\^RX!R!ЇfL[ +*N`[gZx8'av$M򹋙Pj"mrdÙM\ =D9W;3wtmÀg;m񻠾K:DTm!C1^Sp:Sd.ӟc\?c:mTT4Kvv }cǛ l >0񰽇P\z"Pw rG'd/0^$##fGf/+o=)F _ϒݔsP>E}<˯?[R,e=Aӂ(ӷc?Z5.:.2Y[\G޺W)f$lAwB[׈ih(rcܩU 3 ["!0#g>A5JpмLCS%_Jս_l\4f('X3W%, t@D4/d[m6+}=`H_&ٚgL!RytՈ9r=XJao3@ÓuS#; VG[dLV>$&ĥo^o|meu(sgm=aOYymUW'R K&po_@Ȫ7QuqQG}귺7̎.,|y6.Ym8C=f:Ҁa  b&!5FgЀ fB:ejtxs4&S&<4ށb>rs˓jm팕^w _b6ـl"_ǬrQ 4]nCv*Y?-hr["R*.=C+kpng /DݰСәEmY*sv[,͉aУрśM"dʴ\1id8, t$ Pߜ=qN\``8e\Upn77Mm\#Q,RS"wBF?'昼[P^w25b9m{e5ΐ}ωk(88O~f,|wdWG@pK׌ ^7kt&窻0s*$}#).2f1ƣţ:GVqRNPRAT߈X(y̅C2@z+WWԼkSjyMcU:HGczS}_D)/<~`\XxC{\$TΖm +]Xi'0=#cތTOgcM~.ɿF %e]W#G,u7935#YHg(FKIc(ɤIDxD7;pܠM4i Kbɚ>GtF\0u-FDAf\tQzzH ! |Ϟ=\U~; ,ʪa8ˊu\'&s2oolԯ0 rXuZOI &z*TTnf_˒`VJA<G-zcɬ,#ɔezFhaZ&L dкIӂ| [T8n:G3v0D٫a&HrZ:#mVLd{QJZ]1#0ֵoD}xf];uD]۳Gީu7\F~Mia0k7!%0mR iÌ%ٸf@zZ6ك2ƙ!^` +#ϞIێg2ٷS;SKSK Sd1hY$b%"C!)Grv玺=bz:nbT!GT sxG!=noJǷxşO*c,jS 8ZS}pN6kl|| xxr7-Sgצ00#p't54ƐN!8SVINVj# 5m2YPHX!!*9>ڎq*`NSVS. Wy@|Jzǡ\T{NjRl߯vb6i[6W틎fb& ҳ]́nc?NS F}^O}[;;w`ST4۱AMP1~A=yRLHu&&SPUqM3Yc'NtH6Kpf]'c+.hw=C={O+Ɠiwb6WS!37_tuvo3<BXϕy^Bi69!|Q}V M1.>UAg$d:%r!SxCZE`I=MR܊YWj`mb?O㩺=4?D;&z~ ~-A DHI\N#k!aVUU;M}v[Qw)5-{Ǣ~ !odD[桳?AL͝5y~!3ٕO9Dc!6kPx//3q劃3ڗoU}|N˝NHfP")=DCfd&02Lj=Lَ]0u{ ri.|^yWBehnl!b''\P< Cs\@UA|s3%5}NMiQ0%WE͘7+/~ ÅCZedDgY["jf ^@#6GcxY~&K %LK1ZW"khN"X\sPݩִx9@<|wCV!I`BY*2  -x}N2X(dE5NOOb|YE @w kO<()S,Ax Ac6{1mtȩ%,ZҖ@3A}\rzDE*h>hlKImLNx/dzmwSBGn?~E%)U?˙g uv<]yUT\%DsQi"&Tը.'k )up!ψs{yǞ 6*bY+β󢪹ctA - >s\ ZZQ'K3H&'qPa%t:߲0`剣,_/iߓ,ooʘb+X5i2lUQyD=9J[|Kg>g$%ށ_jD(sþJvE{u;ُ+ug Da/z +bAߎT|0~fjIu/<5 ַr}Z׆*ռ.©wdɺKo|BE(eP\I;ʐG% sM Dȓ4z|(:(FhÓӁjV~ݜ K-D||iHY8eXWUtNiަY}~j&~>K>gNlp6!4܋Ý ^ /v~EIe}Hz1km .b]*KQ+Lqzz Y>W܊4aa1rCu?o$S ZkrvQÜ" )%p;m߳1..KB8*.!ou=fՃ31GG_j? ڎR 89#)#5f|믅?f2}'լ#^ߛ ;M(`sch?-WلdPd/;eDܶ*ms zո';:ġ81ت1_ys{E^q'BR]ݮʱqsgp <(ƛv0`H0G9,y埸u\ݿlOi#Ǻh#o4S%* m,{!'&&8m &`Dk+F+:87eޕ17yZdq.YI'50wz7;W9r/=!p M?@z&P<euddWy6bjOpVz@ZG`K!&˵ZeI oV%n6B2#?X~~Tƈ!ʵ.ocJ;`&9}7_qD L뚄e* x azfZ5;^cl1鿽@~>9UVS2 !Q ~y¶IܗYդdy|hf@Ҷh t7 [p,xs.U#Y<=2ʋOh hdl :.BB7dLJP<M=`}ܗ}s BhA82xifvtv7 ̥s/w(C /+B7-q,&JF(|[˱ZɘZ9s*d•%&5~fC=ߗLfxxHXŶVqxahFunpP"%Ȕ8(\qxJ0ëu"j>?3KJZmtUsy z!*0|_W26J:c=nuf!^˶ݏcg:[>I.#2oHw[|4tag,bcCўN.r:/ie/N,:=WVORt#5ٹz# Yu~x] lꢸ%OW"2#ߐfoV-弔aPAGRXݼs?ݛ ^{8PW*2r9pcpI*o,.aeShJ{D{z<}L5h!tt{LxZq ]^z8d8 zPڿ? 7ή} Ҁl4]|Wkp ?"L"/ܶ74ЀSBSlNPJH!3-DI[cP Oo_̨%]Ne'ÀG¸ DӠ;2snȘ?hZ^`]*C !Zq:4 |. x$֢YD)야a%W׌.‘>ٯmxC *E>h䳩(n}_=MlVzB =Glv>q1S{ePC+fF>堑eҤWP#^V g]>ȰQ8Ɇ ^>CZW,V]Qt79/%,(Iٵ *߫,1j;ThRΦ{_Iqt_k-qWoPhG7MtB/CvbqXԴvL[&s^ѨBY!N]1n _;9;1Ցr~'fBhU}x@B#ܿ6Kez7/(6qP7+]kY)q0%Ab:V&Z ۼ=i^ۯ[p{ʸF>!-)LΏ37ôBAlPpA4#x~CEzaW4#@B$9u4S 󈪞wC[mIvzݽʯR͞}wDB ݘa!.vΠ_^6eEdoh."%mZQUK~. 3wclZAtasUJᇮ=g2 *Xy Wtp}XrG:>6~ȝ'S)7Z!ӾBΨ! Od<yHW}@o1$|đ'RGORa` () ߱B]($PCg4*3 !3BG/'Ďu;qoYC2sE fD1W ѡ#dY\"[R`$/sxU( ACy{[4]t@8l$e}Brzc6ޯNG@f4|Vx'94NB&?D#[7moC8q_* Gޅo'C0ĠQ/+.OUTu R x5 X`p;;W@D?^;>uBwuUhVs֭Uc_r YirÜg,bkJ˛0D8_ vi_D[fRXAq3v\?RH wZ矃{3W[*?)ŷL-l2r% (2d){:sr*}kA4fA399M؄ R?'jf_ajJwg[^fgF+ϚʅK_+jcqg- Qۅ#1|r@apLΐ82+dLFXJ*; >rza= 1+v15BHI*#Q V6'Ŏ9/9wYjQol9 vTy7YSd~D4ǽ1#& 9% U$$?kJrq-X<]}0H*o1{ȻǟfZ鶮S5yH/$ KQ;Oʀ"鋐H8Ao?_cnl,GҤEjjQRAo0#e JcozGe5sJ,qLլń9R2x>˛67I4#k5ֺGsѮ:5qAA$qC'Pg/[>K9.GEB>߅ 55 !L/?NUQOD>c #}j \` RˋmuT2КJt{9Ľե GdܤD8<>%]ej!Pdv|"@jjF5Sb8jUTag?x*ÕsmKPv [WPu?qQ ,Z,8e!} q#6E>%fSn`MM L؁f3g5wkbk/SKCߩxvOh))LĹ70/a5@/M<eW~V/c+>O.wLa\꙱* s"ό_w0C'!#}g%C0e7Ԍ7ͳ ]hF:~'#>ʸB?Zd/c:%nn_|~gdM\`! n:w!-%g:0]ݯæ4L4*Ͻ+n`lkLop]{)e^SgK|cɾWkcaT:pMNPh3|ݷN|yNR3~MnՌ (ycdcԃǕ L?.NkPM[g7?eiy^HJ6KMYc]Cp38 o^v7YPakDQqS GK٨T]x^Py|s^:ՁG4u-y1kUQ5g YKF3=00fdXe'vcz! w=y~_w}e;j^Kv@G ޣh406\%[}Ѭe0XY|)Ä h+(>$4G@J1# !{)h<8֒1ЩLt["vzhuqՙ"'#AM ¯ t rV?'8|K~mw#5pX-tgra ?b.'|K@=렽 E:ݲbtPAGU5:br({z: 5latbh͟5y)F8ȽWcȧew!ukfs܍7lGq訳%EP o<1x@G5IytAx2F,@*}H‹b ;v@c\KbTxC']zR\, ݿ'иpx/% AU:߸*#$v("[B|d)KG N[#De?`)ʼtde/kmhǛ[ߌ+-U}.\*bJX8|I\r|X  oml p|Pt|mzUqp"K闟jhT~5E&Qc5$7?qD/'NΔ3U7 -p 3(e*K{!Bw+t"GKEkNªX**o^_ÖӗR_gw,[dHi^0ba7$`H>9nk!wQ[ϙ!(&d1h A0P٧Z19ԇ"} jx>鞧[&Zܸ>.`VvJrX;8EBū0_L,t 葤ͼG ɘ PXMC)hŹ.P|ǫN< Y5*\y9oKlXJĀJUM:Aߠsj3oaetqE0 ~gϜV"^.Ԅ$> ոa~FA L묗QE)* /rt|;X<K#r9(O,}y)ռTKnp0-oeSZ%??njcb|,h!?#GJ3Z;-cϣ;fn]**V yX{wmM)fɷZ {b5 tOWMYyL]Xr?AGCþwNÑA[18<(T)Y*lKXeM`l# BRtIetaF8> 3v[ݤ2ƴ /ତLonjlQp.V>}EMɄ*ʊɞ  72 l%Tf lY߈.f>p=_M0Q `!IZA*>[s _-:,##gqL&js|_ 'b0" ,C:F"sz~ItF\{u#qGxmpW{96! `|>*d}_~ۃP|iptZU"nPᰟVO㋠ y\pkKpΊue{bKVttHj]sHTsD/_-&PŸ[#`<sКq2Kݓ%Fzr ^W Я ]k됺6_AvnnoBz'8?ZC4]T)/۰R8yQD([>ޖu90Zn.B,}‹&2 2s)/gY|Xaތfݯ8$[2wg:n7q_e,>HOpG!ogB~q34{Y2ѣ^0 OU@'=R`Lvs0ā>]-"IXAPDvJ@=_!ux+9F0v^?0092A 0)'M"޹ ; r.Ω)up#$bt P!鐚j"bFgD+]x?DpvrA0g:˟< EZZZ?/:ƭV\֕K\zs$'5É q0gImqU] j1iodg? Z&=s4eOP:P}t}f>~x+R~9{/zʄ.>h`ff;9{Nt,u:{*IY$8nVf*-;FXqэuv#`ͤnm̓rbHd;#ȧNh|b/1 3aVw _I>܇֧]rzV80Ik6@`z ӣk||sYi5vW7fy%bJPmﺤ5 9/%!WR-._ύs|tyJ/۲Cn˜󶷼t~ul *7Jd;@*eDO?8"T3+jX%ZlUfhN斧_w|z|iV\`;Q[^+c4udy{}>3l/>Lj[H<>1^# {qX}@?D>($@[U8*h}dԯ|[4A|B!шTFO#ڿ.4p[zgp*/-^C*wM71Y$'G*:u NNpa ъp8 I vʽ}a!ߗ7g ڢnyo9*3-9!ІoүnP{҅rQ12eU)<21"3jϫmE{Q[s{vE@f,"Ankϔt!<=sÌNKuC_Z|.l2=HjGyKoa,"vl5A\ Է\ /MpRbM[PgQiݥA("QC}T?>Zb78<%>H-A }9J,c UuNp:+tw$mMUW݇`_rE$ )(ƞ? :J#C=p!#d-8 PȸQQc? F]UjwuaμՁN{<0`~pW1'@_NpXƎW@6[gBϺ@R솖ӈW\1ܸK Xv+s2s3۝e d ֖X9QMS>n7T0bӇʺ(U!64OHz:r##+EW '%1Sl۴EtEJ (p/,GitVE5Vuܹ8*w,U26oU YA9_+J6(ְyr?  "Y'p[7٨m)GftsmBzu%U' ڕMU ϻd8D߆S׸fT)6De ,gSA4[~#?4pN‚` lNfKV_k}Q׌ Co3/ Πtyoo1-u@~:q0$$GaL%c@*R2s" A ^0#㱋3`EjqPCOήv'sQhZ[ \{lK޶" W߇b>^.Z\ju*; CI,Xs\UWE^g9eمP152U'z.Ŷ)/%d(9NNFzé_}ij{_,`yn]'xˌͺ痝vQ%5eQ#ddv2:Azq+w"-agY}\올b]ٰ铅![6AD /$A2G\%LJRPa»)N!/qWjp tt|DD\HgOY^cE^ei$?a$ƪ< )97+K~Ĥ gˈ~O9i1'p+B#Xhd "N~<%p_FdٵH羛U _bm fs׻ g:q/[4/7qr1׼}Oz}a^9ԁjl_@eUEEFW/zoYcֶ GA x1T*ɍE ~mh<`@і7bX N;iebtcc1-?/\@0cKwʳʒ3elO6:X]QpߋPa!+%4Kq ==ֿiḌ֢ jX>;C-S[œ`n?0! y3"&.T~>Oo~ָ_]|n2Wt5>猍#Ys㭢PLb%_:#?VuODT9NTT?jMfC^P C)niZq gef.q}o. ȰK07"9K +`֔//USC[roɍgCߦz. o9Ў/v>l QȈB Q;R3Zk=$+ZfߗY" VULHu fsdde.w8!#c"u zVp5e];LSP=lB>/{+ 8ߝK2EU>J d5\%꙰CVNvavsF2XR-G {|uL H~(qg]2do 4Tz cX`K./-^|n0j*ȼV62]c.<%z=ԣ&f  /Yy܉& E&rDg{xNp'b D\N]G YBӦ,jr_bdK@zJ%_U&y$1bt༫I4+s<>KfWТ a Dc6 mČۗ%KD??_ r.4pimOrjڈJPbwN TmsN-@3Lܫ"awu4i&Uz~i 8B >GYVb6 2dx-|w\)K-Xa0|On0qmz6Vƺ!X/~.yν'z _^95Enul("*+2ſ?ddFb&ru=ք-wY!!rmS:F~TeN0`[C:7o|GZPT [U~ jil)3;Wŀq2wT7M̈;^E Kȓ]p3Ŋs^-S`h8 }kb󁪋VsS s{KQՕdM|+7ə{Yj[u Z|~ ~+*ؤ. Io'bauf 3Q8u.&ߝ{.)% JʪN{72x0ab0Yd/:8Nq8g(nwV2 gGuTTc=@690þ2w l5vAJi%T\5M!ڻ#ǻudt&&rcH }M~ͥ[Y>뜸'~K/.7u*YoSaKԴTxBTnv{;z{`@C&{w? z^lm޺Kw=0*įM=?m}6`ȝ[V:)&N1TgRySȻI9Gqh pNUMnLBɢ*o];\a_2$&nec&/o( \ A=6BO#F6v5Jhu H1d6QjE=xb̀z[g% ]LH>J֐&pXݤ$sիR鮁9:ل{>3 l:gte\Z^ Rۂȷθ=# 8{hl6N8.r^yzoz STKpKH"Yf<6^YlR0ݶX(NtvB4k֣-h&N3y!u듗튫*z3:1̞F ̲v|mj}Ip$N_'ZTCMم13S懠jB$Y#:{DñjBOcdwj\eb/ _] #du:u1pU·]!+i ]XXA@ɚYPD@/!A~d7ΊqȊ}6XxmWka*>)1VoȽND<ש\2NvMg> L~&]7d|'_)XS%jXM6wny~_ޑ $˃ Ɋ̩ PM ̦(v%UmMC+v-E#6ktp j`CNÿ>|iOPT rJnP4sC[5  Rqկdum!cyOܨV c\TKia.R!Rw%~+uA:JZj&Z.Y8Rx"U:;duſ㩾Ogḁnn}8]J F- ݁/Y=>;Rў(XL * `҈}XooK-4$j6/jGǕ㳧[C눌@%/" Ԓn&R^hs*WyPďBiy۽} jAwO3<]IЂ0q2*E؎$01,76Y7XöNJfRJHTL\ZpkIӺ=*}3^$p;dռ!<UVʺJOAD@:6"dqN[V^(*Z.&⠝Pa Zv=֝66$߲NZ%\<&ǝX>ixY{VLnS(JNxP;h)c T PpsdXx> |c\0^.h=s]&|n@w_ö0L[sL8wJ3p#K2zu; YȉrJq6i6 ,ֲ 1n_w|*Y+rd8(鯊gɮgݱ[Y.i'v@OلZ\P&|_mj\"8dZ^NX ePD1aOU(5'} ?o|^wF2Y?dzzu|Q${~(S~}LNQk\:HyB.jA@nBJhMsc^Oݒ̠kQ[T.o32MZ| $ʧFՖ(gN쏫#3z<4jBOJ rO j.)i#ōH Kg8gׁ_B&S)r>IIqЁXۣ;p^+{!h32ICxzqxEmJc l:OIR[9Ms5^u&\MIT__Wwɪ4]=J߻OG&7 Oݚl`b# _&e'Lݕf2v'1ZOv7߃k5uz:L#[{cp\iA 6UQ/M1tow?, (d몣qO[EGR>G.Uaq+KZIMтYr0T6Ͼs&z}/cfK^zsf(<]ny/x07UvFQA >c?ZH\h_|&4 "8t4z}À 7%O;HH@6+- Dߚ2Vܹ ܱ^G|^ćWw6hL)+j!,#]-WE,!z*RcwMe-3X(wqW.pRȌ4=?Xey"G@$>s8 ΀ACÙJVH+7-2{v˦D$(Ofb9 k{Uw;OcɮtEos5bF)c3/{|;!`y,%a=C3Oٮ<죀Oݒ5[dG^BDOU-AOLJei4d<_2 /3PSo|u(CQ\~tPch]p,p<.NwzmI^I=E!k>x}X3u Z"RY7lv@9H"h)T)1tn"\WUSi/8mv4IYĐw\k,HD]fL%kފ,lTv<\J -z`P'=d1'vZxT_WJ~5la{?&nI\URCti$AN:1p68KG {0 g%IC-O-kێ&u7h9ʛXERi0ň?\ԍexDwaCk^Zv¸W//20vC.1uhin9x>}u]sc7r.l-j)֨f"aLL8:Y p6剉fUq`- R:@ڔ6QryuUրhBʇ(Xit8J@ R/Yws VFƄqaXx(wH"icߝsŁf;'T"g"jЏIе7',eq7{U9dc KQ5p (v4nNcd CAswjFB`b#&(-(ҭ%=}RがF@ziEW5zݔ{({$uGz~- ˑw\oXXڪ|\;(23:=^}pՀ{wʼn:2hWFgqƛ_cHΛr~&3!agl"pXsi^NF km,DX@<(,Mu8&cqNxSg`h.!qoY?.9hbP ҏ{ uDOlKpqu~.X)G/*w*5ٝˀ=c"ydv4[OY/DO*+|N<9L^8YYbj M\+E_#<f:|uIʢ*8C2 g =|79y3zq&xPu-n vm)ghύ3mHZ,Y @4C ,VHIry U0˅ *UpVVyS%K``Sh#<+&[{'=xr8kl<ߚ q1Uyw6x!y~խ׻9 SrRghac_-mgaڥ)7y`9-kX4uY}:NukKC$(r酪ٍMi*Asm-͝>f0tFsLGϏN`q|?}9XKP3 OްjR㴚`H`k \x=F* w[SDC{U>^Ve08u9|j(drsAg'A[^9|_>4-N]ut}v0V:s5c[hMN@0L/p^mR|cO+uk28snl!t(zB ~k,[Fwr/0KF$/ & q Tm]Ď_L]L>U4ǡ{ӫ ?}OG4eT~O؞Fӓ)}Kֆ =mkӏjBa, ,qo]Y2pQ\u dc5G~+ zUqqϡDdqss ܻb ;$E8[/C|x~}7[sw_ǡ{Y)˛x;eF~E_N=) g,C# `8L(H'2\-`f($7@W$qj繈ueHjib=xH!sp1#t6_>gK!P&y8*Ȃ?5,{R()8F5 wN $qFqwZ>ռ\03pQB㳚a<|<NGK~MZzSRge4#O&N+"~ hx &MG/xI >=-PO2pL[;#(eR nHԼI$ۚw5գ wUÑgj7K+0yL9gtEr #Jsnȟ*8$pFPp,bU'I(~dV´itD&(~=ltpmMX4N c tj0;Y_(0JɁ㕊WaZ{o'dN?~^x~3,< u٩ H2=QIy99iѓCB,]w=7fi:$2p#W_+=f}\e307<>pb!qͫ5h3,@t#ӋKlM<(i!~HA8qf&=b;0(w황jI9QDa>NAN'^; YD԰x.gЬ,">e;# X_8yXD>҂\!=f0t@Ed#{CAc9D:szU;+5xPJ>Vi79 ԋXU70Fk(d:E0ODL[x4fT!a~2(:zս~T[?TbQ_U~{幐ބ犷]>iNnpR=76 b\y^пI %ҧmA>y͒$y?6G*x+~9Uv#3 h pb) ?bAN 0&?/Z^<| ` V'[E΃`;^ÃϸDlCԻfxݢ8a)}Y G;Z{xxO G ن,-7kl6. Pq5,L1ĕ9\VeG^{qDEpdeN\וx d>a!p[}* pa8s'Fw QCqzȽl a1u<|14l0HYDi ȒȤWK{Vjc[0Y6%hDРT񑍦CCwSל)^S<`eeZ>}p0${lN)#MŮ l ]];1GJzH>+hn/Ll0NQ+2.BkQ;ھO*$).>E]|A=?QۅjK!= mˇ 7V; )$ΰ!6\v+w,x|I/xޤLkm?N"}!#)df~+x!w pf=]Pzf'an2T8`"ŕU9^VIM{B~d7ۡu|;.OY~*S@9)0ɏ_\Z#Eil3}\TO9^)$@ zm #P<<$KÀٝEx#q9*ٸ}O`> UI3@<b7 (.ճDB>5aLۍ44Mۍ7O.ǿ|9@pQzӋv5sia!ɐ$$ :,@^v DSӋ3gi*”a}ۖ^sg]qttzFEHqNhh@Zw?ro,fm줱?s]^\zG~wo_ ]> ^γ0F!"u91sQ ]u`sQRdVٿ_q8mP.U̙U!תʇ4B0r_g Grs}y`vaZu}n'f k7T)D1?( "0l+~LE֬0K_?}NY~eor.6 F!B7*I8:Mϟb !dt?ՌƱ4b:ߵ-pv<8V=pW.ϹߕDaI"\:"C.g/8wI3BQj䲨S_ldwx֋DL#;1ӃCYj3txBLDfMec(=icC㱩_Y OT&fEĥO^N 'oֿI^|UF5S@A M iJ޻z@#}jm0S{>5?3$Œcx<B)Oo2*~7-&|Dq);c>˼Wy}"tk֧%-_0w5L$7N#=6CӐ o8\({0gnItqTqt5C sApA%u rq[lL@#+nw kl 2UB?}~o1IG`~(H1DQ(?a +CV  u"BWׯv䤶7/uS=}?5Y AwX"la*uWRWdnc*C}JD Ws980E.\X`":A7;䩝\e^`r[_X3!b<tH&U(E_ 1{L(>V(]2|=.j|U=@fc{ ( C5 pDϟ8W.$P8p ?Qn4Cl0^yAa3sN-d.WYZ<7MX5hmc\F׵#O=ʸ$ew}>Ǧ!cz*)`D $@'dG}~w~._w \ ʻn@1G>?F?ImR$__O0ژMÖ́G/T)LP ䷙ M\"͕Iyv~Db_6߼t=cfa]X2 KFdyv_?؊YG}DH !Dmȱ6y Rφ.3$6 ACa:~Z)T@B_gQiE=gkxC칑s58.&16Vۼ1&I;B]L _ j~m\ ~Ci_;WA"`H%M[?zHAFF6緷:>$]U:{B߿g濧eH}3yw m:MӜ(w5lp1!;[7c5XD6/x>y,M+Eh!Xa"R"?^C:hE%ɒmVAĽ ;9?b 4÷O8zpMr+A+Y%K'9DJ &`gId\czx?ͭs%8Ӽ MGz+uTp7z>#C\k R YW%{-Ô?DOty0{CWY8x1U~QwN* ]8=glxkZkf9'Ɣ 7VA2DM@D40AG}w-+5{P;}8῵\Aw3 !#=RŪu%=L)|*tH 8E<$d=t? + &1c_T9~5[U" "Z_xs%NB7o:R6z&i=LO u d%QdK3 /EMt{uI|{jH}6g).c5 WO Y A9sL_G0Q?Es?GQS3P Fgq]2a[t<8|YcyݷOQ4w} Cuxih:w4606ik,8}*{)_kE,Y sLvjְfӫ_ 񏮿Z %ßv |\µ5 Rzk`-z. >T?͟7a.MтI~72ڛO^_3̦99#10Mվ>= 9)ണlq1 /qDpnU0 C1O =<ή96ԿqzAR<w%lW"-2Q._2gᝀ{bf;M~]zV1 T~#q:ϧ%;#vyneΔOJwZ rW<& t(bOW3p笧C `;xɵ2p&|OUp`h?4XwX3rCL%|֊9MX;فreD%NE}!|:nh!;KmӸwuQ$nb״baJz實Opk1i2]wbHYi8Nby5e<y[7:}_0a+^^m>lbp߶]zUeu=XgףMt);/{c"ǰ'sj.?k:=$hڭ'{dvkg5Z>=x~ 5J&lKΚ.rTWc$N!c_@qܢ|9(fE?v 4:|":W{`tevasԑ+~]tQcN$X9sz~s%b]X \.Sl$'qr !sz+D" `%|] [̟hQm = D>n,z%?5'wNVXᔆ>&p1j&16b2,GWX[_zt[RʵVVFEM5Jg%"`ĽxaG"3A m2