stalld-1.19.1-4.el8 >  H  0 4Sdhle6V U]*1&YmԤ?RL- ]2ALz_ٶIp`l+fuGí9=2dOhg8br鿨lcl{7*ϛ zzm:0;L, h}#L^ˆ~LTwI'kpZ=1,-B9G#xwdeNǞP}o(ql!eߎ=ՖiFviIeE%]=u0PQ&_74-"&KT/P`q7 [I~.Pe|XqIW``|,ֻҟ^5J2V]|1HgVN{BsAɏ]yM^ސ:fvx{ n^`"%?6%uQU*x c(;V9Ѓ')ߢϩ-42ڏ m\ۈ hHfOoz96̯B"vjfr&(e2}E;(%2GCjWbb4c97968ccfffd7a018d3bf972d2227887366835808419a8fd30ba64bda52066dcafa6caae5e75e008ccafbf0e3a97435b7c873c0302047c435bb500673065023100ac3a81038ac9b8ce032b21ca39372c5c883be1fbaf7e9e70eccf8929ae177b093fa5fcd2e8fc77575fb2e558ca34540c023010b4e2498fcbd3eafbe78857d9aa3688828c35b674f6b67dce1d36b232a3c3267ccf7f97bdefb4d00157056bbdd98b3f0302047c435bb5006830660231009cc8bf10c8b6ccd0ad32e4802075c89cdf2136b0a6bef1637553b81f486389c8fecdd27cb40441534996eacccca92f2c023100e24a16184aeae5180d9125ff746d768e80ed4ac2598607e59eeb4c1011f045bc9d5b4f606484809745eacaf494934da80302047c435bb5006730650231009fe0a984dc22ef3109e350247e02135726f22db07fe79ab5da439a91f25829a4fbbc1a301901ed4162d6eedc6de81ffb0230192f0ef27d98a19f451e8589d605ebb0addffab64a723e35d41c0bb79c04796a868723f51b9065ef3d8b2cabaf06cee70302047c435bb500673065023100d2310bed3b0216c6ac640f9f92f61f500944c0e0c3ac94a6e8611098eb8823d27df69b7f0ad76827a9a7694f534eabc8023031fc22fecf245a2654bd2fef3968c6e1f266d33a75924e1b5ba3a51ace549f0e2add74203a9e66c4880dd68369b9b74e0302047c435bb500673065023100d2310bed3b0216c6ac640f9f92f61f500944c0e0c3ac94a6e8611098eb8823d27df69b7f0ad76827a9a7694f534eabc8023031fc22fecf245a2654bd2fef3968c6e1f266d33a75924e1b5ba3a51ace549f0e2add74203a9e66c4880dd68369b9b74e0302047c435bb500673065023100d2310bed3b0216c6ac640f9f92f61f500944c0e0c3ac94a6e8611098eb8823d27df69b7f0ad76827a9a7694f534eabc8023031fc22fecf245a2654bd2fef3968c6e1f266d33a75924e1b5ba3a51ace549f0e2add74203a9e66c4880dd68369b9b74e0302047c435bb50067306502304e05c4a789a8a7e46afd71ab742779ef2f2bfdbff14e2b7f00465e95f044052c268c8e872e63d60005cf90f17304e4de0231009a70265ca0945a02ac584a6a982e932e8e09699ca7bc984da40e94854aa16058eea53cf1ad6acf2d0260f7d64d41fc110302047c435bb500663064023062ec1d19472b37c1eb2e323381b477b15917d7c58933a22d1ff4d5668f61c708f7778810b9f0396e03c9d590234eb02002307f4d0886c662c79733ab25d64b42eba727e635cee2bfb3aaec2bce20a12affa4e425c1de1965d2df2b5ebffafeaa2e6a0302047c435bb500673065023100d2310bed3b0216c6ac640f9f92f61f500944c0e0c3ac94a6e8611098eb8823d27df69b7f0ad76827a9a7694f534eabc8023031fc22fecf245a2654bd2fef3968c6e1f266d33a75924e1b5ba3a51ace549f0e2add74203a9e66c4880dd68369b9b74e0302047c435bb500663064023061e922e72a5276ba511317a3e72eae14d5f0205d39c0f49c35ed101cf08105d86c726deb4d541ef62fff084c23b03c8502305072e80324e997a5393f3ff8287fb1ae32b640fd9bb031e51b0a7e17984cefb04abab980ff398ed09802a481ff5b0cbf0302047c435bb50066306402305de9d5fa1e75d468faabbc8ef0ff07d5ea5c92a0d2e0ac422a440363e7b0fa2a85d5abc7d09b07531f35638aca58a35902301a3b9a0debb7d5d31f48464d4051969167c4411dde97932fa6dcdd9ececca955fbb6c48b32c12ff1030dca563792e773xe6V U]]{X A{7e#$~jF$4 ު b0x|SKі\dR~OoT:e^fjqg+e%_FfE'/nfگ؏6ҭ9VdsG\$>e_hCcXl[K{Z8 :z;4",7j(}C\cqխw.>?+W RtlX_0&vI,vIZ/i"' +MPFɓ+fJ\ `?!W!';aءo=7;h5_wJ-cU-`c#ߤkk=;"Fk[9,+nbsfмc EG<"&\e8Mt oq`nQnۥ]ib:^1c.Asuÿ ->vn .r ~34EMCqͤS?ya3i=NS;6h_ )G4>`B0P?0@d   X ;AH[   "  8  d  /  T    8` `( 8 9 :>)?)@)G* H*4 I*` X*lY*x\* ]* ^+R b,d-`e-ef-hl-jt- u- v-w/l x/ y/ ///0<Cstalld1.19.14.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.e]x86-04.stream.rdu2.redhat.com@CentOSCentOSGPLv2builder@centos.orgUnspecifiedhttps://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 || : fiH& F쁤AAA큤eXe]eXe]e]e]e]eXe]eXeX94d45c335e8ae40d00fc678b31a003b7e736215c71bca203ad52b3131f503c751904a2994c40f6e22b901e28b5a4e41fa7b50b5993e68c5526f7a32da0a1b8d32a1f4b3780b1d8482793aabf4f9e5fb09dad39f9c9a9bf99dde27d2700f5c7aa965457695adbff6f8de2a1e8fcd8c65d2c4c1bbc257651acabb9abeffd560bd88af93ee0af974a1f86c231a8c6290f34b544030c3b45c4263a6e3dd68c32d83d8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b8806434caa5720d4691776e3a2e17a06d4de5cd9dd23d903d2a273071e43a7c993070c../../../../usr/bin/stalldrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootstalld-1.19.1-4.el8.src.rpmconfig(stalld)stalldstalld(x86-64) @@@@@@@@@@    @/bin/sh/bin/sh/bin/sh/usr/bin/bashconfig(stalld)libbpflibbpf.so.0()(64bit)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.19.1-4.el83.0.4-14.6.0-14.0-15.2-14.14.3e̫@e@e@ecN@c@b@bEaK`i@`` @```-@`-@`3@`>`@`@__@___ _y@_N7_L@_D@_?@_>e_=@John Kacur - 1.19.1-4John Kacur - 1.19.1-3John Kacur - 1.19.1-2John Kacur - 1.19.1-1Leah Leshchinsky - 1.17.1-1Leah Leshchinsky - 1.17-2John 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- Put back patch to run stalld service as initrc_t Resolves: RHEL-8982- Copying over missing tests directory Resolves: RHEL-8982- Add llvm as a build requirement Resolves: RHEL-8982- Rebase to v1.19.1 upstream Resolves: RHEL-8982- stalld: Fix memory leak in print_boosted_info() - utils: Check if the system is in lockdown mode - stalld: print process comm and cpu when boosting Resolves: rhbz#2120800- Start stalld service as initrc_t Resolves:rhbz#2112366- 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.19.1-4.el81.19.1-4.el81.19.1-4.el8 stalldstalldthrottlectl.build-idddf1f088530126b8fc3a439eb848d062b7b4b212stalld.serviceREADME.mdstalldgpl-2.0.txtstalld.8.gz/etc/sysconfig//usr/bin//usr/lib//usr/lib/.build-id//usr/lib/.build-id/dd//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]=ddf1f088530126b8fc3a439eb848d062b7b4b212, strippedBourne-Again shell script, ASCII text executabledirectoryexported SGML document, ASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix) RR RR R R R RRRRutf-83b78c929598d354cb381a3276aa2aefa7589c2f9193ca6246bedda8661996f4d?7zXZ !#,G3] b2u Q{LXݣSޛ{N^3g|GB4@Z^>=A/]vOne/?6 ã'`j{KM!.3KODVPhR$e! xq܀9  {sOj\-:lXw.!X:E8:?;TQN WZ _A^}((ɇee0㒾Pn9KRBÞۜE8z?\qy'{1P x:Z-0T!?l@}aoH{*r_>PV™#$(`Yb\&mE2<(X0j@Ռ*>"SPit3?:3/|[ ᙥޟGex3n/:1J88fȄv~Bf}l,]s?z1 vod,x .8۫K˼~ J2XfҏHlr±b܆(GJt |C3d !Rdom~Y0- wvL.P6wC(R^_ ?9{I%eear(‚!`Z!lyBϻ " Jq,[c*iocw%8aU@ƾIR'6|f#Eit:{ P𱜸LͺG4:'itg)NdM]JDW'$L*LJ]U`ɆMW?T E&ӏb3=rnCؖ VtOk:Zv y@Ǜ9S^ {~ˊPΙ:2"ӎ.'1 I8T|*+`6c_~'8 rO_WcqPo.5=L;n䨥0כ@ B}o!ͮp@ fT} :tOE-HЯp|3PTvo'Sn_sa s}r3qN~?-"<7fRgsU"e4FȺX1#VuJYݻ=LW=Vx 8;8=XOD~ѪE .ga 5hs[pԭ۫}O#wvڽ~f4%;>dj%OR\^^; OonGDfyHKt#0*%W{Gw]Mc@̆i-Q_EcRQ@sNI `@$M+_r ĘG md_%M~PY ӗ҂TGTwܝP|.6ʿK$yT'QA@LY_fިx]Ev?% -\!b߫הၽσwkKNwDBݡ <7y({ \Tf#LJ-E ([2h3,?]!Ym8bQ՝ Bm셀,Zu1P 5TlK^k"dǷ4[vTlk \tK8McAWQ/+>2p3HҙDZ LSJ[?0c_nXs]V@?auY R)!dsJJӶ׸) иP{nhH(uEQd;5!U]1 `A,eyv-ZIy!=l9}٤{5 qxbPQTIc,ih'b vtiC7q^B: 1ŠHق6zw$XҭeRh@Q$`+eFw2CFyq4&tߙgi@uS]oz5|2owWqm?t]jSQnmeA;^`J5n 0xi v@ 3t%ʎЭt= )] qE%FSaQ!s4س9w½Bƻv$Rr0ėk*OSnDdCWh@z5R!G,H#]ހ+G@ e&MKo?<ըOA 2,>RҞ y縊e8*YaWڱuO*4hVj18Cl&͙O|i$K`- 1l :؞@sef z2#[`d,Xv3ׇ^vhx iT#LJvY T'[mTBtmR9 .mm@e&jt وa헴3;X$B`f/>)/DվPs0,0Z-B[+18mΩ!a"Z D ^~ pw;Po*&O\ C&4L9EB 21WS')Y  N2-I?ɲ\*ĉQk 'g?ճXɝT_>$t35[2(lc8:dPnLzšlZcSȿ<:@&32R)ZR-Zk$'_1 G(*'meTgw=FuͼFZ_M͓o/Vw>-oma~?V&Y&By4OOTp1RnL(Pr12ܯ p|ٹ$ưGD"p[OjW/Ϝܨ5b26JL-r)Q4XS\!%;G]mON+DlI8Z=ƄFSo $ JRR[!fS%dIG&:}bX4w^WԡHHZ砇/GYζ㜐R#5QXv d^ m"Չp"{pVEQonjKa8tRgt ֗QQ7U ]5,y߭ ;avB5[wb10˩ %Rvh.z)I}.pќ8QfEypVQ=rZco`Gd؅pĩu"%~Daqd[9 *_A7,Q)r*e?QI$% S)08\3)&ƠdҖ7 _uIs*U{W )>(qS(gM 1/~xbp/rӦx"`f,ڕ?.I&jJ*3Z)M]{ͦ@}`B+0+mrV`}jv}!ƳtsDE6($vђ(s )~st.R.W-o'ʑ@dL*N4-BфaVIKάLfK/||I6`y&o.q_E,(Ѝ0RS-a}bZSm_gy[{j+cuF֖`]Aǣ+$MjE5X;>Y x+3BU IiQɚ; |hA2z\4UтC!7O޴M[o< ѽ7ח)X-nܶ㨶z gF} /P8ѳLLТ-k= ˃b,c?lXl,_N \rI9']A"mnǮ &ү5\GHB+&1 ߉i]Yx:y :љ5JܑUߟPgu:1w1G<x6Ixp5au& X7>Vf՘@~N!t&46R7M"L%A*5-ab{!A搢UBwWj>dLy;vaiG$sgOJorZ,ǨɷT/Uc:<G( :iKT;l#pS>Ad ;Ay = =0l8EǛvkJ{I-5qK?no3\ ,*0Y+ M/D1}\ܐX,0y]qYCc3ω@8iSs+X<܀I1)z4ð!>0mlȴ]](MG8xMkDX!0XئCցR8^PΔ *{~$Qׄ8E _\aU7l/WqFMqŇJxɆ8/:8|Sm~lOeǪuľ! 𿙳2ӯ/n5Oo rb^`$i.xߝRA^ /RMmzQJƤW N__^#639jbQo2:sH*?AmŽr`!y+KSVa2:O vHhQ,łaFDX;.srAF8 N Кg9R[\@:w&kX(ʂ6Dc5KYuzvMx>"^UmSe-v)LŖ}E|?o$] .-TN!\S_?MOD?B oK5QJPN.xNUAv(k %`DS6tye-O ̈upM,VH+.`}̵e*caHS*]C/㈂1Z [_ٸrVlKs1@0QUؔJupYRSʐ"JMA`ؗr7^/ /n1ZAv'X[r!(oP+D;#v"Rp(ihW'u+(7CV`#t:Vыvh6fn= ٭5rv['LqlZDwAsU%g-l\RG+dX4OP9N*|y~FDҡ V^=@ę:>e֞(q9wZ7ބlXՈӼ }E}Dt.u" J@ s_Fv较3pT49XaoK#E$g,#@Q] D3K@YǎO԰+BKrWAL$&8w X5gHA<6݄{HRUCiITd{Mk9UsLbk Z8=%gһ Fo1=#4woI~ xi9)Kqፗ=AL@V!o ^FQKDxЯs6v4DPr3iKdJnq(MWo ggb(Ƴ A̳@$B VƝvPboouVz1!wG5#lK{|qLX A2VB{9?Tvnƭ@FUqnBQ[`#> tbD[z{%ڼwZ`ֈk-8̆z0bd^XGT SKUOT̈EswھDg4 Z{q((HyP܊o S VRF(Y;=J2oPj q*-T߉} ?Q̚'/(}i1qL)S3{L*pymlr)ApRBEJR7/Ugmdh)7RwBsT%qr^?(ctpjc5VK;۠՝To 'DzqlogDWD w}Ǧ7KuQOp7 욂>|am(BFVrNu8 f&3ժ3wfK%Y%S`_p'#a5{NPLD9+MF5x5/*ÞXbmnDܼ$F<,-9Hyu|C_;,Z[@UX1{y_'f$<Dp}i>Jݥx(ު\Q{:̥nJ)2DۗaK3Qs]pLt7]DRtGV-@sBm gulQス*YICqtQ֖߳aFx{( H{󀝡qj1j/x~>&cӁoplH Qf#`ﴸ Qe  B'`R6rzkdj;x\Ab+K7ZcjpS5#IqIgq\ l0M-D*)27o {/֋'Y\^50F=2]h0=-m.)#c7#=m %&Q&c2Uro4hvxͼM.eE*Oa!3DӖO=wjkU{bZAE'c y9健A{/J]Lů&- lG޷nƐִh@ l=M(|=IW/oD 053S1^1E 2%ͰnE'c 'ޠv{Y4-舻*M4Bg0nI]'@yfawDSH7hfy'i6UH\)Fwv:_psvU :b =Ƽۅ<1%aCܘۆ.jS-X7F4 E籕ûX<)!i$['B_D~cҬ MPK7^Ng0'fI&Jir|u)AhH҉>ˇq\"S)!=Ѐ"jGK1r'3p;&b2;&S̴25̳SI4*syfN/<Ռz773*PlKW69 d|ZO9Xc 0P?"Ϻib1W\MwtfYzrJVKH,XX [P~wcq #h\]rаΛWr"hԠ}+zɯ\Bt4VwkADKU_",g+Xw 0>,VE'{L=;0X{vn-k#F5ߎ<&Ns]itP,A#OдXKvӚcbkXmPJ9iO][]TG`~(EtKmBז(d0}bAv4X(C }3^Rdqy[/O{[5}=8k khb?>3E^ױ10gۺe 2Pw"9k}e{=Ccu}X]jI h\"T B$'wޏ,' DQߘU+nS2@=uy#a[oHt*mVU: k"/::aPL+DׇIiH H#b2 ',F75AU|+$aaixLd) ~QkF^w5w*&F{PYN $]zeM\x{é'0J#EY8"ۨ]֮al6kY12W Z : >`:Cy 2OW}9eXfm3?`֣(6CN-z4#nOױW>/ސP.SN?lG[rX{X Gn)CM|K`MH 쫰!xW v>KȘ-Ƥy91s^ɦͳSС 0Ւ= rS鳢L \'{1TScXSϝj*Ǟu- m.)dl` ,Rl;}a,n%걆}x{ = H9-;rs=EDs#vW0?ڨV7D#05n$) ϳjnT1`qm-]~qNXE"Ջ} b)B/~Gqݮ?86~>l(x4QGVl](|2)Ȕnxy: Db,HmBg S4~F}[["w+oO H {;hWD>gu,A)JIEugzwex/ ~ 9pȉ0F6zÀ ٨.6 ,p/ z(LGIC{FYgmRD$-ckީWU~<]codƥd)ՒJ 6d$S!+g;q#`\gER^8Ī#1 Ba3H|IMuAM fA T',z֎6Q]XwNW^wpQvZsljlLl,5y0kD|8Ž#P&qnQ}3[ibYH̏Iwk5*Gt8[ K!RD^]~IEw?Yn bBq0ĥR) "H:MQoSL2FM6 oD5V;3C8ptКxr!Ʉ6:*g#N81~H!SVi VcHMiW }ꩥHtÝ Ø@u$#c4&NYf_euOE`^X"Nq{D)o/&ÕSe$f=lr2†vWMz{_ 5XH<6 줞{<.Sish ˕seWlRV_@h1NBr8MQ}̝E,F#Xq=۠ G?9!L0A~'YE[leS sdy󔰯oVi^uJ,x]]NHIOfrw%_ *~p Md I+ic1!mP|m 8&>MlY5H꧂YF|ҏ%~r>T50))w;[׻J% J_g|*s\u).F2JDQr* V)Unk7p[pjQ#D4bWͶQBwO08ަ.u5fr%?niI+=gzƹLuJ$0ѴL<_t 1gXh2ձ߇֞Sp:H+yekԟ%]Z]TjLH,_q ܛX#їՆF9x%]6,:ȘD!yan@CuL%vJ|gu>OJ9@L&hW>SG(](@;N%i.uu @);uIWGute&ݞ΃M6]wsu?*a!iySfk]a09^4@'ʠfXAI9mU)F;j褧koE3[%achCl}Gd<-y }vêck͞?+ۏu3Yac3N|}^`݃g[z=BTqMH±a jOڽ$fץDWjbXk+@:/Er7-j g zN^X$^؀*<.ݻ&K%5BOfr%;YNO*?7TnB//;V"鎹eGn@[˫{z|ׇ_%K5;yxeXo {dzU ѿnOHWgrB?}!^q%yx$MR{g:0xJ,ُP;Smu]JLtDpswJ1)i4 ]{[>:i?C 1u7Cjqd~yRg;b=( 6QNn5KyJ[Ja\K,3;" cρ-sHnyn.Jfi攗itTǙ Rb&d_}uWœ|HvQ=~v#13=dbluB6{V4T퓴: hW𘋹0U+t)#bWEF[IGBRF š! /3+x̙!7TBCqZh#INh>,\K7r6#(JYQ X*LyhUsB=;TokFE_'qm[GզP';&vN4eWi|*"]߭Ad~(>rKx+jW(:ScJjXȠމMe3(K4'ZtbV"Il:>N'[8pڵR94 Ӎ"rz,SSŏ$@?sI߬`G1h# r;W 09gZPŶlX>\B&S6VB+낯IJc7؀êHysPs0?v #vv;AÙrVly~\P<,B K8pvFT#P.J I߁9@eX^,pU`[jCI$dj)#L)p7V=F{-ژHzW7 sQ#3נͪ w %u@JIFkJlFq@sJ(,X!pDˌecQ :d-J lM*@SNuS%&/\k׷1obGocqG 8^rNɱF!CLa󊚱*X<{:5ߧL0@J,"T>,/I(ۻ*w{")חG2ued*Nu,ߡH ].XP(AX90.uȲ"sD,aHO=0`S|YW*p2h\ͦ}S2LDnn&Ib\qqM O]]t]XPJe J )B vy##}()g SrV|sU!Gs|Fʯ$TO܇YR>a=f ո<Ƭ 7 7 ljer8`T$dELā"U#0$')7yd>A̐2uK:.SNAu"WElӯ4oS 5tn|\k_h΋4 ojzҒ^+`&k }+p$ea䒠lnkZX!< Ե=Dh 5(!B9?9ȢdM[2>?$shmш7.APں6LN; ׹:axw&n6<`y_cBH=B٪}[?Reͱ"6W:d.^/ԑE~}T':Q9,ĕڰ)Mn0Bkh&0l0 X{LEKLZ س+ oY(+Cʻ q[s\=I4rT`O~^l?FDWC#=Xp̭G`N&oUʜqan)Cj0W qLAtު"3hz5s%oޜ=3{`u 1Q0G05Hd}Aw豘76j>d`b$LtSゲ,%Z)(ϕMަ/q3*vη=ᧁB0a cC<~ qj4cvHKdXS#DyA;&{mIa$_DE*ﻜP?c- ˜a{֞<$ZI2κFW9;v)ASꉔ}_u]-1t q9^8Iu= ^)1=6t̊PSNK-^&‘(D̀5mA"܆w ϑS bZʬJH[f\xf7t#YlfZ-.?_m)+94-+Q_Q04 SS_ρj+~ߘo:WckxS\Hc w V~YƫM jf#3adp-zaEgC|=L˹[VÖԄRC:hv1߽b9mEMkIr'}K&q CA( >e9!F\Yv1g  dFϰ n)$?,k6WKI7UCӆ%bGyat T|9r3XJ֨jё&!v(OJ%fuQjR78,VĪ69hs 6X"u[ɧ@Ws`~sTf&/=FwcG;y%op@P((J( H~<9POB""8G|8$ڎ`_@V{Wq,f)yTq4dqC&fy@,}BB"P\^驳>gj:&#Cl占89pZM \VY3ģ\Cyv*o]WYDe :r%S_j8ۆ/DtWzS!.Р Ec}[3\X󠉄j'M]蒠;z.=诉ĒxyΠ@;Invr6JM8 \q˕,?H1x^uæn=ukak+v)9RE:U&pc/~R13> 94'y4 5IiC AJX/=Q0'uo(> JtOH5'ɋ%D_CKB{D08Dي6d\sf?Q[ v'n+atgg:Zݠ߬]E?7{轢zaVMBNӇDT8{|A1z 2LyI$dYURbxpbuDzYw޸*T_޳>&neI VSl0S%?A>X/-zllt;c>nHY) n#p`h؛-Y~ %P{zh8 V"q K Q~:?dD6>mb6IF+Q}F#>E\׹8R*VȔ*\MT9f/Uܟ{&H]>@ !Э'3Te>q$)}SbR57 ySC0Su'X X7ᗇ\["~~ ?kBGЯsHlMG}6 Jl|MA\W~6u $Ƈuِp۵tLy7!MY7u}v(1'pDw:_ ,yFzbz`glp'\S3f&ErQ7]rе RO;N46[aˇS3mŞvjR~c*tԪ떡+`bxX |߄*T,oRlP %G}yEL&P?8*szD -%ՙzΜm,`x&'[ E;mt!D/8J -]}3{zM_ijc<)FX&}/S22i ;!Wbly4Xh!Ǹ! z*輄6E@`7]uڊl j êh1#,jJAnU23s0t ?3ܧe$O#8T嵔͉B [f˱>H:@m FL =g&EfeET;)#qI\T]30'#+n}!pK߀ }ňn0qZy{{y :QtqOBJp.*d(/mnEvsH/X:߽9ɾ6ȇ+]Pc0z(ъRN`8#Kͬ6LBw7 QG mutMo1ՑCLݟcg¡zޚ/$w,~SX?gaЋ٣oI{&&Y+;i{y4yPLȕ1 ϔrN{D@q=+ǵ5_;IZ* d܍Qp`a#fDH IBܺjj `5V>w93Cq:a:i_>=*2E,zVRۿrWmeAлncdUw}5jFz5β#621 SK+" |F5j*S0 bx(wsl? ĺN3 )ƭ~cwɇAk984 4Mwª1D>GDZj8X?㒔 AJ80MB6jg ,49#ӿ E{^`vVTn"(G9;ZW--kg.&8DJ#Dr޿ 5IYoQtcKZ6@ ge2fi@V{D Z}:Fn!deaؠg=Pꋟ-<ĐmxAPzPY8 bCrڦ(<<Ə߬2~r1U9)d-P=Y+a56q@>Ϟk8W".ZS"NpʖM_(N $9hr=u.$DVԾf^l/7t Ճt? fq st`C.a5x:gVKCq)8uD%R ˬ+:WrEҥ2*Vً\(@hEJzG }zJ=V6AX};*B?Iʌ}|a&waᅒ&q1wo9ÂV𝾃F CaT/c0ZF}D:^J~eḦ́,(3 [0žµs9%^J`u2?.DSݾ|OyӼigI[ե`^ad$[02(fM]Ʒ\uw^^l!Z!mJCU)c|y:;|8,e(0c-q#".9{C9Z:ov|C7>g6YrRzǕ % _L%LDףD'7'4 4U K a%',Pm%USxfiG|ē?t 93J-lڐ]j8)dԂ!`qN@X˛ei=Js-.+SWGun9\7oņU3h.Q^ ж|Nfsp$̎}_e1iM `wLS>QCM)^DBLdIM57>&*=ͦĮpSoFU(ѶBXpamUrHb/ʒJ>Q,Sf.RR0v,߬wEݛe)9tg2:,iH^,JΜnǦA1|d3Z7cGz[Zw~+<<-iFQ%5ڭ'JFnc(gz3Ѷ;1wN?ҵDͺ"Y˂tt dA)'ZLu[jfB&.6gC_{gE?ͤEnF{1LQ-V3=#┓DOngƢ637 ,iA%dNPzhGz^ո1٢6{ d̎8|=a Bg{bDpI$Lp@<6[,QUf? STv f'<3K#ٓ2KW-&2a HmDbh$?_^C^dN+vpY)P@@ӎ);K!^ ȶGHɇ#4×OC?9ѱRC>g\6\X2Z՚:9Q*KeyD>F0%k*=2^|lP2f*)`e:sLG_D8AOR_5)ƙ]`EXhy1cT! ^ aDFU=bd{/VSuϧ(ȦSu?>k'*M7&&9zөg۶(gqw>X @~θ,YQL<^InWbhl0Y yǃjό΍'V8M abIdAUb^J mpĕaؑ uƮ:RsU Bm&yA[zE2;JhJAJο j k ȭP'bDk۔ ` Tc@xO]9Q}̾vevRG^zn]j`!?+ѱJ*Y,k%v !]3\W(y ޘo\*Zwc *'EBN~:}cޞ ЈE Cܾ;6 \FjJ:O !ȅ>,#5ڻ#$~zVCs rq}o|]軇̟h'}z4DGD *>[|'RɣYk)S~(oQ/QqU vJZ$bAR5(8}/>-lZ͸r M\Xfh,vzd1 O]%-E&>&5x#`sd 7p 54'эeC]%BצűԵ A']]# igZw,x3q:ȭv,t/T6*Fy\rTbg:t;ܚ_`vUept k)•',>j>ޏlKz3ZG6}Q} YWU>Zv|LPa6 e >TJŸ;yށbM5Hz}S@+C O%E%t7ģsH/0;%OsDxzۙeX l){;r`ᐌޑޠV9A^>\9x"5T2ŭ3_&1WdzC%R"A%>׃wnYG4'Ղӓ}J ՙzU ˨c/<>]*E%v,$Qhre\I7'Kʼ<|iM{y})2)ta|ڗpUUHРhUsӆygiDt~kt/|˾d~;&'=.yy m5>zQtXD35.ӒS4:OaZ"lG@56PM|@#cupFnа|i( (w5x|;a cnP[$۳y!d<[ᆼ4c&‹*74C9McIyj6W2 Zi½aW&o:o2&ݯK#TRtx ;[R]OYd8(jQ~ـQifE` .Z&Q[Ǿ;XXx\;j-_k2!.xF x. utnǗ"ۏKZLZ؅nôI>5QC  ] }Ww?%ʪ'czȏ&`-yaXv_2xO*O0PJ> fyQƷ=AkC:ֺ+ 3M".C&/Y#U65l{~e!Jz<WD+HitaJ5릅<kz8HÌt#=k_υ. c@;=X)m t9`FT9 t|&/uHۄ%IdP#N#ݎ0.Ϛ$GdAzaM8F%N09?]n*,y%!-YP勇u ^IΗfxv Bp@6O*s=U8є^;D>lޡhHU09cpI؃RfTV0;%QɂFL8K`P|(`EcfA.^C+ =?@X*.I6{ؓ^q6h՝,P?x\ʦ[,=p@€"urG K;JZ?%^v,2`,xOԐ~_Y&P@Фf&~L֯|*3d'i˲?U@WF Y/TaщUfa@8~X-_] ]_In uA 뀈ux0xVuӣ&yI3!|^מ|j݊a*3Xq뤊zSw"к(=9>c )Jfnva;6zlZ)gxU"&Vԭ[ç޶  Js>3(QvWP;41-۵5ntT2ww"L{nb5(U B 7!=!^wI:t/Bz 0@A\E6njwv:IjV"84;I@hCd \jFĽ9T~.cբ.m8ܮ_mLv/DI׎OKhMʃ-+j=@`;[3%{KP<o˙3{ @`*n" dTOL_yJ:?[-gMUbٮ_wK;-Z{9A$-:9;Ã+nxU>׸#Pi?ucoCm6!XgUjL)>q*IiGL1?md9~MrX!yfn Kn:)XK-8 ny%˞@pah3I ķS2pP8o*9*#0;\xGtT\ ud L}i—VŰU|[9Nj ^F%Rf`Y6 QBήB0">N>ӟf(:vwDWIOO|:(Q9g1} m6V`{zbLQ|ԏu3Y[? %b?}+,1Rh$YɫJ#7Q MuK[l B; t(|A7_entU}G FDN.,̩rZ>*;NE mIXեmNx7=7Ncg3u4#cLA˓s5<)zFc𾫆IQRk}b <`IjA1vc .%rX1 8ǝtbbJXcЖmX0gEmPiT0i9j<э4pLUt2WLQu EM0'&<p 9j@-|^j8'$zn[M[3/MZG <մ>is57kLL i"@jLN7kyэ}$2>mtϧ*HJ]iYyɜa2 -؉Ǫ=s{;%v4Oh$-h,R篆τx0l\W<K⑦O2uTHbBZvplݱ4ilf6S9 ]V?Wast_~Śo-PVXё ~>2} 'wy-?JW_cĕYKwZ|]''/ 02-~j@+;-MˣjlHQ)r1ʖw~IAg_Tj=EMH[G[;y+Q/k8uMwgi}[ [zڡ_m΢ Ot!y@qg]e<A7[];zu\;z[hD˒3sz}/S0ǪŴQ5yfڱ#T-@]ӗXbFv\ɸeO3.}A\T`&BgCDO{ޒ!i:gԒ b5zX)GGD50EeJxR. $rڽ>x0iSJ}]׀4A`4$XNugqJd=w/r.vrmkkCYsG}ArnK֖I*,U\PMP͇J6/]mԺi^a&` /I#f#q1QY.‘ A.J΋ks4tdϻGMTyI)9bj"V$&/hN$BÉP6 KxֶF'C׸uo_n:*9-bPEkN)4CLj욣*HttdXNG do¸"3ҟdEYUXy YP͜|I8N-ө@(Et{<v|JE X k/f'lpӺV!]7䖋`$Xs.8E1Mz%Ļ+kpM.R5NxRg?!reat̀RWdVD6gA`J 2?>^KO >j}חQ0]{%TUN+lYC5'g8 ;0Sqj.[wE?]b Qk2 w oOKQͺt&q^]S\}THe:9? VW/Ӧ,i0…'c'Y*wM8;M|wW7L];ms"(ggƜ}E`71nYj>~ւ:@m\>*[K]4>CY]j+ֽz@'72Pfs.]"s]h.girp{ǘCf clʹ|*7"q8Կt]EUhPo(QxLhXg "v4 )K6`5/~yI[j! C!?{JCYS罣zCRTv Q33i t|Gߔm="ܞ qW[[Pb܊7 ׻HC waJWבJ]5Pe:dT@}a;\$}6Ty'xy9t"<>75QOw$-9rr֬Ӿ&O=n~6m6ϋ< `\+VxP97baDGJ Hb{O j 2NS*Q$og:Ck\0z46{zՊ'jIt0;FdJ,-H4Хlh`dBewK]DHqKD~%#H+ FyJX⣉ILMCg' dU`?E0gkoݹAd .mE$j4P*IPr m_N((8R2JKMg?h;ͦ<3F#yXD3IwH<'I|0\.'%5-:9^bn>+ZHgğlX@6EiUh T]oZ5zB\h"*OʈpX33|g(%l4B _%.r2Zm(:iq.M|B܄:=Ʋ dg8ISo0Ĺ~|Ra$7®ǡ$)e~JH(X"ВV36q*׶rn/_ʋ5?K̬06,?ny v MηJqJT*?٘xQ4seF-M{){ #h: N{khCSy3( "cLD;wCɗ0*rڲ!pɧȇUݛ{k[;+(t[syQǴ%A e[`WoR8+VCBT9JNWL^1j:Rs`%DqsMFD\OŨq /||::sGYPU>`. eɕM*Zԅc`dhkݝl5twaGDY1S5}cDeRS~ǜCne1\'zFvT^s#oT52h/B^aGۈ͜*L:U` b KvlcRhvZc&/GDA7B{Mh*&.?͖jk;J;gE +թ$"!`Ġ2X&1{F[Ӷ ZWâmi?}4\GӸn.HdC˘zRK7ிߩ oAAN0- C uI"|/?xwu3,/f_rg:֧2R΅HQˡe&-J +% .;X o%G%_dbtSFJkfՃ4|PzGM[~Dŷ꛻ܡ3No\8,Zuz^&ڷvaS$=&0 2tVn*cAXG $4_1M,1+`MӼ v^v+tx.S 0ca8$Yq!Z"`r .df$d6,h G6' Y.O2Ics-3yTȍUt.<"3 β(MO9"F#B[-`I xHĩෙvWs9t|/DRyAO!?tsl$}QۥT[u6]gƼY?1et8"ڼ:i]KhȓOٝ#|k6MENj~fҙu߹3S%d4vKO $Z&}xDN`dI0]z@GSqvM㦥|ؾF6NSo'oa " a[b(rNCK:fL;D- x+KXf!l\QHDۈq34%QpVܡgOx+xAzeVTph  (SmI]&Xhy3̇TG Pj9yh@2 ҦS EbFj"3d+QA+z˂9V9(TD:SZMO0?֬<ZVGH(zriZMBZ`͞zؒy0QKk} 2gݙ)ee'pT= ߶Zw3(Rn+Oa,׌J ُMAz7/sJ߁" qrSt$X;,3ީ/@{~rHE>j N5aϠK?4(FSL 3[EAC͒)dF<R*hM¶32uYMGb)Fu^ _-Wee">v5-tlW1r ك>dV9)Q{Ig5_7Huo,غDGy'91 4RI(n*QTE50laG3Uw!8ϠV0[g\9_Tۅ]O,ѢOJMLEf ^?%s!A4~^'CX7O!s\ep,a:Uu/(y)?$%?NRzpȕm+aAff? b/eMra/sx&~f䡂B\-׶%Ͻ˃\·ߚmp@f[+ An.>?/O?ⴟ| vg2%YT{*C6s8UOw#P<ꁀv_t"`F1"%˖+8n%#fSanXkDLp\ U8h]! oΛ u6Vi*El1ܶZYM kT- lbVx^׈ms;qJ;fɅy맋4_qbJg*xb<\V"h:, ;9V?ۡ5 v#jdܱk!Fl"hzWl)q6z2}bН1U͒іdd!Ev [B`Og y3p?:D4|E"e"?5k툇F%ՠh^wתrgZi!aSMX,^ߺ |Q$Y_ On\U]\~skpa+=^1EhHaCKd-"6*&[i[:7\̬)MfZ$R) O+ޠa1G/~,<4' ޣTװ~ۃ۝`m$"üF0P 3N\${\`2 -/|466RX"p+-wȗlLVrjJ3=Y(N6 Bc?|-cԅӸy pZ$X/uZХ,l&<ÖE s RՃ& El3EA#>D=ultr]7,g.mx UJp3tq !ZYZyKhq˄o~nM}i+]Ճ]T'G C "Z) ?5(V yՃp ?~2 +{YLHy u˳Ү3EESLh/QU m ~՛ݒ̰RH˘"%豃JBNp> E(/Lʖ6[łT_]r:J* pmczQZ{tlԿǢH`ԮgxU:@HktVr|fX8 ;k1][cs#/=[=B956;ezoͪb8E_ U*SAv{z-BOԋ#%6 Ѿ/~ J*]6|S!bҺBW~&kAĎޝuI@QQwp)\fEx0@&߄eg5!=,@^-wzAN6 t"sS hL=Bl=ڤ)d< 44h\?t'gS5d T`+nIC+ |8=48 Hq78~[o" #U _ɐR<7rnE:yPI4?ք5X L)y0b1φc򽯯N(!8),u]HѴQ(͇CT~f?bӚjTgMq5߀? Ve̎TҔD&"?zGi$.p CgQ|ŷi]W{SgC*auargM@fت& .MF:hwlJ!~" ͛Htj؆Jοs]/(D(rXU/%#JZYMWXMӥ&8w\ק~@ ԃ`6Q&S+~?,)yd"cŖsU+gl>4 L8(Bƒ򒷗&Vf&Js\ƙOE:DքL\$1;+3c҅X YZ