summaryrefslogtreecommitdiff
path: root/samples/seccomp
AgeCommit message (Expand)AuthorFilesLines
2022-02-10samples/seccomp: Adjust sample to also provide kill optionKees Cook1-2/+7
2021-10-25samples: seccomp: Use __BYTE_ORDER__Ilya Leoshkevich1-4/+4
2021-05-02.gitignore: prefix local generated files with a slashMasahiro Yamada1-4/+4
2020-08-10kbuild: introduce hostprogs-always-y and userprogs-always-yMasahiro Yamada1-3/+1
2020-05-17samples: seccomp: build sample programs for target architectureMasahiro Yamada1-39/+3
2020-03-25.gitignore: add SPDX License IdentifierMasahiro Yamada1-0/+1
2020-02-04kbuild: rename hostprogs-y/always to hostprogs/always-yMasahiro Yamada1-2/+2
2020-01-02samples/seccomp: Zero out members based on seccomp_notif_sizesSargun Dhillon1-2/+2
2019-05-18samples: guard sub-directories with CONFIG optionsMasahiro Yamada1-1/+1
2019-05-03samples: seccomp: turn CONFIG_SAMPLE_SECCOMP into a bool optionMasahiro Yamada1-1/+1
2019-01-08samples/seccomp: Fix 32-bit buildTycho Andersen1-0/+1
2018-12-11samples: add an example of seccomp user trapTycho Andersen3-1/+382
2018-07-18kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBSLaura Abbott1-3/+3
2018-02-22samples/seccomp: do not compile when cross compiledMichal Hocko1-9/+1
2017-11-18kbuild: remove all dummy assignments to obj-Masahiro Yamada1-3/+0
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman6-0/+6
2017-01-09samples/seccomp: fix 64-bit comparison macrosMathias Svensson1-53/+72
2016-11-01samples/seccomp: Support programs with >256 instructionsRicky Zhou1-19/+19
2016-11-01samples/seccomp: Enable PR_SET_NO_NEW_PRIVS in dropperRicky Zhou1-2/+5
2016-11-01samples/seccomp: Fix hostprogs variableRicky Zhou1-2/+2
2016-07-07samples/seccomp: Add standalone config optionOlof Johansson1-1/+1
2015-02-17samples/seccomp: improve label helperKees Cook2-1/+9
2014-04-03samples/seccomp/Makefile: do not build tests if cross-compiling for MIPSMarkos Chandras1-4/+10
2013-02-05samples/seccomp: be less stupid about cross compilingArnd Bergmann1-0/+2
2012-09-12samples/seccomp: fix 31 bit build on s390Heiko Carstens1-8/+16
2012-08-03samples/seccomp: fix endianness bug in LO_ARG defineHeiko Carstens1-5/+10
2012-06-29samples: seccomp: add .gitignore for untracked executablesChad Williamson1-0/+3
2012-04-19samples/seccomp: fix dependencies on arch macrosWill Drewry2-11/+19
2012-04-14Documentation: prctl/seccomp_filterWill Drewry6-0/+711
Ň:rAɬiPWG?q7+3:Ww6pHh̓Ȱ?ȢwhSTt [ 1+BLbT$D09˃N^"#hdAA: I=tnt]H&vNqR)~C| `8_٤ҎIqRe_|0bs~yO#m}{'3fNG۴.&unݕ[a<;3AI몀F$!NnWӠ6%-;T7p]Kf0 D@_➣?i;%(vOD׊{}~gy3HĐr~?EQ>UC#a1'!Y#`+g0 >-n?q7b̡!NJ,.t?g5W;Ǣ|k{t?cC<ڵ$Xz;8+GCC( 2c%p (\bi ?^/Ux. GvUR8奏'Ҏ37 TQzyZGknO #ؕ)2_v7z6Ic9>1#5%XV5Rf}۰:'}0e~9 @hXKla,Yq{S"'wF!~wݞ- PӏDѕF(]  6Z;V:d!ǥ;$Iq 86dX8Ns/#*Z:rfKxh(=7 l{aCp !5u#k2f`Bb >72=.W`F{ˈ!D7[i=c{Յe}#܈/zAvϯok-_g9u?WWCpeUxfzg=q0rTrWOƺHۣLHȳܪHu+ Т fP yp=(kQu bFFqv%hcQ,L^-r4^3u$ 9|< 3gl>{HǶtݶ#yS%nO]#)1-p|J=:?/td<ؼ˰FK'DbthAs { A1 תl󚏰.ƨgc8[} ]rf +t6,ʨ{:|Toi;1>MQ.D+b+/#$}d9<g{ېۯ >Mp6|yȔ8!$YPn/̩Ws36WFC72NJ\|<7+\{Ak ;31 z=Η ,,)XGU 6}G_`r[@X2lzǤ= |3aV#,/Bs"TOG]5to Uhq76B$go:jύ>>DNK-虠T HG!ӓb|8u1~"J6 8)'T=)^!>vkoxz,>.A"DAUot_]tBPAUS{ 7ܑJL/ݒ̝2`J}%Ʒ>\ 6˘gx|RՌ)+Kt penͻgnrIGg:+*}_/aA.a ҇z=NCʫ?}ъ\.~%.{7{/?Vp^mn)}5MgZH!^Әx'́N9<J2΀v U1H~Jn?leq{IQ/O'[ 7?^kmN@0/xO_DvzllR| {~ejq^M$ !(rE=hQrҔWX*oD0qrh[ ruF?` F "l/+9QD$ki{U&RQ?R'8 u l:9f\L.v*'W=gD%=uv)Qߤug[?S5D 5kvv|0.2Sm );e?7uvLrxv ڝqUX,cMmK"ztǀrr')'Xl/$;׃$p6.qJ\8 E 2]KfjSi:O8~' T\F ; t]p,R@8 aag> k` |_y'$`~n+1#)vcēg@evˑк(o`DEH6r e' p*u{1.Ě0AW3?6ł3i\1h!/HɐP^lPx LLi`T4ZuZkbۋ{*׭1p;540y+nή &c0jb@9pɆ-`4 , p@!t@mG;eJ>zȤBzCw=D}}.Ɏ-R̽v{%-dN"*XqOL]vD2RCTy^Ȭ4<_эˣTb:OKytkK gO(\aAWH#z~dL)˔;ϩre G.OGp|d v ޼ٜjFz/Vݳ>iG?3U-WhGʼGjGDm|=AK]A}ES[)KmSgO~q{<(},iolq1K+{~ S]mzgٖ4Ӎsە.< ή=zZ/'Mlm|ק3cyݻyv2H's B"7Kq۱nÙVn6stxOHtpyI]Ǻ:yD9_#{"R-ٚkh۩X ֐]  М8Rn9k ܻaqQ=}@+9< wVj<2:d2N.NvxwƑi/{4lX:͝4igcdzLjpnudƻM\#Zt~tXrr`eի)[m}vgfοchBM[i>q҆yj{eHlzi ['{.cE*w,s3Ǜ:d:0AT+`uGKiG qlStW f跭1e+6_1[s-|+]tqs#XrչZ PD ܬI =dfHMy۳  oJV b@_{lDշWlkn|#8  @WnҟJa;Wwjb󛃒^5PK'QRm,^! grRUu=@IQNy9妾*C0Rh<a C)3"͖3* Ehhn\C\aon_?qѱ=tڝ'¨w3\ZoG@^ }=$Ӟm8VxUa# r!!zŻWٜ&,}vqd| owR8.9 =1!-L,r)j36F s+D4~ΩGSΜ&NXUg]=c9A C*e#xPDä![q(@25լ.$\i3?fZHcungMBhrT;.u&-Vxn H("5cdfsrRΗ t'vۻmq3(,2uf>͛d #6'I"]~"EN"e;9 їjEr'G*L{TZ:<]K[ت%32!qv1TVdVcoE%@5ng ߠ .a,r;ɧ?"YX+<czj#g"{LMc_Pifp;y3?Naͧޣ6#)kn$<7y>hcfQxτV"ޛ_D!)9Y;Ģn^;8tLJD6\LkX2?8ZuY'UN'(Haҳ)W>K ,G2<WU¢ A)y~W+i==D@B>b!d8)A T6yTo=%zHR cluY^bj£ (-NлO-Xjf)HHhKk]|;k!75^Y+To#rb xz#w7Y:CvS.||0U^]jPPGC'L "il4[)AIH;,undb2"Mkf\B/殢/xT܁/cr- Lasi"bsq+Mp xj. $J^5d\7Zcʩ-a,m]-O=LHth¢2vh $=h"'w~CKSʎXpQUru狗UO.)C/ڹ˳7CmU'4'2 ǰ#cRRltOCD3\1"=]$&I's =]N/plRm3sa!,`!^0 d/yqo9w$ź2/ɩ!}<<:D$6Ge_P<Bb7}ZWL)a>hNU tC\W>Vydk>^Q?z5:)Ǝnk] a:vsX-,޺`9Ðd8zci$aώƛj{i,6f/# YM0lGDo%PZڅsy'ɓB _bж-oU79֞0#IW/Nˆܜv; ܻ /1F42ǷnVܪ^:,:}}y8>|6va4 9FRgrGvj%|5%C{^&S1|97PfsY%DaAےAz]dn49Uf=P+W8]y]ory9.TH ii6Zw=)q3BO;G1{ýk|Wm n6@KCPb5(\nLkHvq]'2S6H*[DP;i]Kܿ u^mƻrafɇ=D8+qe k%U[Feu T𧙌u@3ifKG&!:ܙmwj5ɼE\;_0d~{rZ ROcr4}E(Q%FMM|6x`\go5&F4M(j,I2Kb>T!{C8k?ޑ٢Ϲ|ûW=p>>V;1,6 TU󃰉\;Y/"ߜYלFu nNUQQyEW4Ms3> *@N@Ԫ#`c7sV5v7m`Y*.ah@f9zw \bz9oߌyZ㘐‚c䃖#򥼃_A`m@?Cռ+nO([qBP1DDDII>F]ųΤ>. ~mW;bkгdN-_&D ^crz$X'FtBk|H'gkrlh̡/^%mA-X޼|Sa%TmS>~I)0f):n̙!WT :u/iײ^Yנx)m4/\nv*);!_Q=Yұ݆͑~SF -raea/doޝ0(i>̱ᯎ)A^E'`FbuNp"W7b]o~)lܐOl6D^(5fB9ޭ2U",]KݮBYUYߐ6c6? ^丢 *L z>蕯폳Mj2FuΈ6(fx5P]%aFԧ2~ YA lWMy/a vF$?2Uk~MzlyG[yPd 9Y|ooz.~._%y~[o _le )2@1Bͬ1:d6Ury  ku-;v nǿ0']dLC Ckxa;C &e:9|E$G0T3[J`Ok=~ͧgp3 wU <4lp8wrϹhY>c0Kv3>tp =.HXh]%k[cR$Q쮶pzxjoz.3Zpgp\?lVUpew'#$v]*o:Pb\N~ܺmS "A$`nsf0n곍v muŲ=_RV`-߰J"H+ 0Z[ChA@)sx` 6Bcr2 !7&q?Mi@ N2C)ߑ"\AM C\Z gxlT|~bF!65gP1D^%At0{K}=&$pDT(-!,za-5ˀ|=ś FA-V myVm T}j4VNyqҔ98`z zntcϧzI t(mw[q"`/b^Wkb$/k Q !?\Q1PDa5\:1EGޡC[::P9%G NˣHc#?=3n[-vi=. Q1iu&9aqi;QM,ULQ4e+C/"KK!JCizA׿&XPˣ3w0t _/Uz8o|y ۅ4f (_xsG`q$#Ƽŧ=ؗo]xu^uӠ<2 $!U'- nR nG|m*aƂX{, (! @Z}{G8l^8B^nAfjOwVQxW5r:Kqy`CrA%]j*@4y$7P+n-8 [CsL,ˣ|.p"cǢ-!KRnփnչPN32^ ~mٹ|SNZ.vF-96ȭki,$x07qmt\Upr`Ƕƽgdh!&<Fqְ7Uz֕j zOmnٕf_1AIy[sMAcDm&]rS7U扝!x5=cJSFi*kYwΜO0ݲTD%+uX{GiB H]?2-sC9^I +fhʍh;\G3 VrU7u~7C x:!YN.ʹ5Wg'_"Χk)E0lCϋͱw+F#7U~rqO 8m+Wlqf/mmKnY@Xwr3⤅W`-j\h}Y1νwfT!6LKnv~4a ['@jBL l#T k+}3k(Mt_-Bs-)2Ă­WY4[]{ _QM@NpJuVtxBo#ת̝j?JTb|d0O$ԁܼMsnǡ(3Z rFh hA$m$~L.$NG+8}7 MR ,\x+ގߋOìձ,ߓFX`*k6eV5ŌQ%"싸f#ei̗ #;rz5V`E+PL_X;_̙bm7\|W̟Cyߥ2K=^&#_fcāV %- D'; ;qmۓń@QxXz:.Kr2֚tӱ }]R!h֗2{mŎ*_l@ohaGz\J$d|"g^$C=׸Xࢮ> eywbaejhh7NIkVHJ%y *X<O+{:#1:.KN%UOȉ s= jox]u0*hmQq1}43 R*cX3Df)1N"wixv{ޚ@ᩑM*F`YmpЖ O8!LsC ?c{UzvjC%t:6C{ڛ-nrx d 31t /NN8>;{tok&D9 w0MVyDLӺE?J˫ T1Ue2jxYOa|F#<>ݟ?%L7HĺCcba \_wC}Xeâ5e L~*TROR1v+e}# u %pS$0͈2WY8G]Ny E2`l"̈*Xr k$Si! Y#/;E"-h`#A]T CI APCK/Vu^no74 uȀ8t^Y{9 sr$ԹŔdq.*J`?[hhy=YjKN~O nP(9*[<{x}轗g%. ! =ec 6Wf 1^ .s÷ہp\2{'=E 4ƾG%$a5Z RL7Wy!<8 @A%\B;.i#Q;+ fu5V!3]3X"]ܤfW\f9V͒9dZ2eݾ-9~t>N!v60oHZԬޱ._mTݏ} NXcB0;:Ql9ptwfLצϏߪ"2w\F#Mn);n0A' `] 31`XN{vtb4L< ׏=sGƱp66D g]sY!>#r 1ӑx^2鯼4[tqL/GXCp 6Ш74=G_FroꏃU.H Ɛf =]Z'@m> ZP9qW4 CҰᾌq:& Bf\P]LGr̻ ̘I6.f EشC݉ȗ#U^Hϖϓw_N-Ggt\Nپ,`؛`@.k(kDMk.d7U u4 RWjB^{em$"hrVc`8=ibIp\/~2gB1',.LԮcd}^EWF!d 6M@>S$4ʸVjGKU &/< ǧ՗ /}`oF 6ҩ@#A i`yvW<5K#!xNn0-j ~v02QdR7kϹHR^?_b.;Љ` =7cxl%ܣ)-t9U?, ̂o@淀v`|7,D9 @\?HLqYΠcW_yS( \&y~L-AՂ\1 ?n^꟨G7hq =ګD+dF< l 9KձD E/QF+l JdQAj qi~e\5-wͅ #_ٿqYҡQ܂C7x9:IŌ_YZ-<#/Gv>g{=xՅ\[zq̚xVV˹3p aK uܱ0BR5'$?<|?o(a]׋N0 3n=c FX< կѧp_,+OQ.wK坵D녞5#* ;1i~_gT9b&q ĝQnq+40"׋=bጅ~_`I! VxuYp*8 dY u!+/C&nyBG9 7E>0)?0dS"#GAaD 9* X+7?pt&]CQO 3a;ٱdہ`3kžKX0sP<$XD2 s倂zU~Kg6n#2ꢰGBF0&ʶDwm:jZvA-DPKE#R9l1DDuj HT0w}p=JՊkgC9Uϧ՝x(XhJQFjRokds}ƠgXS:.Qo ϰ=19h+uچMb\,la{J{%D" π!N$AP?rVD3su} r:gS|@?~;v@/XX0c##n@*=tS6kH$ 0\;,т]qɕ?y9C谶cR[Po45o~}˨sJ~zd>7_Jys^} \]|;Y>uZ>r\<@sfxz8ttZ~IpB_~tk.$N _O idA nRov()cLRЯ՟0Xd!" 0 9fф(v%v`];ٜ``]%4ʊfUQI~T) f1PdpdD&كRAL?rUSPՅSS2 137-1\!hXhO1"q9ݔ1rʛ #Hʌh5==o'cwE^ϐۡ&t36k!b2/(\+=mC7345PRoPgksF%\1,TPp{aC^nXD%uG%9ܪ(5vo)IY&t TJCDϺ5~tFKPZC4㼤^{!|Τ<Ε fظt^?{ӋVI)3wBzwe]#}迗5CG[/.'ˋQp$-zP>M=+9:"w$cdbŀȎ\D7?ߺcEaIiC-,$@GP*>%r71D5qdۆ*ke<4S -[g8~nv'Z5z˜W,흔F~zkcڹNZs[ !8;tjm!չu-΋48jGGJr X yYKi'ut׳ ܖ.>g6Jų&Hv5!!3'dб71N{TOE__l벿ܱ'qJ M*FG͐?_ՆmN(K8̩O#"axEvRxӡ^ck*`رEQ:fT>?Mts`sO`8؉ȭWGUs!5G_`'.s`aK./m@p`E("-  НW$ p&TBi(=v|Ya.Jȝ !\ER`klz԰%Xk`ϓ̨Uewƪ5i@R$f}Vij.vr:79Y>J۝(NoϭB+Pf:z;BUhRg-IZϘFcErj#jt`:njIq/1x؟8Ay 2f3 IkOm׶Fs@uR$T굒rhT՗]A+]w\Gi |9t?;úV+:cœkwCm`|?eIr:nY('t+. ϧ`QUYߵb0x_8By@0axcX ڭ5N_rp}*U0EIDDŤ;ct^b>OJcn("Ъ r.\+ :mzr }|[Q! uTXg;Q@.gk}]:/]`ih'N4R5ݘx"a{y#ziFJ/n<˦ڱ G-xy!*A3Zvϲ6vcByǞ>z@%X_0,',brަq5pc,vb!y1 '-089PK^^@S/GJcD*/@ uEE$V&b"aY ưF -{2 ^ԇn[2 {r-kt@?ZTb>,N@Df85(랮xŹ$PS脈xy;Kٺ>߂fi&2 *ޕ!)[b{pR4b^!dXˑ+[Qi'_ W85Y-$OYځO#e:$XZ𨀙7ouj'(BH15Uz\$".<#~?5f$>B'Љ UGؾoDpq|L`޻iD=fnlNcC6K}NdB Tf+Ys rCGQ| K<+Jfx$j5ԝ{璃,1~%IaD muٵҜ^drE 7F}>H__C Lm5[aFj*E1z\/FXc{(o+%ON}xy*Z=V](X)B&BGtj'䠋#U )AB@& Jd({ԥkqO's%d]eH?Ze>V3T#Zy|l=HβL"zr$~ 8hī',36xpEq* 8{~]׻RjL3:( zw8 D` ~%kD?SZA4GEJDޮ~)tNZ:l|+E0A(YTlmQ*e7]o/"ɥ}Uķ K-: ?Y sn\0?9H敿3`c(k2>Mò#=5 ^M|-nySUԪP."8| lMo #@72@Goc5}&گc:Q+P[h쿄S0N '>$]Gˎ ZawttmWVFX3ܼöBsn$v\ɺܾߦ[U#;^l mX3o6+ץo pf@=a7uG4g%GԂ~UυT1(BuGh]?O0]jnNi |iX"wDksϹJ(0焈}.j&/Ic꜌d_ CE^(E4  Q&FxZ%S4]yu_Wdcۮsg*OU,G\͛+^o+97foeӷd2 3^(#5:HN{B/򄎈 (, 4$̕)=kԻ¹$-8 +:qnO(z@3l#h&xS)؋r'bKJM]skAmbj178}'_ݘH_9:qo#J?S1(7ez Aa<{ ) Qu@|p(H%a:A0HSDaMJ /z^9\1! d [[ET EOÙd׭F&Ҩ\Λü M3nuW5(yͰGGͅ:Պڞ$,Nzee֌{[B[&k1÷ ſO١~pi!pkrd];r#BE.-#Ya]hrUꉱñO(Ѯl._;FIgx:a߃$ÊC"89k#! ((̦jm?=/З$"ae'ɑHxTcUDa >d@L Yw+`"ѯe0,3h'E)zo\BεM23E=J%.g=Jڶq䫞 A\!bW\t"pF*BW@>,*+c}y_`mZ x?xohpʥUQh u?ϵBmp:ɹ58k-}naRD  F _5q QR 䢵pV -JԪ̓}Dqg 3D^weI8[tB" ]=wv_Um8uGksh4)L41ThH(~D&!X6|̥DF0NSHq"΍~0{B3W_~:@QJeH$,kmĈB oAQx*ЬAk pT9,c/]K2gBˋR ;;F[$.0#',_%GbE*WBo}ӭKxp 1r) .5;eL2X2"/#yXδ6bXEY߸&*yiv$H7'J:ÑXDWun/8DEEdn_-4Y:={JcM;*BM7})E!6skG_*Z46|nt7'x($C=v"XL9R|>nk%i`d9=6sFH Lxa8#&EI Rn03ة, j2H<)JxԖ6xP#@ ]Z>{˓n(PLPXfDpeRq2GI#^H}ZJ:5ϴ4ۯYv0dVc#d& 2;ȵkmb^ˢگ?b8XVqE.@DlKr)(pZog^l(Q>LY6EThR2jr(&%S4VRQEKA7fr/]g!OO։U~Tl&v3?0xbiΈ:ݘ=i@DUAփ\̐aDwm|sg98!XD )W 0H(2{gPPF%.OUbإFQs CBw,W)mLn[ t~ruTVib}~Axpg~HEɯW,!z9-l\]05p1p~y꣍;S&x3\O0c)=EꎸLB[ APAAz*< n! 6跦:ȠO\)9[ԍ}X9)~&oH%m(hR;{xE~-Y%),=w\K8:o8sE/>Vzx2=Kt&d;%io5vBt]' O@Ի:,hvo%6Hgq(3m)LS|m{" z\v%yG]HQ۫: g`n$)@D,YR/N ,˕)a$Fy}bfc”<7;5~rR#&YbOzpٯ7Ӱ쐓:E}Gr=>U۪+-&K=´= 7L)P}`diɮ̒Lqr;f1%x֜Qr*+ *|!5hM†o Q? 7J;WYfR<6e Dz ڶ2 kx4e8?EAe~sY_nɔG%ous8Oם͜*poh޵@(}V 9q*ڽ%MmmZR zze:>=fQ/&SqXF5QY-X`"V=ϖ.H]BSpj[CzcMQ$8.g&}Bgw(h/ұbcec>e ]YqB!11cdA lT\@+5W_X c9kףIezF(/-džS|`HuuBoC}^ɣh; H44ُ)[&C6:5?@6]]qsJ<ʹBP[e|W$tj_~[[lre!Kt Ij(-oDqZN3Გ^c A!}ݍ6]c>!ѽfʱU-؁C?b~f&^w}#'~|<[Z,zClky Z[O* g#OX] 6yOu a_ꜧ4"֜k X4J;nMPqޱ-HaYzq}Ӄ; [Vf">{I,vZ`˖RT?k8r5tf̰ąCuC8@Lc"o~ecׯ?7τ6ix4mx(SR9&[^G{6xR}(ǚ/ڍbr*H<˱'}">HR;a\C.]A֨PQQ@-i)E/ x^xo,#ASC.I&EFsECC20(xrf30_ĤIחqn}%=Ƕ%5;ga5C_ 3.AN6M=W]}U-[))0dzb1ˈŸWFE&V^-*Is[L@]^DC4!CٓNJЋ7Y{ z)%RΝơG\<ij %>z%p<֢"S1 K,#x #p?fePߚטdt2 #-W3ǎbyF!dP3>WP~"S:A"6Fŵ)7P-8tշ2zAhr{2P=c.58?9JvN0=X/%ZN :;ǻ5$r|˘Oc?-8uYo6ABSICyiKncuB68Y T'{)B`? ]gx D; KKɍăR?Zz`dg/ 4RBT*ݲIn!{UA<ObwNv9l1}ӸH|Vt=՚ҀcXH@B biZE@)b~͝7pn8i R1rQiU"ܘu`/F!^3o5Q=5O"+fA0P1)枫Bc]vկmk8C@$B)}:h//(^ncčsE΢901"@D؎>}deH p42!'ԾP ˫!CvLB"~夎1;DJ`},i~G v ƥU@ˆ:jC4rya;u8@zLi@ _M8%7=.>I]BI},Pas`2~9bh_Avnp,a`g% , /'q^ W~[TjN4 @} C^3쾅 Λٔj^77"D>W&1x3^K0Yvp_vAfr op˦, TT mt0;;U;OtyBr:]`;y(Ġ(xp׽ˀ9~J䕇^aY2!k>% \YpP T´xd|Kܾխ8)Kf -%hÛμܐ\Y+%՞%WGDO5Cs |;bD"Uߘ|EǿG]wD=~V#Pq4(;|B叛A !Mr3?ozY8ZF!1ARۙX=cilJ(uӪ(2D|پJQDU͘(# uJhyanYO>a?R5^xsc<"z}%|NySyAz ZUvMN ԛ 7yLQV#;,Qxu2OZe&n8:\q\Tȥ9N/e~ך&qZO)Y텎8Ma[s;s34nmӉrٔɓ pK|u BtBgYlŏuT[M)5xc1KQ5Xʦw5Yڥ q6tA*5))-Q529NvsoVJUr 1\f:Ef*ks c%aD0U[`w0֎i_s;D4#CtEޣ9mTxS>[gRn?iT"0-ӳnReZju ӒzARxx׵pz͉ũ~--X,EN\g.By"[U3W0+r f ^0W&D #ݺ')x3̳,x9}R}uJiNpnRPCY Yz1U񈜎ZD6nFc9pӤ츼 zJ-o 7qYp~KAwX2$LE!VqPN3N^lM ^syȟbݓ@0v01.c8~nI-k̜9q qSIRGu0I"n2ÂrB= s/+7A,aw64j9g89gόݮ8K3?\wތVt.ٵ֡\wD"9>EvF<!:I#s I"8Nu1n (w}ai6xibN"#3T[Ƃd'XovNKOIɺ-/'TIPV X 1D .'!,*ńc]Eٝv*e%׮7gkFekyWQoFP+FˠPdpb1g皳qx|oz,%(ȼ4mIa*~:SqvQ%bE:c1=qbsόw~ /룿]vjELG{vA\qMGsz}.iҍXl,0PtQ{6C %>]~m9"R8)>Nөļwy2lI'GQXMƟ5]pۅ? JNHs.ؚ5ɑqڈG/xkn+r޸Ds(uDn8x+Qуi4; T Ryܦ[00qֺwwgQ\yy`C2 a" * ;h)g 7u-cOD?u6R՚㐄͇4?dz35OL$RLGY}x#eo{ü}>4ɳDxy߷&ݻk&&7JH"Yx p ʞ_ cu0{ E1[*(qm^OeWQxB=JS@<_:ZN!QZ* F"lacxslrQ\sT6Kj`i_}fU>bX+2dk:y&.j{|wuzTe4%^b3|9BCþ@B"FLA^y|ϡpmGg}J:j),5<}ܕ.r& q#]n=N,߬.[7ޟ٩$2x`jB] ;GF+5h8NLuȺ>p[HmI}ōÑn/+ 8@xwQZ9s0W͚JWuiw1$bNSRfuhh"H G}_ڡ FyBp @c'|585v$$usXCȩF!E~)/f]ػo0tr s!Xon1|K~yvws'$Wghp ȯͷŒrV7יjdGanԺQ󸠳!9K^gK/d4n?ͺzIK6 ๔.dݕe l n?=uo읝|h,۪Sb:&M}¾fMD~G*d5l^57p43{u/S4*PI) 2\wfSUvQ?j:W <^b.pVV$/t1R,>LEC I&JSH,XWKxJruwMߖ{9lC OS؃kDPdׅ[޵MS!4,OIGLLcWWGPQ9˴ ϟTp!PXd(1p{B ;7"tE/Xo\GNC53="X}~YᎱ+G&>ulKµS,0qEg%r8S\`EH<< |LKL51XC\XzƵ{ܼ̜Uۺ2 Қ uj5[`{wq\kwǾ<'.063-;TMӤ o VUOl oC1|~>\c,AԎϘH|膘r\D ?yqy.j2^R*VQyݏP Oh%c絜gײiRuÞXnٷtl2ԬsuWz[Z J0a} C׍G|]LZ:CJ8CQ (2$z{Gpo+־ NAa-:geY!nn9z5";s8ŋ*)JQ"TED( aw8h^êu|x4GkdDbY*vX!Ԙ¾MxmFBJnC>6T B1C "Nn9x郦4,>}CHdU֧ͽ|bZYΰ&@~o[!+(nZlA+⣄UʫAi{Q4KFP#-Nqgoef_\7г)0vJ1.Xe+M%fI_B%ܫ> lLhT2ްO]*^Β:A1n10KPr}Qri3Wfu6Iq4}tӃVB9$d"11NHs\1N a`.W-c  ̉|" -)/a{/չ ۈ'S-K>}brk.\IibK5!4so!e޻,,[nj_6>R{#\=KT(x?%M?ߣr##nU6j`}Yݷ;490CkƯsKS]vm ImcL.1ж;sޠX gBHHO L33{ I{W$f=j#{ƹ1|~0ˎM<ö˳5a d*UOpE-6mkm[L\% 2| Dpt)a4Kuж"kT`(G9 y^'R66u#`P9 hnrwB"OO͋B M@5g٨q٭?G768\z^ܺngvS2V3"y78oᰇ&(ohq%1М 44HPL IJ$)zCNAAQHDi]Q_`?_ݿ/Sˆ# Ha0 "1 B8v$'d]᨝gᘼ]h~*G Tb9\|?Gxt&nŸ|m}ŇCyNvr7d+񕗍'Wm Sɾ/\`Y}{L`=f d8#:X\>Elmx~-I%֟?ؖaB?N  APSbuܡh_9!7k7* ̥Gk(?k44YDtWsGf!򽟅?4F[7p1V"*0U2:s1ȝ4M쾜0uU],L(jԚqν ~?Ma\F㹃\%pq@<,?onG.qvdrǣ- N[p4|_NbAiZ@ i"`"2}HjWH &J&}tBQ7\؁IĕiW,`Z9.&zBkm_> w;ܮ`hTOn3T0LG@>'/#b`R뀢du~j e'Gau?XZ|f}~dLXC ,A !z/qܴ [n~8XM#N$+Yz-H{~nZ!Ǖ bXQE\M!*;2D&$ qO'`!a=uFG>B`y<Gf~ro[Wv×L>qۘ~1έ)˿{s;%yy9_C\l.f{5q,! Oc-5S>۲CÏÓ(ʏ6{+5i"q־J-uYZٵ z(So,V-;>y\y^5W.0ͨOXKț5zX)ilCqD6TVbHVr _xmS_=1fۇv{.lWNcoDA.zч.4_&d?/Qw9&ՇTcqI04?xFRШy!tKvBo9wr?^63A@?_B4z!bB|jc+Eef ?p?c_.Eꫤ ?(YHF/믟.y65iSJ!BlS۳krG}冴;r{H|Q9q(*]cz4N|YDt?[pDA+g?uQW5ϫ}B5J#uuHpGKGGOo + @5jO(@.GXwNGr9A!{?6 NVm-Y=aQ;,\ o8&?c#Q bMn=Zj ^x?ʴ)Wwiv|#/S !1<4e'U}pu$ܠacY#W5ٟ;x5}>sȮhSӌͲ-^ej zuge[mP*wdI7ywdb9sx{A\K-px}9 n@oWJ7Mayp]^Xwfã qr,s;SPv/+ę,= C.[}p)Xwb|WWw=͞<=9Ⱦ9xhD[ӡ@τw{G7dӘ̾CWA:, r^f G"~iz Z\x`yK)L\Zi13z+*;p 3}32T@W&`D<+д=V6c;(#?K㣤,>٫Bm)SI+|])T3¯MCۙ_7[z vN{|흞X(4q*Z,&哂0%~>{c5gWYٷk%v}cnfsl:E]lxMLMLJk(L*IQx_>=~Jxɢv5v 5MENSb6-]'6^lTRbǚ?٠NNo~uzj e9oklgiM:m!9^+\Y[1.uWHœiA dbuF:&ElmD Th&mPRw&."9zމ`gz@D~?p^|w'/5_׻/iN^V]+FK.;P~ 0jo/㳿 ;jHZ>^Q9@{5e"o. ]z\ wsWf_ ϥ9TF`ݝOb "$AV*bƞjLw30>ܻCCB7z+7 ftnGɤ9}zv` #ؒF܋Yd;xjB t~> ?TtPL/$TA/~FϤ^~nu QZGD f}h3R wްk{a*78g-׾ IqMYM$L`$p^ ZXq}x0#2 S3:H\z>Jo q8kv0'h'P$ZLr6Aē$Z@5paAggԀ"ns '`IdDG-s zvPIx]bUzȉ@# ԲUvADpj 'V&b6X m99 kМ#%(7#h 9Xi(b2᝛㭅o1x (.I39n(*@3mj%g?oez887d=>FU^YL= %t5j?fELAj\^_W[`v00aDO.-Î˺zյOm_y ÿ?{@ÿJY)2!FjpCŹKzOYx}vD7: .6 S3q*1+2cT߹ <54׫BoMꁿ~g4tK)MSPy2=0O;ՌwQd L 'Bpj=11ue()BEQz}3>щZmŬf/hYY"](*! rı ,?l~0ǜ'Ʊ_uf?bx'!aN[aiEZ^wiTͫ]6jJf7גs|xV/.1m,F> c;)q#9ȣ/Lop[ W1lGUPksn;+cN'5nu,v* -r㦏d~纏HqA彛ʪY;D.O{|-;lTAf~V# [vVEbnhE|`x!X[mZֵJOB_ na d+D2U=uG龦c}k"4D-q"9RU[a5ms}yWL [9v$p; 9zDjԦ~Q\bF NK3t֪ s eQ!V6M+20yol?WC" Dd\+zZBHì2,}_Myw ׬{pʙvNUbݰ"2}0ߊ˗s:DqD$7(h(K)CdEYW}/qeÒ{E,Y=V^ K.i[@k# 䡥ڿgr2" Scf߉ )p)H0F!̓`E5XTU%ϙ~p6-T-T r=EK(*RW 0QMPʦFhL : ^ ] mwu3Fvv<~ |DgLMcBH<; I fLp/j3\ݶ_/xO+sv ܐnm{%+6*eUr^ƒl\.*~4tj+!Wڞ+^8t=Oc 19룒c/~'׽A>,^OS<'$IY ]+L<.LYPRd[7^U$'툁:SaW1@`xsz/P ;yciE˃s2l],+: (V'h~h̞SDZ廒HБn'u7/ 5j R {^*54pt;fQsl"%8%L mtzSoe(N^Eu䘡8練?p ew.I7&k1E}a?`GɀBV8ˣ9rEIJ렅O^4=GĆp/_ґ|Tak3" " }aEwtY2AGeJrcU_U<@>(,WD$;̢N@Ͽw?{2t iS\s1w@{^vl {hHxMt/u-ׯ\΢^L99:/P *l;|%Џ; )WyMГajȦWVx b%_b+g/v]&=&wB!CM'?{{EOsezȮ}ՏJm|O$]DW1z2vؤW>Z0_G?\G@+:^894{& aVW3 ԯB)E@(%6Axi3g - fL{E? +{&)u 崹g^}:+}G+̾c:w#-m. D+A_7ÙEZzzy{D/$DDiA<:GQc?LۺZ.@z\]ށ_>Kt A=$|{CA,*bMn͚2LGߐF#b[@h4 Ie%dzCVAN'̀]V45hHQ!RիVN8IAEiqzOl0RĢ.MQ(@+w%89@ eʂ`X>K0Q7R; dFmNz2i7}Ny`?g7F4,Û]2qF ƃC4܄⺂Vp6!#9-,Us߮ dTz䠇D_ L`'^p3aN0k{`t h? 1a%!$=b~?F6-8~yh?>v\nl{9zXo-G ܿ~H {P& V^lZ` }~޻p =$:m48]eaIiYv LYjp`I$?x[G /XۖD E05#hLOwHj53`"◝kcV^CޙK @pv77tu'` 8B* 7 ~c AJR]\uls)$r/eGU2]uɄ5hl\+K gX#t^9nsOnә8Ԛ~+Ff v0مՉL18]{`Gʕ`كzwƒ!jDJ lzy EB!qq*f ,t'G9/w~}[7)HGquVm la~ΉjtF#^μ;Xrת j"7C(Y3MAvAŤN!P/ڹ)|~Ѓ[@/3)cr켂 T̅*.sMwbʬ7Rl(y(5JKo{'}rN] x" 5Tyq4 ˅lKIR(l:JmCl^!+)51N1Rkg7C LםV7L.7"c\8&=>\AAӬ{Ȏ' 8ϚMrb;gzt BB47`l"!h w֮Y4woH"t0\B@=[%M=oa2 <,!WKp=m O6Y+vO!UͷGF~.ko_|P\<^EvtSWm j+InpQL^o0*֖CղQ/X>qOHI&{15?Wa6N2fS<8z#}@?45Qu9GR\uޒ!@'nU =?}'ѰP)Ȏ,0lCZ͋,[mmcc.O!S>IޗBր;PvSw?FT9רqК@Ў/B [3ϟSq>}Hf<=>FXg0$pW;oiA; B`~1gZxqώG%BUQ$N5ɩ:$&"0K_6'DYX`jB"(BҘ(޵^Aٝ^F D\: DP-3JlK0\* ERsJq#'_0نb'"'s TNՏb(cjS ,?mA6s aAdE6W#"EkuϽQT?:gb8#('NSz)[~{Lcd87?qp})lGHN"B0lW_q[s2ƭx܉sy;3I6;%*o`8"M0Cm>x'mʧScp@ l!tJD\6R$6g^ LP>E|*OFF8#OBGVi}{۳>Si  AKE.Dqe MRQ-%T4І"%Gc/ Di h ({* T$İ CBPu0U*pQLytY&QURRbJ(7@ 4^vK.@TL]j QgxgXTM~鄁 9.Mv°bA!-t /A8)Ӳ@PE2h"gLY{CTjI%@hNC~~29m'-+2@5B~⃳.TVw{-O^usV"B\|T3Î~_A:_b0PF-Bp@ secG\ X*yZˮ[d tpAPy`C" 49(ާDET!~Oh~xsnUVQG=}AP:_kL1-KzJ]a\)X $oѲSxxYXȏ g埴g&3:/T_= 4NI`(%*N%##D#X6? +k3HPfEv C[W%bqi$Jfz䈀H7X t'?m| F76<%- XjO}u9wcINwg=|n(JVzz9⺒d(\EZ)(b0r6U6=Nk8DaKω_<$B\[;DnWAm 2Лgt#;#:]MƸQ[tL%~-H.82:F+$m))mL(Рa )euTbyy}HYd"n?-lf_$е%Ưەƃ( pm>rI2usPq$b* xt4hum9rdsTЗ4.׋Nw (4"J~+ ?6,e |tQNOc_nX!Jr>/շb*,wV}Ga,p߸\>2DŽm{Ca5Ǭ+B)zFe6kGbA DB)cJ\ u@tn`5#DG+1a7umW^ ^k]wiZ>_g!~|4)6qi|ܭ~x_?}oV,˅m*P[u!K8ѯÏێvtfQrs:p;E 99d9o7~~s3I !^(b=ʨ8aЂ(fbdI*&$[tM"Td+c[~]pOo}0_!  \4!q@1{'x_^K+o}=oGoii4*Y0 r`ce~>CD7Vy sz"<"x u Oi kZ꼴&fA @`ԸRN?܊=9 kHEH#4CT<BKٶ-h2b"ar!&hBCSНaI)$ y:HE~?ܴi -&T}$xpa:"J/  S׿H;bCpiC0H,D8ܸ7\2-Ǔ,0rP_/fO?>sn ,,v$KF{g gN7zշlA)i( ^aA#+:TgcJN0H~Utrx͎G0k=^]߽-]FY ,@묛 jO (Naa YJ! O6G<>30sc 辆VV7w˯8m;Iha=4liIF t%t U E5؂͉A!r\'xɰk" $C#*g:|Y_gVg'&o+B Nu2۪ ºNG"? (CL=Jc-D[mp믿 #qo0>&IEE];VQ几>"[*#"U|J@Q$#7({ [g7z&pX""(e4WE,jCEУO/vEƗ.p ?aE"E̡C/ūtiKq$q_m?΍'9 kY(qt8ʷ_IB6c7Qm{ N- oږ4C;hӇ/| eW'ح ?&} R#W<5㵱vTS&ÕSekoUOEoo6PAnt]Gvci#=<ٯ A!*B+(w`G og={*C!1D ECʨ5habs!G4{v @ hp@PO'h~]s==b)ሇyr9ċ̈6mˡAl4.F5_Rjg fl⭬P JDR>yBa.5u{mL ,`Eqx dd Ҫ&@HzRI_ywqe"%V E"xaoWgetG1iJ! N*G|<8}UTi 2(|-_Dzɜ)oGn>D1byyf/%JR_P #1WMYo!Dž9$g@.`&Q>!dn^|r4{>F0q&?Wena%:Go&?7vx=H6F"&O#_4q 0XqL'j