stalld-1.17-1.el8 >  A b U]Opuuf̝[й\Xu˘}JdHcg.+D€!j&^$_n4wWt2/J?3mle}9ٚ'] %e\^d=4!TnO0I,_ѺDäk'xG. vɁXN;\ޢüD=̞*YBq\쿫yCYiZ>E׸9YDcӂp: s|Ղzԗ/F,ob[z(fptH BnḘ|?2?/4LhWV?SM 2@P$` hNN;,)GWՃm\f8TK?cE`͘o+iW_'ODwHzwH+=NvyY<,ky]%b@UT:[ұلMRvf #95[vFʑB&me`n?rHT%Pg.RN ]Ut5'.Pe+!Ȱw~K0-"-8Ii>E>pB- ?,d   V  >DK^   &  <  h  3  X    8` <( q8 x9 :O>&?&@&G& H' I'D X'PY'\\' ]' ^(2 b(d*@e*Ef*Hl*Jt*d u* v*w,, x,X y, ,,,,Cstalld1.171.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.bhx86-01.mbox.centos.org>GCentOSCentOSGPLv2CentOS 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 || : fiـp F>AAA큤b2Ibhb2Ibhbhbhb2Ib2Ibhb2Ib2I47202a73ef721155d5542c5a32286a9a16c6c619cb0381930f593f2e3018ec8c0b4d02b0cfe5d05f7f8185d5813595ccb4c03c359eef8cc4aec7e02838eb79c760623eb75197f03aa5dfb12cc7870e93553239111598112f8deb22d4786ea5e4e115e56f355ac4127c473d9cc772ee573a6553943c9d32a57b7f0912914b9db11d75983ae1e733c31bad9abb44d1e108b0067ead3cc908abd22be1a784ae08778177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643f45688e2d7c7c04521aaed486ac89b5becd6256024ff9151425bc7a3bee11c39../../../../usr/bin/stalldrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootstalld-1.17-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.17-1.el83.0.4-14.6.0-14.0-15.2-14.14.3b@bEaK`i@`` @```-@`-@`3@`>`@`@__@___ _y@_N7_L@_D@_?@_>e_=@John Kacur - 1.17-1Fernando 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- rebase to upstream v1.17 Resolves:rhbz#2107273- 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.17-1.el81.17-1.el81.17-1.el8 stalldstalldthrottlectl.build-idd4fc63c4d17dd46eb544e956c521bf9a9b4a2358stalld.serviceREADME.mdstalldgpl-2.0.txtstalld.8.gz/etc/sysconfig//usr/bin//usr/lib//usr/lib/.build-id//usr/lib/.build-id/d4//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]=d4fc63c4d17dd46eb544e956c521bf9a9b4a2358, strippedBourne-Again shell script, ASCII text executabledirectorytroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) R RRR RR R RRRutf-8dac3df4dfd564596fd499e7df823abbad36727a31243b58f938bec251badc96d?7zXZ !#,D|] b2u Q{LT0E.0 $_-ca?Ӟ!2Y,uom6{V[ V]J1OܒHx;12ItYcXׇ7 "3JT?7~UTTuWL1= y!oF̞,\ZU[)ׅtt'H5{ysm X.D~Jߍ1QW%V;!Ki/|"v͌ JZ Ćウ/O|rx]$'m '*C( tEGiR*>("y @}6kUϫ&`!%ҩfXtF{k 1HbM|GR$OL۲`-@Drj{?%e'"WO>:Ov|Ua\'Bg8GYb\7r,R_SRuoWU+xLB5 2+}IloGeHs+qn tt9葜^"զ^uayS@Dt`vYu2Sh2 !}z@Bo7C'~2V4u:Tnow!ϓV?:LtieBfs9:C9ul5pkob2Tzw)Q`ԌX_>OJD?D1+;E) S:10Ç/r𢱭>GM[ǽS4 9Qve}2 <^.fage\,7<4E kȥ]vTpP4I3(UpTc9#*h.p%IA4o&˩8XNY\pmٝU m+ d}Kۖ%utQv+^r*IUWnП̏%UGwdjwCd8>(vO,;3Lsbwg~tZ&d#B*199JAVux9AWxhջb!$s?*Ӷ+3.;}' H6N\^[$c$%Su;ގcP֕8%1ͲA9u0FiN>pt6@٥Z$]>>oygi$) ~NN|ѧ3#\/y.b,&W{Knq_iZh?t')LydV>yZw|=&fr<$Ƌ݃m!puQ XH"[4o˟z]m4$cFE#[ Ǿ@4.Mxyy٤xJ(O1Qz)r 캝ש\KAK_V`mjY4n}Tu5_+2 7M+8/[1]F0U- gIwG"c}۪PnY?qqRtT3fRVXTL u}rjj}]F_"rhVb=rK_l"T)[ɟV6UD.K\5B͑uGi  tsPڿD緮<#R gco!Q=R_}'GщmKp_Bwк²S]Ɏn lal&6}%Ds}~8B/o 31ݠĨ6yoiUeX5=%h<ޠ|9K6nVEw␙ߧ~o`b&^( C{=$RD B-EDnփ7 "EăG!0 u:N@80؈ @Evl;?_؃r^) `cL,w\KuId7s2|8Z9hͻ(e^On<5 a"T1B#S;& -A)FRdybp&^RX]?烲D1wʄ!P8aGMC69=)֮=KP@e>@ge^LIR/慞ߔ;?=kب:eE)ziZ'ĪTE]:p,?hL8 c鸞C,\vjʫ*QFp;=ʺL#[kۗA m{0ݷyy§p(_}29 K`6dڤrsS r]xbGjc!rb?O:!+k8 k2> 9ezZtyO-VNEXNOSƷvwkƊX.}g&h_0X3C&h4yV(vFۑ0P\]e`8lQFV9f?nGO Ͽ)7}XrؿgJ nsq<)jHD#:MIRF$Y '`bV"+8%jʑbQU|^H,M䍏#y*z%Ksn)U.yfqd#+05V~MeI[cp$rG?ܳfd#L@! 'ri Y@CR\D[,:LDZyl+z.?(}=k4&".mi%YnO`HH6YgKL(BVno>5Q-*ľez{*`PCE|e! i2> /BCQx;qo;TSrg!-elPw1"G-%Q4pSw[sɡv4P=~TBAQ Yǖ]Q HNG߷kzA\'hܣP] |tHTxB*6)ߠ?VI2]v|Ź z:[ڂK(O>= yP>V/R S:p- ͳ݆?c,e?znu"r[aQ&_ P)! WaViKe9·0YʦBGi^'ǰ`^q yJJl^(Ç9K)(X|`3Ď`Di3S43B']شIJ[oK庬;O +oǫ#j aw\Rdž'"7Ya<8G|Ux,G[] ^EpAc5Orsjfrx!aV)lG8i0-]j`0`mw+|ZWiY{#T#rAX p)r(@܄7]rɲ|l] xT9m+ f6"Aw4G_Ӣ#gk%I&fLgɳBgǵ ܶw8v{b;P v:|$|I`zZ9*F_FQX *7{,CimiCW ^q*4|P &1cx;hH[Ffa¾"Z y`9`D6 H/< 6o{.N8։٬{B}  \_?~S{0ĦFJkł~< rza9='}qz\Ɂ΍fRaGqHwP0 !׵hI{Μ!@=Ƣ9,yw&"YwV~O%/nzeЉhֿϫuit"1У$(O#~FF9V_;trhs =*̂Rw,1^ 8LWi饹g<1|^Mhu $03߅o\N]z.be^ S%pPSj}nX1=u{t{jw;# g.2ֳ>Sݕ vfŤ``aܘ(VY z쥮8cpܒ;'y`/ ~})alYeXDSCSF, #} HDWUç>F"_ K#(X~}³IA+{,7;~ djF*KY3rLUlbOډѻy6iys7l5ϸOqCИ 0sJDqs͎|Xh8&wWi>Re ! ;Fo]ZloUNWT^͗cHґyI7Xr ޷c63疍>3{0=4⼛n\'KuIk XTl_z * g?.$Ꜩ9;XG,\­N?Дa{;|$|^Z-޹>&.?A5UϬs\ɭGr{ %g(4hOW^@_̺*ǯ-<. OB niYx׋ǮEu櫿/rjM9 > }%iVŅ=A壈ضM3% J`qS " 'Ǖ)?a!e Be3&_sP/`.&l^eL"!l0g g־=1Q2U 8}RBWk"+6?aj:!"[Ӻv VyI`F˖nLXRpBtưMPWON7^Cn16Cc Ahx.>;H|دΠ:߫B+OEDJ/OP+kqLvСą&U[Wy /I$Hi`%.'JZ=2:SYBcuwLq~t..L)G$R!//P0kJ\*7o.?f oC ?khռs/◔Ax)(~=<+k Є\)3-@чqzщ~vӐ~WyU̅ lG s^~0>A.0g=ӱ;igL}\3̔ rgzA(IhS̨6Q?'I:oM%ťI)Ҳ8UĨi9Y9%tW$43 @1o.φ,N?2Xm6j^f2RPȞN'H+0Y ^cQȍ \>#hܷ7,yw!pDi-D 9)t,:¬!^}:zXqB˵ɭB~) Gn@Gqc1|y^- WjU"MGnB{8`,GL9%Q &"ѿ0fKj@6"(W5%*^p3=Pu RWDܻ+cd3DJ p4;6W"y^لY ,byМR&4}%ޯLjNʫ{<ْ9C$Ye%?BgPv%E]r,[a@ٍ_鵣Ɂ:ҳ5%"lWp[DCQŖ"oUeM퀸H̷*Q'F@Z*Ll)𦄯")h+I$Gנw*n;|BpJAxDNW'k;,-6g&qu2n+xN#Z:VC4NWg/Wvٜ>Q%/shT å@s9{ hg0 }V쁐O2ꢛxcHkUS] 0l&utB{uhsOWּehm,=>jko,o@E ؏=j'&.&`gF[lN(l\S qiw6)"\W6YsH\DŽ$0Le]! ;S@ڢn@c b6VQ6"071v.{7YbЭJᾛ05ݜm%(UxRK"h%&M%e!M.p'3 ;BR"L:$FNT.s/;G2T\Ye+օ#׼tllf4a߹%?fj>W/ $i]}.HYqQg;|:!!JF]P4owGjn ,W7dƈCӍWzWG@<z[4YXo ު8mŰseoAMh@8TS~,ՏL.upEols)P/Mc5tIUD )vAUR4d))H0pM,o)i@"wr\ठu<> m a: ;DM M{ ɰrx<wQr&dfhڈ>[ l/L)Zje7]{i+)h_4Xަv29.}2! JLsԌO ;1nmo_P^~D)O&T] rEmUמ@P'r@|3wdl-p+ 3=|V~PR'wP`# ^!ŝ^ K WkH(YlSp :`ؾEz pRgRPou(AG3\ rZSmtsмdb UQiK-K5x7c-)V駚gpOD!Nb'nIZa!hOs)?a~ux{B_ʮjDqA"$. ?k+;W*cbO@;*\s4[Kd++9 jWkE(ED5 ŗz㎨O~qLLlwAj.14gtd.[ULor@T7w]֐zT߀|ŷ'7]ŰcgHCuVbʭAɐ +oSמ;0 {r꜃Lr␊ 65Uq?ZCۗ]% oj< @:$$7GY$6F O9 #KSDgݕrL '(]:{4d{x=&|tR"?ո*jwNE0\|.b_D^ܴGOPp C[R &yJx[lVڥC񣵀l q7Nl:wm^$Xk0aL[0x8hϭ2N k)Hݹ[g`0TrUڻSD9\_v-uH*{Y"A>GaW _}auu-?睁 dAy,M6B224'aUh/gUEG|(-JCRFUMc|ZH~߆#FMRj''1kk-dq&FaBߛŻhmqn{%8:ֽ9ΰ;# RƯ2(rH6ln픓l怎E,k1"Yx(&jHw8iȢv,~.X7k}NP^٪Rk6jjLc1/06@oٮ_YO< 50hM zAmSaoV"ndmi>Q&ׁ|SMGr?w1(bCXO( ^v5]#NmNj:q*]s+n #ODB[{EyϮyeJ2By{@4)g~mjF"ڣ2pAPl5 ZdA%/݀TB2q;::y֑+JҋUX0#rEg4>eNn'u2㱟xl%stm4N -lo azW6)P]i3 V&]ECbVHȌt=Jj]μ0 w}n@q8!=nrO+zzO^x7{\]|S8>3ʁx(jMs9UvO P$sL?Hw;SR(Pؒv/J8\R(dԤSWز@nFyѯպbUYt Aeh"%/Ig>Lc7VLCQjZ iL"'qd-N*tjVN-o@=&x#0ϋjC|l`_G}A&> BJ?o,6$*z hWx~㩂zY}3PÁxâ?<,?q;ʥ}"6YY1 8gz&'I=Hée^yol.[8O?."ΘQ) KC2YxݾA4n?Q^:9=^w3wӤ. iHzfʶlG S|;^+ZzSrۚtO!+.QۆN^^z&qP\߆ܶM4?Ot>ȲF^!>U0;,,Y]0IulT xބKH#FCLZF42tP.Y'cYv/6xb$O6[S//'X}-)"^\ށ 6ZyO :=9 nYp:vN6_)Y%cHAbfFsz%_|N-K-^ G\!֊,mux:"Mb廬"Ι%tS:.ٞ)(@qn6Qrm6GJl߄8ݸ0q=y*{nuuP(C}fu[D:OwuIFc>6 uY|A(JOȧUrHz iPcJCl˺8+8+AE6kw:O\=z"Ju;8y;NҴTP](b7/;V/|oZ6`BI 4t~<d|bǓo ղ--C<02؝IF5 4xZy%,3ya15>[Bz7;Yh V{)@?_=4D!V%,c?o]XCȸHris ҍyp/#ȩ7ލGݗ0KeQ|?cDzuQr8H <o!.Сs6?6=yEyt9ӐV1x0Xt \T)UOA2wYdKܖ}'g:g$o&{ ;"<ىctlYs?)w1UF>$dbu]6F/`Fsq1Ge`+z t3]S"/-v  -Ɋn9qzVMlf_y;5yW\g8^fw˺Ã͞Cy Uq<CO&EVT>LD\:eȆ"M\1¹Iqm@𽄽6 AgSCc< [F̎Y11J%<^]lrR,S(/wZ} `iC үh Ij(K74OU1>Ib~,R";6ܫ_Ʃ3'z᱑2+|聶U5GzBADΨ@U5U w"o^ut&myE!.)ȱ8? t"J,ɇoȨ n2Qͬt˜:LSz6D }2zӓW^7 Bd[42~=lteYJ R 4"Rq]/d3ܾ4[{7F[r3ӌIi?ʔ/CH?p3N( o"}hc U|]⎈RPO3bܣuǰaRX;l>WN,ʾ|[NnU7e64;4& gx Kd:w u,f_Ʉs5N/!āwWVgxC;?B^v1 ;m3,XP%rxW,!n)}S(V*e煤RM B;8y T,Fu:NLXjW%V/DU,%Z߇ApwkˆYOc!g~LZY@ƕ@-vdV2%L кNJYP󐈤+JyҜYA3Yw-وe؄fS}0wz:r-"`TIԠEbQ1!Ku%F32>QSq/V2uc5"S%p]Ry]73~Q+Sf3Za>$>,5A?&.;++߮@Nb.XQzDPY[+ɹZRgl s5"&dˑR;>i$6*3 vTSqY//ݍv1%^cu^,+nل?TN,[,Nc6R)mnPv8"^36#w,ICBX!}eEav9.r}sd1-k5ڵvI&q ۜQ-](!v܇L, l_{8 NMh6 7,fxG*{<&MаDzqLTM ++4Y; <+0s+Ty#zqdYEDt%<{EȾE8iӝ .m𠸁ZbZH* jb4А 鑚 n s (' =WfR l}M1bra%d@!Y<* [f]Iwl8 4q;nB\xGt$oUAgYW$l^2aS'y 'P?ϨH=.jEҝ}_@ ߢ EsX|[6ft̉ݠnEI$J|iv>t56waS8ʹ0pg]}ۿ|+a&Rgw& Wul7hzScG1A ޺FF(oU4tl-HOwLN X Ls Jo}`QiI! t/|tZ4#lT!Qȴ#DW +]u3pK0#J%8OW}Բ-[ˇ0lKKҪ 킳"Mqw҃SꮱA^|tB$b1;{<^zŠJǏ% M*Z)0$Ӿ9 DM|YO"a?rhe ^8QAAebl|U* 4Q\p/ t⽦u(J:-~;‹`+|2j_NlDP\<߈i"iXGtWci"D0jȥZ77q"жX,*Յ yN4}62[p6bPbwV?87| :ZA]̱фq\lFLLxKCUOjlxC"mrp侴|ÒNKy%W=#*bM+DKlMQV.`ǿ:+9.a/1MtŋSѧU'\AQDǫ\Y.H$-q:[Pn79 kR)G&HKYJ;trR٬Oy$L&k V)=Ss "vשZ-Y٨4ѐg0TX{L&_/͏2- A/='(:|r ?*s8XLa-ji];[T7<5]G]~Eΰn7Iەto. W#N@^hcxoΤ6lf1)5_9du,lrTէ|6-a[|2 jDCy&W!ljGI;2gDyV!m{EWmOQwYi ѥVIt1(lҨ}igdCf:; \jOuHэ#qDK4*(}K#=wdD1(`Mp0~Z>(r. ~}KJۍlvFmsTx.@px`y| Pw`m pb4䗑XzMV>ʓm"xU|{E%H|U`<2-gy- d{Dk 5h1*ՠ!?ǥB{uzaf7p0fh.l));[ԧvBNA|1^6϶NJDqG(I ~\D P^&^^ Gq"RjTertY9%VlZ3 IC P2.:ػ;$֝R 12.b#65ss+5^^ݳsC>?O#?9)3/sj` 쪶m0eR4=21g<,qn 0Xۛ΍?y&_߼ُd7I3I+e/Va zuפyUTDLfH j+uPwZrZ ʼnv8}%$Ӑ$oY~8y*(IҴJ@ĐH,[vt!ѿnBtG wn'$Ύ Ɇ1w?e \lhW.bHOd]>zK_3iMBNK3 YJR.Le@ >eDKiD;׾ aSz0jf 6/ڴR٫~xo9+|>}5ai!ja|D}˴Pf-᜸+#OP畺staw_&<"^t/;O> iXjHݕWq'Kn82k6YQR~\u!62.9Vb qOtUkAZe{w]pn/(MLL }p K0eǦ nxf_^V@z'jey^}+ꈡZ-eO=$%KHˆ #);2q&+Bs7+*GI{MӐ))< G6c9%x#}K Pdx 6Y̹OY&.Bsp(C{~M#B ǰ#CM֊sTD3@N\}rn:Dz .1t "\a%MSB[ OV~5O {`ֈX T3&xmϟT> $=Tg j,jL髙Qp(:d6ieZu&_G2`>1A>gQ4]'XsGJGw' 4.xK |*")z=򿽡w JTaT12TA$6Le mQdjsDFp ;iv9XO}> W}Y%w$eJ]*j*,TEa6ѕw9{| 4tJ/Y>Zݔh[{rESlWv!܊zF"!׾>ø r7#CI>F8 |&3)4( .HEFb$Hu! 8jj97 yV5ٙ7dgWX6ڐpɽ OzRc2̕=`4 &Ia."i{4S Q&|To;R?-*5k4eu̝)e+D4j+١d&25Sw>$җq?`jem $?{4ggre]i!'~9pCH^ LFZj+0Gx2і2g} V-rk :kQ{w$O`ݽ:-1/_3HPNHDثo'@ X4n){(t8V'"\%l[27f %(?HRu]~ˉ;f('h).g?HP6Ljs9l/ySrY^%g.ijsz鈖)$`` iAºxNj NvD  [y1T` ccWգ?OUbFZ([Q|'G]d`;>I"$9؁cx̳7 f^N{Ƅha b&#n!j[tClffJIww LHmx$ݷQ1IÄDzQp #y]q4":ˊ$ u8X %wfzN{5#o$jB\x05Ĝ'9x?%bU4K w/!- 2Cy>74 GɅ~Q D.uR7]`@ aB@, B&2~V :hj=I*yM)BG[MNUcR"Kg9ce Hl}+ Z8\B9Zs.֟ kCϻsoӭ1hgKe>hwwןc:Qa򠎿|JݜK(2BtVPrN%c<û'pR YQߩ|NzN]5E,>aZh6ι0W\mDɆ5Q4G3D@Rwuuﶚq;m5LB_F_nϺQhV4SBe^}vŁ,,=4:&UF1׹1~T+%nPO#Ag e9Nvp\mD`ۈDǻ |2\y4L=kinAv'?PxDBҜr`3HNzQQ{TI;_#(WqR K*6 ЙJ@z+FՇcW%HR w^]>G 7:XmYIGt$j/ߺ竹ˬDn;'D3\{k^IL7Hnl@ AeH KT6:vǦޑ3 Z Oce8s) IL1hEٙ&S{o굷uY0i],&'"v\;' NDqgIkV.6-TdK!|5s@(eex Zaˇ6Mm^%Q,୾h'Z]Xl۾DkA|b k6l~y5T |Q]irf%NߙJ|D# ^#=:zZ:򫅯n%%eRޏۧ~QZ4A3V"Vf8Ks@TO;,ITݷy=~Spp@*7eTP 8OТ:\dPX~4gF꽠-ƞWx9EYg꭬dV]-HPA" ! U(TdMG=$>XC˸JJot&3qs{3BCgʐV} 0=SAӎA5Dԣ J:oYM= 9k[}*‚aM8@yqiXi=}d@,jahjj4^H071oYhԁ̉nv'ǹT} ň0=TD#U4}u/히|{Naכa"|<uk5qfZ0a@n˂:OZSFSkDVaVèDy2Y(}(f6o 9bUW3@r^Uau[iqusGngi7?u|>ג(%G)8V#KB]~A/p{5m#w/aRRnC!}% ՟5JrAp e)QPb!/vzdfmZc'MTZЮC! E58@K<\o0Y1 B7VxYJAhà 2Pn<Gʎ"c w,>eb.Enw=ozo6}5Gtb3vjr«[{$ȁu!aN#%Ҁ^i*Tp|\3#z%^|4$fi7˷r8D% |7+D3L\^ ˼kbf iZ'?:E*KK ;'ݖXbS&w5QM!is؎T{kHVʏ틳vʆ0K[)BxX6E9[xU[eLۑ<A>XD ;Cfc2-/ ^龷p!dvUάD4W#d_ڟy];H{b XT+o&0uQ ڭSD情3{l-hG).kmI 6^(B be^ ]c%8Wҹ/]` ='xZai&4H&K&MZJǎ &UCJ#YSwWqo[5#UYR-s#+7dCK%?)0 /^XW7o*МOB`m\p~$,"na# K 𗝃q:w+UtcQ(>3$>'f^Oy)my}~:.'pkV(CBv )b9}u,+!e.i8s_1ޣ+NCN iKaG]A Gx:juUtGD5U![$V80qlO2@뇃"+$Cw*l읨z%;='Hkڈ)hNDPt3U\*k2c/~y в(-YΉ%Ҧh,y0LS-*'= a1[JDNP|'^Yb_$xg-hjM*jPC('|'4vy^(01_=KHtd&N1}sNR_`taNv_9Z$8.-S:^:ge BKK*K2`CL&mS|oh=]0qyX.#%&'/Pņkj/)v3 h6Y3: "Dsi:mno& \##&F9=Ԩ:Ȓΰu)3b\M\K{1/)23":5\qzoG絍y|*\aPkSO%@/(]s'z9KQQ-rbBD @Ķ rfb4~A5F|yԟ=@cUB@6ǫ~tF+i72"X㶐m9fkYNiX}*Lp;tϥx~x9Q -GG DZH Wsvgy!YԺ*3-,} [Vg$yd AtTΥ`oVǴě/O&M`Zjʋ]qlM-Bԅ+YyPiRV46s )`љ`/S`0`ՓN6$4.AM:W[xZ[> )0UTZ]--ʁI׮cb Eo |kNY٪j6>yu83Ϭ֖VP ?A\eoFX̐}hXc9OMZn ̒jvL4R,i:h1jCsvU-a'{ZuRsՑ= BEˀ`  -aڿ5; Zqy xs3J#DP#S n[1dڹ{2 V95zْV^rl,%U Q:^g 8l[ 4KzU1w Y}^7]H-,\D-.v9 j*f N!۬i*v@,Ӵh/0n;٫Ƹ>yk?35ZҌ"ֵP LhAS7@hI:U9ԗ_P82w?-? LV愯ģ^reqĹphxBJ].@ofuا1}dtحG}:Vz;YsO)942)c$p v޲-OkGhXm14 WΌ(W>}+Z.e%\ex;τؓXk%\X6L*L:DȤ+?t6i^ K*Wm`f1T}]O֒H8h:-㵪|oofuTOdB=?g fDJO65o3C$wW܏7K߆8Ww WjAو_2U {u«cJbҙC;WIr^`YvT"@ҋWjEĥjx=́bP=J{kjsD? Ii$V]뙮O"11t*WphSSW f|dH!ƣZ~ y3D~Pt;U\䃑{³وJ$:9]Ρ VKW Yu K9N(L#L{ 7&;>ӃN2r&wйq XojlXM HtS'w1ώ Wd/Ss%*hTz*؛F'!آy&xg†՛\4LD& duzՏjoH2CȰ2mzD8A|@@Bջn)dړ!֖JfÙ*)^Stc0.o^Js3{=9iqwux7Rc#)1jG8[̵&}# jrðKJAz7L:K :a:}\n 4긖pɜN&TVtBVֱ1sZف΄G3 &g 1[GHAz{V 9"UՊ8 3ce,w'|X.L$L?Y~ 梊K!:g)O/t$F]DYj^;NxOM3>zZO-`"c vI}j345Kᅳ({[bKsVmԘ$;c-l.X;mbŃX4c"ֶ+~U#i)(t HT l_cB 2rk02 3Skc`.C5&m'$F)3BxZ~b,ټ¤g<vWp|),@ YZ