summaryrefslogtreecommitdiff
path: root/lib/crypto
diff options
context:
space:
mode:
authorEric Biggers <ebiggers@kernel.org>2025-07-31 15:42:18 -0700
committerEric Biggers <ebiggers@kernel.org>2025-08-14 18:00:47 -0700
commitd73915fdc0011d536c03856be7ec451f6a5fb4ff (patch)
treef152a824f4aa1881254ab460663753ebaa2307ab /lib/crypto
parent8f5ae30d69d7543eee0d70083daf4de8fe15d585 (diff)
downloadlinux-d73915fdc0011d536c03856be7ec451f6a5fb4ff.tar.gz
linux-d73915fdc0011d536c03856be7ec451f6a5fb4ff.tar.bz2
linux-d73915fdc0011d536c03856be7ec451f6a5fb4ff.zip
lib/crypto: sha: Update Kconfig help for SHA1 and SHA256
Update the help text for CRYPTO_LIB_SHA1 and CRYPTO_LIB_SHA256 to reflect the addition of HMAC support, and to be consistent with CRYPTO_LIB_SHA512. Link: https://lore.kernel.org/r/20250731224218.137947-1-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Diffstat (limited to 'lib/crypto')
-rw-r--r--lib/crypto/Kconfig10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/crypto/Kconfig b/lib/crypto/Kconfig
index c2b65b6a9bb6..1e6b008f8fca 100644
--- a/lib/crypto/Kconfig
+++ b/lib/crypto/Kconfig
@@ -140,8 +140,8 @@ config CRYPTO_LIB_CHACHA20POLY1305
config CRYPTO_LIB_SHA1
tristate
help
- The SHA-1 library functions. Select this if your module uses any of
- the functions from <crypto/sha1.h>.
+ The SHA-1 and HMAC-SHA1 library functions. Select this if your module
+ uses any of the functions from <crypto/sha1.h>.
config CRYPTO_LIB_SHA1_ARCH
bool
@@ -157,9 +157,9 @@ config CRYPTO_LIB_SHA1_ARCH
config CRYPTO_LIB_SHA256
tristate
help
- Enable the SHA-256 library interface. This interface may be fulfilled
- by either the generic implementation or an arch-specific one, if one
- is available and enabled.
+ The SHA-224, SHA-256, HMAC-SHA224, and HMAC-SHA256 library functions.
+ Select this if your module uses any of these functions from
+ <crypto/sha2.h>.
config CRYPTO_LIB_SHA256_ARCH
bool
]7FosᓭLVh XtXCm |_Ai8Ke ݍ5hza)k4lSqrkg3?U-[XxYjSM$=tB/A+ 6QgQ:ittVU9ՠD/b3-.*tq|ڰExŬ֐Xۢs]Tog6V}r[B='ӔV;Yw{\f{_u6A'Gt#1}T"1m_Ʊζ tkp~$ywCJ|aRF.w+FstWDotJ\^IZ.H8%Hӭǚm|oW3:a^jllꭾXB;1<)u_ERUvVC]3B9OàE^8]HyEv ~]TR9}3)K,ް-v"0wV17xy W?KRTdvG_11{lw3+4V`OZ͎*FPS/16H2EQ/18 y^஋;o7w&Wux7ZEP [ B.]_D_X#^Fe/u^'RZ3D0^kaIzm2tfV%袞9:ku<`'fdQP0TخCd)7a0,YPp=D@EiU6\,SnDu5OkC jg%?0Q`/|{eMJ$<m0\uEHcܹBv-7&̹Z{x.C쎎 s -V90e1 T4FClLꅖNÊ"L n & pGB$Lnf J K^8ӻUܭBemYe\l{UswI :dNt HU F0Unnm& 9RZpAO:0|ЊBa^='m|Е$D͌Z ?s7z7j IKUAq::&˶ç3dZ8!=O:w bt.nwe>cxlwd\y%%0gnTj:Y5+%iG"Z1mQ?{ҏ0T7:u4;W9[]cˢNg7D<$\>-2z:ʾ4a2I"s7?d~lnWl`!9@C~Sg&:qeRs&=żUpeko[sԮxS5kn~ni=_HbCVߡ1NƐ,lYhvOfekT˿ZǦ{w(~cV3̷e ,ZmnVVriTσk]߉wsq.V2>y8.ɷatTy(~j":&|c}G3O9ϱ>fƶt~H/!Xe_xp(@f e+>\Oɡ] ptbǯ#L4p#V+h[s7uR/tH7$yh$PuCfFb3QfX!fRToPÜ }ԬzdG UZCAihj!Lo/\!ʥon}A"D CJ``:owbr|X?̓m1C4 s:>~Oݿ9Ga( 1~BB's ^0WCSݮ۱GD J%`ٷu{{~k;y 2͌$GVqW>:e٪2B[`#쇳 6S>wfDGx>nHD^] Fway4_jjb}&eF uW}4]!~Y.v,TY4s]h|oxy;=:L|Nztmqˌ3C8jZn2.%pu^1̶^ʨy v sN/~{I#F]$6́]nccT>+my=RiyW}w2Xt}*mFwe Щn¦ żƥsFeCt s⭅`,BӇkpwy7hh G wcۓ/aZUuk1i~aOJ_x hpmN4!X_}ldMlq_G<0%d7t*vCs֑:YOTacvyfuc{%{X}6Z} |m]d"޺K?&kw[XK.7hU޹br>]Wrx'n< ex; \BnZUVPYZ+ =kyZӾ#3bx˵<;l6Fr9/LeU{J(YH&M붟`!>aAD֢!O~ S #D+[HZ OHS YLd!(XBDm}a'\! Sв&u2(D˻]meRLײ'W9Z]qʑ$u /OƮp|sC>0] Ey3rӊ5ŮV}%JȊD~ԁB,𢒎Ңm2 I$Id1VX#yr8U1VFHbcV]8VH UxM nX72YqFej[jUVmlscm8~@) GmN뵠M5:c/Wl<wRgIV$=٧+Mq[#Sy]w3&XII+c)Y+S -&֡]|q?jԊђIFz ̪C*NdZTw[p+J9?ĩVKB̻D",wwvI3\[R[NU꺨]uBY z` <Ȍi$'M@%7\ɞj 7a?C,1BR8?r\^_}Ɣ^W߽vn_z-۠sP< ی;^Ϧ EMl ZQ 8XA@h}_h"vnޠHIKuYt{@&1(*LkX|znf2 Ay cSΙ|~7>i''`zgb(OSEi+NP0!bq_R!2߃==sUS38 yJ)@82,m'4ek=/`󖓼"eȷvPMOb6HB x>B}<ۗ[uvTIM^\p}lӆxEJ8  >payڦy hռI_^{{,xU,;& m_nW }<}H'oy P9 r-& LXtu-အ"Ke#:OC)*J*on8,zx|!$d3NBgȉD6)S,b rs*mtf ݒ4HU pP~fHP3$)0YRn|`X=&۟ݍI,t/^ ׫wPT9#Ǭ5(_NAjXbJ|{p|#&*~kwAkۢpo7L$EM*[XE}_ndXN:e{zZ6Yӗ5=r;xWC$v/#3KE؟@.i37dÉt7g@ #XImxqt9.<FZpYnK?-*)㧔=)o[sn!~!B wxطc`WXz9GY1k4J܉k8v{&hQRv{d ;jGZoQ7ںKimeT83^Y;t^iOtpYlA^L$>b4[zm!^ݐ$#|9\$D8s"c )= `8˷.ͺ[Ž`|Gl=:#oH΅B[j* s8jeSeng(.Xuh]z}3o+x]+9e ,N.ttZNGyl3F??gW~z6m.]wfT( @tu|s9c~@ D}mB\Gjc1' 0(>[۫ӣvc1A`v.ҏ^Q=9urӥmՂ>H],vW;>Sw߼R߷@}R^oWZ;nx=yz#'1 }) Ƞ$TpƔ^U+ 6\2"i~$wS;26b$W^#}ԇvğ"uT=H Ww)$7 &f늎^a%ǼP$Loݡ݂gf86W%(=pῺzN˂L/ϥzؐp*=Ef_MvotE A)`he9.ŏX2Zݶ( wa`Tlv=ϦpX|Zh>?*W~?.q=nOǪĐUvB{1E;4mY_\3vUx]}k9YAa]V堺k6iD*.oҴu}>čڼθhsEFeJ:ҙ vR6LYO& z jhA DCɋf b !3 ]A-7W-:7 ݢF0P$۝:lnc}#16nqj2k,\fxR;!Ӎad 0u'|= {]Z=UzgQ?oK@N~kOnQ4WdH ;YᕜۥqBlje,=usMMx?wwaB6 S:Wﳧ͐~3~pi/ 'DGD;\񺩌/kXpA2~}-4p>Cp@.di1̕؞~Oalx H`ŬD)䋠f4T0zrtSz}Ĝx?ׁ=1Ehk(}{a4ẖEcP$' x p]p]n8CUGQQQ16g]h,\G ]\ĎpA6$= ,\15H` tz&GD1 i 5KlA=QQB e0b ?7͐)0_xh%Gqer7 @yt`HvTb U?SOPz7pݱ q+rҰ7\wt%{ }41A*~>h<(@yi X|Tƪ6C o6>oMPG`Ýs;O|eHW=ӟʩ ugDhAw\gu-΋KmSÜy|~BQ}'&DZM\6CsB5 m"ߦ6ӫ9] !=Smo%:*]=V8vͣe/2y9[*9Law Ot?J\5. >!׻^Әq@{)9 I m_=TxQ:j]zihugw'.Z }[v[~=CFiAG_(Bo$vx'ty's v7>mhvuwvˎqݿ{SE8:9E7M{~NE֭A`2A:zcO/m]::9wn].ת!|-wg";Y%SQj͇A>3N_لT ,ak, gaΧuaD=-}"|3<ՍvwS@60GG]tS3 \yӢc͔9Wah뎫'j1ŲMUf-1e69_1w605v,_h`+cߢ3H$X|)T2F6 ۦcCk/jVX_lh^K1 f5.Ai?cG(=>λfprH}0P3_tC6sY;# K e4A$BpM@4!h=j椩g}%a_nvC2x X^=^OH~ϯAѾ~WcqtqdUWhy 0u$?wi#aëpw6??~{-QW:ݮA=YX Մ͵i 0= dShwm3q{ >RA&9sfz[G7d/^:RC`% !8`;nf!&OYl]k{Ъ": F1W;gg Z<#k"(eD=CK O@:!:6CFt m>r]#PTJ^2bh&1T)L9iL=+(N΍DI"Cfil2V,GZ @ԣi9PJe]n̈́ޯnśZ3H4z/7JzB‹%2DֻYGv;,wa5 ^Y(yHx͛ A(tAVl3ਫ਼@$;zn $m<_\9 Bu*/كb-ʵЌZGL ƞ$*c{,26`E}:nqI`\<8٣ i^I3̂c?6& ESzSr&#cU89;P?`u~VzDT!Vs*}`r*B,-WwDR~]]N6=hJWͦT'#W>w YB/lѷHd@?.BH( 7%~1yV6P;}.[*Ǚ+1])|P1ـK:N@8`S_kDP,0 dv`>TR@ 6(DSQ_5~w?_VQ51 Fe޺uC훨 3o'>ly59揭)*,tьZ6Ls^vW.7-wE ݍ-K^r7 ׭B-'x@&`F}x\;S1o揃p&ku[p"J;̂t>Iq$F՝p- 4xu"w$GD^0k~!=ɳ庳lk1.O;%?7lxWA|xB0zwzw>,cBqՍ anc]Ђxc xIeD썤; ,u vY.qSL~bڣ.w!{` s}7BՅ;{Tv]BOc6| |`CߨުS/o-8Q{1V(XB_عڗfE'1>:҃kC[WӠ뛺enL^]v}ہ#1 ]4bTpCOd2FGToGu@Y |lt{M_ǿN&XV6}n"ycCZ K 륉P<5/1Mz.=?. ᫫}4le߲ X 䫰QBn,cc̓ ,ԑ}-Puv74Q?H(Ā9qvGh:!p(zdWNw` 8SSEz+$ɽeSj, w=^#" 9a0 1*a i rĻ",pl6?JEvBkP888xl hČX8S#XEDL$BI%3-6u\΀}̶X`Wc[3ﺁ^8 <\4m„MT%7im*&тeD != EU!uǩ+M*R *x]5atAM7C}ҁ#ӈpͣL}(!0pߩp=݌ǥk_De~9sbml"h8dc`S#z@D,dm񳅃t9e}wF.K " 1WcAWtv]ei`bS2MnN3~{:4ilD}=!?a `771O#2?Eɶ&#e,D&vfnHY!"&U|8E}Oɵ={^4u>}mo3ϲ v,( j H뚇&@'ʯĠ_^[Y]7 M4?@ !0;&D!9Vί=O,(ߗͥQTMrQl ܣ)wg5Hfȍ.'4\:ΊE+evB\$V$!9[%T/}:X_-]M8,p %OlL \ˏXG0:NPWMg.2!߻${ZװYjDao٠Wb$P Iu4 L$3wPJ_N^uC˚Gc w*J)@k@1xT8XZը5E|v U*ѝ ոBnM-5((5b _Y=ڤsBPOY<lwfm+P`dĀHAd8[HM%Zl:LoZA\q^  iL"=x}t9}`GL`)~ōX 稷ǑҪjӦmb-K pnlײ4<U$ XKŻɧPF_lxݩrmA}҈(;O=wSg`0zoYƷgDkfQ8;9,Eu ׌YF8cծo*^R{b;~OWcW#t*Õ*PP?%b.zպ=:vL"@)^ zUDksʑ(gK'PA꽦Szd|4>k>׈M{o:gm5_$gr @-x[uq&Mz;#mv/ܺڀ TrK]-q'|l =8A߻>wggONABCܤ)k\hVe|\>p%\Wt~!/!uG}=,cr ה:<|u^2`י}1OfH1]}6 tg?sF9āc"jᴿYwl K 4ݎ"[`>c00@k:} j!|!&DisRNE7E,|@Uoü{sxݕW5v{C_d%;K`~@ہB|7kA yA0(Ek5L胶fޢp޸Y}*RH*p"DP7F"Ǧ*0_O+ i`M6rw+=T^˟A|`3o@yzawbq~ߦ"b#U ֎4,Lj)8Bc5:910mUj?򵎄MHR+ $N& ƖTLlg f]^gb`Z'po.<ڢō:Ȕ2uA9ׯ3@WK2ar[paݡ)p`7.1w^EEm#\oԡWktˢSXY-#Y<|?Wm53ɘt0xLߟQ&.7Y+;^PtQGlčnƣl=F vDwxtPկۖ"["(#̔jSu z#F A?Xb0jH= 1';܎ J^4ߨMD2냦Kh}v,}*KoC L]wė ͩW@x)}d5sͫ|aQtQ^ǢVN~^Zq*1_;ֈ, =ϗI>2NXk%d1vLi9*#c疩OQ)dbVsmTfz}| W9?].MCw|l#k>z0͚ yѮL@J.\cQﷹ24\Gݖ:9A٠ ^d B^`rW^sn;cN#gFognO!ąB?iwgU{a~4X8xUR~ЊAk2s:81ny/ĝ.MV!`+kT%v'1*PO4t1ߪy%9 4js'dRMĚ4& 'V V-lX96s</Mu#5Q1ʋ З\UnzSo)tD2ΚCStBslHHq*Ex o\QQ'?{%WO}, ^(уxXq c\QM^pTB9u5r7wxͼr0ȌuΛ1d4cS9UhF9IۿRՙ1;30YF/ƄAܳP̜f-%'S]si5o;,D3C\qk|d T,־cfraq^k7jqjڶ_'ͻ-@;g1uv{8Q7Gڎrxq;rϬ="9C6 U(| Ij~qSl4.,\.l( wK~o T7}(TqT!NqI:Gmvo_١ؼb6v<9]Oq|l|ҠƯYOϴ}XuӼ]ݺ~G/`z63zXf}EC E3 z5Z_dѪl'F0,< +!qE|[{6l~g]qs~gw(Eϋ%P;ͭ/E92*/Q/eyvZ0nYޢ 3l r]b•-Ld\F-gA6P OxˮW][Z/ !2(4Qբξ5l|XSô2T%/.NB* ̸l׾BVVI!{>OW;lFM\7Fl؇:fyPEQ-"$p#e5, ) .I^X#u}|S(tVU1Z|˭cVeh®Α]v40Y<4;ْGtp2@ۦv%41MNZ6jg(oUFyW|^ȉ`{#A(#>s46 d\w!13L4́ONงhܯhfcS Y '#M mɔH;.Ii>.`Y46cBy{;j 7ђ$p^%X_5K% pTTN "ljwwse[j wj57DdѨSuzpT}MqFz˝[wĐKDl'ڰvJKMT14yASy"= 0qVYĺMݠBDkw8I!dwa!z`AG@z^4E}max'S< m8 A$/c\:YrVX/gyyкqwQpovhs>׭- UR0lѷZ&Y20~HJQQ%P*&pOH3nʼ&9h9{" D>MM ,Y+J?@˻{ fz!Wuc Vlt}PKig `ekt0 .T,[}HP ,CZT𾍀UfykoqpԒ)6֝vᎠKxp/Z#ɘ˚ˆ +#1X.=8c1YuQ.қf =k$2Ra[+5̺0jnh4زe4" EfoҲeQuGH&QRDjoUKIl-d 85rdԦapXra9޸sQ E!IQr>A|uo ŦXQ PfF=ʋM0 Κ/(|5y&kQbw*0eI@PTmta]Wphj y-@E}.!/utP`w 5e 柨NW; G%q NYxSbFF=^;q}Q'~.]ZWj pHirld sjt- tÜ~`艖 ?D{ˁ*[mIƖK3OWQ!Y4$T/%S}1OG|6d I^x}ѪS1@bjMm^eIځ(1%&e)BʴKK=֣᱃7{l|)AJxMG.utNϝL|E隕l~E!Ha.vG\襁O,KrQ=ݣgaKrvd}1fy[KhDDD`X qvlQX\\BlYe؟6?j¶0<_mIb+M?;U#stAݹHjޢQ INY? Gn?1=90fiNGs7tU(ɍ:2hV6XC(fPB:6 hGcPjB,Tp!7`W~}BEP4u02i@E+?t#M7gő^"NФ/UpDy!_jdaF mVuI=B 龁aMxZQ4:/['Ӕxx (,\T='ܱ^4el;!_-x)r-ռDh=wuf#1d" iw)=88ME7ϓ>W }7V+ݚ|iaJymηʤΗb Gs'!Ew[D`lJLuɠ1{iL'|#ͯM7x:ET[1>%{!3V*-@ EYpgF.釗IȂܹ!YzlȅJӒ>lWGvl i=d 1N-/Wş/ ?|gv䋖M"?⼠&BzgȥMc:Y6dnp#qF R eB|/qBn?T*OriQ^N0(QR8hoW}9k,'dJXa>N=^uYѾl6VCa*AAt~o+{m$:2|i esƂBߝ7%?zRxm-ٺ_>@ N0:@?,wmhFd\;C~Ùe2/l/{֜ǰӆlVa,$}_uYXh_.|݌qAK,űu{j@j_+ }\'v<׮+ Ti2vSRס\HCMwq 3,o,{^K+6;Nƫ.cSB d2ElאUգ\jU+8#uڗ;ʛ$%|C(c<\_e=7`Dїyd2/LQ8;aۮYԦ#*q'Xn7-Ǫ8rv5fA g=zUz4WsNC]<I@.!(g\./ա]I`uЪ3Pv)mW,?E@mxRPAz\ ȵVy9% a@"o"ɩٲ:eQuugM`WgY8}0bI-ѳt. ۚch L<^NPvH]Ҷ/%3Q˅x2C-M]pmXOS,2}W A``2g-H9XkiF.Ϫ=Q*Lo4 }2Dpq"T(w*q)S1:J@^I(u5N/X2s$" b(`aFQlGSB-nxPgt(TT\Q7UX;TI=W\< BHCvE&cAAXn#YZ@6"w,qådny NW;!B:]+xQ`|MEP}1?q }zspUG%Pq^yFsy7jVj_7X7!8$8uMMX\# + Q@} 68֎_4!DN.0Eۨw`_MW4 -^ӡ*#(AXg{qd׌7a ~(UNMBJd%Hd`u}Wj4 {sڋ ׹~2 3^ԭԤF{\):ptm:D1w\'WrX<9#3 q:aLV[sD {P,G?v$fOT憐sgLkx9`5(A57jk7;&ZNvWNW yZV+Oz^m[Nu[SE+fߞ'lM:6;^ˡ!n2g phGw%7;-:5?t^1xi{ ͷj'&s,RMP†s~oh]%wx=ɔ.ToP:(B)h ~M'w[zJZ/'fHH6xW*(b#h2)v榺C}EvlxfptyL̍*w4g6@gúSuvD3X}Ëm*w2KX0zJ𱇑ldyid=W H\'yFXڭxP/!ѐŽu_/nG,!kU-%EbM>hO9a[N_?ãL?Eb.Ϸl]JT!]\kA0{펹gf&ѥKyW6Ο~nn]vĐ;]\Ґ>S#,l܇)&ÎlyS?ۏ7Ţr _;?=g\Wy<'ravSdϦ:\Ngδ>RfL" |K;_;5JuA0e$!"lxpWU#2’ r))83zDL,|G 0 cuUKSW`tڧjP_qxy!n9YZF[w =f2O;3"DPXJmZ4@R{,w \_Z.[Zgn~.G3└8^ ~bHL|Vp>m^$6PU'4R'$k$O\S3%\̾$GϞ|V~JǬoڛxn"Lak3rCVj3xT:y@"<{\=^iPGE=~]ڏM`|C5gGQdp\!~ZkG :髦B48>Z7׭:~j5SI؈)rOMˉR\[֕8C4+՜ 1"B~kG;U30z}[dzv(_+~,Aܖg̓qS,9Α7lH0Fip B t싡Pe i=> '&x^_3\,K<|NzPn.ou($#φL! Kke#p0r UXB E*+s99c2vw>ۑqc ?qتbUR[L ل/MbIc_8+f؎efjr6C[ܶW"Ns Ѵp=򋮚ajV#+/հV9t!E&IJ`鸸iVDnZu[#5wr YUfXEBxJn=W^5`~PEUN`əf@Q: /}#M0 Dy8t5~]dp[UC-{*`Hvw_fq頣")MsG"~y2km&c5G3!/H$g 7_סgid,Fr*ő\U@9W-1{txs\~Uq?snc4ʉ~in#޼8!q6{tBSک=ii?|ᑒK op l+xU^ae}az9P&( bzEԽF'lsI<Ģ8 \*^Gɪr>kd0sϙaD=AZs +䴐kHuQܾ;r&d޾e,rYJG7 /4nP& "+IE:=}ƫG2QE{kP@`<-Fn [Px ee)̶0nULr""+s(6,sb"iLMYcsXa}HAڕ8o??7}ݕ; 8Y% ȁf3C36j;Rwmvwfrַ Fy>}VCiwwU=c'7F"aq@/e" f Oo9B[{gMQ$Ӡ[WR2X$rb?D,4Dɝ꼐/՛kc_t%MG_99`7 !HGƫs( VZ #fTq]%^> |F葎&B]MF1j&OwqWݤ2LTp< #O>v.ct?'jUQ +CcN 29qHsh椧V.rRBuanl,Z>]\:v$-Uz"E׹TP/0Cݭc`auEZ! &JPq~59U_.c HfF5TlAs)[ u?U|%cs()(m\(&`fJ,؅T,#7>kE&>uԨ)DwڃlQD/VGC=,=}Bz&^U AF$QG"Dp*/bE"P`ԡ) ?|)ԳTءH@eK 3 *61XojvZ8yDG^? 'nZzn]Թoʥ|QwD} CP\Z܏og>94 GTpqrq_-:O|*-K-W`JPƎwULJن{CN[ۂ'#qJhjVP zJ6FC^eVZq[JP -=[`O.#1:?rZC NU-෴_#L?D("&̪B>H"Q62Dc s{@Xϕ$/ qR}st?AF$^s\0$R qE0-*92MK .)aQ ou ^6-/U~3r? d?0.VOX1nhҾAzΝ`4F ]͔̱$Q?*t1E!LwrVF].b6ڧ\.zleBɹ 77- umVV;݃Z{t 2z8ܭKg.d_ qm/<",/"#0`A@Az skD|&𪜔Ռ{b1eP r^*б3銠^}O\^vYB F{?ޙalRr!焭| )ԚhU*IsP:X >l_{EB6%ƄzYBZO(G1U`T EMb%A wo﹜[I-;DUCPdul]+j0j@! Z&N:j:8/-jŕt vYnpf3jqu!ouG }eDP7U:MG Svj1V.t~p2+Q-Ҩ `ΓB!Kj}$nUۘ#s;mWmp[k  li *̧tϥDk{ ^Ú˟;1px4ozi@*Q+jâN},J"Qqw%ZOK Ė(y .Z09\h#9sjG\Z#IKȇYm&ڨ )MD }L6vJU]9wv`wIx~ۘm{=yt)(!GfI0e!bG>HNШ2wPTrvqkqh|nݝ.<0stwvr39ظMʀCUr=3ZXֲCEK$;ybT|^pli`8~i37o*7ʦ/~\,9&gUfh&)ωLmrn8v 1Z~-чK=IqL;dPG۟TR* S.)^@uvҼ1['RfZ?E!>OTX}a=$JV^T!,gB;%a+8) qQ\Ȁ)c<4=GQ@Y@10! V,4t)Z=¤y#tތEpm29/Dž矃FnG˱횶!ߐ_!xWc5NT0k-Wv5q&2݀@'9 #@"Pl?mH013b%b.#"SgV1kd07H>֌!Ӎ3"PDTa:Zx .xMIgw jl(!)386y+'|h4~}/cQ]qcj5s>ɚ\n8^f ]>/6DJ_Aw Tr˺92t+4[կx%3@v+B2,nâ~31|JȆLvЂ3}r@WggBKo ;ͻj'QSqvolꀼeVC2}?yd)`U|Cpl|GBs;Ӷp5apdst.77]c|hvTBnJChm&Ђ1%RB33?XXE}2`bR/]V9C\4MAh-6hϷ@I<7eEI򋡠]TXv$6 _wV\ijS?Z;JY{aCkD+62-fE,=g5Nc}CY2OМ]dݘfEW 6F92oj^Mn $I}}fAx5]WoL 5^ D | ݖs.ҊpE?LI]Ac8yQ=v+b#3q6qhWMY7:ֳ0S5Kz.Eoqڦ3v[7UF-ңzZyLԯhIkqF|^4^MtA"㙼A3,c9>jG;5ܐbb(bk~ӫN$oImwGWŴӚ#u;3>|#[~njs$C_e ss¾$ͅnGw#٤4M t1٤ஃQtff|-dBPS22Sx|Of+ƫ(nk( s_m}bȫW:YZFizOۆG.:kW^mNm^tg˒uuz/ %Ro'ЙKonppv]Uf;ӞtQxTϧ7.e%m9ݖ~Gym c;RN:VgMT@84r훸[Wk @3fG7O;+l {ݞFסuVŽm4 B zð 79FaY=!'ް W<>7EƖl=C#'߇(w9i=2}|{l;&?r_  'Cwbo#==Ү=,6WkWUP*"dCSVݜLb0!4+ܓ4Trr^ʬ*,v?)%b^1{:,Ǟ{/=*&uvɺ<ݗhP6oU q""2f$ O* Txi|{j?G/lMFSJI?Km;Øm) Z4ft;(qfst;f&I5J|k=| p@H.z\+R-CԲjB)f&3ͻhm;9R_A Li3sfw4_Suˠ5}m`LRMRa0MD(%#a"4M]I6^P<頣3F?mf$J?3#F)T$Q}}f"“.@(3@nTk "А!Ra9џL[ꂆ[I=YzZ 359<;7SPvf9ǭ:6 :!`<3f,9eyx PF!G؝#aMM.R Ivy2s]t}5TA|^Ѳ:YA;n} uƷf3c&b'`1p 2=8KHn~ppLa~Gms *tyuJ] C#5Om%Adz^2t:2x=i45lm/җC1cuUzIz2qDz_oy4i'0DME1X ?2=l:CM:v{(6rbr.C}VU$Q{O୛4 U2kW*W6bhz Lȍʟ@Yo}_ʗPڤ.M {r F7_SEV o甍 /&Bkmj2anyS`aUݕm kpR;7`@S`=:=8xY1s'ɷې>_;_ZK~8]r a$ Yr]|d0zj./8ў2&FMtF4ӄ+H\:DU$'C|Kdֱ B7 p JժVmSB[5s=t:Et^7I_d7=H].g\cr(ߘP0LbbMʅPh8-LQ ]}Oen;Jϵ*M?+f??ܰ O-7qFXA9^WE[ͨ-md¡4 HT #]5"aw/ Î B7A6G4~\,2w坳*2N<öC~znt;x;]38lhG=O{2GPGtJ7Qw4|X1;#/1˸cZT5Kgnd5&M n^ł5BcW7Z`sLtxqf5U$+1CY 8\izC(\oh5aZ\|9:]馽8?i(׬8殧\@-DaC(J=!{HR'~ѝɇ'#^t)K<:|`T^\fALW)=4t#i߶b2|Cfh_*gv9Zbz^l~"SD?s7y hǦYQ];&wM5|<_5G܉X:kdO&9?YAOx٩;j򹫙##^Q}f[pa0t;yBNxrsI4ιQw:2AS9i)>v; lP+k{v.\h؋ܬ=b8uf丹sJndyr`璘 3$1Kvc`;2j#}/GQ)4{xY{8h{bHn6eN2>,j;|"3Tޟ4$Lه,:Urp^<Уeuo:41ȷ#T~J¬qL4εXMw3C^f#R_9`|FxShASZ$q UF"E<)p1W?43ݳu:co&l|mac0[3 TwmQXt61!mg)8G+|=Tl:[gU'kMHjEG O}Dl8&L>J )8H˧t\uf'/ӷrSx-]Op3W:t؜j5k0/jeoĮΊ:ĹoC Z,<薸:8üqw*;M!E+@#`k g٨; "xO<kz/绗z|#NSf^.~B+K8.^;G_ 3/lӲHv"1?9PƦz,rlII^ Nq{tnqŰPwN\WĹ8My4w;u2ܿfڅ}kT]SؙQNG]AŽ8HMt:n'G8jDN˓Yw9#}w}3iΉv9amH>Q{ xOo`Og.*Nz]})+sǼ4vC4QXB`$(k.- 8qrm/:ī`uJs &f|雟l9g?ܑ>4FPm3q8&-1<.%YAmW#AT$f3:UɑGD\Ue,+k+Ш &΋-=aaEj'n ],ݯF~/׳Xl(-p(>v>ͿKg>gŖ Şeoڍ:x3G߷ `O%Q:aPD7 #s@ 48*pO@w(obY?=vDžK;{h.NrL^a*+F6o8­; X9^v1vԿl]%AZqӘ*vo玬:kQB&9(ݍicQت5\@XFBog No3B-n{5Nۙ( aF!wӲFfzxЮMUB,*$tKz1>i͸뵒X =cP-AK[fJAWs e~Q tuL¼A6f`YM l= \؊_9{-Ss*c.kWM0qMNa KĮUc&eA;J;M~zP2_k<[ޜV ! ;yAMZVq2L73oń(eU$QFc;>64<PY&b!*iGa?׺s _HkWFcg1 )pC7E`"xwPGTlP}M(G/fzt ugHF%U}V sRZOPa_Y(1!YUN)j$1A3J'kMn d]p.[>$?s7'ž%#1,w{3YGnuwS'~PAj"nl_}>AH>|k|k$vSwv{[ٲ\G g`@NC"2)Jl~.׽eE/2%amZ8BcOnrF7;3FvF:46Nd-yV`kd2dXԁux)罓~͜~c |疑Z78, SW?>dƜ$P&2TC}߼4",ERFD2>'2ݠ8?ˮU_KDSIl&Q|`FJ sOz"Kq wMB.+ *SS>sC/kS x"b[5⿢gdzV^r~Gpʳv@9$4}ܪc[x@Oa@B<>}tީTf`\ 2: /5K եĮH[z-ni 0gˀ#8fG*Suh54t@ClroFC6X׹5E:XRCV>*jCQdbT[#8YF aXFqlM N@-HNۛ? S08} [0Uf߶6:8)n4Ha L1%6ۉo˛k)U(P|%c-jP>aaWJ?mMBcH=w)@HLiOĜVc`űkX6CHUr ca:+bj4B>~f%GNwK_VӣFn DX}fM ۴}cWp5qpg|lpwk{YҶu@ҏSf~ټJM8\|ѿ~S~hB%RM =?^fg?."tj$Nj)J( `)M)MTCS5M!@TCJiL04<`H$[m\kPxH](![5<@fjbu"$gC|mkoTOT@( k9ǚ t7:z+cxwVs{~.Vm[m.8t_J]+v=srgo= _) &kZXX7u} r /fs+5+)s2lZ#MYwд[׮k>˔E$?.)xKf!{ʻ#qs43[O퐬w;bh!E!K(0)gDYpخLleeb<П 2YpF3/A@=>%þDŽ >+t :ۻBw}鴸=yjيzA͏߫PJP3@U}|[x8O)ՙ4AA @'m;(O߻OWL|9D:ۼ2I~˿yK̝x9?:u|=-ƲP)+gAoYV=8D--m.ݗFqÖ`tWS-e{o=WsvLox>8> ɐKJ9c,c8w~ }m7pejtcCO#w`9$BE)0vY?ֹƑ9D1._;o'ŁC03g'4Feѡh!ANDz y<fo?Ik }?~jzW?S#\Snkxݾ{{:ecP^o"RZC7$.x^D&q[>k$%vsZ:wvJt!2bه2`<1u>xF\_LIz=.|6 u}"Y^_Ow]Z쿭7_i4r{#Kڄ}dyXaxǁMfgGQ :6>{uH+/Q"$h5 /P:G&A`hf*F4WY&GzVbm}I|X\jzg-At~4h?So%E6r 4ryTPE*Ie9 >KˊC o86U`@f~E0Վ55;}V|4".YѡIwt5cdz3V A룫%h# YnrwO,D!jh̎y&(ǡC0Ϛ\xAuthy_9t OKl./qE.֎0}>UJNjq \7{@&yF ~i]c!̮+ƭ|R^K LX5,`*$K<8eGxp{9(W!D9*"Wx TAe7"ET,]] o=-3u4}:4B+_gZ'A>nܾY[p16J8uRЩ^H ϪGeLS3 .]g]ج#0b3$V]-M|G8ь)xj|T;40`:w+0n[muPQz9S!< Ame74utE4] p{֊r]"I(YNG`>.0oag=na-&۲?@"D" &`"h ""d Kd3E'IR #K%*!>VI4x0L|3$>cV)?baP:큃›ﵑ *[ow8I}9?HL]+ϤϡզV?Oy@Y>9Pa.w=<~@pٕ9ݞylո_DZ1 Mep@aL2͜ Z,5oW'^DAV!VP ;ƒ'܁ԃO8(Aw:B)7?o1Ξ(m~o$l nAM@oc">u?X72nY<P3Cul \ `]]yM8ǭ@9"i[$ Ja!t'Jd&Gٹ}[++>RwΪX^D Q>:Q/t*hx\baR ˽%,/#o[юUX VqwArCLHvόBL5_^̬|3DAVB W(Z1i`;liVDtd$Q;߿GX9>@ :׵3aL 8}v&65뽳xS'%IVVX;ȿ a9 0 t|l?K + `#PbFr*uˍ6rGV'Jඦ<r^4S E]X76B`þ%pΓQ.zw* N. r EzוwOaWMiDi&2?g)]31 g?霤<:TcI_sub6QWLe3G=kܺ+1 k>'.p^FAV_cvlCϳ .^p'zL-ޡoYv긹Y {"4ӯVjwX-Cq=6>!>ӖxFg~wV)ʇZ|4j m([IhH, aOrDީ$#[.{ܨiTx4,i䕮8\g0󃜾Ca!.*59嗕EL)Ʒ~H8[c>CUqrg~?.z睢 ١\$-%EӽH}>2ev cT5\b\O~,KX VW:ptF  ~joT(+^|1| GY[lY &B1CbGq8jtGb{fQ3|ຢ'sRm)[xmtĎyyKź\xYQ}%*Ň}S1g* Xh^Q WjԶ;h\jƒTs<ub[qz*B!f*&ueN#6: ]{_\^:x_cY|j "=Vsf7 6VuYQ퍶雡9Q )fT,l!a.#UaI&Bux`Zr+ @X-v,t?{?[\~WɦQƲL;5ҍYC ڵvlXDFxXL,U/ bqѾU8vE)c7zvQ'JR `WssӾtNsw'=OmF(@`p+절aLyk%Xľݨf٣!-^LY iAqD$rQbisDquN|fŨ4Pݎ.{[P$vI: *}ਤ/WeYEz.+ũ;]#\{ ֥CRuÕ%Ad D%زn_+qN}&v *;"O!*6-(Wo+Z-+~2R|7vSbo(sayk `dYh# E POJb .6uwڛ_>"N7ˆ mR#.C!;>Txf5ZHprp\rGSԆUVIR' 5,}vo[egqԼAEE![GXQ L]x;(fqSQѫ 3toe1s$97|~G /O* >ꢇ TB `Ͼ"؉4!+cS>1ZfH H熬g4}N93 ,ٕ̠1E'MgEU  (KmP|zDV;ee[,0:q2e'a.FQ,G-UĬQaeeA%a2Ipb:Cq< Y+ N~>rMk'w͛:-mO=;њ3vɚ9|}0DB$%&-Wp)s" M_w231#)dfuY1_rV  2 _[ֵ\8ܖ'sc{JiA- vgru:i>aݶs`"싈o : &(B+=6\j{mp_Hg޷HZb//U'&b7ٻd[.JZyGhGgn-Z?06!Nk>Qtywzh咧F{}|9ԐGD mkw !?>^Ѓ)|&>;Sݾ>\_y.<ą% nԦ0 L&fN .-Qfhvx5sÜ LCܻp[XꛄC)K$hѺpH{*-.~Rig[_?(~+<۶玹CaE$MjhMϩp]zΖ{@`Pf{60#ZXۅ1p'[% ). fkhZ|ɽiR=9,A^36ROφuӯN0V?̇=EЇP {E0s{&Xy~* րȕ9\Ӡdb'vIhfAxvD H1$N܎:7nP #b:?sqzR7F5_wkuc빩\lLz~EAVornU `"ǞZ?Fn{γx =]Yt0<ឋ[3<tWa@ܢ; ؑR`c fH_?!9 փU}G>iYq2)-PI - -x gvb5oۈxkI,vmbbL{^Aj7 REB:PITQDTQDTQHQE QE QEUPPR5M5E5M5EQE-,UUDE*u{?N92!~1 f GǟUm >zΥt7r`T= 1|E:k}ƇFʼY@^l> *ffBo0%e:6dX w|:tDS,{vy4m0`E'`0L7ogE77C4>_o'(hK5 /H:j`tBwIrrQ'3}i za*4'-i=<䚂\'KRX6l~ޡ"`61l5@" W"e:\ g<:zޱ} c ų0+wC20,%"S˨>zjL<}}{8Fff'Ġo̍9U{5~EH,8 @=!2oѻ vJp}>Bx!pi:]Lv)(Hn?W1A|`׆vɄzuGl%d^vd3>hd$>COS7%BnRH p;N6j>QUj*53 ں7.\B"!Jv=SO+j}Vٷ< $" T5K"!Ii#BiJTI(@9T0M<SE\*" -bh B BQ)*AG 򶪪_{H*PJΰ!A Jh̡MRTM 1P'Z,꡽_=/1Jf!(̱1 wOufh~f GP)bY} d@_UGK:dY1Yrt T $5xNZwM}QC<$B"% "1h 5qfiUײ8t Cڗ^7F_ jN/4-kj+BMƸ[ÇA'4Q7xf@B@!$6_a4dm褹WB㙜XMcJËN** ب| ?ވ$e2bMYo5238<^-T-)Q0K3 0߫ݽ/lGm@\n_P jiV&ŌAP̖IX M XPq [N|?1 -a"g8. C[OrN{")*@'_mIuܓo嵋S=QS#5Y^Df\dg:MH S*`>Xk'c&EZ(]J z@v[יu) T7z^|O#g"~]G}3cڴ1 (^|=[wDwv9GXtf`Ԛ+%/*4'UwOs cX_M̺ FTŸk:3֫,5'Ctps_("[E,^Vub}E|j5]]Ug%Վ~-[#jyNּMl{qÏ;w_~_#oޟ@4v-Ws>?~R qB*(p8p~tuǾw_rU  &bcBGY\0=s[I@D/| B!?B83wStp*ڋC30DWooqV+U;7'7û3L K ɿ$|%0I$ilk^@/< ^yHˡC#Hl3)OJd)Aҋ_j2H$*M'xlc]0mL#KЗ,L$|h=;tS.vѷ[t|LQ+l.Q=PLvPԌP Xu #-1:>f#B\z/=CEmCYi ;> .jm0\"䇲%go՞j**#n7.As'.px|[ # ۲/Lvn9p8U+ B!kEyMnꋨŕdJ8z_0mA9!(U8]VϮF~u3bqs^V km}S@4J :o+#ePJ%ӊ(kʌ5 8$"H^q2νwPWl /`QCXA i6/+/$)s|=GNU[n_Z! URbfS˫MN!`!~ebwui[d" &d(M袙kY,]ǧgDDD0]jqDFLtF/ҵ )B 0_li)y DvOIJGk[ Cl[)U J).2:Ԫ p Vn=etKVLƀA,6,M-k?_4DEݹx5EG^nu*CB0)>c׻[ *W%l4:NtXrwq a4!_𫞇= zZg>׳Q{Yqw\GS{* .a&ѻՋA;PPW(*QEK{/L_լtHCCC_<:q>zãϰF%f O(9,3تjkQ~=l2"ɒk/49x>Wu0S"R) W4VqlkL$vFv :fEExJxn(fR`d1@͸kp 2M:JёikݸFpy:}>mΓa&Rb}?wuw>C*JCx" ph>pZwM~@d4)lk?sP@ N!X8fTM"י,94Ad{7cޡw,}y=$ My⯺oDž=+wn9V/-#  \qe1TYd2A?gyW8G1Oa@ C(pʹhХULCk ĤA $҇1•ß ;%&>Sf y{T=I֊&|W{{C B!2 m`x*ܰ"z(H fՂQxV2Ju0utUɦH`F2(][d4 :jn G~z5F]KkWmvqWq R |>] Ϧ7iV*=QFR)dT$%OWΓ Gm7uUocFaL{ nP  ,͆p\ա¥ID$~@Q/@)"4MfI J`Bv1$*7$*`}٬mx>`07z(UMsQ"eӐ>7Cmj1 O,_|b]X\ن\)TrWP?G}/pQ^E5 DR2sM 6f?xNUQmO1};Q/grx`?ԭJe<W74dPNPR/A//iic~2ܣ/N=%nFl7=Nb iu0eN$%p[ڑjSK o"yTmEӐIR݀`"P<48qC؈O _büh>ѯ6._Ϋ頿ƴ jfgz/f?۞6! ai̴5hDbW2,e!a,!b9o?u3]Γ1y$;ѼB4ލh%m 4!vj:ɰ^(r'di@J]i0 Z8("@rF 8&hG|M=Uˤ|i vP(H{_x 7ph׻ L?M0*|œ/pUfI=