stalld-1.16-1.el8 >  A bX#U]J&Dͫʘ1oAo2v7$"*k[#Jm~#%4@u/IR.E2 XZOz\RYud_Q8;WO)5@6mu\s:1tfy T(ࣹIfM4#@պϖdsn^xE:o?@6/=5t+A2c\ =h13f$7֊#`DC?}^p)ᘋR7F=ddgEw˺>!yUeD0j`ߔjE9貮eЎ>) =؛F^"#.Y1Hd/^|P3wvfW[J*SB.D0Bv!;;MuJ4R Ưɠ|wm.N\\wQǣKEI(vDk/h8,{4`86=w Sg[»Xa%9H^•kbII&'29E2w,t?ʜ?hHf (u?왶}}m0̞mpMeWM$]Gjl×Q}ڲ'Q-QbJzMIđ=- o+Gߢ ;nCL~Sʍ̀ r-'UzА-m ,gdٌ D>pB,?,d   V  >DK^   &  <  h  3  X    8` <( q8 x9 :#>&w?&@&G& H& I& X&Y'\'$ ]'P ^' b(d)e)f)l)t* u*4 v*`w+ x+ y,( ,P,T,Z,Cstalld1.161.el8Daemon that finds starving tasks and gives them a temporary boostThe stalld program monitors the set of system threads, looking for threads that are ready-to-run but have not been given processor time for some threshold period. When a starving thread is found, it is given a temporary boost using the SCHED_DEADLINE policy. The default is to allow 10 microseconds of runtime for 1 second of clock time.bWW^x86-01.mbox.centos.org>?CentOSCentOSGPLv2CentOS Buildsys Unspecifiedhttps://gitlab.com/rt-linux-tools/stalld/stalld.gitlinuxx86_64 if [ $1 -eq 1 ] ; then # Initial installation systemctl --no-reload preset stalld.service &>/dev/null || : fi if [ $1 -eq 0 ] ; then # Package removal, not upgrade systemctl --no-reload disable --now stalld.service &>/dev/null || : fi if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall systemctl try-restart stalld.service &>/dev/null || : fixp F>AAA큤bOTbWW^bOTbWW^bWW^bWW^bOTbOTbWW]bOTbOT5c491fd6c588691443d8c320522c665dc638b4eddb74dc1fe71fcb2736e108f2261b43ff0ad0923111793384b61c2daad451d9e891e9213e983e61a7a1d81dc360623eb75197f03aa5dfb12cc7870e93553239111598112f8deb22d4786ea5e4e115e56f355ac4127c473d9cc772ee573a6553943c9d32a57b7f0912914b9db11d75983ae1e733c31bad9abb44d1e108b0067ead3cc908abd22be1a784ae08778177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643f45688e2d7c7c04521aaed486ac89b5becd6256024ff9151425bc7a3bee11c39../../../../usr/bin/stalldrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootstalld-1.16-1.el8.src.rpmconfig(stalld)stalldstalld(x86-64) @@@@@@@@@    @/bin/sh/bin/sh/bin/sh/usr/bin/bashconfig(stalld)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rtld(GNU_HASH)systemd1.16-1.el83.0.4-14.6.0-14.0-15.2-14.14.3bEaK`i@`` @```-@`-@`3@`>`@`@__@___ _y@_N7_L@_D@_?@_>e_=@Fernando Pacheco - 1.16-1Fernando Pacheco - 1.15-1Fernando Pacheco - 1.14.1-1Fernando Pacheco - 1.13-1Fernando Pacheco - 1.12-1Clark Williams - 1.11-1Clark Williams - 1.10-1Clark Williams - 1.9-2Clark Williams - 1.9-1Clark Williams - 1.8-1Clark Williams - 1.7-1Clark Williams - 1.6-1Clark Williams - 1.5-1Clark Williams - 1.4-1Clark Williams - 1.3-1Clark Williams - 1.2-1Clark Williams - 1.1-1Clark Williams - 1.0-4Clark Williams - 1.0-3Clark Williams - 1.0-2Clark Williams - 1.0-1Clark Williams - 0.2-1Clark Williams - 0.1-1Clark Williams - 0.0-1- stald/utils: Space, lines and voids clenaups - stalld: Add an option to easily set stalld as SCHED_DEADLINE - stalld: Comments cleanup - src/utils: Comments cleanup - src/throttling: Comments cleanup - src/stalld.h Comments cleanup Resolves: rhbz#2068549- stalld: Fix incorrect open() return value checks - stalld: Pass errno to strerror() on sig*set() failures - throttling: Always null terminate sched_rt_runtime_us output - stalld: Remove unreachable statement in detect_task_format() - tests: Fix uninitialized value action.sa_mask - utils: Bail if malloc() returns null in parse_cpu_list() - stalld: Use correct format specifier for long types Resolves: rhbz#1990057, rhbz#1996799, rhbz#1996825- stalld: Coding style cleanup - stalld: spaces in place of - throttling: Use RT_RUNTIME_PATH in rt_throttling_is_off() - throttling: Check open() on turn_off_rt_throttling - throttling: Adjust variables in restore_rt_throttling() - stalld.c: utils.c: Remove complex assignments from variable declarations - stalld.h: Define MAX_PATH/DIR_PATH/FILE_NAME and use them - stalld: Adjust variables in parse_old_task_format() - utils.c: Use MAX_PATH for pidfile - stalld.c: Remove variable declaration from the middle of the function - stalld: Respect -l option in single threaded mode (1983100) - utils: s/try_to_open_file/check_file_exists/ - utils: use check_file_exists in setup_hr_tick() - utils: Check for the new sched_features path- stalld: Fix log message on boost_cpu_starving_vector() - stalld: Add the overload control to the single-threaded mode - stalld: Add the adaptive mode option - stalld: Use the last mode set in the cmdline - stalld: Fallback to the adaptive mode if force_fifo is selected - stalld: Make single-threaded mode the default one (1920041) - stalld.service: Always restart stalld on exit - utils.c: Fail if user is not root - utils.c: Make the path to sched_debug path dynamic (1977663)- stalld.8: fix diff cruft left in manpage source - stalld.c: clean up handling of nr_running - stalld.c: remove duplicate parameter to fill_waiting_task() (1934582) - stalld.service: Run stalld as sched_fifo via systemd - stalld: Add error handling in get_cpu_idle_time() (1966259) - packaging: clean up Makefiles and rpm specfile (1972806) - stalld: Always print current function for info messages - stalld: Always print current function for warn messages - stalld: Always print current function for die messages - utils: change PATHMAX to 4096 (1934581)- redhat/stalld.spec: pick up gating test version for changelog - utils.c: set daemon umask to restrict global write/execute (1934586) - hardening fixes from coverity scan (1934590)- utils: Fix bounds check on cpu and end_cpu variables - stalld: Support denylisting of tasks in stalld - src/utils: use right argument for warning printf- update to pick up latest gating test- Set starvation threshold default to 30 seconds - rework read buffer allocation to properly find page size - Add the -g/--granularity option - Change the default granularity to five seconds - Implement idle detection - Implement the single-threaded mode - Add HRTICK_DL support- Fix Readiness Protocol Mismatch with systemd - test01: update to use buildin atomic operations - test01: add throttling check- rework detect_task_format and buffer_size logic - make CFLAGS for local compile match rpmbuild CFLAGS- add systemd handling of RT Throttling- fix signal handler to catch SIGTERM- stalld: Set rt_runtime to -1 before trying the SCHED_DEADLINE - Fix incorrect recursion of specfile version field- Readme: Add information about repositories - Add version management and version option - create doc and scripts directory and add info on releases- utils.c: added info() functions - detect and correctly parse old-style /proc/sched_debug - src/stalld: Fix an retval check while reading sched_debug - src/throttling: Fix a compilation warning - ensure we only count task lines in old-format sched_debug info - Add comments, clean up trailing whitespace - src/utils: Fix runtime parameters check - stalld: Do not take actions if log_only is set - remove warning from parse_old_task_format- Fix an option in README.md; consistency in user facing docs. - Makefile: add 'static' target to link stalld statically - gitignore: ignore object files and the stalld executable - use FIFO for boosting (v3) - stalld.c: fix sched_debug parsing and modify waiting task parsing - redhat: update release for features and bugfix - stalld: Do not die if sched_debug returns an invalid value - src/stalld: Do not die if the comm is too large - src/stalld: Do not die if cannot write a message to the log - src/stalld: Do not die if the main runs while a thread is monitoring the CPU - implement RT throttling management and refactor source files - more refactoring - src/stalld: Reuse already read nr_running nr_rt_running - src/stalld: Gracefully handle CPUs not found on sched_debug - src/stalld: Use dynamically allocated memory to read sched_debug - src/utils: Die with a divizion by zero if verbose - src/stalld: Add config_buffer_size variable - src/stalld: Increase the sched_debug read buffer if it gets too small - src/stalld: Fix an retval check while reading sched_debug - src/throttling: Fix a compilation warning- Fix an option in README.md; consistency in user facing docs. - gitignore: ignore object files and the stalld executable - Makefile: add 'static' target to link stalld statically - use FIFO for boosting (v3) - stalld: update usage message to include --force_fifo/-F option - stalld.c: fix sched_debug parsing and modify waiting task parsing- Place BuildRequires on individual lines - Fix changelog notations - Modify build command to pass in CFLAGS and LDFLAGS - fix compiler warnings in stalld.c- use _docdir macro for README.md - use _mandir macro for stalld.8 manpage - use tabs for spacing - added push Makefile target to copy latest to upstream URL- rename project to stalld - set version to 1.0 - clean up rpmlint complaints- add pidfile logic- Added systemd service to redhat subdirectory - added make and rpm logic for systemd files- initial version of specfile - Makefile mods for RPM builds - added systemd service and config files/bin/sh/bin/sh/bin/sh 1.16-1.el81.16-1.el81.16-1.el8 stalldstalldthrottlectl.build-idc9327f2547e9b3a181f042ce4ecd88e122a597dcstalld.serviceREADME.mdstalldgpl-2.0.txtstalld.8.gz/etc/sysconfig//usr/bin//usr/lib//usr/lib/.build-id//usr/lib/.build-id/c9//usr/lib/systemd/system//usr/share/doc//usr/share/licenses//usr/share/licenses/stalld//usr/share/man/man8/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz2x86_64-redhat-linux-gnuASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=c9327f2547e9b3a181f042ce4ecd88e122a597dc, strippedBourne-Again shell script, ASCII text executabledirectorytroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) R RRR RR R RRRutf-8b5b56bd2fed9a50d13ec2e0277a9e57193863a951736394b5fc621c14ebce393?7zXZ !#,D|_] b2u Q{LT 954Sׂt#i\lp{x7Nj"r{4.d=f0!^PabNY\DNXh$ky0Q&w:Niò{deD0h IޥB:pV ,)H푃I/>hܔB~#C4xZȚlXVeߠfETOJVm%1HA f}E`ITCʒo͜\q:ų9h1Um22;Jns{r1:(jSZyީ  גW0~DB/TMʹuTcJvG[z'`,ZL8⇵۟mFүLUr8гZe`> ~iU)j^dv&#r_х6By]YMw"[/:96twMuԐBeA%r(b=%[+/A lBe@q0̗s]LRNIZx3+G-@ieÍH"P99(8.4 UZzvBfDn7,ryCf)C;s#FÿV\.̪z>"$w$?[(A8`{5 D]X֬-ؽV,y('<`k N|r67f lJ^Nn'e^^Ӯs5NАvS4P%CY zEAf!7ų.Y4RzZN>lš`&4x xq<Sa`tgSuez+wo1cpuG]¸D2Y\6^ѳb٥yb~i3J3[+c ]/ Bn^(E*l.}d4`9#>z~plҝ:cV̀@( WďO[ Cf./ FYT^2YGx.ckPyVsxVKFmArb'_8 k3,oR',<пlNKb!@fhi&+v34x|n O؍vJ@ vE^]_d]ИG.i[4B@c"d+#yAqTQx Z^Tْu5(f!ℿ$O+얬.1/PǂQzYLwk8Tn: *dDpt%A vaiSr4"|yKCdjq_D;!#̶"Qxoyzz/H ֔ANNE4^^SܟwXU~dS֤}Q;9㢤Z2(;6iW Q"-ݱs`a5]&I:SiMf5MBuiw+ ma$ݾW~H1`2  ʉ?9qxs&$TQ h:>4N95~e.稿 R}oJ9J+obW6Gbu42gY8 qGMlͷLEAmX3_?DJ_&ij"ED&4wGI,p!?f])\#,&} 37p-ŹgzYb&Q/!"mU?)p L dž1X8Ѷ[hXA`p-TME,K$F~'2>2e([~~]ONC쬜Ktq9Q Ҷr/4Kzj|*wve/D昣ヘ )ZOt;܉倈Xv.& ?i/4 iOlSx#9_.a꧔SJ;-觍?6RD?٬kqŐe+(cieaj`r!+m)_fd {kvZzs$s (ϟI.} N6sqzc.슺ӪF_5-,=t̐&Q3ɴ7u{hMUOXT7$D]6v2FbFn1:a"Ei:dEzN\/Hb\"U7X)#:@A.4۝S^"9Ѓ~Z(kَ~7߲$-^p+K0L"xţD PDx?MT}a s>=l{oD$`&k݂p&y8˄@PG]K_]d)]NINoC5{qn 含\ |{SMN=5唢4cӆo=|]&g%,ĞR.sf<_C>Qdf\{dB!;.yW8}ʲ ~0?yƙT)*zf&9즊'9>6*ɛhȱ]ڷN,~:5 2|aEwCD+ _ (ҝ?dzAg̈saՁw j8$3f,rpXl{2yQ2f"\kVJ aHz P~h%^PPR7~MV!ز٥/ =- ͯ>1;456 j!->T Cew: i9h'8m4/ Q[Ӹ vZu|oOc*G,j6,li@ZW"x_rAhuy.q~Z6iNT}= qI+qZ+DnX_Ώ窷SּmxKde܍'xt󱲙\cy3]TzZ͸ >fsP;7I^u(Ae?p"K9}3#àl4 P=4)l _que|`aO_eڛi||0݁r|ѝ"[<\*!TKWY2Qq#HN19bȜv֡)d.ȱB>$mm7Mn4; 6}7Ro>hUL/HvP .ySGR$[B7&x;I"UF?$сFRjۣ w֨S@t#{t</'V5Y-F'bW&ЏIm^X[2 X8Y(Љ62x:1ܾc1Q\E+c)BתusTMC1yB)'ED\3HlXJm@S/ xS-?O3k| 8w~Q+yp 0<̪LN(8֮L!.+ZDX8ͦ~P/iz9cA2DC*Qׅ}л;Eh6pB+XE 2=8ARV)JP ǹ僺^ ἴ怼5<$U 1Tڗ$zV=luNeZ4Ėv›6hZкrCPD@éV'B͞]HlŘ*wy Wad$͏Q-@4FXE"-z_DrC,cʼ0eX|( d\)jؙ\# P|E@JJmbSj3 S9 OvƜ3,FRKl=ș{*[G^:A{GQJE:[oryWD@䝿PK.<7gрՎQX *V}n8Gm )ƥrd`UWErme.p"/$d'` V-lp-y>G09F;S g}ŀ6[/~>JnM:NKU0sTm9y@ap`\ۭW/P ,\O"-b ސCvoxڝ'@㝂G0`_wB,^x|e9o'׸R@Y{)_Jizj#彴,pj{J"ooaI?u89mX?/y\^;^MωGɶ3nI +7G%v@]haޖOlImp+WuџRk!ʹ>)o3m >Ruq=L dyxO{ )h. 2t߄91sFrd% "A %73Qu[7FΒ J?_%uh/Zj`ub`s1,MA6JKNVUy ַ%BK_+ȇfËN0 i)-2/џ phVƓpty[& % ԁ,ÔnAp`/I*C?O' |+C$N!v=QZ2vf HqNi.){_t{Ȇ6Q4bުXh5-4tD^/ߩPռOOH#֑OefX#nrwRh2ZXUh=>,Cq^(ޜMÇ79w af t 4$ú #L# ޑ[;ݺG>m:ј˓-bldٰ0TUX,:\^80S"CM-7T↢R`zN:*!|+S~_7-2g[9hP1i5GXy4?p}HR\H尝2pG}yO\(nuyU)( }nI, "ҔADx{e\BS]m;=*H "$\KZLBc`qkC/J>T~T+9%. vE>F.1uRScm?!_&%1&5$w d)_g$|n:pdW+%PE]IVjøU|Q3+iYfҞxK߰HHF+3YQ7nѡ:P'#-?jP$#ĺ0l f1$[9)m\◴nl߂/P$SKf‹L6JUYV$Bǒv4.L'B׀i;RE*mLtUhgEX+|K#bLp_u OaW;GsW弙2PLFCl&G0Tdu +Ts\HJD$CʢOzwPmX ~B;- }G.4s$ D7hdhDf._=8³]gl Bn}\ӏXȥoNt!w}܈0sq1ϳP9ߗD!~^66{W1fL*^]WSd*"-h[gWـ "AT5l8GFNcњ˰':z%P18/rf]`6+$ךbMa s.v":fXhȈhvB@=˙ԝ)˾ţI lFke´2ٷo514/@9Av/jAY׳#MsgH6‰8`P#b/2Cb%wQט&Q AsDhcC o=/yY 6[VlB`|U)fy:PyȠ#ӵ2-sBJIX]GqLU)OZL4>chVJNZAZYq=ڝ ٵuBxcfQ@钂ZwXr7?^-[چ$|7BN8n˴1#Y,H_cVv-<H=³ { (KqJl+i ^ xDjd 8n"]8Tn&\&m ~e9v LJfYΙw]'yw4 el}=>g}.Z l['4{ᡩp/b 26Yޢ?i>AE؈or702X䑛}1P NL35b*z0n0"䧥E=^.J\ _5kcn gX/iGUqDڃʇ_*Y3+23D}iFsP|s,X;+@id9_2"7Iݸ(qp% p֏!4+#m`YwcI&RkJ^:VCco]64~.W6qrH:I6K]AiVG =8$$nf*ӿz݁wdLm_Cbm߀huz=̓k*N)&:iJڟEڟ `-) x$V0/!h]Ա n.N?-O:HSoU_CrV/MGX% C#JY1}Fc21lY;jH1W&w;4 dފI 8兌Uk>xk%ۭZB~vNȔ2Qv1}4l,3"3_ 97)0]o+b 1)<5NG{[ԛ#킍{gR"[1/e4ګEHk*'+̈́V_EK 4U"CXNǷ0?J߷مc#h{"X"O=kO^oW6F;*x6pF_.>Kă̦u3|"MНeOqPgu-86,YagXh.j?~{vlֲ`z泝Etxc#)';<:G.:uwdm{+JѾӣ#*Hf59MQIWԈzzvon b-l]-\/@8\! (%^ Jx7-S/ Y #ORm. @E_iWO .niOXmsIq\EƾwWsYk, #{xd^N[-)ajHLIКrs?v#9簱{jH:QŢaZ;ؚMvpw1'څH 1e !W@ cM@)gKaMdQ^,9vua_I3;tof]qC{ 3֫(Gm4`?aht+<\0GMu7T'b2i벞b'6GAЯMr:sD^/֮`?'EK!eqFeR82lALq{3+jβ yGw/sdZtO +.F7o0R(Z``T:KPєSʎZmE!PޠED'҈K1t5җiU}vf Il?nZ}zހUa MqhQ&T&Te }>g^'om֘c7)WpRK譸6E H5KE%WH~sU֔w +;W,Z'W:_3mjʫd_1l M({jk ā5*YaKa}s d9=bB)+`g njJCD/JAt1WF鈓vmȅSNV zI%~GqƗ=ؑZq́4^bˣN{A{4R|K0ܢ0sZ\ϿoPڡVNj(2;hm.B3#$ N>PSP$izH.Ʉse CY .n&ꊻjDgQf7 &TXu~:aq`ӓj1V~}g%3QlѢ;IYGNOWU(I6W0u3`vj`TkYOyVlռ~\W \V pd @3@qX6Yc68Sّ~h);`o!_7(4ԃ6d!(ũ7]2߫P_L_6jbHeۙ(̨\]_ DX*e>)l.[ I%Oc`$ I&&ShE 6u f)f/~,exk^ zk.\#?n|#Nc~Hr_|Rظu ֩$6,׋Ѥ&NG^pi/@?QpvAίpy-<+SWf}7~'hY%.&nŵU8d@[1X CTQj#C-fU'ʤ? mJ#:UUOSM ).$t+߿ySOgCfWd78RecHY0LB"؂d,=K]ַS[  7)tP] gC^LCs?'v)71UFaDEŷ`05shdT *m#?irXhY禽"H80hA] u"ӀNSTQ@=DHLjLDž^r0oO^ "j^'2@Olp.O֐2(r|GJ ! :5P,8pCΐ{/Y qz> Щ6בV8&еOC͎Ngþ O}6߭@#%FAu[FLN?b`_9JQк)wZ_&+>E.GI—A\bkzAS"(Pt4ۮ#U_8e˲ZÄSVтBF_i`9Q)0E@[~v7 7ƊWLЌL(5 !K\5\.R\|8pTu˻x\Oë^j ר#LlhIkdAOתT}@%u?U;.ֲxuPlr#y&8wЌU8}٩W;e~Њ5jAw#Wj ֏Y{ƈīvݕB9#d,; 8zgZ]^¬ۺ91}iZ} WD|oJ~$7H`^-2?*\z*t/V:6_GaQ/3DYz@a|^=ӕ70.e7ϵ׮PD`5@{3t5`Ue?ۭ[BKݻbl?sDQD&ר}2ri]c2٢ Z|C1f%,|O{~᫩am>^0$T #e1 jb%LTD3E:unK.#Q]u9V>5oADdӨóqe-g?f χ;iD6cx}IW=eS5.FgML8s| zn i䎌fszY2_Rj{V4Ywgxn\xӼ+ShyD0G]4qq*a9etGuamMbr:!j/hՅ> $ TdUI } I(Ёۅg'0sl3bý)v.I"Mm$&A3[cݿ*Oa_x(-4il2;|ltjY 'w;i7qN(<T| H.ccVS{tS T|{M DL mPQ,DISr%oq?^ NގC']l,}L֤^?f{YʱQq9oq~fw:S>Q!)ځ{fQKOp?q|᝛bf> {43g|vz<+Seu&4 *K!:VC9hd%ht!_88YSjݹXEsWZc&+6RGQ=A } Ǣea[fS&kשCx-K!Vցט Q8Y$j4@* ?.|V傆 V(s19#^sjeqfcxhB|G@pklnx[39S$s.֫rz)`=lf-H( f[K0\.ifb\WFu>W.H\rDDكsKk8`XJR7.cL#j{ADjE0=da𞖂j Hw Ħg҉7|c -o m)tk WPP'w@S* &fӀNCzoԡN_D 45/=`T_vvG}&Ů...Ro&\PD4fWls9_#K8 v8*0s9AI[N69YAҳB-=\$W&o+X3PE gۈ ׁ6x1M~D<FmeERO.)xk7TnԹ͌P "iDoBvγ, zӮXV =EѣOzf/ q b3. [Gyo FYe̅ZE%Z2w*$#%׶5)*<7!%n]ZalLj w yw9ݣE"N4>EͰrz)(XFV#E-&a -!׃ bz=K+w1o]S; 6;ɢ %MJY  G/HzMkī׉q;0|GebT bu˂bnN՛ZԐ!O YƯX,.Dw9x:e0-!#aw|PNsT+ /tiJXq޲h!Susd=NsT,ZeHԐc2 `80z"zy-n1Fe.`pFgYY sT ^ؼX9Sq+GN2RWф5 dO-Z=hfe 9Y^QcŨqkW6>Kغ&mi֬$EG>:#ࣁ1FX#*[5&AߞXﵶ#١>M4s\"CX!=ZCP&|Lk`g6U/ q &Ł~M94]v 3$Ed(Sլ\Cϙ:ܚ2|Iō' "!g!f, DL!Kf]o~.0 z_\-Tq|ư҅@(F&6CNRpLJw mI90~&<6g %KmrD$hX.ޗU w+W̔Ԣζ}P"_A $7%$mMHێsռ3ٟ h:Q1f+PHA6s9GmH*C7޲yMZ)ehľ)' 㔺#V+x&^VニBoqHluGl(śH (^ asn=)C6< $FGdJu:*{k;+_W L2=4^EѧSGLH;s&s(]_1h^1zbUkh2@/!ؐp?ٍt'|p θw8d7ׁ?Vjp2Mp/k.:Ic[ flO| An~\.'J H}sn UZhĦ<%gBʤKtDҼk $&ׁBwWҰ~$?k%^C}X8#4) }t[5P6YZAnP\M!g+\+-ZQyA0/F=g7()xO1ndSH 3 S0m;O12eJߘOP  %ڝ {SDiGn6o# z/ ~OCb +C nNzYLRRQBYGenFV]马8}FW4 ÷0{(]1_7 Q΁q,RVmA]t\R~;4GZtVnjٕ~|(F3cC_^ h׵Rkj7ܵъaxP=?kY&R8jUgT& aΜVa8!B[鞢R´V+P7{PW`v>(S RFJKiְN܊Rڞ\ 5mwV\$y:\~ -/01 u8gqu%u* f5t\\_"! S|,HP^<t=Q"xݶ \t\58>( ?ȉH +l\P%xy-F#ѝlU;^3&LKJ,wPBBJұpC0JV'9Cg~++jg;nL/" BvWeF<?4`0+2+*# 0JNw<VZzEN~_ 33wţ-F[Fl#Ed>6LQ=2qE!J]^p} kM̒YJtm0nA\:-ֲҖc2vdYM>Le4.G:юd`TXy/17-~,8iy>H~qV,$yjS xbZr4~Lh0.-6[$ᑙz.]ǘ;_H2 ;:vO f`aYu6ߡˤa(}jϡt+o2%~W01<rXJ0EYkL#U-O%D\.]jsroe).M*7n8TMٱӿO?+ P03zf)b~+@/{dT4CyНˆ؄HR@N{WIĉjN8qwgQseH~Gf6mk, *|sxZAA>1*\4kHo)HsJi>ރSɽfn!`䘹f6Cfi[5+k=7wg`1Ɉy.t-&F蝭T"7&:NIBGvѤkRcR9* U*|blKhjU"c5O){нO]/uȋdgR/h?RaAYmQ@"4c :;+;*nPU3w3I u{h_`VsXΔAQ^_̎-z3d7zcX*̤C^ou\"{J*oO0Rn&n Z; n % Q ͑5cވ*8Z[/Ьd7DwvJ0פ%-=:>z$59+3#Q(wU)Үc*;֕-1a2 Z`Ygdz٫/duVhDyڞ AmbMS6q/R';6QЩoE蠆~a봥W ._`7bQOg8W(a(۟h^ȘXHx7z*0[5D&I|\CA}Xw$ Wn8+.4pp9+ )tn'4$QrZR^ TgCK4!?e 5+Ksx>mm.X^xy/D^ Y+X *kp),UPݞL<DMmax(>)IP$%uĪ*'A Xމ mCxD$vݚ~BPv0SY+$%S`q*y&`+ܚ3"bN|,Qr~ 6qwAOU u., /'sHˤ;ݬcmqh%/.*!v3Wl/U8ջ7֍7m8Vdy!"坊uW ` G%-5J +sv1.fϖ}E鳆hda;dco(V/UX9ޥZQێ#x81nm2fhIRGӬgL\yls,ƫ{upۣGw Ew?0db# eVlr*'^/b"9!N:l!sM-e5PL3Ȝ:/f63s(LН+ 8\u#m5]9nu?fm>J@hҼ+qX_Qdߕ/Mb..42ͯ `dQ(Wŭy=}V4Qh +-4j GriL{;oZ$=MucSy/LGȭPpӯ{Ev&2e¡kB ^:ܭ-2u\(]U< UؽRNk_fʅl'Rm$8vde90:pގ{kP)m{:OOjVvل#x#_ ]x+D1&0_c 6_kBB}R13W}[kLAN7 bJWv(rdkX5H`J XCU5ǽxSk `耾eѱ<3nG_w,YvE漢/߲cV{ M% ~hT9L5*ݤzg*)u(q#5Uv[Is2sEiUXg؆vi!m ?N[#CNd btD&Rtd߇mΕ&BĽ(.jTopsuq |!lFhĠ͗]KۡMi֠;)<Å:$gLHLtR4"y~dqp錸PNipmTcSmxbs7!:1c!Ih#n&'SH)}q0@X-s6mbVYX48[] 9zqEj+{W"ͅT_저U"C ݳ\`3!wn(ߚCheGWYAo =U`*:cݥ#g̗Dpxڮml*7VΟl #_D72Ӳ٨n7d-+7_C(4U?uzݮ#qz.xa_EB$ I#o o'4q9 4 ܪi[hC9#eˮ׬[׼*r`R&qRjNIGe7A]Ǚ&YLEa6jIYFTBVi%YȉlMR؏ɽ|y9A^mUT| 2gkh`!ZX[;7!t:1zqEx {^Պ;Ab dYs.crWWh(^HAZjڠr8?4|lY{SXzy?,љ!0MtvRngx^+u4(rh"dc:K|cy ?,OMב3ՐLC?W6ݏ3BMWQbaD=kϝ,]-lXFr=FW#w̪Jδ}5פ;7s9A-I;*DiKD6+'0 aW RL]ϟ T"W\mCp0_ |'u.fZbJт9ڮ9!l t0#cA.w*k[Z*;U֝2K[ fC|y`Gg;7W6hW2^iCv ~1h۱Y,dqY(NGϷ$6EP+;)X4ݼ3S~B7h+ I唒3ŝ$jXO.+{ޡ ppK Y РrR(k/o)0䌅nYy>9⓭Qv]))4w8#J .lIb-(,,s,-G"5_&(K{4ZgIn8ʹf @K!k6p%N3K:^LR"I(_ &GW  *-yW:Ws//>Ѹ}H}N-ԡH'ʄ'+g-L>0dWO4PR!@V8L2jߪT[뒯(fxQg 0AX/q;n!m2zh攴f{EPλ騰%mj'*@_1x+ԟ槎/ OosHj o,ptBpvF?t5var:⏐MwFH"hD;״s4 _x:\ZޛYJVK9m[UQ⧟Q=UGrq !6M6ߜc- &{9<ݙO,?8I pWRMW&q@klbP5+d~0e`'w!I4IJl/[yqz Ƴ6n{tX5 %o&\\C3%BB֛w#K9 0%%GT Faz$tgPb< AB3tJ ޵#fIj;;Y7(Tգgr+gj5 c?˧87jrI96!qK3MQ;^9u%)˭.P."$@6nm)i/q3]֒ysYd;)U+(zgf&GTRu32~oeŁ{.b̓0:?jğL\%R@>يm v^* S"q4ļc* B(yl_:ڐE=ҽfAN>UÄaxr며GV/S&k8/ݐA#"(T\G# `1ɻ=Z0k5_~py}h/@j^wp%Jq':. k oSQs}]?ɟ;u MjYH:.ar;xqI>!d3 [ .Eح^C m]S5u(TLL6Zj1Yr>$/R[ ( T4}*Vnj" iXz;s "he0G`f$?zbŎCwc yϢ$tZz)!Hj_ʊ|][dWJOoa\sxkBz5ڛv o L!_'"=j(8 v'QRh85_W?ihsTastUh.$untF?ʓPd2Ul|z7VB*4V#`r@2veWOt Eyl4‹X^OӈTqں;)N'J0|獳@cwJРy=X\mb#1@sd;sm)6` (,d ^ qP)a![,ZF),Q>1@`Eg?*}\&=*SKtZHF$>"Dc,ȓw׎֏ ;Fi081 I8T8sѾسN?ʛIJ;;:i~45&ןsIL\*X8~(b1.WH͉2HfGJs|5SO;͔4:igw&L/gvĸ =x$y{#9uspj{R̿ @IJ} 6ud"Lcg_tȿxѳ\ 6PᰡW I pF 0Xqbv=z5mpof5+NiX>jdg~DF?}_dҪ6(B2D4b9No|J#heRK=]L\٘M'`*yR)d32}{t0#qOfG.F)>cװ;"ͨTonC:8P ڸBoԯ({ou%9 ?ofng=xN02ȿ6L,fLȀNP 6<\P }D&ԢECx#ub< Ts@"߽,/H~隮N]U5\"i/y14Xw)KvxRWX.iw3ȳy{[ RA_Bw%,PoO]_ˍ~|TSÍ<Əhu>WИeA#/U}Nm.Șz\KI|6ZX`0smF\&c~ eܿ#<)|=S6_߬ eW[ISGEQәяEoLH^3~ꃇY;# ,#PۈV W˹w='Wœ>xpfa%#"dshX=5y&pAQT5i߭K]*BYn/%=F>td~wL 'N{6?]nLxcH=Xg%$yv&hMe8|u'kjpNտ>֏napЊH},ܰQ_RFN#f%4 l22q/;ήǷV: 9jg*p~Յ}bbో6+]/6uxGy3o',DGb9x:P6o$I>^ I.M7M$EF{융*SZPR۫aVy}7B1 ˷UGJp|ƹewugEnGC_I򊘲Njr Ů :vź O[q+۸GDP)ac~ϡI" }t}/0J 1ZHYD HG$A,K*Rl8FH<0@# U' }ʵ&? l}Aҳ%U%Kw4^#9,3fez~5rS9'dQ%ỷJ "ίp>rZf49Ȑyi/j@85tg W)G͋ٮZO1"Y?p&-L-u< WW%Q8|]5$+fB]\:c)jK-91Jyv:SkQhM'G.A#q! ;W J‚DU6ǂlc5"V˵g kEq 2w?+Ǝ#^?֑oNګGZ4l=`K|u eN[_OGzo0hA٪kJRHrf?$=pa?273Y7Gv"It?xӝWsA]i!ljF3CPxPuւH2TqX GS 68黃22 7:՚…NZe@O Ը XH0RTwesh\t#H|ãυ]jreƂa3PQ9I\tB;<JJy^%29=)1 Ub|KliK `aw:<=d~YڙĊ,mVT;i),R쑽Z^ˈ{x ѡѾCڟ*NJ$lx>B)yN'̰!kѥ-韝/︂MX;cLХ/IG,1c,Fp; $SHJ]߶"06W=y@),?x6ed#qޟ]s]Wo0BrR.fXSd`9j׮u:ID+ۡ*[ò̡k)UK yM#Jm2lwܐDh#O¢E6 M% 5nEKBE$HzA ʰ!ufq;H%xj +`v1ABs7}+UARC%K\li|çSϻPLU#RP-)L0/fy$hHЇcҜ25oOP(FH~kH#al5]7 T+յ%Cb!2H9Do/W!akv !n;w4[׷4}.$kfq8MYQ j%J8kCRDqVc/BJ@2/ρrN$JCUM/Kabf$\Ҵ,9"z"fOGVŶa/S(ja *63+(_7-@%_eU:; [fK8xu*L+?-~ nU #4iH_ >U Hk7;x/?z#̎*YcMݮ{8a Wo2-ohH]["8vil.m*'BM~ ޵e4ZhJ@%&[ 6Yowxْ-JHpWM(%E8'P)R=f=.`"=`lf{ Aw%]UaS4I-^.`{&f`0ahtA]7]0 M<Ě#~'7W`w;Ame3{y8`EPb'ǗT҂&K9)ӌMf $A9"딬V47BV> rT&+#HeP=0}QT8SF|'3=4S_D=r>V 0b4vIX<߂ip]Lft? V~ս?o}}+Q* ț?~VIL'0| NJ\JHc ij'\j-P"q*=&ب*:Юpٟ#<rOƠ( w;g RgQ_%z1{jQLuFGz VXk?xRYo 0j EHgB+QGd&(o)$ss=?q0&saAlB1M_7qiSzl/DY,ڴ+-9rG дCD5e޽w$"L-oc+gZ[=KGi%]CÄ YZ